summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2024-01-14 03:00:53 +0000
committerNorbert Preining <norbert@preining.info>2024-01-14 03:00:53 +0000
commit897aab75a208680c8bb84f43e5da36abb2f47322 (patch)
tree4910bd73f457bb9036581bfd7692baf160b61490
parent65fecaf48c4ed6505cb45447a2d7cf1b9d933e3a (diff)
CTAN sync 202401140300
-rw-r--r--FILES.byname139
-rw-r--r--FILES.byname.gzbin2591906 -> 2591838 bytes
-rw-r--r--FILES.last07days498
-rw-r--r--biblio/ctan-bibdata/ctan.bib59
-rw-r--r--graphics/pgf/contrib/tikzquads/README.md84
-rw-r--r--graphics/pgf/contrib/tikzquads/doc/tikzquads.pdfbin0 -> 500087 bytes
-rw-r--r--graphics/pgf/contrib/tikzquads/doc/tikzquads.tex1037
-rw-r--r--graphics/pgf/contrib/tikzquads/latex/tikzquads.sty2202
-rw-r--r--macros/latex/contrib/docshots/docshots.dtx92
-rw-r--r--macros/latex/contrib/docshots/docshots.pdfbin341476 -> 342450 bytes
-rw-r--r--macros/latex/contrib/easybook/easybook.dtx38
-rw-r--r--macros/latex/contrib/easybook/easybook.pdfbin592282 -> 598558 bytes
-rw-r--r--macros/latex/contrib/easybook/easybook.tex183
-rw-r--r--support/TeX4ht/source/ChangeLog5
-rw-r--r--support/TeX4ht/source/tex4ht-4ht.tex31
-rw-r--r--systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl1
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb244
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb.md52
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha5122
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc16
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb.xzbin2518752 -> 2521140 bytes
-rw-r--r--timestamp2
22 files changed, 3866 insertions, 769 deletions
diff --git a/FILES.byname b/FILES.byname
index ae01585b9a..24d7f266ae 100644
--- a/FILES.byname
+++ b/FILES.byname
@@ -2077,12 +2077,12 @@
2023/10/05 | 1710 | biblio/citation-style-language/README.md
2023/10/05 | 12878 | biblio/citation-style-language/vancouver.csl
2023/10/05 | 4531754 | biblio/citation-style-language.zip
-2024/01/12 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx
+2024/01/13 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx
2022/10/08 | 127 | biblio/ctan-bibdata/biblatex-ctan/ctan.cbx
-2024/01/12 | 2837732 | biblio/ctan-bibdata/ctan.bib
-2024/01/12 | 3708800 | biblio/ctan-bibdata/ctan.pdf
+2024/01/13 | 2838676 | biblio/ctan-bibdata/ctan.bib
+2024/01/13 | 3708800 | biblio/ctan-bibdata/ctan.pdf
2023/01/16 | 1489 | biblio/ctan-bibdata/README
-2024/01/12 | 4115135 | biblio/ctan-bibdata.zip
+2024/01/13 | 4115372 | biblio/ctan-bibdata.zip
2023/02/23 | 3126 | biblio/pbibtex/pbibtex-base/cpp.awk
2023/02/23 | 1009 | biblio/pbibtex/pbibtex-base/generate.sh
2023/02/23 | 22362 | biblio/pbibtex/pbibtex-base/jabbrv.bst
@@ -5444,7 +5444,7 @@
1990/10/02 | 5440 | dviware/vutex/vaxvms.hlp
1990/10/02 | 812 | dviware/vutex/vaxvms.ins
1990/10/02 | 127576 | dviware/vutex/vutex.web
-2024/01/12 | 406554 | FILES.last07days
+2024/01/13 | 412205 | FILES.last07days
2021/07/24 | 1139410 | fonts/aboensis/Aboensis.glyphs
2021/07/24 | 18907382 | fonts/aboensis/aboensis.pdf
2021/07/24 | 137860 | fonts/aboensis/Aboensis-Regular.otf
@@ -165972,6 +165972,11 @@
2010/12/25 | 80 | graphics/pgf/contrib/tikz-qtree/tikz-qtree.sty
2012/04/23 | 7407 | graphics/pgf/contrib/tikz-qtree/tikz-qtree.tex
2012/04/23 | 120116 | graphics/pgf/contrib/tikz-qtree.zip
+2024/01/13 | 500087 | graphics/pgf/contrib/tikzquads/doc/tikzquads.pdf
+2024/01/13 | 48906 | graphics/pgf/contrib/tikzquads/doc/tikzquads.tex
+2024/01/13 | 71332 | graphics/pgf/contrib/tikzquads/latex/tikzquads.sty
+2024/01/13 | 2135 | graphics/pgf/contrib/tikzquads/README.md
+2024/01/13 | 449252 | graphics/pgf/contrib/tikzquads.zip
2022/08/07 | 265601 | graphics/pgf/contrib/tikz-relay/doc/BeamerAnimation.pdf
2022/08/07 | 5388 | graphics/pgf/contrib/tikz-relay/doc/BeamerAnimation.tex
2022/08/07 | 661245 | graphics/pgf/contrib/tikz-relay/doc/tikz-relay-doc.pdf
@@ -224172,13 +224177,13 @@
2012/03/22 | 988 | macros/latex/contrib/docmute/docmute.sty
2012/03/22 | 350 | macros/latex/contrib/docmute/README
2012/03/22 | 150730 | macros/latex/contrib/docmute.zip
-2024/01/09 | 270 | macros/latex/contrib/docshots/DEPENDS.txt
-2024/01/09 | 22016 | macros/latex/contrib/docshots/docshots.dtx
-2024/01/09 | 2634 | macros/latex/contrib/docshots/docshots.ins
-2024/01/09 | 341476 | macros/latex/contrib/docshots/docshots.pdf
-2024/01/09 | 1083 | macros/latex/contrib/docshots/LICENSE.txt
-2024/01/09 | 1419 | macros/latex/contrib/docshots/README.md
-2024/01/09 | 344745 | macros/latex/contrib/docshots.zip
+2024/01/13 | 270 | macros/latex/contrib/docshots/DEPENDS.txt
+2024/01/13 | 22708 | macros/latex/contrib/docshots/docshots.dtx
+2024/01/13 | 2634 | macros/latex/contrib/docshots/docshots.ins
+2024/01/13 | 342450 | macros/latex/contrib/docshots/docshots.pdf
+2024/01/13 | 1083 | macros/latex/contrib/docshots/LICENSE.txt
+2024/01/13 | 1419 | macros/latex/contrib/docshots/README.md
+2024/01/13 | 345874 | macros/latex/contrib/docshots.zip
2014/06/27 | 39453 | macros/latex/contrib/doctools/doctools.dtx
2014/06/27 | 1134 | macros/latex/contrib/doctools/doctools.ins
2014/06/27 | 605871 | macros/latex/contrib/doctools/doctools.pdf
@@ -224495,12 +224500,12 @@
2008/02/10 | 19110 | macros/latex/contrib/ean13isbn/License.txt
2021/01/24 | 422 | macros/latex/contrib/ean13isbn/README
2021/01/24 | 322624 | macros/latex/contrib/ean13isbn.zip
-2024/01/09 | 75339 | macros/latex/contrib/easybook/easybook.dtx
+2024/01/13 | 75281 | macros/latex/contrib/easybook/easybook.dtx
2024/01/04 | 2081 | macros/latex/contrib/easybook/easybook.ins
-2024/01/09 | 592282 | macros/latex/contrib/easybook/easybook.pdf
-2024/01/09 | 85392 | macros/latex/contrib/easybook/easybook.tex
+2024/01/13 | 598558 | macros/latex/contrib/easybook/easybook.pdf
+2024/01/13 | 86404 | macros/latex/contrib/easybook/easybook.tex
2024/01/03 | 801 | macros/latex/contrib/easybook/README.md
-2024/01/09 | 634290 | macros/latex/contrib/easybook.zip
+2024/01/13 | 640977 | macros/latex/contrib/easybook.zip
2009/06/17 | 82589 | macros/latex/contrib/easy/doc/docbib.pdf
2009/06/17 | 78378 | macros/latex/contrib/easy/doc/docbmat.pdf
2009/06/17 | 99132 | macros/latex/contrib/easy/doc/doceqn.pdf
@@ -292221,7 +292226,7 @@
2021/05/03 | 629 | support/TeX4ht/doc/README
2020/08/24 | 358454 | support/TeX4ht/doc/TeX4ht-doc.tex
2021/05/11 | 262 | support/TeX4ht/README
-2024/01/10 | 241839 | support/TeX4ht/source/ChangeLog
+2024/01/12 | 242028 | support/TeX4ht/source/ChangeLog
2021/05/03 | 1375 | support/TeX4ht/source/checklog.lua
2021/05/03 | 1189 | support/TeX4ht/source/common-code.tex
2021/05/03 | 2727 | support/TeX4ht/source/common-info.tex
@@ -292233,7 +292238,7 @@
2021/05/03 | 1121 | support/TeX4ht/source/README
2021/05/03 | 1744 | support/TeX4ht/source/t1fontmake.lua
2021/05/03 | 297 | support/TeX4ht/source/t1fontsample.tex
-2024/01/10 | 1172675 | support/TeX4ht/source/tex4ht-4ht.tex
+2024/01/12 | 1173443 | support/TeX4ht/source/tex4ht-4ht.tex
2021/05/03 | 7127 | support/TeX4ht/source/tex4ht-auto-script.tex
2021/05/16 | 1539 | support/TeX4ht/source/tex4ht-bibtex2.tex
2023/10/16 | 21307 | support/TeX4ht/source/tex4ht-cond4ht.tex
@@ -297064,13 +297069,13 @@
2022/12/13 | 340 | systems/texlive/tlnet/archive/bibcop.amd64-freebsd.r65257.tar.xz
2022/12/13 | 340 | systems/texlive/tlnet/archive/bibcop.amd64-netbsd.r65257.tar.xz
2022/12/13 | 340 | systems/texlive/tlnet/archive/bibcop.armhf-linux.r65257.tar.xz
-2024/01/12 | 359716 | systems/texlive/tlnet/archive/bibcop.doc.r69378.tar.xz
+2024/01/13 | 359716 | systems/texlive/tlnet/archive/bibcop.doc.r69395.tar.xz
2022/12/13 | 340 | systems/texlive/tlnet/archive/bibcop.i386-freebsd.r65257.tar.xz
2022/12/13 | 340 | systems/texlive/tlnet/archive/bibcop.i386-linux.r65257.tar.xz
2022/12/13 | 340 | systems/texlive/tlnet/archive/bibcop.i386-netbsd.r65257.tar.xz
2022/12/13 | 340 | systems/texlive/tlnet/archive/bibcop.i386-solaris.r65257.tar.xz
-2024/01/12 | 8120 | systems/texlive/tlnet/archive/bibcop.r69378.tar.xz
-2024/01/12 | 6236 | systems/texlive/tlnet/archive/bibcop.source.r69378.tar.xz
+2024/01/13 | 8168 | systems/texlive/tlnet/archive/bibcop.r69395.tar.xz
+2024/01/13 | 6244 | systems/texlive/tlnet/archive/bibcop.source.r69395.tar.xz
2022/12/13 | 340 | systems/texlive/tlnet/archive/bibcop.universal-darwin.r65257.tar.xz
2023/02/20 | 2304 | systems/texlive/tlnet/archive/bibcop.windows.r65891.tar.xz
2022/12/13 | 340 | systems/texlive/tlnet/archive/bibcop.x86_64-cygwin.r65257.tar.xz
@@ -297447,9 +297452,9 @@
2021/05/18 | 23164 | systems/texlive/tlnet/archive/bnumexpr.source.r59244.tar.xz
2023/11/10 | 470968 | systems/texlive/tlnet/archive/bodegraph.doc.r68785.tar.xz
2023/11/10 | 16268 | systems/texlive/tlnet/archive/bodegraph.r68785.tar.xz
-2023/10/14 | 731968 | systems/texlive/tlnet/archive/bodeplot.doc.r68530.tar.xz
-2023/10/14 | 5500 | systems/texlive/tlnet/archive/bodeplot.r68530.tar.xz
-2023/10/14 | 16932 | systems/texlive/tlnet/archive/bodeplot.source.r68530.tar.xz
+2024/01/13 | 738136 | systems/texlive/tlnet/archive/bodeplot.doc.r69397.tar.xz
+2024/01/13 | 5788 | systems/texlive/tlnet/archive/bodeplot.r69397.tar.xz
+2024/01/13 | 17376 | systems/texlive/tlnet/archive/bodeplot.source.r69397.tar.xz
2022/04/08 | 424416 | systems/texlive/tlnet/archive/bohr.doc.r62977.tar.xz
2022/04/08 | 3652 | systems/texlive/tlnet/archive/bohr.r62977.tar.xz
2019/02/28 | 939068 | systems/texlive/tlnet/archive/boisik.doc.r15878.tar.xz
@@ -297521,9 +297526,9 @@
2019/02/28 | 2580 | systems/texlive/tlnet/archive/bpolynomial.r15878.tar.xz
2019/02/28 | 292852 | systems/texlive/tlnet/archive/bracketkey.doc.r17129.tar.xz
2019/02/28 | 1792 | systems/texlive/tlnet/archive/bracketkey.r17129.tar.xz
-2022/10/28 | 690396 | systems/texlive/tlnet/archive/braids.doc.r64817.tar.xz
-2022/10/28 | 7848 | systems/texlive/tlnet/archive/braids.r64817.tar.xz
-2022/10/28 | 15452 | systems/texlive/tlnet/archive/braids.source.r64817.tar.xz
+2024/01/13 | 783420 | systems/texlive/tlnet/archive/braids.doc.r69398.tar.xz
+2024/01/13 | 8248 | systems/texlive/tlnet/archive/braids.r69398.tar.xz
+2024/01/13 | 16400 | systems/texlive/tlnet/archive/braids.source.r69398.tar.xz
2019/02/28 | 61288 | systems/texlive/tlnet/archive/braille.doc.r20655.tar.xz
2019/02/28 | 5980 | systems/texlive/tlnet/archive/braille.r20655.tar.xz
2019/02/28 | 215656 | systems/texlive/tlnet/archive/braket.doc.r17127.tar.xz
@@ -298293,7 +298298,7 @@
2024/01/12 | 7068 | systems/texlive/tlnet/archive/collection-latexextra.r69389.tar.xz
2023/12/14 | 704 | systems/texlive/tlnet/archive/collection-latex.r69131.tar.xz
2023/12/14 | 736 | systems/texlive/tlnet/archive/collection-latexrecommended.r69131.tar.xz
-2023/12/07 | 1012 | systems/texlive/tlnet/archive/collection-luatex.r69052.tar.xz
+2024/01/13 | 1020 | systems/texlive/tlnet/archive/collection-luatex.r69404.tar.xz
2024/01/02 | 1704 | systems/texlive/tlnet/archive/collection-mathscience.r69267.tar.xz
2023/05/12 | 564 | systems/texlive/tlnet/archive/collection-metapost.r67071.tar.xz
2023/02/18 | 496 | systems/texlive/tlnet/archive/collection-music.r65862.tar.xz
@@ -302158,9 +302163,9 @@
2019/02/28 | 343996 | systems/texlive/tlnet/archive/keycommand.doc.r18042.tar.xz
2019/02/28 | 4904 | systems/texlive/tlnet/archive/keycommand.r18042.tar.xz
2019/02/28 | 15252 | systems/texlive/tlnet/archive/keycommand.source.r18042.tar.xz
-2023/01/04 | 1052496 | systems/texlive/tlnet/archive/keyfloat.doc.r65446.tar.xz
-2023/01/04 | 7112 | systems/texlive/tlnet/archive/keyfloat.r65446.tar.xz
-2023/01/04 | 31332 | systems/texlive/tlnet/archive/keyfloat.source.r65446.tar.xz
+2024/01/13 | 1052904 | systems/texlive/tlnet/archive/keyfloat.doc.r69399.tar.xz
+2024/01/13 | 7108 | systems/texlive/tlnet/archive/keyfloat.r69399.tar.xz
+2024/01/13 | 31332 | systems/texlive/tlnet/archive/keyfloat.source.r69399.tar.xz
2019/04/07 | 146072 | systems/texlive/tlnet/archive/keyindex.doc.r50828.tar.xz
2019/04/07 | 1388 | systems/texlive/tlnet/archive/keyindex.r50828.tar.xz
2019/04/07 | 3464 | systems/texlive/tlnet/archive/keyindex.source.r50828.tar.xz
@@ -302335,9 +302340,9 @@
2019/02/28 | 23192 | systems/texlive/tlnet/archive/labbook.source.r15878.tar.xz
2019/05/15 | 25184 | systems/texlive/tlnet/archive/labels4easylist.doc.r51124.tar.xz
2019/05/15 | 1876 | systems/texlive/tlnet/archive/labels4easylist.r51124.tar.xz
-2019/02/28 | 195592 | systems/texlive/tlnet/archive/labelschanged.doc.r46040.tar.xz
-2019/02/28 | 1060 | systems/texlive/tlnet/archive/labelschanged.r46040.tar.xz
-2019/02/28 | 4164 | systems/texlive/tlnet/archive/labelschanged.source.r46040.tar.xz
+2024/01/13 | 210564 | systems/texlive/tlnet/archive/labelschanged.doc.r69400.tar.xz
+2024/01/13 | 1032 | systems/texlive/tlnet/archive/labelschanged.r69400.tar.xz
+2024/01/13 | 4224 | systems/texlive/tlnet/archive/labelschanged.source.r69400.tar.xz
2019/02/28 | 177412 | systems/texlive/tlnet/archive/labels.doc.r15878.tar.xz
2019/02/28 | 3536 | systems/texlive/tlnet/archive/labels.r15878.tar.xz
2019/02/28 | 14888 | systems/texlive/tlnet/archive/labels.source.r15878.tar.xz
@@ -303297,6 +303302,8 @@
2020/04/19 | 1700 | systems/texlive/tlnet/archive/luapackageloader.r54779.tar.xz
2021/05/09 | 415236 | systems/texlive/tlnet/archive/lua-physical.doc.r59138.tar.xz
2021/05/09 | 359576 | systems/texlive/tlnet/archive/lua-physical.r59138.tar.xz
+2024/01/13 | 255384 | systems/texlive/tlnet/archive/lua-placeholders.doc.r69404.tar.xz
+2024/01/13 | 5340 | systems/texlive/tlnet/archive/lua-placeholders.r69404.tar.xz
2023/11/21 | 127776 | systems/texlive/tlnet/archive/luaplot.doc.r68918.tar.xz
2023/11/21 | 2232 | systems/texlive/tlnet/archive/luaplot.r68918.tar.xz
2020/08/15 | 442728 | systems/texlive/tlnet/archive/luaprogtable.doc.r56113.tar.xz
@@ -303350,9 +303357,9 @@
2020/02/18 | 20788 | systems/texlive/tlnet/archive/luatodonotes.source.r53825.tar.xz
2023/11/19 | 94156 | systems/texlive/tlnet/archive/luatruthtable.doc.r68893.tar.xz
2023/11/19 | 2320 | systems/texlive/tlnet/archive/luatruthtable.r68893.tar.xz
-2023/09/14 | 293356 | systems/texlive/tlnet/archive/lua-typo.doc.r68267.tar.xz
-2023/09/14 | 12840 | systems/texlive/tlnet/archive/lua-typo.r68267.tar.xz
-2023/09/14 | 29212 | systems/texlive/tlnet/archive/lua-typo.source.r68267.tar.xz
+2024/01/13 | 297064 | systems/texlive/tlnet/archive/lua-typo.doc.r69403.tar.xz
+2024/01/13 | 13004 | systems/texlive/tlnet/archive/lua-typo.r69403.tar.xz
+2024/01/13 | 29728 | systems/texlive/tlnet/archive/lua-typo.source.r69403.tar.xz
2021/11/11 | 75516 | systems/texlive/tlnet/archive/lua-uca.doc.r61023.tar.xz
2021/11/11 | 74192 | systems/texlive/tlnet/archive/lua-uca.r61023.tar.xz
2021/11/11 | 1136 | systems/texlive/tlnet/archive/lua-uca.source.r61023.tar.xz
@@ -303773,9 +303780,9 @@
2019/02/28 | 77852 | systems/texlive/tlnet/archive/metalogo.doc.r18611.tar.xz
2019/02/28 | 2228 | systems/texlive/tlnet/archive/metalogo.r18611.tar.xz
2019/02/28 | 7148 | systems/texlive/tlnet/archive/metalogo.source.r18611.tar.xz
-2023/01/04 | 380028 | systems/texlive/tlnet/archive/metalogox.doc.r65448.tar.xz
-2023/01/04 | 4208 | systems/texlive/tlnet/archive/metalogox.r65448.tar.xz
-2023/01/04 | 8644 | systems/texlive/tlnet/archive/metalogox.source.r65448.tar.xz
+2024/01/13 | 380132 | systems/texlive/tlnet/archive/metalogox.doc.r69401.tar.xz
+2024/01/13 | 4212 | systems/texlive/tlnet/archive/metalogox.r69401.tar.xz
+2024/01/13 | 8668 | systems/texlive/tlnet/archive/metalogox.source.r69401.tar.xz
2020/05/05 | 84860 | systems/texlive/tlnet/archive/metanorma.doc.r55010.tar.xz
2020/05/05 | 7536 | systems/texlive/tlnet/archive/metanorma.r55010.tar.xz
2019/02/28 | 585804 | systems/texlive/tlnet/archive/metaobj.doc.r15878.tar.xz
@@ -306966,8 +306973,8 @@
2019/02/28 | 292656 | systems/texlive/tlnet/archive/simplecv.doc.r35537.tar.xz
2019/02/28 | 2112 | systems/texlive/tlnet/archive/simplecv.r35537.tar.xz
2019/02/28 | 5844 | systems/texlive/tlnet/archive/simplecv.source.r35537.tar.xz
-2023/12/30 | 2429360 | systems/texlive/tlnet/archive/simpleicons.doc.r69235.tar.xz
-2023/12/30 | 3320692 | systems/texlive/tlnet/archive/simpleicons.r69235.tar.xz
+2024/01/13 | 2432460 | systems/texlive/tlnet/archive/simpleicons.doc.r69396.tar.xz
+2024/01/13 | 3325712 | systems/texlive/tlnet/archive/simpleicons.r69396.tar.xz
2019/02/28 | 224844 | systems/texlive/tlnet/archive/simpleinvoice.doc.r45673.tar.xz
2019/02/28 | 2420 | systems/texlive/tlnet/archive/simpleinvoice.r45673.tar.xz
2023/10/03 | 142696 | systems/texlive/tlnet/archive/simplekv.doc.r68439.tar.xz
@@ -307652,13 +307659,13 @@
2023/08/16 | 108860 | systems/texlive/tlnet/archive/tex4ht.amd64-freebsd.r67940.tar.xz
2023/08/16 | 87320 | systems/texlive/tlnet/archive/tex4ht.amd64-netbsd.r67940.tar.xz
2023/08/16 | 69948 | systems/texlive/tlnet/archive/tex4ht.armhf-linux.r67940.tar.xz
-2024/01/11 | 136384 | systems/texlive/tlnet/archive/tex4ht.doc.r69375.tar.xz
+2024/01/13 | 136384 | systems/texlive/tlnet/archive/tex4ht.doc.r69405.tar.xz
2023/08/16 | 93764 | systems/texlive/tlnet/archive/tex4ht.i386-freebsd.r67940.tar.xz
2023/08/16 | 91236 | systems/texlive/tlnet/archive/tex4ht.i386-linux.r67940.tar.xz
2023/08/16 | 76184 | systems/texlive/tlnet/archive/tex4ht.i386-netbsd.r67940.tar.xz
2023/08/16 | 83936 | systems/texlive/tlnet/archive/tex4ht.i386-solaris.r67940.tar.xz
-2024/01/11 | 1115932 | systems/texlive/tlnet/archive/tex4ht.r69375.tar.xz
-2024/01/11 | 1481104 | systems/texlive/tlnet/archive/tex4ht.source.r69375.tar.xz
+2024/01/13 | 1116108 | systems/texlive/tlnet/archive/tex4ht.r69405.tar.xz
+2024/01/13 | 1479328 | systems/texlive/tlnet/archive/tex4ht.source.r69405.tar.xz
2023/08/16 | 184636 | systems/texlive/tlnet/archive/tex4ht.universal-darwin.r67940.tar.xz
2023/10/23 | 62056 | systems/texlive/tlnet/archive/tex4ht.windows.r68621.tar.xz
2023/08/16 | 57992 | systems/texlive/tlnet/archive/tex4ht.x86_64-cygwin.r67940.tar.xz
@@ -307936,7 +307943,7 @@
2022/09/13 | 600 | systems/texlive/tlnet/archive/texlive-scripts.amd64-freebsd.r64356.tar.xz
2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.amd64-netbsd.r64356.tar.xz
2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.armhf-linux.r64356.tar.xz
-2024/01/12 | 431292 | systems/texlive/tlnet/archive/texlive-scripts.doc.r69377.tar.xz
+2024/01/13 | 431344 | systems/texlive/tlnet/archive/texlive-scripts.doc.r69394.tar.xz
2020/01/27 | 916 | systems/texlive/tlnet/archive/texlive-scripts-extra.aarch64-linux.r53577.tar.xz
2020/01/27 | 924 | systems/texlive/tlnet/archive/texlive-scripts-extra.amd64-freebsd.r53577.tar.xz
2020/01/27 | 916 | systems/texlive/tlnet/archive/texlive-scripts-extra.amd64-netbsd.r53577.tar.xz
@@ -307958,7 +307965,7 @@
2022/09/13 | 592 | systems/texlive/tlnet/archive/texlive-scripts.i386-linux.r64356.tar.xz
2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.i386-netbsd.r64356.tar.xz
2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.i386-solaris.r64356.tar.xz
-2024/01/12 | 114280 | systems/texlive/tlnet/archive/texlive-scripts.r69377.tar.xz
+2024/01/13 | 114256 | systems/texlive/tlnet/archive/texlive-scripts.r69394.tar.xz
2022/09/13 | 580 | systems/texlive/tlnet/archive/texlive-scripts.universal-darwin.r64356.tar.xz
2023/05/14 | 60312 | systems/texlive/tlnet/archive/texlive-scripts.windows.r67095.tar.xz
2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.x86_64-cygwin.r64356.tar.xz
@@ -308537,9 +308544,9 @@
2019/02/28 | 311568 | systems/texlive/tlnet/archive/tocbibind.doc.r20085.tar.xz
2019/02/28 | 2916 | systems/texlive/tlnet/archive/tocbibind.r20085.tar.xz
2019/02/28 | 12776 | systems/texlive/tlnet/archive/tocbibind.source.r20085.tar.xz
-2023/01/04 | 949356 | systems/texlive/tlnet/archive/tocdata.doc.r65451.tar.xz
-2023/01/04 | 3356 | systems/texlive/tlnet/archive/tocdata.r65451.tar.xz
-2023/01/04 | 12028 | systems/texlive/tlnet/archive/tocdata.source.r65451.tar.xz
+2024/01/13 | 949528 | systems/texlive/tlnet/archive/tocdata.doc.r69402.tar.xz
+2024/01/13 | 3384 | systems/texlive/tlnet/archive/tocdata.r69402.tar.xz
+2024/01/13 | 12052 | systems/texlive/tlnet/archive/tocdata.source.r69402.tar.xz
2020/01/11 | 496680 | systems/texlive/tlnet/archive/tocloft.doc.r53364.tar.xz
2020/01/11 | 6148 | systems/texlive/tlnet/archive/tocloft.r53364.tar.xz
2020/01/11 | 29068 | systems/texlive/tlnet/archive/tocloft.source.r53364.tar.xz
@@ -309857,16 +309864,16 @@
2020/07/18 | 47816 | systems/texlive/tlnet/archive/zztex.doc.r55862.tar.xz
2020/07/18 | 101724 | systems/texlive/tlnet/archive/zztex.r55862.tar.xz
2024/01/07 | 125782 | systems/texlive/tlnet/install-tl
-2024/01/12 | 5745806 | systems/texlive/tlnet/install-tl-unx.tar.gz
-2024/01/12 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
-2024/01/12 | 488 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
+2024/01/13 | 5746733 | systems/texlive/tlnet/install-tl-unx.tar.gz
+2024/01/13 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
+2024/01/13 | 488 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
2023/05/13 | 5083 | systems/texlive/tlnet/install-tl-windows.bat
-2024/01/12 | 21031951 | systems/texlive/tlnet/install-tl-windows.exe
-2024/01/12 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
-2024/01/12 | 488 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
-2024/01/12 | 26032779 | systems/texlive/tlnet/install-tl.zip
-2024/01/12 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
-2024/01/12 | 488 | systems/texlive/tlnet/install-tl.zip.sha512.asc
+2024/01/13 | 21032491 | systems/texlive/tlnet/install-tl-windows.exe
+2024/01/13 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
+2024/01/13 | 488 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
+2024/01/13 | 26032772 | systems/texlive/tlnet/install-tl.zip
+2024/01/13 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
+2024/01/13 | 488 | systems/texlive/tlnet/install-tl.zip.sha512.asc
2023/03/19 | 1229 | systems/texlive/tlnet/README.md
2023/03/19 | 0 | systems/texlive/tlnet/TEXLIVE_2023
2024/01/02 | 9011 | systems/texlive/tlnet/tlpkg/gpg/pubring.gpg
@@ -309876,7 +309883,7 @@
2024/01/02 | 1280 | systems/texlive/tlnet/tlpkg/gpg/trustdb.gpg
2023/09/20 | 50622 | systems/texlive/tlnet/tlpkg/installer/config.guess
2010/11/11 | 11651 | systems/texlive/tlnet/tlpkg/installer/COPYING.MinGW-runtime.txt
-2024/01/11 | 7407 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
+2024/01/12 | 7360 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
2023/12/13 | 226639 | systems/texlive/tlnet/tlpkg/installer/curl/curl-ca-bundle.crt
2020/04/15 | 2606592 | systems/texlive/tlnet/tlpkg/installer/curl/curl.exe
2017/04/16 | 2629 | systems/texlive/tlnet/tlpkg/installer/installer-options.txt
@@ -309918,12 +309925,12 @@
2023/02/21 | 20371 | systems/texlive/tlnet/tlpkg/TeXLive/TLCrypto.pm
2024/01/07 | 5844 | systems/texlive/tlnet/tlpkg/TeXLive/TLDownload.pm
2023/04/08 | 28167 | systems/texlive/tlnet/tlpkg/TeXLive/TLPaper.pm
-2024/01/12 | 18797332 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
-2024/01/12 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
+2024/01/13 | 18799748 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
+2024/01/13 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
2023/10/16 | 87924 | systems/texlive/tlnet/tlpkg/TeXLive/TLPDB.pm
-2024/01/12 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
-2024/01/12 | 484 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
-2024/01/12 | 2518752 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
+2024/01/13 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
+2024/01/13 | 488 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
+2024/01/13 | 2521140 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
2023/02/20 | 58928 | systems/texlive/tlnet/tlpkg/TeXLive/TLPOBJ.pm
2023/06/11 | 42749 | systems/texlive/tlnet/tlpkg/TeXLive/TLPSRC.pm
2023/02/21 | 16138 | systems/texlive/tlnet/tlpkg/TeXLive/TLTREE.pm
@@ -320996,7 +321003,7 @@
2014/07/05 | 611 | systems/win32/yandy/README
2014/07/05 | 1004628 | systems/win32/yandy/yandy-src.tar.xz
2014/07/05 | 1012416 | systems/win32/yandy.zip
-2024/01/13 | 186 | timestamp
+2024/01/14 | 186 | timestamp
2002/08/26 | 61898 | usergrps/dante/antrag.pdf
2002/08/26 | 118217 | usergrps/dante/antrag.ps
2021/11/11 | 917 | usergrps/dante/dtk/doc/beispiel.bib
diff --git a/FILES.byname.gz b/FILES.byname.gz
index 995f6f7d45..5de2ad36a8 100644
--- a/FILES.byname.gz
+++ b/FILES.byname.gz
Binary files differ
diff --git a/FILES.last07days b/FILES.last07days
index 791238b4e1..5b42af6943 100644
--- a/FILES.last07days
+++ b/FILES.last07days
@@ -1,3 +1,71 @@
+2024/01/13 | 949528 | systems/texlive/tlnet/archive/tocdata.doc.r69402.tar.xz
+2024/01/13 | 8668 | systems/texlive/tlnet/archive/metalogox.source.r69401.tar.xz
+2024/01/13 | 86404 | macros/latex/contrib/easybook/easybook.tex
+2024/01/13 | 8248 | systems/texlive/tlnet/archive/braids.r69398.tar.xz
+2024/01/13 | 8168 | systems/texlive/tlnet/archive/bibcop.r69395.tar.xz
+2024/01/13 | 783420 | systems/texlive/tlnet/archive/braids.doc.r69398.tar.xz
+2024/01/13 | 75281 | macros/latex/contrib/easybook/easybook.dtx
+2024/01/13 | 738136 | systems/texlive/tlnet/archive/bodeplot.doc.r69397.tar.xz
+2024/01/13 | 71332 | graphics/pgf/contrib/tikzquads/latex/tikzquads.sty
+2024/01/13 | 7108 | systems/texlive/tlnet/archive/keyfloat.r69399.tar.xz
+2024/01/13 | 640977 | macros/latex/contrib/easybook.zip
+2024/01/13 | 6244 | systems/texlive/tlnet/archive/bibcop.source.r69395.tar.xz
+2024/01/13 | 598558 | macros/latex/contrib/easybook/easybook.pdf
+2024/01/13 | 5788 | systems/texlive/tlnet/archive/bodeplot.r69397.tar.xz
+2024/01/13 | 5746733 | systems/texlive/tlnet/install-tl-unx.tar.gz
+2024/01/13 | 5340 | systems/texlive/tlnet/archive/lua-placeholders.r69404.tar.xz
+2024/01/13 | 500087 | graphics/pgf/contrib/tikzquads/doc/tikzquads.pdf
+2024/01/13 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
+2024/01/13 | 48906 | graphics/pgf/contrib/tikzquads/doc/tikzquads.tex
+2024/01/13 | 488 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
+2024/01/13 | 488 | systems/texlive/tlnet/install-tl.zip.sha512.asc
+2024/01/13 | 488 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
+2024/01/13 | 488 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
+2024/01/13 | 449252 | graphics/pgf/contrib/tikzquads.zip
+2024/01/13 | 431344 | systems/texlive/tlnet/archive/texlive-scripts.doc.r69394.tar.xz
+2024/01/13 | 4224 | systems/texlive/tlnet/archive/labelschanged.source.r69400.tar.xz
+2024/01/13 | 4212 | systems/texlive/tlnet/archive/metalogox.r69401.tar.xz
+2024/01/13 | 4115372 | biblio/ctan-bibdata.zip
+2024/01/13 | 380132 | systems/texlive/tlnet/archive/metalogox.doc.r69401.tar.xz
+2024/01/13 | 3708800 | biblio/ctan-bibdata/ctan.pdf
+2024/01/13 | 359716 | systems/texlive/tlnet/archive/bibcop.doc.r69395.tar.xz
+2024/01/13 | 345874 | macros/latex/contrib/docshots.zip
+2024/01/13 | 342450 | macros/latex/contrib/docshots/docshots.pdf
+2024/01/13 | 3384 | systems/texlive/tlnet/archive/tocdata.r69402.tar.xz
+2024/01/13 | 3325712 | systems/texlive/tlnet/archive/simpleicons.r69396.tar.xz
+2024/01/13 | 31332 | systems/texlive/tlnet/archive/keyfloat.source.r69399.tar.xz
+2024/01/13 | 29728 | systems/texlive/tlnet/archive/lua-typo.source.r69403.tar.xz
+2024/01/13 | 297064 | systems/texlive/tlnet/archive/lua-typo.doc.r69403.tar.xz
+2024/01/13 | 2838676 | biblio/ctan-bibdata/ctan.bib
+2024/01/13 | 270 | macros/latex/contrib/docshots/DEPENDS.txt
+2024/01/13 | 2634 | macros/latex/contrib/docshots/docshots.ins
+2024/01/13 | 26032772 | systems/texlive/tlnet/install-tl.zip
+2024/01/13 | 255384 | systems/texlive/tlnet/archive/lua-placeholders.doc.r69404.tar.xz
+2024/01/13 | 2521140 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
+2024/01/13 | 2432460 | systems/texlive/tlnet/archive/simpleicons.doc.r69396.tar.xz
+2024/01/13 | 22708 | macros/latex/contrib/docshots/docshots.dtx
+2024/01/13 | 2135 | graphics/pgf/contrib/tikzquads/README.md
+2024/01/13 | 210564 | systems/texlive/tlnet/archive/labelschanged.doc.r69400.tar.xz
+2024/01/13 | 21032491 | systems/texlive/tlnet/install-tl-windows.exe
+2024/01/13 | 18799748 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
+2024/01/13 | 17376 | systems/texlive/tlnet/archive/bodeplot.source.r69397.tar.xz
+2024/01/13 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx
+2024/01/13 | 16400 | systems/texlive/tlnet/archive/braids.source.r69398.tar.xz
+2024/01/13 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
+2024/01/13 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
+2024/01/13 | 1479328 | systems/texlive/tlnet/archive/tex4ht.source.r69405.tar.xz
+2024/01/13 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
+2024/01/13 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
+2024/01/13 | 1419 | macros/latex/contrib/docshots/README.md
+2024/01/13 | 136384 | systems/texlive/tlnet/archive/tex4ht.doc.r69405.tar.xz
+2024/01/13 | 13004 | systems/texlive/tlnet/archive/lua-typo.r69403.tar.xz
+2024/01/13 | 12052 | systems/texlive/tlnet/archive/tocdata.source.r69402.tar.xz
+2024/01/13 | 114256 | systems/texlive/tlnet/archive/texlive-scripts.r69394.tar.xz
+2024/01/13 | 1116108 | systems/texlive/tlnet/archive/tex4ht.r69405.tar.xz
+2024/01/13 | 1083 | macros/latex/contrib/docshots/LICENSE.txt
+2024/01/13 | 1052904 | systems/texlive/tlnet/archive/keyfloat.doc.r69399.tar.xz
+2024/01/13 | 1032 | systems/texlive/tlnet/archive/labelschanged.r69400.tar.xz
+2024/01/13 | 1020 | systems/texlive/tlnet/archive/collection-luatex.r69404.tar.xz
2024/01/12 | 969452 | systems/texlive/tlnet/archive/newtx.doc.r69381.tar.xz
2024/01/12 | 960487 | macros/latex/contrib/tocdata.zip
2024/01/12 | 958 | biblio/bibtex/utils/bibcop/bibcop.1
@@ -6,9 +74,9 @@
2024/01/12 | 9068 | systems/texlive/tlnet/archive/eolang.r69391.tar.xz
2024/01/12 | 8944 | systems/texlive/tlnet/archive/verifycommand.source.r69389.tar.xz
2024/01/12 | 859091 | graphics/pgf/contrib/braids.zip
-2024/01/12 | 8120 | systems/texlive/tlnet/archive/bibcop.r69378.tar.xz
2024/01/12 | 8048 | systems/texlive/tlnet/archive/fontsetup.r69390.tar.xz
2024/01/12 | 786284 | graphics/pgf/contrib/bodeplot.zip
+2024/01/12 | 7360 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
2024/01/12 | 7268 | macros/luatex/latex/lua-placeholders/scripts/lua-placeholders.lua
2024/01/12 | 7068 | systems/texlive/tlnet/archive/collection-latexextra.r69389.tar.xz
2024/01/12 | 6863 | macros/luatex/latex/lua-placeholders/scripts/lua-placeholders-types.lua
@@ -16,11 +84,9 @@
2024/01/12 | 6657 | macros/luatex/latex/lua-placeholders/doc/lua-placeholders-example/example.tex
2024/01/12 | 660 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsonetwo.tfm
2024/01/12 | 6250664 | systems/texlive/tlnet/archive/newcomputermodern.r69379.tar.xz
-2024/01/12 | 6236 | systems/texlive/tlnet/archive/bibcop.source.r69378.tar.xz
2024/01/12 | 6062578 | fonts/simpleicons.zip
2024/01/12 | 6054248 | systems/texlive/tlnet/archive/newtx.r69381.tar.xz
2024/01/12 | 597956 | systems/texlive/tlnet/archive/fontsetup.doc.r69390.tar.xz
-2024/01/12 | 5745806 | systems/texlive/tlnet/install-tl-unx.tar.gz
2024/01/12 | 559 | macros/latex/contrib/labelschanged/README.txt
2024/01/12 | 5456 | macros/latex/contrib/keyfloat/images/image.pdf
2024/01/12 | 521 | macros/latex/contrib/metalogox/README.txt
@@ -30,26 +96,18 @@
2024/01/12 | 5100 | biblio/bibtex/utils/bibcop/bibcop-logo.pdf
2024/01/12 | 502300 | systems/texlive/tlnet/archive/ffcode.doc.r69383.tar.xz
2024/01/12 | 4936 | systems/texlive/tlnet/archive/ffcode.source.r69383.tar.xz
-2024/01/12 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
-2024/01/12 | 488 | systems/texlive/tlnet/install-tl.zip.sha512.asc
-2024/01/12 | 488 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
-2024/01/12 | 488 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
-2024/01/12 | 484 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
2024/01/12 | 476084 | systems/texlive/tlnet/archive/newpx.doc.r69380.tar.xz
2024/01/12 | 4743944 | systems/texlive/tlnet/archive/newpx.r69380.tar.xz
2024/01/12 | 473116 | systems/texlive/tlnet/archive/lwarp.source.r69384.tar.xz
2024/01/12 | 4700 | macros/latex/contrib/keyfloat/images/image2.pdf
2024/01/12 | 43755 | macros/latex/contrib/metalogox/metalogox.dtx
-2024/01/12 | 431292 | systems/texlive/tlnet/archive/texlive-scripts.doc.r69377.tar.xz
2024/01/12 | 41316 | macros/luatex/latex/lua-typo/lua-typo-2023-03-08.sty
-2024/01/12 | 4115135 | biblio/ctan-bibdata.zip
2024/01/12 | 4028 | systems/texlive/tlnet/archive/tikzquests.r69388.tar.xz
2024/01/12 | 392 | systems/texlive/tlnet/archive/newpx.source.r69380.tar.xz
2024/01/12 | 388232 | macros/latex/contrib/metalogox.zip
2024/01/12 | 3865 | fonts/simpleicons/enc/simpleiconsone.enc
2024/01/12 | 385859 | macros/latex/contrib/metalogox/metalogox.pdf
2024/01/12 | 3714 | fonts/simpleicons/enc/simpleiconsonezero.enc
-2024/01/12 | 3708800 | biblio/ctan-bibdata/ctan.pdf
2024/01/12 | 3698 | fonts/simpleicons/enc/simpleiconsthree.enc
2024/01/12 | 3695 | fonts/simpleicons/enc/simpleiconsfour.enc
2024/01/12 | 3694 | fonts/simpleicons/enc/simpleiconsfive.enc
@@ -59,7 +117,6 @@
2024/01/12 | 3646 | fonts/simpleicons/enc/simpleiconseight.enc
2024/01/12 | 3636 | macros/luatex/latex/lua-typo/README.md
2024/01/12 | 3599 | fonts/simpleicons/enc/simpleiconsnine.enc
-2024/01/12 | 359716 | systems/texlive/tlnet/archive/bibcop.doc.r69378.tar.xz
2024/01/12 | 3557 | fonts/simpleicons/enc/simpleiconsoneone.enc
2024/01/12 | 3542 | fonts/simpleicons/enc/simpleiconssix.enc
2024/01/12 | 351825 | macros/luatex/latex/lua-typo.zip
@@ -86,7 +143,6 @@
2024/01/12 | 2997 | macros/luatex/latex/lua-typo/doc/lua-typo-demo.tex
2024/01/12 | 2917 | biblio/bibtex/utils/bibcop/README.md
2024/01/12 | 2846 | macros/luatex/latex/lua-placeholders/tex/lua-placeholders.sty
-2024/01/12 | 2837732 | biblio/ctan-bibdata/ctan.bib
2024/01/12 | 281897 | fonts/simpleicons/tex/simpleiconsglyphs-pdftex.tex
2024/01/12 | 2788 | fonts/simpleicons/enc/simpleiconsonetwo.enc
2024/01/12 | 275853 | fonts/simpleicons/tex/simpleiconsglyphs-xeluatex.tex
@@ -99,7 +155,6 @@
2024/01/12 | 264 | fonts/simpleicons/tex/usimpleiconsseven.fd
2024/01/12 | 264 | fonts/simpleicons/tex/usimpleiconseight.fd
2024/01/12 | 2628 | biblio/bibtex/utils/bibcop/bibcop.ins
-2024/01/12 | 26032779 | systems/texlive/tlnet/install-tl.zip
2024/01/12 | 259 | fonts/simpleicons/tex/usimpleiconsnine.fd
2024/01/12 | 259 | fonts/simpleicons/tex/usimpleiconsfour.fd
2024/01/12 | 259 | fonts/simpleicons/tex/usimpleiconsfive.fd
@@ -109,8 +164,8 @@
2024/01/12 | 254 | fonts/simpleicons/tex/usimpleiconstwo.fd
2024/01/12 | 254 | fonts/simpleicons/tex/usimpleiconssix.fd
2024/01/12 | 254 | fonts/simpleicons/tex/usimpleiconsone.fd
-2024/01/12 | 2518752 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
2024/01/12 | 2421852 | fonts/simpleicons/doc/simpleicons.pdf
+2024/01/12 | 242028 | support/TeX4ht/source/ChangeLog
2024/01/12 | 2336392 | fonts/simpleicons/opentype/SimpleIcons.otf
2024/01/12 | 2328 | systems/texlive/tlnet/archive/superiors.r69387.tar.xz
2024/01/12 | 2304 | systems/texlive/tlnet/archive/eolang.windows.r69391.tar.xz
@@ -124,15 +179,12 @@
2024/01/12 | 213587 | macros/latex/contrib/labelschanged.zip
2024/01/12 | 211 | biblio/bibtex/utils/bibcop/DEPENDS.txt
2024/01/12 | 2116 | systems/texlive/tlnet/archive/ffcode.r69383.tar.xz
-2024/01/12 | 21031951 | systems/texlive/tlnet/install-tl-windows.exe
2024/01/12 | 2004 | systems/texlive/tlnet/archive/verifycommand.r69389.tar.xz
-2024/01/12 | 18797332 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
2024/01/12 | 1812 | fonts/simpleicons/doc/simpleicons.tex
2024/01/12 | 1762016 | systems/texlive/tlnet/archive/proflycee.doc.r69386.tar.xz
2024/01/12 | 16972 | systems/texlive/tlnet/archive/eolang.source.r69391.tar.xz
2024/01/12 | 16859 | macros/luatex/latex/lua-typo/doc/lua-typo-demo.pdf
2024/01/12 | 168037 | fonts/simpleicons/doc/bindings.tex
-2024/01/12 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx
2024/01/12 | 1674 | macros/latex/contrib/metalogox/metalogox.ins
2024/01/12 | 164768 | macros/latex/contrib/keyfloat/keyfloat.dtx
2024/01/12 | 1644 | macros/latex/contrib/keyfloat/keyfloat.ins
@@ -140,13 +192,9 @@
2024/01/12 | 16344 | biblio/bibtex/utils/bibcop/bibcop.dtx
2024/01/12 | 1632 | fonts/simpleicons/tex/simpleicons.sty
2024/01/12 | 15726400 | systems/texlive/tlnet/archive/newcomputermodern.doc.r69379.tar.xz
-2024/01/12 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
-2024/01/12 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
2024/01/12 | 152072 | systems/texlive/tlnet/archive/pgfkeysearch.doc.r69385.tar.xz
-2024/01/12 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
2024/01/12 | 1459 | macros/latex/contrib/tocdata/README.txt
2024/01/12 | 1454556 | systems/texlive/tlnet/archive/eolang.doc.r69391.tar.xz
-2024/01/12 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
2024/01/12 | 14189 | macros/luatex/latex/lua-placeholders/doc/lua-placeholders-manual.tex
2024/01/12 | 1353 | fonts/simpleicons/map/simpleicons.map
2024/01/12 | 129088 | macros/luatex/latex/lua-typo/source/lua-typo.dtx
@@ -163,8 +211,8 @@
2024/01/12 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsfive.tfm
2024/01/12 | 1222 | macros/luatex/latex/lua-placeholders/scripts/lua-placeholders-common.lua
2024/01/12 | 1207 | fonts/simpleicons/README.md
+2024/01/12 | 1173443 | support/TeX4ht/source/tex4ht-4ht.tex
2024/01/12 | 1154 | macros/latex/contrib/keyfloat/README.txt
-2024/01/12 | 114280 | systems/texlive/tlnet/archive/texlive-scripts.r69377.tar.xz
2024/01/12 | 1088701 | macros/latex/contrib/keyfloat.zip
2024/01/12 | 1083 | biblio/bibtex/utils/bibcop/LICENSE.txt
2024/01/12 | 107762 | macros/luatex/latex/lua-typo/doc/lua-typo-fr.pdf
@@ -183,7 +231,6 @@
2024/01/11 | 75126 | dviware/dvisvgm/doc/dvisvgm.1
2024/01/11 | 7487 | dviware/dvisvgm/src/Makefile.am
2024/01/11 | 741 | macros/latex/contrib/eolang/eolang.1
-2024/01/11 | 7407 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
2024/01/11 | 7274 | dviware/dvisvgm/src/ImageToSVG.cpp
2024/01/11 | 7237 | graphics/pgf/contrib/tikzdotncross/latex/tikzdotncross.sty
2024/01/11 | 721 | macros/latex/contrib/verifycommand/README.txt
@@ -300,14 +347,12 @@
2024/01/11 | 15731 | dviware/dvisvgm/libs/boost/Makefile.in
2024/01/11 | 15719 | dviware/dvisvgm/libs/variant/Makefile.in
2024/01/11 | 155509 | macros/latex/contrib/pgfkeysearch.zip
-2024/01/11 | 1481104 | systems/texlive/tlnet/archive/tex4ht.source.r69375.tar.xz
2024/01/11 | 1462653 | macros/latex/contrib/proflycee/doc/ProfLycee-doc.pdf
2024/01/11 | 1444 | macros/unicodetex/latex/fontsetup/tex/fspeulerot.tex
2024/01/11 | 14247 | dviware/dvisvgm/src/DvisvgmSpecialHandler.cpp
2024/01/11 | 1416 | graphics/pgf/contrib/bodeplot/bodeplot.ins
2024/01/11 | 14005 | dviware/dvisvgm/tests/DvisvgmSpecialTest.cpp
2024/01/11 | 13894 | dviware/dvisvgm/tests/data/Makefile.in
-2024/01/11 | 136384 | systems/texlive/tlnet/archive/tex4ht.doc.r69375.tar.xz
2024/01/11 | 1348 | macros/latex/contrib/ffcode/README.md
2024/01/11 | 1338 | dviware/dvisvgm/libs/woff2/src/store_bytes.h
2024/01/11 | 1300 | macros/latex/contrib/eolang/README.md
@@ -316,7 +361,6 @@
2024/01/11 | 116760 | systems/texlive/tlnet/archive/latexmk.r69373.tar.xz
2024/01/11 | 11670 | macros/latex/contrib/ffcode/ffcode.dtx
2024/01/11 | 11496 | systems/texlive/tlnet/archive/physics2.source.r69369.tar.xz
-2024/01/11 | 1115932 | systems/texlive/tlnet/archive/tex4ht.r69375.tar.xz
2024/01/11 | 1090159 | macros/unicodetex/latex/fontsetup.zip
2024/01/11 | 1085542 | graphics/pgf/contrib/bodeplot/bodeplot-doc.pdf
2024/01/11 | 1083 | macros/latex/contrib/ffcode/LICENSE.txt
@@ -447,7 +491,6 @@
2024/01/10 | 2524 | systems/texlive/tlnet/archive/thematicpuzzle.r69356.tar.xz
2024/01/10 | 24663 | macros/latex/contrib/tcolorbox/tcolorbox.doc.fitting.tex
2024/01/10 | 242842 | support/latexmk/latexmk.txt
-2024/01/10 | 241839 | support/TeX4ht/source/ChangeLog
2024/01/10 | 2400 | macros/luatex/latex/pyluatex/example/typesetting-listings.tex
2024/01/10 | 2349 | macros/latex/contrib/tcolorbox/tcbprocessing.code.tex
2024/01/10 | 2310 | macros/luatex/latex/pyluatex/example/repl.tex
@@ -495,7 +538,6 @@
2024/01/10 | 12459 | macros/latex/contrib/tcolorbox/tcbposter.code.tex
2024/01/10 | 11830 | macros/latex/contrib/tcolorbox/tcolorbox.doc.s_main.sty
2024/01/10 | 1180639 | macros/latex/contrib/texshade.zip
-2024/01/10 | 1172675 | support/TeX4ht/source/tex4ht-4ht.tex
2024/01/10 | 116834 | macros/luatex/latex/pyluatex.zip
2024/01/10 | 113061 | macros/latex/contrib/tcolorbox/tcolorbox.doc.skins.tex
2024/01/10 | 112 | macros/latex/contrib/tcolorbox/tcolorbox.doc.index.tex
@@ -793,7 +835,6 @@
2024/01/09 | 856 | fonts/junicode/vf/Junicode-BoldItalic-lf-sc-ot1.vf
2024/01/09 | 85588 | fonts/junicode/tfm/Junicode-SmExpSmBold-tosf-ly1.tfm
2024/01/09 | 85472 | fonts/junicode/tfm/Junicode-SmExpMedium-lf-ly1.tfm
-2024/01/09 | 85392 | macros/latex/contrib/easybook/easybook.tex
2024/01/09 | 85344 | fonts/junicode/tfm/Junicode-SmExpMedium-osf-ly1.tfm
2024/01/09 | 852 | fonts/junicode/vf/Junicode-SmExpSmBoldItalic-tosf-ot1.vf
2024/01/09 | 852 | fonts/junicode/vf/Junicode-SmExpSmBoldItalic-tlf-ot1.vf
@@ -1013,7 +1054,6 @@
2024/01/09 | 75468 | fonts/junicode/tfm/Junicode-SmExp-tlf-sc-ly1.tfm
2024/01/09 | 75452 | fonts/junicode/tfm/Junicode-BoldItalic-tlf-ly1.tfm
2024/01/09 | 75444 | fonts/junicode/tfm/Junicode-BoldItalic-tosf-ly1.tfm
-2024/01/09 | 75339 | macros/latex/contrib/easybook/easybook.dtx
2024/01/09 | 75336 | fonts/junicode/tfm/Junicode-SmExpSmBold-osf-sc-ly1.tfm
2024/01/09 | 75236 | fonts/junicode/tfm/Junicode-ExpItalic-tlf-ly1.tfm
2024/01/09 | 75224 | fonts/junicode/tfm/Junicode-ExpItalic-tosf-ly1.tfm
@@ -1146,7 +1186,6 @@
2024/01/09 | 63580 | fonts/junicode/tfm/Junicode-CondItalic-lf-sc-ly1.tfm
2024/01/09 | 63504 | fonts/junicode/tfm/Junicode-SmCondMediumItalic-lf-sc-ly1.tfm
2024/01/09 | 63476 | fonts/junicode/tfm/Junicode-BoldItalic-osf-sc-ly1.tfm
-2024/01/09 | 634290 | macros/latex/contrib/easybook.zip
2024/01/09 | 6336 | macros/latex/contrib/l3build/l3build-aux.lua
2024/01/09 | 63276 | fonts/junicode/tfm/Junicode-LightItalic-lf-sc-ly1.tfm
2024/01/09 | 63272 | fonts/junicode/tfm/Junicode-CondMediumItalic-osf-sc-ly1.tfm
@@ -1173,7 +1212,6 @@
2024/01/09 | 61760 | fonts/junicode/tfm/Junicode-CondLightItalic-tlf-sc-ly1.tfm
2024/01/09 | 59994 | fonts/junicodevf/doc/tag_key_ins.tex
2024/01/09 | 59994 | fonts/junicode/doc/tag_key_ins.tex
-2024/01/09 | 592282 | macros/latex/contrib/easybook/easybook.pdf
2024/01/09 | 5610 | macros/latex/contrib/href-ul/href-ul.dtx
2024/01/09 | 560 | fonts/junicode/vf/Junicode-SmExpSmBoldItalic-tosf-ts1.vf
2024/01/09 | 560 | fonts/junicode/vf/Junicode-SmExpMediumItalic-tosf-ts1.vf
@@ -1601,7 +1639,6 @@
2024/01/09 | 3448 | fonts/junicode/tfm/Junicode-SmExpItalic-tosf-lgr.tfm
2024/01/09 | 3448 | fonts/junicode/tfm/Junicode-SmExpItalic-tlf-lgr.tfm
2024/01/09 | 3448 | fonts/junicode/tfm/Junicode-CondItalic-tosf-lgr.tfm
-2024/01/09 | 344745 | macros/latex/contrib/docshots.zip
2024/01/09 | 344744 | systems/texlive/tlnet/archive/minim.doc.r69352.tar.xz
2024/01/09 | 3440 | fonts/junicode/tfm/Junicode-SmExpSmBoldItalic-tlf-lgr.tfm
2024/01/09 | 3440 | fonts/junicode/tfm/Junicode-ExpItalic-tlf-lgr.tfm
@@ -1615,7 +1652,6 @@
2024/01/09 | 3424 | fonts/junicode/tfm/Junicode-SmExpMediumItalic-tlf-lgr.tfm
2024/01/09 | 3420 | systems/texlive/tlnet/archive/spbmark.r69350.tar.xz
2024/01/09 | 3416 | fonts/junicode/tfm/Junicode-SmExpMediumItalic-tosf-lgr.tfm
-2024/01/09 | 341476 | macros/latex/contrib/docshots/docshots.pdf
2024/01/09 | 3412 | fonts/junicode/tfm/Junicode-SmCondItalic-tlf-lgr.tfm
2024/01/09 | 3408 | fonts/junicode/tfm/Junicode-SmCondItalic-tosf-lgr.tfm
2024/01/09 | 3408 | fonts/junicode/tfm/Junicode-CondLightItalic-tosf-lgr.tfm
@@ -1733,8 +1769,6 @@
2024/01/09 | 2792 | fonts/junicode/enc/jncd_ldcvmr.enc
2024/01/09 | 2754408 | fonts/junicodevf/truetype/JunicodeVF-Roman.ttf
2024/01/09 | 2746 | macros/latex/contrib/l3build/l3build-unpack.lua
-2024/01/09 | 270 | macros/latex/contrib/docshots/DEPENDS.txt
-2024/01/09 | 2634 | macros/latex/contrib/docshots/docshots.ins
2024/01/09 | 2631 | macros/latex/contrib/href-ul/href-ul.ins
2024/01/09 | 2611 | macros/latex/contrib/changebar/changebar.ins
2024/01/09 | 25444 | systems/texlive/tlnet/archive/minim.r69352.tar.xz
@@ -1754,7 +1788,6 @@
2024/01/09 | 22221 | fonts/junicode/latex/LY1Junicode-TOsF.fd
2024/01/09 | 22221 | fonts/junicode/latex/LGRJunicode-TOsF.fd
2024/01/09 | 22200 | fonts/junicode/tfm/Junicode-ExpSmBold-osf-ot1.tfm
-2024/01/09 | 22016 | macros/latex/contrib/docshots/docshots.dtx
2024/01/09 | 22004 | fonts/junicode/tfm/Junicode-ExpSmBold-tlf-ot1.tfm
2024/01/09 | 21944 | fonts/junicode/latex/T1Junicode-TOsF.fd
2024/01/09 | 21868 | fonts/junicode/tfm/Junicode-SmBoldItalic-lf-ot1.tfm
@@ -3912,7 +3945,6 @@
2024/01/09 | 1420 | fonts/junicode/tfm/Junicode-Cond-osf-ts1--base.tfm
2024/01/09 | 1420 | fonts/junicode/tfm/Junicode-CondMedium-inf-ot1.tfm
2024/01/09 | 1420 | fonts/junicode/tfm/Junicode-Cond-lf-ts1--base.tfm
-2024/01/09 | 1419 | macros/latex/contrib/docshots/README.md
2024/01/09 | 1416 | fonts/junicode/tfm/Junicode-SmExpMedium-osf-sc-ot1--base.tfm
2024/01/09 | 1416 | fonts/junicode/tfm/Junicode-SmExpMedium-lf-sc-ot1--base.tfm
2024/01/09 | 1416 | fonts/junicode/tfm/Junicode-SmCondMedium-sup-ot1.tfm
@@ -4225,7 +4257,6 @@
2024/01/09 | 108420 | fonts/junicode/tfm/Junicode-ExpMediumItalic-lf-t1.tfm
2024/01/09 | 108408 | fonts/junicode/tfm/Junicode-Cond-lf-t1.tfm
2024/01/09 | 1083 | macros/latex/contrib/href-ul/LICENSE.txt
-2024/01/09 | 1083 | macros/latex/contrib/docshots/LICENSE.txt
2024/01/09 | 108204 | fonts/junicode/tfm/Junicode-Cond-osf-t1.tfm
2024/01/09 | 108092 | fonts/junicode/tfm/Junicode-ExpMedium-tosf-sc-t1.tfm
2024/01/09 | 108040 | fonts/junicode/tfm/Junicode-Cond-tlf-t1.tfm
@@ -4823,390 +4854,3 @@
2024/01/07 | 10161 | systems/win32/miktex/tm/packages/srdp-mathematik__source.tar.lzma
2024/01/07 | 100486 | macros/latex/contrib/isphysicalmath.zip
2024/01/07 | 1003872 | systems/win32/miktex/tm/packages/mcf2graph__doc.tar.lzma
-2024/01/06 | 998 | macros/latex/contrib/beamer/base/themes/font/beamerfontthemeserif.sty
-2024/01/06 | 9951 | macros/latex/contrib/profcollege/latex/PfCTriominos.tex
-2024/01/06 | 994 | macros/latex/contrib/beamer/doc/emulation-examples/beamerexample-foils.tex
-2024/01/06 | 9902 | macros/latex/contrib/profcollege/latex/PfCDecDeci.tex
-2024/01/06 | 987 | macros/latex/contrib/profcollege/latex/PfCAllumettes.tex
-2024/01/06 | 9752363 | macros/latex/contrib/profcollege/doc/ProfCollege-doc.pdf
-2024/01/06 | 9734 | macros/latex/contrib/profcollege/latex/PfCVueCubes.tex
-2024/01/06 | 965117 | macros/luatex/latex/piton.zip
-2024/01/06 | 951161 | macros/luatex/latex/piton/piton.pdf
-2024/01/06 | 9506 | macros/latex/contrib/profcollege/latex/PfCEcrireunQCM.tex
-2024/01/06 | 9501 | macros/latex/contrib/profcollege/latex/PfCLabyrintheJeu.tex
-2024/01/06 | 949 | macros/latex/contrib/beamer/base/themes/theme/beamerthemePaloAlto.sty
-2024/01/06 | 94595 | macros/latex/contrib/profcollege/latex/PfCTableauxUnites.tex
-2024/01/06 | 941 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeBerkeley.sty
-2024/01/06 | 9404 | macros/latex/contrib/profcollege/latex/PfCPyramideCalculs.tex
-2024/01/06 | 9397 | macros/latex/contrib/beamer/base/beamerbasedecode.sty
-2024/01/06 | 9396 | macros/latex/contrib/profcollege/latex/PfCOperationsTrou.tex
-2024/01/06 | 9352 | macros/latex/contrib/beamer/CHANGELOG.md
-2024/01/06 | 9124 | macros/latex/contrib/beamer/doc/beamerug-graphics.tex
-2024/01/06 | 9078 | macros/latex/contrib/profcollege/latex/PfCCalisson.tex
-2024/01/06 | 9014 | macros/latex/contrib/beamer/base/beamerbaseframesize.sty
-2024/01/06 | 8956 | macros/latex/contrib/profcollege/latex/PfCBillard.tex
-2024/01/06 | 892 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeBoadilla.sty
-2024/01/06 | 8718 | macros/latex/contrib/beamer/doc/beameruserguide.tex
-2024/01/06 | 8711 | macros/latex/contrib/profcollege/latex/PfCShikaku.tex
-2024/01/06 | 8676 | macros/latex/contrib/profcollege/latex/PfCYohaku.tex
-2024/01/06 | 865796 | systems/texlive/tlnet/archive/l3backend.doc.r69310.tar.xz
-2024/01/06 | 863296 | systems/texlive/tlnet/archive/unravel.doc.r69308.tar.xz
-2024/01/06 | 85218 | macros/luatex/latex/piton/piton-french.tex
-2024/01/06 | 843 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemerose.sty
-2024/01/06 | 83574 | macros/latex/contrib/profcollege/latex/PfCStatistiques.tex
-2024/01/06 | 831 | macros/latex/contrib/profcollege/latex/PfCDobble.tex
-2024/01/06 | 8307 | macros/latex/contrib/profcollege/latex/PfCTortueBase.tex
-2024/01/06 | 8307 | macros/latex/contrib/beamer/doc/beamerug-tricks.tex
-2024/01/06 | 8303 | macros/latex/contrib/beamer/base/beamerbasemisc.sty
-2024/01/06 | 8300 | macros/latex/contrib/beamer/doc/solutions/conference-talks/conference-ornate-20min.fr.tex
-2024/01/06 | 825 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemeorchid.sty
-2024/01/06 | 8166 | macros/latex/contrib/profcollege/latex/PfCPourcentage.tex
-2024/01/06 | 813 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemestructure.sty
-2024/01/06 | 8137 | macros/latex/contrib/beamer/base/beamerbasenavigationsymbols.tex
-2024/01/06 | 8026 | macros/latex/contrib/beamer/doc/beamerug-twoscreens.tex
-2024/01/06 | 7962 | macros/latex/contrib/profcollege/latex/PfCDessinGradue.tex
-2024/01/06 | 7857 | macros/latex/contrib/profcollege/latex/PfCMulJap.tex
-2024/01/06 | 7845 | macros/latex/contrib/profcollege/latex/PfCCalculsFractions.tex
-2024/01/06 | 780 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeHannover.sty
-2024/01/06 | 7797 | macros/latex/contrib/profcollege/latex/PfCReseauxSociaux.tex
-2024/01/06 | 7795 | macros/latex/contrib/beamer/base/beamerbasetoc.sty
-2024/01/06 | 7733 | macros/latex/contrib/profcollege/latex/PfCProbabilites.tex
-2024/01/06 | 77281 | macros/latex/contrib/profcollege/latex/PfCReperage.tex
-2024/01/06 | 77060 | macros/latex/contrib/beamer/doc/beamerug-frames.tex
-2024/01/06 | 77032 | systems/texlive/tlnet/archive/l3experimental.source.r69310.tar.xz
-2024/01/06 | 7650 | macros/latex/contrib/profcollege/latex/PfCRangementNombres.tex
-2024/01/06 | 7614 | macros/latex/contrib/beamer/base/beamerbasemodes.sty
-2024/01/06 | 7558 | macros/latex/contrib/beamer/doc/solutions/conference-talks/conference-ornate-20min.de.tex
-2024/01/06 | 7538 | macros/latex/contrib/profcollege/latex/PfCCible.tex
-2024/01/06 | 746351 | macros/latex/contrib/tutodoc/doc/tutodoc-fr.pdf
-2024/01/06 | 7442 | macros/latex/contrib/beamer/base/beamerbaseboxes.sty
-2024/01/06 | 7422 | macros/latex/contrib/profcollege/latex/PfCNumerationsAnciennes.tex
-2024/01/06 | 7305 | macros/latex/contrib/profcollege/latex/PfCNombreAstral.tex
-2024/01/06 | 7244 | macros/latex/contrib/profcollege/latex/PfCFrise.tex
-2024/01/06 | 7202 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemedefault.sty
-2024/01/06 | 7142 | macros/latex/contrib/profcollege/latex/PfCPuissanceQuatre.tex
-2024/01/06 | 710 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemesidebartab.sty
-2024/01/06 | 7105 | macros/latex/contrib/profcollege/latex/PfCHorloge.tex
-2024/01/06 | 7102 | macros/latex/contrib/profcollege/latex/PfCPuzzleSommePyramide.tex
-2024/01/06 | 709681 | macros/latex/contrib/tutodoc/doc/tutodoc-en.pdf
-2024/01/06 | 7088 | macros/latex/contrib/profcollege/latex/PfCColorilude.tex
-2024/01/06 | 706 | macros/latex/contrib/beamer/doc/beamerinnerthemeexample.tex
-2024/01/06 | 699 | macros/latex/contrib/beamer/base/themes/font/beamerfontthemestructuresmallcapsserif.sty
-2024/01/06 | 6950 | macros/latex/contrib/beamer/base/themes/outer/beamerouterthemedefault.sty
-2024/01/06 | 6941 | macros/latex/contrib/profcollege/latex/PfCGrimuku.tex
-2024/01/06 | 692 | macros/latex/contrib/beamer/base/themes/font/beamerfontthemestructureitalicserif.sty
-2024/01/06 | 691 | macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemecompatibility.sty
-2024/01/06 | 6858 | macros/latex/contrib/beamer/doc/solutions/conference-talks/conference-ornate-20min.en.tex
-2024/01/06 | 661 | macros/latex/contrib/beamer/base/themes/font/beamerfontthemestructurebold.sty
-2024/01/06 | 6616 | macros/latex/contrib/profcollege/latex/PfCMulJal.tex
-2024/01/06 | 6578 | macros/latex/contrib/beamer/base/multimedia/xmpmulti.sty
-2024/01/06 | 6570 | macros/latex/contrib/profcollege/latex/PfCRepresenterEntier.tex
-2024/01/06 | 6525 | macros/latex/contrib/profcollege/latex/PfCMentalo.tex
-2024/01/06 | 650028 | systems/texlive/tlnet/archive/unbtex.doc.r69307.tar.xz
-2024/01/06 | 6359 | macros/latex/contrib/beamer/doc/beamerug-installation.tex
-2024/01/06 | 63579 | macros/latex/contrib/beamer/doc/beamerug-localstructure.tex
-2024/01/06 | 627 | macros/latex/contrib/beamer/base/beamerbasetranslator.sty
-2024/01/06 | 6207 | macros/latex/contrib/beamer/base/patch/beamerpatchparalist.sty
-2024/01/06 | 610352 | systems/texlive/tlnet/archive/l3kernel.source.r69310.tar.xz
-2024/01/06 | 6039 | macros/latex/contrib/beamer/doc/solutions/generic-talks/generic-ornate-15min-45min.fr.tex
-2024/01/06 | 6030 | macros/latex/contrib/profcollege/latex/PfCTectonic.tex
-2024/01/06 | 59967 | macros/latex/contrib/profcollege/metapost/PfCGeometrie.mp
-2024/01/06 | 59797 | macros/latex/contrib/profcollege/latex/PfCDistributivite.tex
-2024/01/06 | 5956 | macros/latex/contrib/beamer/base/emulation/beamerprosper.sty
-2024/01/06 | 5939420 | macros/latex/contrib/profcollege/doc/ProfCollege-doc.zip
-2024/01/06 | 58810 | macros/latex/contrib/profcollege/latex/PfCNotionFonction.tex
-2024/01/06 | 584 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeEastLansing.sty
-2024/01/06 | 5824 | macros/latex/contrib/profcollege/latex/PfCPatronPaves.tex
-2024/01/06 | 5800 | systems/texlive/tlnet/archive/morewrites.r69306.tar.xz
-2024/01/06 | 5752 | macros/latex/contrib/beamer/base/beamerbasenotes.sty
-2024/01/06 | 5743 | macros/latex/contrib/beamer/base/beamerbasetemplates.sty
-2024/01/06 | 572 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemelily.sty
-2024/01/06 | 57246 | macros/latex/contrib/profcollege/latex/PfCThales.tex
-2024/01/06 | 570 | macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemetree.sty
-2024/01/06 | 5673 | macros/latex/contrib/profcollege/latex/PfCRepresenterTableur.tex
-2024/01/06 | 559 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeRochester.sty
-2024/01/06 | 5504 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-style.tex
-2024/01/06 | 5492 | macros/latex/contrib/beamer/doc/solutions/generic-talks/generic-ornate-15min-45min.de.tex
-2024/01/06 | 548 | macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemeshadow.sty
-2024/01/06 | 547 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeMadrid.sty
-2024/01/06 | 5421 | macros/latex/contrib/profcollege/latex/PfCConversion.tex
-2024/01/06 | 54200 | systems/texlive/tlnet/archive/unravel.source.r69308.tar.xz
-2024/01/06 | 5365 | macros/latex/contrib/profcollege/latex/PfCMidpoint.tex
-2024/01/06 | 5346 | macros/latex/contrib/beamer/base/beamerbasetitle.sty
-2024/01/06 | 532 | macros/latex/contrib/tutodoc/README.md
-2024/01/06 | 5292 | macros/latex/contrib/beamer/base/themes/outer/beamerouterthemesidebar.sty
-2024/01/06 | 51776 | macros/latex/contrib/beamer/base/art/beamericononline.eps
-2024/01/06 | 5093 | macros/latex/contrib/beamer/base/themes/outer/beamerouterthememiniframes.sty
-2024/01/06 | 5073 | macros/latex/contrib/beamer/doc/solutions/generic-talks/generic-ornate-15min-45min.en.tex
-2024/01/06 | 4968 | macros/latex/contrib/profcollege/latex/PfCGeometrie.tex
-2024/01/06 | 496039 | macros/latex/contrib/todonotes.zip
-2024/01/06 | 494 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeBerlin.sty
-2024/01/06 | 491 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeIlmenau.sty
-2024/01/06 | 49011 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic5.jpg
-2024/01/06 | 480 | macros/latex/contrib/beamer/doc/beamerfontthemeexample.tex
-2024/01/06 | 476 | macros/latex/contrib/beamer/doc/beamerthemeexample.tex
-2024/01/06 | 475 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeAnnArbor.sty
-2024/01/06 | 4749 | macros/latex/contrib/profcollege/latex/PfCCryptarithme.tex
-2024/01/06 | 472 | macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemeplain.sty
-2024/01/06 | 4692 | macros/latex/contrib/profcollege/latex/PfCFutoshiki.tex
-2024/01/06 | 4665 | macros/latex/contrib/profcollege/latex/PfCCritere.tex
-2024/01/06 | 4664 | macros/latex/contrib/profcollege/latex/PfCDiagrammeRadar.tex
-2024/01/06 | 461 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeCambridgeUS.sty
-2024/01/06 | 4584 | macros/latex/contrib/profcollege/latex/PfCCalculatrice.tex
-2024/01/06 | 456844 | systems/texlive/tlnet/archive/autotype.r69309.tar.xz
-2024/01/06 | 4559 | macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemeinmargin.sty
-2024/01/06 | 454 | macros/latex/contrib/beamer/doc/beamerouterthemeexample.tex
-2024/01/06 | 4548 | macros/latex/contrib/profcollege/latex/PfCMosaique.tex
-2024/01/06 | 4538 | macros/latex/contrib/beamer/base/beamerbasetheorems.sty
-2024/01/06 | 452 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeDresden.sty
-2024/01/06 | 449 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeSzeged.sty
-2024/01/06 | 4431 | macros/latex/contrib/beamer/base/themes/outer/beamerouterthemesmoothbars.sty
-2024/01/06 | 4369 | macros/latex/contrib/profcollege/latex/PfCJeuRangement.tex
-2024/01/06 | 4363 | macros/latex/contrib/beamer/doc/beamerug-transparencies.tex
-2024/01/06 | 430783 | macros/latex/contrib/beamer/doc/beamerexample-lecture-beamer-version.pdf
-2024/01/06 | 4290 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic2.jpg
-2024/01/06 | 4279 | macros/latex/contrib/profcollege/latex/PfCLego.tex
-2024/01/06 | 423 | macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemebars.sty
-2024/01/06 | 4236 | macros/latex/contrib/profcollege/latex/PfCPixelArt.tex
-2024/01/06 | 4226 | macros/latex/contrib/beamer/base/themes/font/beamerfontthemedefault.sty
-2024/01/06 | 421 | macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemeclassic.sty
-2024/01/06 | 4178 | macros/latex/contrib/profcollege/latex/PfCFractionAireCarre.tex
-2024/01/06 | 415 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeFrankfurt.sty
-2024/01/06 | 413220 | systems/texlive/tlnet/archive/autotype.doc.r69309.tar.xz
-2024/01/06 | 41301 | macros/latex/contrib/beamer/doc/beamerug-guidelines.tex
-2024/01/06 | 4125 | macros/latex/contrib/profcollege/latex/PfCMulPiecesPuzzle.tex
-2024/01/06 | 4119 | macros/latex/contrib/profcollege/latex/PfCQuestionsRelier.tex
-2024/01/06 | 4113 | macros/latex/contrib/profcollege/latex/PfCDomino.tex
-2024/01/06 | 40883 | macros/latex/contrib/beamer/doc/beamerug-overlays.tex
-2024/01/06 | 40710 | macros/latex/contrib/beamer/doc/beamerug-license.tex
-2024/01/06 | 405917 | macros/latex/contrib/overpic/overpic.pdf
-2024/01/06 | 403923 | macros/latex/contrib/overpic.zip
-2024/01/06 | 4016 | macros/latex/contrib/beamer/base/beamerbaseverbatim.sty
-2024/01/06 | 40099 | macros/latex/contrib/beamer/doc/beamerug-globalstructure.tex
-2024/01/06 | 40020 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic3.jpg
-2024/01/06 | 399160 | macros/luatex/latex/piton/piton-french.pdf
-2024/01/06 | 397 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeJuanLesPins.sty
-2024/01/06 | 397 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeDarmstadt.sty
-2024/01/06 | 393 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeWarsaw.sty
-2024/01/06 | 392 | macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemecircles.sty
-2024/01/06 | 391 | macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemerectangles.sty
-2024/01/06 | 386 | macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemesplit.sty
-2024/01/06 | 3849 | macros/latex/contrib/profcollege/latex/PfCKenKen.tex
-2024/01/06 | 3843 | macros/latex/contrib/beamer/base/themes/outer/beamerouterthemesmoothtree.sty
-2024/01/06 | 383 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeLuebeck.sty
-2024/01/06 | 381 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeAntibes.sty
-2024/01/06 | 380 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeCopenhagen.sty
-2024/01/06 | 3798 | macros/latex/contrib/profcollege/latex/PfCEratosthene.tex
-2024/01/06 | 3765 | macros/latex/contrib/profcollege/latex/PfCEnquete.tex
-2024/01/06 | 370 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-print-version.tex
-2024/01/06 | 368 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeBergen.sty
-2024/01/06 | 36833 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic1.jpg
-2024/01/06 | 368272 | macros/latex/contrib/beamer/doc/beamerexample-lecture-print-version.pdf
-2024/01/06 | 3634 | macros/latex/contrib/profcollege/latex/PfCDefiCalc.tex
-2024/01/06 | 36346 | macros/latex/contrib/beamer/doc/beamerug-color.tex
-2024/01/06 | 3618 | macros/latex/contrib/profcollege/latex/PfCDecompFracDeci.tex
-2024/01/06 | 3605 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeboxes.sty
-2024/01/06 | 35829 | macros/latex/contrib/profcollege/latex/PfCPavage.tex
-2024/01/06 | 35698 | macros/latex/contrib/beamer/doc/beamerug-animations.tex
-2024/01/06 | 3466 | macros/latex/contrib/profcollege/latex/PfCTablesOperations.tex
-2024/01/06 | 3466 | macros/latex/contrib/profcollege/latex/PfCFubuki.tex
-2024/01/06 | 345 | macros/latex/contrib/beamer/base/themes/theme/beamerthemedefault.sty
-2024/01/06 | 3454 | macros/latex/contrib/beamer/base/art/beamericonarticle.tex
-2024/01/06 | 3453 | macros/latex/contrib/beamer/doc/licenses/manifest-code.txt
-2024/01/06 | 3431 | macros/latex/contrib/profcollege/latex/PfCBarresCalculs.tex
-2024/01/06 | 341 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeMontpellier.sty
-2024/01/06 | 341 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeMalmoe.sty
-2024/01/06 | 33924 | systems/texlive/tlnet/archive/l3backend.source.r69310.tar.xz
-2024/01/06 | 33848 | macros/latex/contrib/beamer/doc/beamerug-elements.tex
-2024/01/06 | 3354753 | install/macros/latex/contrib/beamer.tds.zip
-2024/01/06 | 3354482 | macros/latex/contrib/beamer.zip
-2024/01/06 | 332 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-beamer-version.tex
-2024/01/06 | 33143 | macros/latex/contrib/beamer/base/art/beamericononline.20.eps
-2024/01/06 | 3284 | macros/latex/contrib/beamer/base/beamerbasearticle.sty
-2024/01/06 | 32823 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-logo.pdf
-2024/01/06 | 3280 | macros/latex/contrib/profcollege/latex/PfCFicheMemo.tex
-2024/01/06 | 32643 | macros/latex/contrib/beamer/doc/beamerug-emulation.tex
-2024/01/06 | 323 | macros/latex/contrib/beamer/base/themes/font/beamerfontthemeprofessionalfonts.sty
-2024/01/06 | 322 | macros/latex/contrib/beamer/base/themes/theme/beamerthemePittsburgh.sty
-2024/01/06 | 3183564 | systems/texlive/tlnet/archive/l3experimental.doc.r69310.tar.xz
-2024/01/06 | 30939 | macros/latex/contrib/tutodoc/doc/tutodoc-fr.tex
-2024/01/06 | 30931 | macros/latex/contrib/codedescribe/latex/codedescribe.sty
-2024/01/06 | 30830 | macros/latex/contrib/profcollege/latex/PfCSolides.tex
-2024/01/06 | 3072 | macros/latex/contrib/beamer/doc/solutions/short-talks/speaker_introduction-ornate-2min.fr.tex
-2024/01/06 | 3049 | macros/latex/contrib/profcollege/latex/PfCRLE.tex
-2024/01/06 | 3039 | macros/latex/contrib/beamer/base/art/beamericonbook.tex
-2024/01/06 | 30280 | systems/texlive/tlnet/archive/unravel.r69308.tar.xz
-2024/01/06 | 3009 | macros/latex/contrib/codedescribe/README.md
-2024/01/06 | 30042 | macros/latex/contrib/profcollege/latex/PfCCartesJeux.tex
-2024/01/06 | 2975 | macros/latex/contrib/profcollege/latex/PfCMotsCodes.tex
-2024/01/06 | 2961 | macros/latex/contrib/beamer/doc/solutions/short-talks/speaker_introduction-ornate-2min.de.tex
-2024/01/06 | 2958 | macros/latex/contrib/beamer/base/art/beamericonarticle.20.pdf
-2024/01/06 | 2939 | macros/latex/contrib/profcollege/latex/PfCBarreNiveaux.tex
-2024/01/06 | 2936 | macros/latex/contrib/beamer/base/art/beamericonarticle.pdf
-2024/01/06 | 29363 | macros/latex/contrib/profcollege/latex/PfCLabyrintheNombre.tex
-2024/01/06 | 28982 | macros/latex/contrib/tutodoc/doc/tutodoc-en.tex
-2024/01/06 | 28900 | macros/latex/contrib/codedescribe/latex/codelisting.sty
-2024/01/06 | 28548 | macros/latex/contrib/beamer/base/beamerbaseoverlay.sty
-2024/01/06 | 28129 | macros/latex/contrib/profcollege/latex/PfCRappelsFormules.tex
-2024/01/06 | 2811 | macros/latex/contrib/beamer/doc/beamerug-solutions.tex
-2024/01/06 | 2805 | macros/latex/contrib/beamer/base/themes/outer/beamerouterthemeshadow.sty
-2024/01/06 | 27790 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic4.jpg
-2024/01/06 | 2777 | macros/latex/contrib/beamer/base/themes/outer/beamerouterthemesplit.sty
-2024/01/06 | 27779 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-pic6.jpg
-2024/01/06 | 27417 | macros/latex/contrib/beamer/base/beamerbasecompatibility.sty
-2024/01/06 | 2734 | macros/latex/contrib/beamer/base/art/beamericonbook.20.pdf
-2024/01/06 | 27316 | macros/latex/contrib/profcollege/latex/PfCPythagore.tex
-2024/01/06 | 26759 | macros/latex/contrib/proflycee/tex/proflycee-tools-listings.tex
-2024/01/06 | 2667 | macros/latex/contrib/beamer/base/art/beamericonbook.pdf
-2024/01/06 | 26603 | macros/latex/contrib/beamer/base/art/beamericonarticle.eps
-2024/01/06 | 2627 | macros/latex/contrib/beamer/doc/solutions/short-talks/speaker_introduction-ornate-2min.en.tex
-2024/01/06 | 2617 | macros/latex/contrib/profcollege/latex/PfCQuiSuisJe.tex
-2024/01/06 | 2605 | macros/latex/contrib/profcollege/latex/PfCKakurasu.tex
-2024/01/06 | 25681 | macros/latex/contrib/profcollege/latex/PfCPavageAvecMotifImage.tex
-2024/01/06 | 25641 | macros/latex/contrib/beamer/base/beamerbaseframe.sty
-2024/01/06 | 2545 | macros/latex/contrib/texshade/texshade.ins
-2024/01/06 | 254519 | macros/latex/contrib/beamer/doc/beamerexample-conference-talk.pdf
-2024/01/06 | 253930 | macros/latex/contrib/codedescribe.zip
-2024/01/06 | 25321 | macros/latex/contrib/profcollege/latex/PfCQuestionsFlash.tex
-2024/01/06 | 252057 | macros/latex/contrib/codedescribe/doc/codedescribe.pdf
-2024/01/06 | 2499 | macros/latex/contrib/profcollege/latex/PfCSquaro.tex
-2024/01/06 | 24802 | macros/latex/contrib/profcollege/latex/PfCTrigonometrie.tex
-2024/01/06 | 24790 | macros/latex/contrib/profcollege/latex/PfCDecomposerNombrePremier.tex
-2024/01/06 | 24762 | macros/latex/contrib/beamer/base/art/beamericonbook.20.eps
-2024/01/06 | 24742 | macros/latex/contrib/tutodoc/code/tutodoc.sty
-2024/01/06 | 2470 | macros/latex/contrib/profcollege/latex/PfCEcritureLettres.tex
-2024/01/06 | 24611 | macros/latex/contrib/beamer/base/art/beamericononline.pdf
-2024/01/06 | 24481 | macros/latex/contrib/beamer/base/beamerbaseauxtemplates.sty
-2024/01/06 | 24451 | macros/latex/contrib/beamer/base/art/beamericononline.20.pdf
-2024/01/06 | 24352 | macros/latex/contrib/beamer/doc/beamerug-tutorial.tex
-2024/01/06 | 241376 | macros/luatex/latex/piton/piton.dtx
-2024/01/06 | 23791 | macros/latex/contrib/codedescribe/doc/codedescribe.tex
-2024/01/06 | 2318 | macros/latex/contrib/beamer/base/themes/outer/beamerouterthemeinfolines.sty
-2024/01/06 | 2312 | macros/latex/contrib/beamer/base/themes/color/beamercolorthememonarca.sty
-2024/01/06 | 22964 | macros/latex/contrib/beamer/doc/licenses/fdl.txt
-2024/01/06 | 2292 | macros/latex/contrib/profcollege/latex/PfCKakuro.tex
-2024/01/06 | 2285 | macros/latex/contrib/profcollege/latex/PfCGrades.tex
-2024/01/06 | 22664 | systems/texlive/tlnet/archive/l3experimental.r69310.tar.xz
-2024/01/06 | 22247 | macros/latex/contrib/beamer/doc/beamerug-nonpresentation.tex
-2024/01/06 | 2222 | macros/latex/contrib/profcollege/latex/PfCMotsCroises.tex
-2024/01/06 | 2211 | macros/latex/contrib/profcollege/latex/PfCHiddenMessage.tex
-2024/01/06 | 2193534 | macros/latex/contrib/beamer/doc/beameruserguide.pdf
-2024/01/06 | 21885 | macros/latex/contrib/profcollege/latex/ProfCollege.sty
-2024/01/06 | 21619 | macros/latex/contrib/beamer/base/beamerbasenavigation.sty
-2024/01/06 | 2155 | macros/latex/contrib/profcollege/latex/PfCGaram.tex
-2024/01/06 | 21423 | macros/latex/contrib/beamer/doc/beamerug-fonts.tex
-2024/01/06 | 2134 | macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemelined.sty
-2024/01/06 | 2131 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemealbatross.sty
-2024/01/06 | 21219 | macros/latex/contrib/beamer/base/art/beamericonbook.eps
-2024/01/06 | 2089 | macros/latex/contrib/beamer/doc/beamerlogo.pdf
-2024/01/06 | 20869 | macros/latex/contrib/profcollege/latex/PfCTrio.tex
-2024/01/06 | 20741 | macros/latex/contrib/beamer/doc/examples/a-conference-talk/beamerexample-conference-talk.tex
-2024/01/06 | 2072 | macros/latex/contrib/profcollege/latex/PfCBonSortie.tex
-2024/01/06 | 2072 | macros/latex/contrib/beamer/base/themes/outer/beamerouterthemetree.sty
-2024/01/06 | 20612 | systems/texlive/tlnet/archive/morewrites.source.r69306.tar.xz
-2024/01/06 | 20501 | macros/latex/contrib/ukbill/immigration-bill.tex
-2024/01/06 | 2045 | macros/latex/contrib/beamer/doc/licenses/manifest-documentation.txt
-2024/01/06 | 2013 | macros/latex/contrib/profcollege/latex/PfCEngrenagesBase.tex
-2024/01/06 | 19749 | macros/latex/contrib/profcollege/latex/PfCRose.tex
-2024/01/06 | 19291 | macros/latex/contrib/beamer/doc/examples/a-lecture/beamerexample-lecture-body.tex
-2024/01/06 | 19160 | macros/latex/contrib/profcollege/latex/PfCPattern.tex
-2024/01/06 | 19106 | macros/latex/contrib/beamer/doc/licenses/lppl-1-3c.txt
-2024/01/06 | 19092 | systems/texlive/tlnet/archive/unbtex.r69307.tar.xz
-2024/01/06 | 1871 | macros/latex/contrib/beamer/base/emulation/beamerseminar.sty
-2024/01/06 | 1856 | macros/latex/contrib/profcollege/latex/PfCMotsEmpiles.tex
-2024/01/06 | 18524 | macros/latex/contrib/beamer/doc/beamerug-themes.tex
-2024/01/06 | 1848 | macros/latex/contrib/beamer/base/beamerbasetwoscreens.sty
-2024/01/06 | 1837 | macros/latex/contrib/beamer/doc/emulation-examples/beamerexample-prosper.tex
-2024/01/06 | 18104586 | macros/latex/contrib/profcollege.zip
-2024/01/06 | 18094 | macros/latex/contrib/beamer/base/beamerbaselocalstructure.sty
-2024/01/06 | 18092 | macros/latex/contrib/beamer/doc/licenses/gpl-2.0.txt
-2024/01/06 | 1793 | macros/latex/contrib/profcollege/latex/PfCRapido.tex
-2024/01/06 | 177648 | systems/texlive/tlnet/archive/l3kernel.r69310.tar.xz
-2024/01/06 | 1767 | macros/latex/contrib/profcollege/latex/PfCScratch.tex
-2024/01/06 | 1760 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemeseagull.sty
-2024/01/06 | 1743 | macros/latex/contrib/beamer/base/beamerbaseoptions.sty
-2024/01/06 | 1731 | macros/latex/contrib/beamer/base/emulation/beamerfoils.sty
-2024/01/06 | 17080 | macros/latex/contrib/beamer/base/art/beamericonarticle.20.eps
-2024/01/06 | 1691 | macros/latex/contrib/tutodoc/MANIFEST.md
-2024/01/06 | 1660 | macros/latex/contrib/beamer/base/beamerarticle.sty
-2024/01/06 | 16505 | macros/latex/contrib/beamer/doc/beamerug-interaction.tex
-2024/01/06 | 16486 | macros/latex/contrib/profcollege/latex/PfCRondeInfernale.tex
-2024/01/06 | 1641 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemedove.sty
-2024/01/06 | 16401 | macros/latex/contrib/profcollege/latex/PfCResoudreEquation.tex
-2024/01/06 | 16232 | systems/texlive/tlnet/archive/l3backend.r69310.tar.xz
-2024/01/06 | 16101 | macros/latex/contrib/profcollege/latex/PfCRepresenterFraction.tex
-2024/01/06 | 1606 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemecrane.sty
-2024/01/06 | 16033 | macros/latex/contrib/profcollege/latex/PfCModeleBarre.tex
-2024/01/06 | 15947 | macros/latex/contrib/profcollege/latex/PfCPropor.tex
-2024/01/06 | 15861 | macros/latex/contrib/profcollege/latex/PfCFonctionAffine.tex
-2024/01/06 | 1583 | macros/latex/contrib/beamer/base/beamerbaserequires.sty
-2024/01/06 | 1559 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemebeetle.sty
-2024/01/06 | 1540 | macros/latex/contrib/beamer/AUTHORS.md
-2024/01/06 | 15355 | macros/latex/contrib/profcollege/latex/PfCRepresentationGraphique.tex
-2024/01/06 | 1532 | macros/latex/contrib/beamer/doc/beamerthemeexamplebase.tex
-2024/01/06 | 1528 | macros/latex/contrib/profcollege/latex/PfCCartesMentales.tex
-2024/01/06 | 15073 | macros/latex/contrib/profcollege/latex/PfCFactorisation.tex
-2024/01/06 | 15005 | macros/latex/contrib/profcollege/latex/PfCMulArt.tex
-2024/01/06 | 14693 | macros/latex/contrib/beamer/doc/beamerug-introduction.tex
-2024/01/06 | 1465 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemespruce.sty
-2024/01/06 | 14280 | macros/latex/contrib/profcollege/latex/PfCCAN.tex
-2024/01/06 | 14269 | macros/latex/contrib/profcollege/latex/PfCDessinerRatio.tex
-2024/01/06 | 14262 | macros/latex/contrib/profcollege/latex/PfCEcritureUnites.tex
-2024/01/06 | 14120 | macros/latex/contrib/profcollege/latex/PfCNonogramme.tex
-2024/01/06 | 13940 | macros/latex/contrib/profcollege/metapost/PfCCalculatrice.mp
-2024/01/06 | 13842 | macros/latex/contrib/beamer/base/beamerbasesection.sty
-2024/01/06 | 1378 | macros/latex/contrib/beamer/base/multimedia/multimediasymbols.sty
-2024/01/06 | 13709 | macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemedefault.sty
-2024/01/06 | 13682 | macros/latex/contrib/beamer/base/beamerbasefont.sty
-2024/01/06 | 1358 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemefly.sty
-2024/01/06 | 1357 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeSingapore.sty
-2024/01/06 | 1353 | macros/latex/contrib/beamer/LICENSE.md
-2024/01/06 | 13510 | macros/latex/contrib/overpic/overpic.dtx
-2024/01/06 | 1344 | macros/latex/contrib/beamer/doc/beamercolorthemeexample.tex
-2024/01/06 | 1299 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemebeaver.sty
-2024/01/06 | 1296 | macros/latex/contrib/beamer/base/themes/theme/compatibility/beamerthemesidebar.sty
-2024/01/06 | 1287 | macros/latex/contrib/profcollege/latex/PfCPyraVoca.tex
-2024/01/06 | 12629 | macros/latex/contrib/beamer/base/beamerbasecolor.sty
-2024/01/06 | 12576 | macros/latex/contrib/beamer/doc/beamerug-compatibility.tex
-2024/01/06 | 1254088 | systems/texlive/tlnet/archive/morewrites.doc.r69306.tar.xz
-2024/01/06 | 12512 | macros/latex/contrib/beamer/base/beamer.cls
-2024/01/06 | 12495 | macros/latex/contrib/profcollege/latex/PfCFractionNombre.tex
-2024/01/06 | 12480 | macros/latex/contrib/beamer/doc/emulation-examples/beamerexample-seminar.tex
-2024/01/06 | 12455 | macros/latex/contrib/beamer/doc/beamerug-macros.tex
-2024/01/06 | 1237 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeMarburg.sty
-2024/01/06 | 1230 | macros/latex/contrib/beamer/base/emulation/beamertexpower.sty
-2024/01/06 | 12296 | macros/latex/contrib/profcollege/latex/PfCNumberHive.tex
-2024/01/06 | 12262 | macros/latex/contrib/beamer/doc/beamerug-workflow.tex
-2024/01/06 | 12245296 | systems/texlive/tlnet/archive/l3kernel.doc.r69310.tar.xz
-2024/01/06 | 12211 | macros/latex/contrib/beamer/base/beamerbaseframecomponents.sty
-2024/01/06 | 1220 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemewolverine.sty
-2024/01/06 | 12069 | macros/latex/contrib/profcollege/latex/PfCCalculsCroises.tex
-2024/01/06 | 11738 | macros/latex/contrib/profcollege/latex/PfCSommeAngles.tex
-2024/01/06 | 11629 | macros/latex/contrib/profcollege/latex/PfCDefiTables.tex
-2024/01/06 | 11623 | macros/latex/contrib/profcollege/latex/PfCSimplifierFraction.tex
-2024/01/06 | 1130 | macros/latex/contrib/beamer/base/beamerbasethemes.sty
-2024/01/06 | 11255 | macros/latex/contrib/profcollege/latex/PfCCompteBon.tex
-2024/01/06 | 11142 | macros/latex/contrib/profcollege/latex/PfCDessinAlgo.tex
-2024/01/06 | 11131 | macros/latex/contrib/profcollege/latex/PfCProprietesDroites.tex
-2024/01/06 | 1111 | macros/latex/contrib/beamer/README.md
-2024/01/06 | 11046 | macros/latex/contrib/profcollege/latex/PfCAutomatismes.tex
-2024/01/06 | 10966 | macros/latex/contrib/profcollege/latex/PfCAutonomie.tex
-2024/01/06 | 10950 | macros/latex/contrib/beamer/doc/beamerug-notes.tex
-2024/01/06 | 1084 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemeseahorse.sty
-2024/01/06 | 1068 | macros/latex/contrib/tutodoc/code/tutodoc-locale-main-french.cfg.sty
-2024/01/06 | 10633 | macros/latex/contrib/profcollege/latex/PfCEnigmeAire.tex
-2024/01/06 | 10605 | macros/latex/contrib/profcollege/latex/PfCSerpent.tex
-2024/01/06 | 10596 | macros/latex/contrib/profcollege/latex/PfCCartographie.tex
-2024/01/06 | 1053 | macros/latex/contrib/profcollege/latex/PfCBonbon.tex
-2024/01/06 | 10533 | macros/latex/contrib/beamer/base/multimedia/multimedia.sty
-2024/01/06 | 1045 | macros/latex/contrib/tutodoc/code/tutodoc-locale-main-english.cfg.sty
-2024/01/06 | 1044 | macros/latex/contrib/beamer/base/themes/theme/beamerthemeGoettingen.sty
-2024/01/06 | 1040 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemedolphin.sty
-2024/01/06 | 10399 | macros/latex/contrib/profcollege/metapost/PfCLego.mp
-2024/01/06 | 10322 | macros/latex/contrib/profcollege/latex/PfCCibleQOp.tex
-2024/01/06 | 10241 | macros/latex/contrib/profcollege/latex/PfCProgrammeCalcul.tex
-2024/01/06 | 10230 | macros/latex/contrib/beamer/doc/emulation-examples/beamerexample-texpower.tex
-2024/01/06 | 10168 | macros/latex/contrib/profcollege/latex/PfCPapiers.tex
-2024/01/06 | 1003 | macros/latex/contrib/beamer/base/themes/color/beamercolorthemewhale.sty
-2024/01/06 | 1002 | macros/latex/contrib/beamer/base/themes/inner/beamerinnerthemerounded.sty
-2024/01/06 | 1000 | macros/latex/contrib/profcollege/latex/PfCJeton.tex
diff --git a/biblio/ctan-bibdata/ctan.bib b/biblio/ctan-bibdata/ctan.bib
index ef848012c7..8a4fc104da 100644
--- a/biblio/ctan-bibdata/ctan.bib
+++ b/biblio/ctan-bibdata/ctan.bib
@@ -1,7 +1,7 @@
%% bib file of all CTAN packages
%% (C) Herbert Voß
%%
-%% created at 12-01-2024, 02:00:03
+%% created at 13-01-2024, 02:00:04
%%
%% This file is provided under the terms of the LPPL v1.3 or
@@ -6877,8 +6877,8 @@
title = {The \texttt{bibcop} package},
subtitle = {Style checker for .bib files},
author = {Yegor Bugayenko},
- date = {2024-01-11},
- version = {0.0.16},
+ date = {2024-01-12},
+ version = {0.0.17},
license = {mit},
mirror = {https://mirror.ctan.org/biblio/bibtex/utils/bibcop},
url = {https://ctan.org/pkg/bibcop},
@@ -9251,7 +9251,7 @@
subtitle = {Draw Bode, Nyquist and Nichols plots with gnuplot or pgfplots},
author = {Rushikesh Kamalapurkar},
date = {2021-09-11},
- version = {1.1.4},
+ version = {1.1.5},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/graphics/pgf/contrib/bodeplot},
url = {https://ctan.org/pkg/bodeplot},
@@ -9725,8 +9725,8 @@
title = {The \texttt{braids} package},
subtitle = {Draw braid diagrams with PGF/TikZ},
author = {Andrew Stacey},
- date = {2022-10-26},
- version = {2.2},
+ date = {2024-01-12},
+ version = {2.3},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/graphics/pgf/contrib/braids},
url = {https://ctan.org/pkg/braids},
@@ -36306,8 +36306,8 @@
title = {The \texttt{keyfloat} package},
subtitle = {Provides a key/value interface for generating floats},
author = {Brian Dunn},
- date = {2023-01-03},
- version = {2.08},
+ date = {2024-01-12},
+ version = {2.09},
license = {lppl1.3},
mirror = {https://mirror.ctan.org/macros/latex/contrib/keyfloat},
url = {https://ctan.org/pkg/keyfloat},
@@ -37376,8 +37376,8 @@
title = {The \texttt{labelschanged} package},
subtitle = {Identify labels which cause endless “may have changed” warnings},
author = {Brian Dunn},
- date = {2017-12-13},
- version = {1.0},
+ date = {2024-01-12},
+ version = {1.01},
license = {pd},
mirror = {https://mirror.ctan.org/macros/latex/contrib/labelschanged},
url = {https://ctan.org/pkg/labelschanged},
@@ -41711,6 +41711,27 @@
url = {https://ctan.org/pkg/lua-physical},
}
+@manual{ctan-lua-placeholders,
+ title = {The \texttt{lua-placeholders} package},
+ subtitle = {Specifying placeholders for demonstration purposes},
+ author = {Erik Nijenhuis},
+ date = {2024-01-12},
+ version = {0.1.0},
+ license = {lppl1.3c},
+ mirror = {https://mirror.ctan.org/macros/luatex/latex/lua-placeholders},
+ url = {https://ctan.org/pkg/lua-placeholders},
+ annotation = {This package is meant for setting parameters in a LuaLaTeX
+ document in a more programmatic way with YAML.
+ Parameters can be specified by adding a “” file.
+ These recipe files describe the parameter’s type, placeholders
+ and/or default values. From thereon, the placeholders can be
+ displayed in the document and an “” document
+ can be created.
+ An “” document can be created by loading
+ additional “” files, which all must correspond
+ to a recipe file.},
+}
+
@manual{ctan-lua-tinyyaml,
title = {The \texttt{lua-tinyyaml} package},
subtitle = {A tiny YAML (subset) parser for pure Lua},
@@ -41729,8 +41750,8 @@
title = {The \texttt{lua-typo} package},
subtitle = {Highlighting typographical flaws with LuaLaTeX},
author = {Daniel Flipo},
- date = {2023-09-13},
- version = {0.85},
+ date = {2024-01-12},
+ version = {0.86},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/luatex/latex/lua-typo},
url = {https://ctan.org/pkg/lua-typo},
@@ -45008,8 +45029,8 @@
title = {The \texttt{metalogox} package},
subtitle = {Adjust \TeX{} logos, with font detection},
author = {Brian Dunn},
- date = {2023-06-29},
- version = {1.01},
+ date = {2024-01-12},
+ version = {1.02},
license = {lppl1.3},
mirror = {https://mirror.ctan.org/macros/latex/contrib/metalogox},
url = {https://ctan.org/pkg/metalogox},
@@ -63279,8 +63300,8 @@
title = {The \texttt{simpleicons} package},
subtitle = {Simple Icons for \LaTeX{}},
author = {Inesh Bose},
- date = {2023-12-29},
- version = {10.4.0},
+ date = {2024-01-12},
+ version = {11.0.0},
license = {cc-by-1},
mirror = {https://mirror.ctan.org/fonts/simpleicons},
url = {https://ctan.org/pkg/simpleicons},
@@ -71688,8 +71709,8 @@
title = {The \texttt{tocdata} package},
subtitle = {Adds names to chapters, sections, figures in the TOC and LOF},
author = {Brian Dunn},
- date = {2023-01-03},
- version = {2.05},
+ date = {2024-01-12},
+ version = {2.06},
license = {lppl1.3},
mirror = {https://mirror.ctan.org/macros/latex/contrib/tocdata},
url = {https://ctan.org/pkg/tocdata},
@@ -75668,7 +75689,7 @@
title = {The \texttt{verifycommand} package},
subtitle = {Verifies definitions are unchanged, such as before patching},
author = {Brian Dunn},
- date = {2024-01-11},
+ date = {2024-01-12},
version = {1.00},
license = {lppl1.3c},
mirror = {https://mirror.ctan.org/macros/latex/contrib/verifycommand},
diff --git a/graphics/pgf/contrib/tikzquads/README.md b/graphics/pgf/contrib/tikzquads/README.md
new file mode 100644
index 0000000000..4ea07b35cb
--- /dev/null
+++ b/graphics/pgf/contrib/tikzquads/README.md
@@ -0,0 +1,84 @@
+tikzquads
+==========
+
+This package defines a few extra shapes (single / dual port boxes) designed to be used together with
+the CircuiTikZ package.
+
+
+For more details, see the (some) documentation,
+
+[tikzquads.pdf](http://mirrors.ctan.org/graphics/pgf/contrib/tikzdotncross/doc/tikzquads.pdf)
+
+--------------
+
+## Requirements
+* none besides a fairly recent LaTeX distribution as recent as 2022/06/01
+(with the new in kernel *\ProcessKeyOptions* and *\NewDocumentCommand*)
+
+and pgf/TikZ or CircuiTikZ
+
+## Installation
+The stable version is available at [CTAN](https://ctan.org/pkg/tikzquads).
+
+## Usage
+### Stable version
+Just place
+```latex
+ \usepackage{tikzquads}
+```
+
+in the preamble and compile away.
+
+
+Be aware that options might change between versions, so you have to check them manually.
+
+
+## More Information and documentation
+More Information can be found in the documentation; you can find a "bleeding edge" version
+at [the github page](http://github.com/alceu-frigeri/tikzquads)
+
+## Contacting Author
+
+For bug reports and enhancement suggestions, the preferred way is to use
+[the project's issue page](https://github.com/alceu-frigeri/tikzquads/issues).
+Please be ready to provide an example code showing the bug, if any.
+
+Please do not use the issue page for generic help on how to use the package.
+
+* git: https://github.com/alceu-frigeri/tikzquads
+
+-------------
+Copyright 2024-present by Alceu Frigeri
+
+ This work may be distributed and/or modified under the
+ conditions of
+
+ * The [LaTeX Project Public License](http://www.latex-project.org/lppl.txt), version 1.3c (or later), and/or
+ * The [GNU Affero General Public License](https://www.gnu.org/licenses/agpl-3.0.html), version 3 (or later)
+
+This work has the LPPL maintenance status *maintained*.
+
+The Current Maintainer of this work is Alceu Frigeri
+
+-------------
+## This work consists of the files
+
+* tikzquads.sty
+ - The Package itself
+
+* README.md (this file)
+ - quick introduction
+
+* tikzquads.tex
+ - package documentation
+
+* tikzquads.pdf
+ - documentation in PDF format
+
+-------------
+
+## Changelog
+
+
+* Version 1.0
+ - Initial release by CTAN
diff --git a/graphics/pgf/contrib/tikzquads/doc/tikzquads.pdf b/graphics/pgf/contrib/tikzquads/doc/tikzquads.pdf
new file mode 100644
index 0000000000..4ea887cb74
--- /dev/null
+++ b/graphics/pgf/contrib/tikzquads/doc/tikzquads.pdf
Binary files differ
diff --git a/graphics/pgf/contrib/tikzquads/doc/tikzquads.tex b/graphics/pgf/contrib/tikzquads/doc/tikzquads.tex
new file mode 100644
index 0000000000..b6f6f1a30b
--- /dev/null
+++ b/graphics/pgf/contrib/tikzquads/doc/tikzquads.tex
@@ -0,0 +1,1037 @@
+% !TEX program = pdflatex
+% !TEX ext = --interaction=nonstopmode --enable-etex --enable-write18
+% !BIB program = none
+%%%==============================================================================
+%% Copyright 2024-present by Alceu Frigeri
+%%
+%% This work may be distributed and/or modified under the conditions of
+%%
+%% * The [LaTeX Project Public License](http://www.latex-project.org/lppl.txt),
+%% version 1.3c (or later), and/or
+%% * The [GNU Affero General Public License](https://www.gnu.org/licenses/agpl-3.0.html),
+%% version 3 (or later)
+%%
+%% This work has the LPPL maintenance status *maintained*.
+%%
+%% The Current Maintainer of this work is Alceu Frigeri
+%%
+%% This is version {1.0} {2024/01/13}
+%%
+%% The list of files that compose this work can be found in the README.md file at
+%% https://ctan.org/pkg/tikzdotncross
+%%
+%%%==============================================================================
+\documentclass[10pt]{article}
+\RequirePackage[verbose,a4paper,marginparwidth=27.5mm,top=2.5cm,bottom=1.5cm,hmargin={40mm,20mm},marginparsep=2.5mm,columnsep=10mm,asymmetric]{geometry}
+\usepackage{codedescribe}
+\RequirePackage[inline]{enumitem}
+\SetEnumitemKey{miditemsep}{parsep=0ex,itemsep=0.4ex}
+
+\usepackage[american,siunitx,cuteinductors,smartlabels,arrowmos,EFvoltages,betterproportions]{circuitikz}
+\usetikzlibrary{math}
+\usepackage{tikzdotncross}
+\usepackage{tikzquads}
+
+\RequirePackage{amsmath}
+\RequirePackage{amsthm, amssymb, amsfonts}
+%\RequirePackage{mathrsfs}
+%\RequirePackage{mathtools}
+%\RequirePackage{empheq}
+%\RequirePackage{cases}
+%\RequirePackage{extarrows}
+%\RequirePackage{mathfixs}
+
+\RequirePackage[hidelinks,hypertexnames=false]{hyperref}
+
+
+
+\NewDocumentCommand{\pinanchors}{mm}{ \path \foreach \n/\a/\d in {#2} { (#1.\n) \pincoord(\n,blue,\a,\d)}; }
+\NewDocumentCommand{\pingeoanchors}{m}{ \pinanchors{#1}{%
+ north/90/4, north east/55/4, east/0/4,%
+ south east/-55/4,%
+ south/-90/4, south west/-100/4, west/180/4, north west/100/4,%
+ center/-165/17}
+}
+
+
+\NewDocumentCommand{\pinquadanchors}{m}{%
+ \pinanchors{#1}{%
+ 1+/135/4, 1-/225/4, 2+/45/4, 2-/-45/4, inner 1+/-45/2, inner 1-/45/2, inner 2+/225/2, inner 2-/135/2
+ }
+}
+
+\NewDocumentCommand{\pinblackboxanchors}{m}{%
+ \pinanchors{#1}{%
+ 1+/135/4, 1-/225/4, inner 1+/-45/2, inner 1-/45/2
+ }
+}
+
+\NewDocumentCommand{\pinquadtextanchors}{m}{%
+ \pinanchors{#1}{%
+ bottom left/225/4, bottom center/-90/4, bottom right/-45/4,
+ inner bottom left/225/4, inner bottom center/90/2, inner bottom right/-45/4,
+ top left/135/4, top center/90/4, top right/45/4,
+ inner top left/135/4, inner top center/-90/2, inner top right/45/4
+ }
+}
+
+\begin{document}
+\tstitle{
+ author={Alceu Frigeri\footnote{\tsverb{https://github.com/alceu-frigeri/tikzquads}}},
+ date={\tsdate},
+ title={The tikzquads Package\break An Extension to CircuiTi\emph{k}Z\break Version \PkgInfo{tikzquads}{version}}
+ }
+
+
+\begin{typesetabstract}
+
+This package defines a few extra shapes (single / dual port boxes) designed to be used together with the \tsobj[pkg]{CircuiTikZ} package.
+\end{typesetabstract}
+
+\tableofcontents
+
+\section{Introduction}
+In standard text books, both for Circuits Theory and Electronics, quite frequently, in the process of modelling sub-circuits, one ends representing them either:
+\begin{itemize}
+ \item as a single port \emph{black box}, or
+ \item as a dual port \emph{black box}
+\end{itemize}
+
+This package defines a few, parameterized shapes for each case:
+\begin{itemize}
+ \item for single port \emph{black boxes}:
+ \begin{itemize}
+ \item Black Box
+ \item Thevenin
+ \item Norton
+ \end{itemize}
+ \item for dual port \emph{black boxes}:
+ \begin{itemize}
+ \item Quad
+ \item Quad Z
+ \item Quad Y
+ \item Quad G
+ \item Quad H
+ \end{itemize}
+Lastly, this package also defines a \emph{Pseudo-Graph load line} shape, for those moments where a true graph, \tsobj[pkg]{pgfplots}, isn't needed.
+\end{itemize}
+
+ \subsection{CircuiTi\emph{k}Z}
+ Unfortunately, some implementation details of these shapes don't follow the code structure adopted by \tsobj[pkg]{CircuiTikZ}, and some significant part of this package's code would have to be re-written if it were to be integrated directly in \tsobj[pkg]{CircuiTikZ}, and that's the main reason this is, for the time being, a separate package. After all, even though this doesn't follows \tsobj[pkg]{CircuiTikZ} code scheme, it does work nicely with it, as is.
+
+\section{Auxiliary Shapes and Basic Keys}
+Those shapes are not intended for end users.
+
+\subsection{Auxiliary shapes}\label{auxiliarynodes}
+A set of auxiliary shapes are defined, but not meant to be used otherwise, though their anchors might be relevant:
+
+\begin{center}
+\resizebox{0.8\textwidth}{!}{
+\begin{tikzpicture}
+ \draw (0,0) node[QuadKeys,generic,H Res shape](N){};
+ \pingeoanchors{N}
+ \draw (4,0) node[QuadKeys,H Res shape](N){};
+ \pingeoanchors{N}
+ \draw (8,0) node[QuadKeys,generic,V Res shape](N){};
+ \pingeoanchors{N}
+ \draw (12,0) node[QuadKeys,V Res shape](N){};
+ \pingeoanchors{N}
+
+ \draw (0,-2) node[QuadKeys,round sources,IsourceDOWN shape](N){};
+ \pingeoanchors{N}
+ \draw (4,-2) node[QuadKeys,IsourceDOWN shape](N){};
+ \pingeoanchors{N}
+ \draw (8,-2) node[QuadKeys,round sources,IsourceUP shape](N){};
+ \pingeoanchors{N}
+ \draw (12,-2) node[QuadKeys,IsourceUP shape](N){};
+ \pingeoanchors{N}
+
+ \draw (0,-4) node[QuadKeys,round sources,Vsource shape](N){};
+ \pingeoanchors{N}
+ \draw (4,-4) node[QuadKeys,Vsource shape](N){};
+ \pingeoanchors{N}
+
+\end{tikzpicture}}
+\end{center}
+
+\begin{tsremark}
+The point being that, regardless of the sub-shape orientation, the intuitive geographical coordinates applies.
+\end{tsremark}
+
+
+
+\subsection{General Keys}\label{generalkeys}
+These are the keys to fine tuning a shape:
+\begin{describelist*}[30mm]{keys}
+ \describe {outer sep} {Text outer separation, initial value: 1.5pt}
+ \describe {inner sep} {Text inner separation, initial value: 1pt}
+ \describe {thickness} {Components thickness (relative to the drawing thickness), initial value: 2}
+ \describe {tip len} {tip len (current source). initial value: 4pt}
+ \describe {tip type} {possible values: \tsobj[keys]{triangle,bezier}. initial value: \tsobj[keys]{triangle}}
+ \describe {minussign len} {Minus sign len (voltage source). initial value: \tsobj{\pgf@circ@Rlen/14}}
+ \describe {plussign len} {Plus sign len (voltage source). initial value: \tsobj{1.1\pgf@circ@Rlen/14}}
+ \describe {source radius} {The base radius. initial value: \tsobj{0.3\pgf@circ@Rlen}}
+ \describe {round sources} {Sources will be round ones}
+ \describe {control sources} {Sources will be control/diamond ones}
+ \describe {generic, european} {Impedances will be generic rectangles}
+ \describe {zigzag, american} {Impedances will be draw as zigzags}
+\end{describelist*}
+
+
+% \describe {name} {\tsmeta{node-name}, when using a to[\,] path.}
+
+
+\section{Z, Y, G, H Quadripoles}\label{quadanchors}
+A set of configurable Quadripoles is defined, whereas quadripoles parameters (for instance $Z_{11}$, $Z_{12}$, $Z_{21}$ and $Z_{22}$) are \tsobj[marg]{key-value} parameters.
+\subsection{The Base Quadripole Shape}
+The base shape just draws a base box and sets some connection anchors: $1+$, $1-$, $inner\ 1+$, $inner\ 1-$, $2+$, $2-$, $inner\ 2+$ and $inner\ 2-$, besides the geographic ones:
+
+%,label bottom left={T1},label bottom center={T2},label bottom right={T3}
+
+\begin{center}%
+ \resizebox{0.8\textwidth}{!}{%
+ \begin{tikzpicture}
+ \draw (0,0) node[Quad](Qa){text};
+ \pingeoanchors{Qa}
+ \draw (Qa.2+) ++(2,0) node[Quad,anchor=1+](Qb){text};
+ \pinquadanchors{Qb}
+ \end{tikzpicture}
+ }
+\end{center}
+
+And also a set of (meant for) \emph{text} anchors:
+
+\begin{center}
+ \resizebox{0.4\textwidth}{!}{
+ \begin{tikzpicture}
+ \draw (0,0) node[Quad](Qc){text};
+ \pinquadtextanchors{Qc}
+ \end{tikzpicture}
+ }
+\end{center}
+
+
+
+\subsubsection{Base Keys}\label{quadkeys}
+These applies to all Quad shapes:
+\begin{describelist*}[30mm]{keys}
+ \describe {base width} {The 'box' width}
+ \describe {half base width} {Ditto, half width. Initial value:\tsobj{2\pgf@circ@Rlen}.}
+ \describe {base height} {The distance between \tsobj[keys]{1+,1-}. The 'box' full height is equal to 2*(\tsobj[keys]{half base height} + \tsobj[keys]{height ext} + \tsobj[keys]{height ext+}).}
+ \describe {half base height} {Ditto, half height. Initial value:\tsobj{\pgf@circ@Rlen/7} }
+ \describe {height ext}{Initial value:\tsobj{2\pgf@circ@Rlen/7}}
+ \describe {height ext+}{Initial value:0}
+ \describe {inner ext} {distance between the 'box' and \tsobj{inner 1+/1-/2+/2-}. initial value: \tsobj{\pgf@circ@Rlen/7}}
+ \describe {outer ext} {distance between the 'box' and \tsobj{1+/1-/2+/2-}. initial value: \tsobj{5\pgf@circ@Rlen/14}}
+ \describe {inner marks} {If set, the inner anchors will be marked.}
+ \describe {outer marks} {If set, the outer anchors will be marked.}
+ \describe {invert} {The shape will be inverted, more or less like 'x scale=-1'.}
+ \describe {alt, opt} {Case a Voltage source is zero, a series impedance will be draw vertically.}
+ \describe {outer x fit to} {For any Quad, this is the same as \tsobj[key]{outer x fit to*}.}
+ \describe {outer x fit to*} {\tsobj[keys]{outer x fit*=}\tsargs[marg]{CoordA,CoordB}. The width will be set so that \tsobj[meta]{1+,2+} (or \tsobj[meta]{1-,2-}, depending on the used anchor) \textbf{will fit} \tsobj[meta]{CoordA,CoordB}. This might result in a shape rotation.}
+ \describe {outer x fit to!} {\tsobj[keys]{outer x fit!=}\tsargs[marg]{CoordA,CoordB}. The width will be set so that the distance between \tsobj[meta]{1+,2+} (or \tsobj[meta]{1-,2-}, depending on the used anchor) will be the same as \tsobj[meta]{CoordA,CoordB}. This will never result in a shape rotation.}
+ \describe {inner x fit to} {For any Quad, this is the same as \tsobj[key]{inner x fit to*}.}
+ \describe {inner x fit to*} {\tsobj[keys]{inner x fit*=}\tsargs[marg]{CoordA,CoordB}. The width will be set so that \tsobj[meta]{inner 1+,inner 2+} (or \tsobj[meta]{inner 1-,inner 2-}, depending on the used anchor) \textbf{will fit} \tsobj[meta]{CoordA,CoordB}. This might result in a shape rotation.}
+ \describe {inner x fit to!} {\tsobj[keys]{inner x fit!=}\tsargs[marg]{CoordA,CoordB}. The width will be set so that the distance between \tsobj[meta]{inner 1+,inner 2+} (or \tsobj[meta]{inner 1-,inner 2-}, depending on the used anchor) will be the same as \tsobj[meta]{CoordA,CoordB}. This will never result in a shape rotation.}
+ \describe {y fit to} {For any Quad, this is the same as \tsobj[key]{y fit to!}.}
+ \describe {y fit to*} {\tsobj[keys]{y fit*=}\tsargs[marg]{CoordA,CoordB}. The height will be set so that \tsobj[keys]{1+,1-} \textbf{will fit} \tsobj[keys]{CoordA,CoordB}. This might result in a shape rotation}
+ \describe {y fit to!} {\tsobj[keys]{y fit!=}\tsargs[marg]{CoordA,CoordB}. The height will be set so that the distance between \tsobj[meta]{1+,1-} will be equal to the distance between \tsobj[marg]{CoordA,CoordB}. This will never result in a shape rotation.}
+%
+% \describe {outer x fit to} {\tsobj[keys]{outer x fit=}\tsargs[marg]{CoordA,CoordB}. The width will be set so that \tsobj[meta]{1+,2+} (or \tsobj[meta]{1-,2-}, depending on the used anchor) will fit \tsobj[meta]{CoordA,CoordB}}
+% \describe {outer x fit to*} {Same as \tsobj[key]{outer x fit to}, might result in a rotation.}
+% \describe {outer x fit to!} {Same as \tsobj[key]{outer x fit to}, but will never result in a rotation.}
+% \describe {inner x fit to} {\tsobj[keys]{inner x fit=}\tsargs[marg]{CoordA,CoordB}. The width will be set so that \tsobj[meta]{inner 1+,inner 2+} (or \tsobj[meta]{inner 1-,inner 2-}, depending on the used anchor) will fit \tsobj[meta]{CoordA,CoordB}}
+% \describe {inner x fit to*} {Same as \tsobj[key]{inner x fit to}, might result in a rotation.}
+% \describe {inner x fit to!} {Same as \tsobj[key]{inner x fit to}, but will never result in a rotation.}
+% \describe {y fit to} {\tsobj[keys]{y fit=}\tsargs[marg]{CoordA,CoordB}. The distance between, lets say \tsobj[keys]{1+,1-} will be made equal to the distance between \tsobj[keys]{CoordA,CoordB}.}
+% \describe {y fit to*} {Same as \tsobj[key]{y fit to}, might result in a rotation.}
+% \describe {y fit to!} {Same as \tsobj[key]{y fit to}, but will never result in a rotation.}
+ \describe{label top left}{It will place a label at the top left anchor}
+ \describe{label top center}{It will place a label at the top center anchor}
+ \describe{label top right}{It will place a label at the top right anchor}
+ \describe{label inner top left}{It will place a label at the inner top left anchor}
+ \describe{label inner top center}{It will place a label at the inner top center anchor}
+ \describe{label inner top right}{It will place a label at the inner top right anchor}
+ \describe{label bottom left}{It will place a label at the bottom left anchor}
+ \describe{label bottom center}{It will place a label at the bottom center anchor}
+ \describe{label bottom right}{It will place a label at the bottom right anchor}
+ \describe{label inner bottom left}{It will place a label at the inner bottom left anchor}
+ \describe{label inner bottom center}{It will place a label at the inner bottom center anchor}
+ \describe{label inner bottom right}{It will place a label at the inner bottom right anchor}
+\end{describelist*}
+%\begin{tsremark}
+%For Quadripoles, \tsobj[keys]{outer x fit, inner x fit} might result in a shape rotation. \tsobj[keys]{y fit} never will result in a rotation.
+%\end{tsremark}
+%\begin{tsremark}
+%Those keys can be used with all the following components: \tsobj[meta]{Quad,Quad Z,Quad Y,Quad G,Quad H,ToQuad,ToQuad Z,ToQuad Y,ToQuad G,ToQuad H,Black Box,Thevenin,Norton,ToBlack Box,ToThevenin,ToNorton}.
+%\end{tsremark}
+
+
+A small example of the \emph{fit to} keys:
+\begin{codestore}[QuadKeysA]
+\begin{tikzpicture}
+\draw (0,0) \pincoord(A,blue,225) ++(4,0) \pincoord(B,blue,-45) ++(2,2) \pincoord(C) ;
+
+\draw (A) node[Quad,anchor=1+,outer x fit to={A}{B}](Qa){\footnotesize$Qa$};
+\draw (B) node[Quad,anchor=1+,outer x fit to={B}{C},I1=$I_a$,V2=$V_b$](Qb){\footnotesize$Qb$};
+
+\draw (Qb.2-) -- ++(2,0) \pincoord(D) ++(1,-2) \pincoord(E);
+
+\draw (D) node[Black Box,anchor=1+,y fit to={D}{E}](Ba){\footnotesize$Ba$};
+
+\draw (Qa.1-) ++(0,-1);
+\end{tikzpicture}
+\end{codestore}
+
+\tsdemo*[codeprefix={},resultprefix={},emph={draw,node},basicstyle={\scriptsize\ttfamily},numbers=left]{QuadKeysA}
+
+
+
+% show anchors of a node component:
+% optional: options of the circuitikz environment
+% mandatory node spec, node text
+% optional between (): anchor specification list
+\NewDocumentCommand{\showsubanchors}{O{} m m m d()}
+{
+ \begin{circuitikz}[#1]
+ \draw (0,0) node[#2](N){#3};
+ \IfValueT{#5}{%
+ \foreach \sn in {#4} {%
+ \foreach \n/\a/\d in {#5} {%
+ \path (N-\sn.\n) \showcoord(\n)<\a:\d>;
+ }
+ }
+ }
+ ;\par
+ \end{circuitikz}%
+}
+
+\subsection{Quad}
+\begin{codestore}[QuadDef]
+% Node use
+node[Quad]{}
+
+% To path use
+(A) to[ToQuad] (B)
+\end{codestore}
+
+\tscode*[emph={draw,node},emph2={x,y,fit,to,outer,inner,node},emph3={Quad,ToQuad,Black,ToBlack,Box,Thevenin,ToThevenin,Norton,ToNorton},basicstyle={\scriptsize\ttfamily},numbers=left,codeprefix={}]{QuadDef}
+
+This is just the base shape, to be used in cases whereas one just want to emphasises part of a circuit (using, for instance, the \tsobj[key]{inner x fit to} key, or just mark a two port black box.
+\begin{tsremark}
+There is also a \tsobj[key]{ToQuad} to be used in a \tsobj[key]{to[ ]} path, in which case the key \tsobj[key]{outer x fit to} style will be triggered with the starting and ending points of the \tsobj[key]{to[ ]} path.
+\end{tsremark}
+
+\begin{center}%
+ \resizebox{0.8\textwidth}{!}{%
+ \begin{tikzpicture}
+ \draw (0,0) node[Quad](Qa){text};
+ \pingeoanchors{Qa}
+ \draw (Qa.2+) ++(2,0) node[Quad,anchor=1+](Qb){text};
+ \pinquadanchors{Qb}
+
+ \draw (Qa.2-) ++(1,-1.5) node[Quad,anchor=north](Qc){text};
+ \pinquadtextanchors{Qc}
+ \end{tikzpicture}
+ }
+\end{center}
+
+\subsubsection{Quad Keys}
+\begin{describelist*}{keys}
+ \describe {name} {\tsmeta{node-name}, when using a to[\,] path.}
+ \describe{I1}{Initial value:\tsverb{$I_1$}}
+ \describe{I2}{Initial value:\tsverb{$I_2$}}
+ \describe{V1}{Initial value:\tsverb{$V_1$}}
+ \describe{V2}{Initial value:\tsverb{$V_2$}}
+\end{describelist*}
+
+
+\subsubsection{Examples of \emph{fit to} use}
+Squeezing a Quadripole between two parts of a circuit (nodes C and D):
+
+\begin{codestore}[QuadfitA]
+\begin{center}
+ \resizebox{0.5\textwidth}{!}{
+ \begin{tikzpicture}
+ \draw (0,0) \pincoord(ref) to[R=R1] ++(0,2) \pincoord(A) to[R=R2] ++(0,2) \pincoord(B)
+ -- ++(2,0) \pincoord(C,red,225) (C |- ref) \pincoord(C1,blue,135) -- (ref);
+ \draw (C) ++(7,0) \pincoord(D,red) -- ++(0.5,0) to[R=R3] ++(0,-3) -- ++(2,0) to[R=R4] ++(0,3) -- ++(0.5,0) \pincoord(E);
+ \draw (C) node[Quad,anchor=1+,y fit to={C}{C1},outer x fit to={C}{D}]{};
+ \end{tikzpicture}
+ }
+\end{center}
+\end{codestore}
+
+\tsdemo*[codeprefix={},resultprefix={},emph={draw,node},emph2={x,y,fit,to,outer,inner,node},emph3={Quad,Black,Box},basicstyle={\scriptsize\ttfamily},numbers=left]{QuadfitA}
+
+~
+
+Fitting some circuit inside the Quadripole (nodes C and E):
+\begin{codestore}[QuadfitB]
+\resizebox{0.4\textwidth}{!}{
+\begin{tikzpicture}
+ \draw (0,0) \pincoord(ref) to[R=R1] ++(0,2) \pincoord(A) to[R=R2] ++(0,2) \pincoord(B)
+ -- ++(2,0) \pincoord(C,red) (C |- ref) \pincoord(C1) -- (ref);
+ \draw (C) ++(7,0) \pincoord(D) -- ++(0.5,0) to[R=R3] ++(0,-3) -- ++(2,0) to[R=R4] ++(0,3) -- ++(0.5,0) \pincoord(E,red);
+ \draw (C) node[Quad,anchor=inner 1+,y fit to={C}{C1},inner x fit to={C}{E}]{};
+\end{tikzpicture}}
+\end{codestore}
+
+\tsdemo*[codeprefix={},resultprefix={},emph={draw,node},emph2={x,y,fit,to,outer,inner,node},emph3={Quad,Black,Box},basicstyle={\scriptsize\ttfamily},numbers=left]{QuadfitB}
+
+
+
+\subsection{Quad Z}
+\begin{codestore}[QuadZDef]
+% Node use
+node[Quad Z]{}
+
+% To path use
+(A) to[ToQuad Z] (B)
+\end{codestore}
+
+\tscode*[emph={draw,node},emph2={x,y,fit,to,outer,inner,node},emph3={Quad,ToQuad,Black,ToBlack,Box,Thevenin,ToThevenin,Norton,ToNorton},basicstyle={\scriptsize\ttfamily},numbers=left,codeprefix={}]{QuadZDef}
+
+This shape, besides the base anchors (see \ref{quadanchors}) it has 4 internal nodes: \tsobj[key]{<node>-Z11,<node>-Z12,<node>-Z21,<node>-Z22} and each of those sub-nodes has geographic anchors as defined at \ref{auxiliarynodes}.
+\begin{tsremark}
+There is also a \tsobj[key]{ToQuad Z} to be used in a \tsobj[key]{to[ ]} path, in which case the key \tsobj[key]{outer x fit to} style will be triggered with the starting and ending points of the \tsobj[key]{to[ ]} path.
+\end{tsremark}
+
+\begin{center}%
+ \resizebox{0.8\textwidth}{!}{%
+ \begin{tikzpicture}
+ \draw (0,0) node[Quad Z](Qa){text};
+ \pingeoanchors{Qa}
+ \draw (Qa.2+) ++(2,0) node[Quad Z,anchor=1+](Qb){text};
+ \pinquadanchors{Qb}
+ \end{tikzpicture}
+ }
+\end{center}
+\begin{center}%
+ \resizebox{0.4\textwidth}{!}{%
+ \begin{tikzpicture}
+ \draw (0,0) node[Quad Z,anchor=north](Qc){text};
+ \pinquadtextanchors{Qc}
+ \end{tikzpicture}
+ }
+\end{center}
+
+\subsubsection{Quad Z keys}
+\begin{describelist*}[30mm]{keys}
+ \describe {name} {\tsmeta{node-name}, when using a to[\,] path.}
+ \describe{I1}{Initial value:\tsverb{$I_1$}}
+ \describe{I2}{Initial value:\tsverb{$I_2$}}
+ \describe{V1}{Initial value:\tsverb{$V_1$}}
+ \describe{V2}{Initial value:\tsverb{$V_2$}}
+ \describe{Z11}{Initial value:\tsverb{$Z_{11}$}}
+ \describe{Z12}{Initial value:\tsverb{$Z_{12}$}}
+ \describe{Z21}{Initial value:\tsverb{$Z_{21}$}}
+ \describe{Z22}{Initial value:\tsverb{$Z_{22}$}}
+ \describe{Z11 label pos}{changes the label position. Defaults to: \tsobj[verb]{{south west}{top left}}}
+ \describe{Z12 label pos}{changes the label position. Defaults to: \tsobj[verb]{{south east}{top left}}}
+ \describe{Z21 label pos}{changes the label position. Defaults to: \tsobj[verb]{{north west}{bottom right}}}
+ \describe{Z22 label pos}{changes the label position. Defaults to: \tsobj[verb]{{south east}{top right}}}
+\end{describelist*}
+\begin{tsremark}
+The label pos keys expects two anchor names (... label pos=\tsargs[marg]{anchor A,anchor B}). The first anchors refers the sub-shape node and the second anchor is the text one.
+\end{tsremark}
+
+
+
+\subsection{Quad Y}
+\begin{codestore}[QuadYDef]
+% Node use
+node[Quad Y]{}
+
+% To path use
+(A) to[ToQuad Y] (B)
+\end{codestore}
+
+\tscode*[emph={draw,node},emph2={x,y,fit,to,outer,inner,node},emph3={Quad,ToQuad,Black,ToBlack,Box,Thevenin,ToThevenin,Norton,ToNorton},basicstyle={\scriptsize\ttfamily},numbers=left,codeprefix={}]{QuadYDef}
+This shape, besides the base anchors (see \ref{quadanchors}) it has 4 internal nodes: \tsobj[key]{<node>-Y11,<node>-Y12,<node>-Y21,<node>-Y22} and each of those sub-nodes has geographic anchors as defined at \ref{auxiliarynodes}.
+\begin{tsremark}
+There is also a \tsobj[key]{ToQuad Y} to be used in a \tsobj[key]{to[ ]} path, in which case the key \tsobj[key]{outer x fit to} style will be triggered with the starting and ending points of the \tsobj[key]{to[ ]} path.
+\end{tsremark}
+
+\begin{center}%
+ \resizebox{0.8\textwidth}{!}{%
+ \begin{tikzpicture}
+ \draw (0,0) node[Quad Y](Qa){text};
+ \pingeoanchors{Qa}
+ \draw (Qa.2+) ++(2,0) node[Quad Y,anchor=1+](Qb){text};
+ \pinquadanchors{Qb}
+ \end{tikzpicture}
+ }
+\end{center}
+\begin{center}%
+ \resizebox{0.4\textwidth}{!}{%
+ \begin{tikzpicture}
+ \draw (0,0) node[Quad Y,anchor=north](Qc){text};
+ \pinquadtextanchors{Qc}
+ \end{tikzpicture}
+ }
+\end{center}
+
+\subsubsection{Quad Y keys}
+\begin{describelist*}[30mm]{keys}
+ \describe {name} {\tsmeta{node-name}, when using a to[\,] path.}
+ \describe{I1}{Initial value:\tsverb{$I_1$}}
+ \describe{I2}{Initial value:\tsverb{$I_2$}}
+ \describe{V1}{Initial value:\tsverb{$V_1$}}
+ \describe{V2}{Initial value:\tsverb{$V_2$}}
+ \describe{Y11}{Initial value:\tsverb{$Y_{11}$}}
+ \describe{Y12}{Initial value:\tsverb{$Y_{12}$}}
+ \describe{Y21}{Initial value:\tsverb{$Y_{21}$}}
+ \describe{Y22}{Initial value:\tsverb{$Y_{22}$}}
+ \describe{Y11 label pos}{changes the label position. Defaults to: \tsobj[verb]{{south west}{top left}}}
+ \describe{Y12 label pos}{changes the label position. Defaults to: \tsobj[verb]{{south east}{top left}}}
+ \describe{Y21 label pos}{changes the label position. Defaults to: \tsobj[verb]{{north west}{bottom right}}}
+ \describe{Y22 label pos}{changes the label position. Defaults to: \tsobj[verb]{{north west}{bottom right}}}
+\end{describelist*}
+\begin{tsremark}
+The label pos keys expects two anchor names (... label pos=\tsargs[marg]{anchor A,anchor B}). The first anchors refers the sub-shape node and the second anchor is the text one.
+\end{tsremark}
+
+\subsection{Quad G}
+\begin{codestore}[QuadGDef]
+% Node use
+node[Quad G]{}
+
+% To path use
+(A) to[ToQuad G] (B)
+\end{codestore}
+
+\tscode*[emph={draw,node},emph2={x,y,fit,to,outer,inner,node},emph3={Quad,ToQuad,Black,ToBlack,Box,Thevenin,ToThevenin,Norton,ToNorton},basicstyle={\scriptsize\ttfamily},numbers=left,codeprefix={}]{QuadGDef}
+
+This shape, besides the base anchors (see \ref{quadanchors}) it has 4 internal nodes: \tsobj[key]{<node>-G11,<node>-G12,<node>-G21,<node>-G22} and each of those sub-nodes has geographic anchors as defined at \ref{auxiliarynodes}.
+\begin{tsremark}
+There is also a \tsobj[key]{ToQuad G} to be used in a \tsobj[key]{to[ ]} path, in which case the key \tsobj[key]{outer x fit to} style will be triggered with the starting and ending points of the \tsobj[key]{to[ ]} path.
+\end{tsremark}
+
+\begin{center}%
+ \resizebox{0.8\textwidth}{!}{%
+ \begin{tikzpicture}
+ \draw (0,0) node[Quad G](Qa){text};
+ \pingeoanchors{Qa}
+ \draw (Qa.2+) ++(2,0) node[Quad G,anchor=1+](Qb){text};
+ \pinquadanchors{Qb}
+ \end{tikzpicture}
+ }
+\end{center}
+\begin{center}%
+ \resizebox{0.4\textwidth}{!}{%
+ \begin{tikzpicture}
+ \draw (0,0) node[Quad G,anchor=north](Qc){text};
+ \pinquadtextanchors{Qc}
+ \end{tikzpicture}
+ }
+\end{center}
+
+
+\subsubsection{Quad G keys}
+\begin{describelist*}[30mm]{keys}
+ \describe {name} {\tsmeta{node-name}, when using a to[\,] path.}
+ \describe{I1}{Initial value:\tsverb{$I_1$}}
+ \describe{I2}{Initial value:\tsverb{$I_2$}}
+ \describe{V1}{Initial value:\tsverb{$V_1$}}
+ \describe{V2}{Initial value:\tsverb{$V_2$}}
+ \describe{G11}{Initial value:\tsverb{$G_{11}$}}
+ \describe{G12}{Initial value:\tsverb{$G_{12}$}}
+ \describe{G21}{Initial value:\tsverb{$G_{21}$}}
+ \describe{G22}{Initial value:\tsverb{$G_{22}$}}
+ \describe{G11 label pos}{changes the label position. Defaults to: \tsobj[verb]{{south west}{top left}}}
+ \describe{G12 label pos}{changes the label position. Defaults to: \tsobj[verb]{{south east}{top left}}}
+ \describe{G21 label pos}{changes the label position. Defaults to: \tsobj[verb]{{north west}{bottom right}}}
+ \describe{G22 label pos}{changes the label position. Defaults to: \tsobj[verb]{{south east}{top right}}}
+\end{describelist*}
+\begin{tsremark}
+The label pos keys expects two anchor names (... label pos=\tsargs[marg]{anchor A,anchor B}). The first anchors refers the sub-shape node and the second anchor is the text one.
+\end{tsremark}
+
+\subsection{Quad H}
+\begin{codestore}[QuadHDef]
+% Node use
+node[Quad H]{}
+
+% To path use
+(A) to[ToQuad H] (B)
+\end{codestore}
+
+\tscode*[emph={draw,node},emph2={x,y,fit,to,outer,inner,node},emph3={Quad,ToQuad,Black,ToBlack,Box,Thevenin,ToThevenin,Norton,ToNorton},basicstyle={\scriptsize\ttfamily},numbers=left,codeprefix={}]{QuadHDef}
+
+This shape, besides the base anchors (see \ref{quadanchors}) it has 4 internal nodes: \tsobj[key]{<node>-H11,<node>-H12,<node>-H21,<node>-H22} and each of those sub-nodes has geographic anchors as defined at \ref{auxiliarynodes}.
+\begin{tsremark}
+There is also a \tsobj[key]{ToQuad H} to be used in a \tsobj[key]{to[ ]} path, in which case the key \tsobj[key]{outer x fit to} style will be triggered with the starting and ending points of the \tsobj[key]{to[ ]} path.
+\end{tsremark}
+
+\begin{center}%
+ \resizebox{0.8\textwidth}{!}{%
+ \begin{tikzpicture}
+ \draw (0,0) node[Quad H](Qa){text};
+ \pingeoanchors{Qa}
+ \draw (Qa.2+) ++(2,0) node[Quad H,anchor=1+](Qb){text};
+ \pinquadanchors{Qb}
+ \end{tikzpicture}
+ }
+\end{center}
+\begin{center}%
+ \resizebox{0.4\textwidth}{!}{%
+ \begin{tikzpicture}
+ \draw (0,0) node[Quad H,anchor=north](Qc){text};
+ \pinquadtextanchors{Qc}
+ \end{tikzpicture}
+ }
+\end{center}
+
+
+
+\subsubsection{Quad H keys}
+\begin{describelist*}[30mm]{keys}
+ \describe {name} {\tsmeta{node-name}, when using a to[\,] path.}
+ \describe{I1}{Initial value:\tsverb{$I_1$}}
+ \describe{I2}{Initial value:\tsverb{$I_2$}}
+ \describe{V1}{Initial value:\tsverb{$V_1$}}
+ \describe{V2}{Initial value:\tsverb{$V_2$}}
+ \describe{H11}{Initial value:\tsverb{$H_{11}$}}
+ \describe{H12}{Initial value:\tsverb{$H_{12}$}}
+ \describe{H21}{Initial value:\tsverb{$H_{21}$}}
+ \describe{H22}{Initial value:\tsverb{$H_{22}$}}
+ \describe{H11 label pos}{changes the label position. Defaults to: \tsobj[verb]{{south west}{top left}}}
+ \describe{H12 label pos}{changes the label position. Defaults to: \tsobj[verb]{{south east}{top left}}}
+ \describe{H21 label pos}{changes the label position. Defaults to: \tsobj[verb]{{north west}{bottom right}}}
+ \describe{H22 label pos}{changes the label position. Defaults to: \tsobj[verb]{{north west}{bottom right}}}
+\end{describelist*}
+
+\begin{tsremark}
+The label pos keys expects two anchor names (... label pos=\tsargs[marg]{anchor A,anchor B}). The first anchors refers the sub-shape node and the second anchor is the text one.
+\end{tsremark}
+
+~
+
+\section{Thevenin, Norton single port boxes}
+
+
+\subsection{The Base Black Box Shape}\label{BBanchors}
+
+The base shape just draws a base box and sets some connection anchors: $1+$, $1-$, $inner\ 1+$, $inner\ 1-$, besides the geographic and text ones:
+
+
+\begin{center}%
+ \resizebox{0.8\textwidth}{!}{%
+ \begin{tikzpicture}
+ \draw (0,0) node[Black Box](Qa){text};
+ \pingeoanchors{Qa}
+ \draw (Qa.east) ++(2,0) node[Black Box,anchor=west](Qb){text};
+ \pinblackboxanchors{Qb}
+ \draw (Qb.east) ++(2,0) node[Black Box,anchor=west](Qc){text};
+ \pinquadtextanchors{Qc}
+ \end{tikzpicture}
+ }
+\end{center}
+
+
+~
+
+\subsubsection{Base Keys}\label{BBkeys}
+
+These applies to all \emph{Black Box} shapes:
+
+\begin{describelist*}[30mm]{keys}
+ \describe {base width} {The 'box' width}
+ \describe {half base width} {Ditto, half width. Initial value:\tsobj{2\pgf@circ@Rlen}.}
+ \describe {base height} {The distance between \tsobj[keys]{1+,1-}. The 'box' full height is equal to 2*(\tsobj[keys]{half base height} + \tsobj[keys]{height ext} + \tsobj[keys]{height ext+}).}
+ \describe {half base height} {Ditto, half height. Initial value:\tsobj{\pgf@circ@Rlen/7} }
+ \describe {height ext}{Initial value:\tsobj{2\pgf@circ@Rlen/7}}
+ \describe {height ext+}{Initial value:0}
+ \describe {inner ext} {distance between the 'box' and \tsobj{inner 1+/1-/2+/2-}. initial value: \tsobj{\pgf@circ@Rlen/7}}
+ \describe {outer ext} {distance between the 'box' and \tsobj{1+/1-/2+/2-}. initial value: \tsobj{5\pgf@circ@Rlen/14}}
+ \describe {inner marks} {If set, the inner anchors will be marked.}
+ \describe {outer marks} {If set, the outer anchors will be marked.}
+ \describe {invert} {The shape will be inverted, more or less like 'x scale=-1'.}
+ \describe {alt, opt} {Case a Voltage source is zero, a series impedance will be draw vertically.}
+ \describe {outer x fit to} {For any Black Box, this is the same as \tsobj[key]{outer x fit to!}.}
+ \describe {outer x fit to*} {\tsobj[keys]{outer x fit*=}\tsargs[marg]{CoordA,CoordB}. The width will be set so that \tsobj[meta]{1+,2+} (or \tsobj[meta]{1-,2-}, depending on the used anchor) \textbf{will fit} \tsobj[meta]{CoordA,CoordB}. This might result in a shape rotation.}
+ \describe {outer x fit to!} {\tsobj[keys]{outer x fit!=}\tsargs[marg]{CoordA,CoordB}. The width will be set so that the distance between \tsobj[meta]{1+,2+} (or \tsobj[meta]{1-,2-}, depending on the used anchor) will be the same as \tsobj[meta]{CoordA,CoordB}. This will never result in a shape rotation.}
+ \describe {inner x fit to} {For any Black Box, this is the same as \tsobj[key]{inner x fit to!}.}
+ \describe {inner x fit to*} {\tsobj[keys]{inner x fit*=}\tsargs[marg]{CoordA,CoordB}. The width will be set so that \tsobj[meta]{inner 1+,inner 2+} (or \tsobj[meta]{inner 1-,inner 2-}, depending on the used anchor) \textbf{will fit} \tsobj[meta]{CoordA,CoordB}. This might result in a shape rotation.}
+ \describe {inner x fit to!} {\tsobj[keys]{inner x fit!=}\tsargs[marg]{CoordA,CoordB}. The width will be set so that the distance between \tsobj[meta]{inner 1+,inner 2+} (or \tsobj[meta]{inner 1-,inner 2-}, depending on the used anchor) will be the same as \tsobj[meta]{CoordA,CoordB}. This will never result in a shape rotation.}
+ \describe {y fit to} {For any Black Box, this is the same as \tsobj[key]{y fit to*}.}
+ \describe {y fit to*} {\tsobj[keys]{y fit*=}\tsargs[marg]{CoordA,CoordB}. The height will be set so that \tsobj[keys]{1+,1-} \textbf{will fit} \tsobj[keys]{CoordA,CoordB}. This might result in a shape rotation}
+ \describe {y fit to!} {\tsobj[keys]{y fit!=}\tsargs[marg]{CoordA,CoordB}. The height will be set so that the distance between \tsobj[meta]{1+,1-} will be equal to the distance between \tsobj[marg]{CoordA,CoordB}. This will never result in a shape rotation.}
+ \describe{label top left}{It will place a label at the top left anchor}
+ \describe{label top center}{It will place a label at the top center anchor}
+ \describe{label top right}{It will place a label at the top right anchor}
+ \describe{label inner top left}{It will place a label at the inner top left anchor}
+ \describe{label inner top center}{It will place a label at the inner top center anchor}
+ \describe{label inner top right}{It will place a label at the inner top right anchor}
+ \describe{label bottom left}{It will place a label at the bottom left anchor}
+ \describe{label bottom center}{It will place a label at the bottom center anchor}
+ \describe{label bottom right}{It will place a label at the bottom right anchor}
+ \describe{label inner bottom left}{It will place a label at the inner bottom left anchor}
+ \describe{label inner bottom center}{It will place a label at the inner bottom center anchor}
+ \describe{label inner bottom right}{It will place a label at the inner bottom right anchor}
+\end{describelist*}
+
+\subsection{Black Box}
+\begin{codestore}[BBDef]
+% Node use
+node[Black Box]{}
+
+% To path use
+(A) to[ToBlack Box] (B)
+\end{codestore}
+
+\tscode*[emph={draw,node},emph2={x,y,fit,to,outer,inner,node},emph3={Quad,ToQuad,Black,ToBlack,Box,Thevenin,ToThevenin,Norton,ToNorton},basicstyle={\scriptsize\ttfamily},numbers=left,codeprefix={}]{BBDef}
+This is just the base shape, to be used in cases whereas one just want to emphasises part of a circuit (using, for instance, the \tsobj[key]{inner x fit to} key, or just mark a single port black box.
+\begin{tsremark}
+There is also a \tsobj[key]{ToBlack Box} to be used in a \tsobj[key]{to[ ]} path, in which case the key \tsobj[key]{y fit to} style will be triggered with the starting and ending points of the \tsobj[key]{to[ ]} path.
+\end{tsremark}
+
+\begin{center}%
+ \resizebox{0.8\textwidth}{!}{%
+ \begin{tikzpicture}
+ \draw (0,0) node[Black Box](Qa){text};
+ \pingeoanchors{Qa}
+ \draw (Qa.east) ++(2,0) node[Black Box,anchor=west](Qb){text};
+ \pinblackboxanchors{Qb}
+ \draw (Qb.east) ++(2,0) node[Black Box,anchor=west](Qc){text};
+ \pinquadtextanchors{Qc}
+ \end{tikzpicture}
+ }
+\end{center}
+
+~
+
+\subsubsection{Black Box keys}
+\begin{describelist*}[30mm]{keys}
+ \describe {name} {\tsmeta{node-name}, when using a to[\,] path.}
+ \describe{I1}{Initial value:\tsverb{$I_1$}}
+ \describe{V1}{Initial value:\tsverb{$V_1$}}
+\end{describelist*}
+
+\subsubsection{Examples of \emph{fit to} use}
+Squeezing a Black Box between two parts of a circuit (nodes C and D):
+
+\begin{codestore}[BBfitA]
+\resizebox{0.4\textwidth}{!}{
+\begin{tikzpicture}
+ \draw (0,0) \pincoord(ref) to[R=R1] ++(0,2) \pincoord(A) to[R=R2] ++(0,2) \pincoord(B)
+ -- ++(2,0) \pincoord(C,red) (C |- ref) \pincoord(C1) -- (ref);
+ \draw (C) ++(7,0) \pincoord(D,red) -- ++(0.5,0) to[R=R3] ++(0,-3) -- ++(2,0) to[R=R4] ++(0,3) -- ++(0.5,0) \pincoord(E);
+ \draw (C) node[Black Box,anchor=1+,y fit to={C}{C1},outer x fit to={C}{D}]{};
+\end{tikzpicture}
+}
+\end{codestore}
+
+\tsdemo*[codeprefix={},resultprefix={},emph={draw,node},emph2={x,y,fit,to,outer,inner,node},emph3={Quad,Black,Box},basicstyle={\scriptsize\ttfamily},numbers=left]{BBfitA}
+
+~
+
+Fitting some circuit inside the Black Box (nodes C and E):
+\begin{codestore}[BBfitB]
+\resizebox{0.4\textwidth}{!}{
+\begin{tikzpicture}
+ \draw (0,0) \pincoord(ref) to[R=R1] ++(0,2) \pincoord(A) to[R=R2] ++(0,2) \pincoord(B)
+ -- ++(2,0) \pincoord(C,red) (C |- ref) \pincoord(C1) -- (ref);
+ \draw (C) ++(7,0) \pincoord(D,red) -- ++(0.5,0) to[R=R3] ++(0,-3) -- ++(2,0) to[R=R4] ++(0,3) -- ++(0.5,0) \pincoord(E);
+ \draw (C) node[Black Box,anchor=inner 1+,y fit to={C}{C1},inner x fit to={C}{E}]{};
+\end{tikzpicture}
+}
+\end{codestore}
+
+\tsdemo*[codeprefix={},resultprefix={},emph={draw,node},emph2={x,y,fit,to,outer,inner,node},emph3={Quad,Black,Box},basicstyle={\scriptsize\ttfamily},numbers=left]{BBfitB}
+
+
+\subsection{Thevenin}
+\begin{codestore}[TheveninDef]
+% Node use
+node[Thevenin]{}
+
+% To path use
+(A) to[ToThevenin] (B)
+\end{codestore}
+
+\tscode*[emph={draw,node},emph2={x,y,fit,to,outer,inner,node},emph3={Quad,ToQuad,Black,ToBlack,Box,Thevenin,ToThevenin,Norton,ToNorton},basicstyle={\scriptsize\ttfamily},numbers=left,codeprefix={}]{TheveninDef}
+This is the classical Thevenin circuit. Besides the base anchors (see \ref{BBanchors}) it has 2 internal nodes: \tsobj[key]{<node>-Zth,<node>-Vth} and each of those sub-nodes has geographic anchors as defined at \ref{auxiliarynodes}.
+\begin{tsremark}
+There is also a \tsobj[key]{ToThevenin} to be used in a \tsobj[key]{to[ ]} path, in which case the key \tsobj[key]{y fit to} style will be triggered with the starting and ending points of the \tsobj[key]{to[ ]} path.
+\end{tsremark}
+
+\begin{center}%
+ \resizebox{0.8\textwidth}{!}{%
+ \begin{tikzpicture}
+ \draw (0,0) node[Thevenin](Qa){text};
+ \pingeoanchors{Qa}
+ \draw (Qa.east) ++(2,0) node[Thevenin,anchor=west](Qb){text};
+ \pinblackboxanchors{Qb}
+ \draw (Qb.east) ++(2,0) node[Thevenin,anchor=west](Qc){text};
+ \pinquadtextanchors{Qc}
+ \end{tikzpicture}
+ }
+\end{center}
+
+
+
+\subsubsection{Thevenin keys}
+\begin{describelist*}[30mm]{keys}
+ \describe {name} {\tsmeta{node-name}, when using a to[\,] path.}
+ \describe{I1}{Initial value:\tsverb{$I_1$}}
+ \describe{V1}{Initial value:\tsverb{$V_1$}}
+ \describe{Zth}{Initial value:\tsverb{$Z_{th}$}}
+ \describe{Vth}{Initial value:\tsverb{$V_{th}$}}
+ \describe{Zth label pos}{changes the label position. Defaults to: \tsobj[verb]{{south west}{top left}}}
+ \describe{Vth label pos}{changes the label position. Defaults to: \tsobj[verb]{{south east}{top left}}}
+\end{describelist*}
+\begin{tsremark}
+The label pos keys expects two anchor names (... label pos=\tsargs[marg]{anchor A,anchor B}). The first anchors refers the sub-shape node and the second anchor is the text one.
+\end{tsremark}
+
+\subsection{Norton}
+\begin{codestore}[NortonDef]
+% Node use
+node[Norton]{}
+
+% To path use
+(A) to[ToNorton] (B)
+\end{codestore}
+
+\tscode*[emph={draw,node},emph2={x,y,fit,to,outer,inner,node},emph3={Quad,ToQuad,Black,ToBlack,Box,Thevenin,ToThevenin,Norton,ToNorton},basicstyle={\scriptsize\ttfamily},numbers=left,codeprefix={}]{NortonDef}
+This is the classical Norton circuit. Besides the base anchors (see \ref{BBanchors}) it has 2 internal nodes: \tsobj[key]{<node>-Yn,<node>-In} and each of those sub-nodes has geographic anchors as defined at \ref{auxiliarynodes}.
+\begin{tsremark}
+There is also a \tsobj[key]{ToNorton} to be used in a \tsobj[key]{to[ ]} path, in which case the key \tsobj[key]{y fit to} style will be triggered with the starting and ending points of the \tsobj[key]{to[ ]} path.
+\end{tsremark}
+
+\begin{center}%
+ \resizebox{0.8\textwidth}{!}{%
+ \begin{tikzpicture}
+ \draw (0,0) node[Norton](Qa){text};
+ \pingeoanchors{Qa}
+ \draw (Qa.east) ++(2,0) node[Norton,anchor=west](Qb){text};
+ \pinblackboxanchors{Qb}
+ \draw (Qb.east) ++(2,0) node[Norton,anchor=west](Qc){text};
+ \pinquadtextanchors{Qc}
+ \end{tikzpicture}
+ }
+\end{center}
+
+\subsubsection{Norton keys}
+\begin{describelist*}[30mm]{keys}
+ \describe {name} {\tsmeta{node-name}, when using a to[\,] path.}
+ \describe{I1}{Initial value:\tsverb{$I_1$}}
+ \describe{V1}{Initial value:\tsverb{$V_1$}}
+ \describe{Yn}{Initial value:\tsverb{$Y_{N}$}}
+ \describe{In}{Initial value:\tsverb{$I_{N}$}}
+ \describe{Yn label pos}{changes the label position. Defaults to: \tsobj[verb]{{south west}{top left}}}
+ \describe{In label pos}{changes the label position. Defaults to: \tsobj[verb]{{south east}{top left}}}
+\end{describelist*}
+\begin{tsremark}
+The label pos keys expects two anchor names (... label pos=\tsargs[marg]{anchor A,anchor B}). The first anchors refers the sub-shape node and the second anchor is the text one.
+\end{tsremark}
+
+
+\section{Pseudo-Graph Shape}
+\begin{codestore}[PGDef]
+% Node use
+node[PG load line]{}
+
+node[PG linear load line]
+\end{codestore}
+
+\tscode*[emph={draw,node},emph2={x,y,fit,to,outer,inner,node},emph3={Quad,ToQuad,Black,ToBlack,Box,Thevenin,ToThevenin,Norton,ToNorton,PG,load,line,linear},basicstyle={\scriptsize\ttfamily},numbers=left,codeprefix={}]{PGDef}
+
+Sometimes when representing a single port sub-circuit, one might use a X-Y graph, for which \tsobj[pkg]{gnuplot,pgfplots} are excellent choices, but a bit overkill if all you want is a crude representation of a linear load line.
+
+This shape is just that, a X-Y graph mockup, that nicely fits inside a black box, and nothing else.
+
+\begin{center}%
+% \resizebox{0.2\textwidth}{!}{%
+ \begin{tikzpicture}
+ \draw (0,0) node[PG linear load line,first quadrant](PGa){};
+ \pingeoanchors{PGa}
+ \draw (4,0) node[PG linear load line,second quadrant](PGa){};
+ \pingeoanchors{PGa}
+ \draw (8,0) node[PG linear load line,third quadrant](PGa){};
+ \pingeoanchors{PGa}
+ \draw (12,0) node[PG linear load line,fourth quadrant](PGa){};
+ \pingeoanchors{PGa}
+ \end{tikzpicture}
+% }
+\end{center}
+
+
+\subsection{Pseudo-Graph Keys}
+
+These are the keys to fine tuning a shape:
+\begin{describelist*}[30mm]{keys}
+ \describe {x axis} {X axis \emph{name}. Initial value: $V$}
+ \describe {x val} {X axis \emph{val} at the crossing point. Initial value: $V_{th}$}
+ \describe {y axis} {Y axis \emph{name}. Initial value: $I$}
+ \describe {y val} {Y axis \emph{val} at the crossing point. Initial value: $I_{N}$}
+ \describe {first quadrant} {First quadrant mock up. (which is also the default).}
+ \describe {second quadrant} {Second quadrant mock up.}
+ \describe {third quadrant} {Third quadrant mock up.}
+ \describe {fourth quadrant} {Fourth quadrant mock up.}
+ \describe {base width} {The \emph{graph} width}
+ \describe {half base width} {Ditto, half width. Initial value:\tsobj{0.5\pgf@circ@Rlen}.}
+ \describe {base height} {The \emph{graph} height}
+ \describe {half base height} {Ditto, half height. Initial value:\tsobj{0.5\pgf@circ@Rlen}.}
+\end{describelist*}
+\begin{tsremark}
+Besides these, one can also use the keys presented at \ref{generalkeys}.
+\end{tsremark}
+
+
+\section{Examples of use}
+
+First of, a simple case of combining a generic Quad with equations and a generic Black Box with a Pseudo-Graph:
+
+\begin{codestore}[DemoX]
+\resizebox{\textwidth}{!}{
+\begin{tikzpicture}
+ \draw (0,0) \ncoord(ref) node[Quad,anchor=1+](Q1){}
+ (Q1.2+) -- ++(1,0) \ncoord(X) -- ++(1,0) node[Black Box,anchor=1+,V1=$V_a$,I1=$I_a$](B1){}
+ (Q1.2-) -- (B1.1-)
+ (B1.center) node[PG linear load line,x axis=$V_a$,y axis=$I_a$]{}
+ (Q1.center) node{$ \begin{matrix}
+ V_1 &=& 5j*V_2 + 2*I_2 \\
+ I_1 &=& 3*V_2 + 2j*I_2
+ \end{matrix} $%
+ } ;
+\end{tikzpicture}
+}
+\end{codestore}
+
+\tsdemo*[codeprefix={},resultprefix={},emph={draw,node,coord},emph2={x,y,axis,fit,to,outer,inner,round,control,sources,european,alt},emph3={Quad,Black,Box,PG,linear,load,line},basicstyle={\scriptsize\ttfamily},numbers=left]{DemoX}
+
+~
+
+All default Quadripoles and Thevenin/Norton.
+
+\begin{codestore}[DemoA]
+\resizebox{\textwidth}{!}{
+\begin{tikzpicture}
+ \draw (0,0) \ncoord(ref) node[Quad Z,anchor=1+](Qz1){}
+ (Qz1.2+) -- ++(1.5,0) \ncoord(X) -- ++(1.5,0) node[Quad Y,anchor=1+](Qy1){}
+ (Qy1.2+) -- ++(1,0) node[Thevenin,anchor=1+](th1){}
+ (Qz1.1-) -- ++(0,-1.5) node[Quad H,anchor=1+](Qh1){}
+ (Qh1.2+) -- ++(1.5,0) \ncoord(Y) -- ++(1.5,0) node[Quad G,anchor=1+](Qg1){}
+ (Qg1.2+) -- ++(1,0) node[Norton,anchor=1+](nr1){}
+ (Qz1.2-) -- (Qy1.1-) (Qy1.2-) -- (th1.1-)
+ (Qh1.2-) -- (Qg1.1-) (Qg1.2-) -- (nr1.1-)
+ ;
+ \draw (X) to[R=$Rx$] (X |- Qz1.2-)
+ (Y) to[R=$Ry$] (Y |- Qh1.2-)
+ ;
+\end{tikzpicture}
+}
+\end{codestore}
+
+\tsdemo*[codeprefix={},resultprefix={},emph={draw,node,coord},emph2={x,y,fit,to,outer,inner,round,control,sources,european,alt},emph3={Quad,Black,Box},basicstyle={\scriptsize\ttfamily},numbers=left]{DemoA}
+
+~
+
+
+The same demo but with all parameter $11$ and $22$ zeroed, and changing the ``control sources''
+
+\begin{codestore}[DemoB]
+\resizebox{\textwidth}{!}{
+\begin{tikzpicture}
+ \draw (0,0) \ncoord(ref) node[Quad Z,anchor=1+,Z11=0,Z22=0,I1=$I_a$,V1=$V_a$,I2=$I_b$,V2=$V_b$](Qz1){}
+ (Qz1.2+) -- ++(1.5,0) \ncoord(X) -- ++(1.5,0) node[Quad Y,anchor=1+,Y11=0,Y22=0,I1=$I_d$,V1=$V_d$,I2=$I_c$,V2=$V_c$](Qy1){}
+ (Qy1.2+) -- ++(1,0) node[Thevenin,anchor=1+,Zth=0,I1=$I_h$,V1=$V_h$](th1){}
+ (Qz1.1-) -- ++(0,-1.5) node[Quad H,anchor=1+,H11=0,H22=0,I1=$I_e$,V1=$V_e$,I2=$I_e$,V2=$V_e$](Qh1){}
+ (Qh1.2+) -- ++(1.5,0) \ncoord(Y) -- ++(1.5,0) node[Quad G,anchor=1+,G11=0,G22=0,I1=$I_g$,V1=$V_g$,I2=$I_f$,V2=$V_f$](Qg1){}
+ (Qg1.2+) -- ++(1,0) node[Norton,anchor=1+,Yn=0,I1=$I_i$,V1=$V_i$](nr1){}
+ (Qz1.2-) -- (Qy1.1-) (Qy1.2-) -- (th1.1-)
+ (Qh1.2-) -- (Qg1.1-) (Qg1.2-) -- (nr1.1-)
+ ;
+ \draw (X) to[R=$Rx$] (X |- Qz1.2-)
+ (Y) to[R=$Ry$] (Y |- Qh1.2-)
+ ;
+\end{tikzpicture}
+}
+\end{codestore}
+
+\tsdemo*[codeprefix={},resultprefix={},emph={draw,node,coord},emph2={x,y,fit,to,outer,inner,round,control,sources,european,alt},emph3={Quad,Black,Box},basicstyle={\scriptsize\ttfamily},numbers=left]{DemoB}
+~
+
+
+Now with the $12$ and $21$ parameters zeroed, normal form:
+
+\begin{codestore}[DemoC]
+\resizebox{\textwidth}{!}{
+\begin{tikzpicture}
+ \draw (0,0) \ncoord(ref) node[Quad Z,anchor=1+,Z12=0,Z21=0,I1=$I_a$,V1=$V_a$,I2=$I_b$,V2=$V_b$](Qz1){}
+ (Qz1.2+) -- ++(1.5,0) \ncoord(X) -- ++(1.5,0) node[Quad Y,anchor=1+,Y12=0,Y21=0,I1=$I_d$,V1=$V_d$,I2=$I_c$,V2=$V_c$](Qy1){}
+ (Qy1.2+) -- ++(1,0) node[Thevenin,anchor=1+,Vth=0,I1=$I_h$,V1=$V_h$](th1){}
+ (Qz1.1-) -- ++(0,-1.5) node[Quad H,anchor=1+,H12=0,H21=0,I1=$I_e$,V1=$V_e$,I2=$I_e$,V2=$V_e$](Qh1){}
+ (Qh1.2+) -- ++(1.5,0) \ncoord(Y) -- ++(1.5,0) node[Quad G,anchor=1+,G12=0,G21=0,I1=$I_g$,V1=$V_g$,I2=$I_f$,V2=$V_f$](Qg1){}
+ (Qg1.2+) -- ++(1,0) node[Norton,anchor=1+,In=0,I1=$I_i$,V1=$V_i$](nr1){}
+ (Qz1.2-) -- (Qy1.1-) (Qy1.2-) -- (th1.1-)
+ (Qh1.2-) -- (Qg1.1-) (Qg1.2-) -- (nr1.1-)
+ ;
+ \draw (X) to[R=$Rx$] (X |- Qz1.2-)
+ (Y) to[R=$Ry$] (Y |- Qh1.2-)
+ ;
+\end{tikzpicture}
+}
+\end{codestore}
+
+\tsdemo*[codeprefix={},resultprefix={},emph={draw,node,coord},emph2={x,y,fit,to,outer,inner,round,control,sources,european,alt},emph3={Quad,Black,Box},basicstyle={\scriptsize\ttfamily},numbers=left]{DemoC}
+
+~
+
+Same as last one, but with an alternate form:
+
+\begin{codestore}[DemoC]
+\resizebox{\textwidth}{!}{
+\begin{tikzpicture}
+ \draw (0,0) \ncoord(ref) node[Quad Z,alt,anchor=1+,Z12=0,Z21=0,I1=$I_a$,V1=$V_a$,I2=$I_b$,V2=$V_b$](Qz1){}
+ (Qz1.2+) -- ++(1.5,0) \ncoord(X) -- ++(1.5,0) node[Quad Y,alt,anchor=1+,Y12=0,Y21=0,I1=$I_d$,V1=$V_d$,I2=$I_c$,V2=$V_c$](Qy1){}
+ (Qy1.2+) -- ++(1,0) node[Thevenin,alt,anchor=1+,Vth=0,I1=$I_h$,V1=$V_h$](th1){}
+ (Qz1.1-) -- ++(0,-1.5) node[Quad H,alt,anchor=1+,H12=0,H21=0,I1=$I_e$,V1=$V_e$,I2=$I_e$,V2=$V_e$](Qh1){}
+ (Qh1.2+) -- ++(1.5,0) \ncoord(Y) -- ++(1.5,0) node[Quad G,alt,anchor=1+,G12=0,G21=0,I1=$I_g$,V1=$V_g$,I2=$I_f$,V2=$V_f$](Qg1){}
+ (Qg1.2+) -- ++(1,0) node[Norton,alt,anchor=1+,In=0,I1=$I_i$,V1=$V_i$](nr1){}
+ (Qz1.2-) -- (Qy1.1-) (Qy1.2-) -- (th1.1-)
+ (Qh1.2-) -- (Qg1.1-) (Qg1.2-) -- (nr1.1-)
+ ;
+ \draw (X) to[R=$Rx$] (X |- Qz1.2-)
+ (Y) to[R=$Ry$] (Y |- Qh1.2-)
+ ;
+\end{tikzpicture}
+}
+\end{codestore}
+
+\tsdemo*[codeprefix={},resultprefix={},emph={draw,node,coord},emph2={x,y,fit,to,outer,inner,round,control,sources,european,alt},emph3={Quad,Black,Box},basicstyle={\scriptsize\ttfamily},numbers=left]{DemoC}
+
+~
+
+
+Setting all parameters,some impedances as zig-zag, others as generic, per quadripole:
+
+
+
+\begin{codestore}[DemoD]
+\resizebox{\textwidth}{!}{
+\begin{tikzpicture}
+ \draw (0,0) \ncoord(ref) node[Quad Z,alt,round sources,european,anchor=1+,Z11=$Z_a$,Z22=$Z_b$,Z12=$Z_{re}$,Z21=$Z_{fe}$,I1=$I_a$,V1=$V_a$,I2=$I_b$,V2=$V_b$](Qz1){}
+ (Qz1.2+) -- ++(1.5,0) \ncoord(X) -- ++(1.5,0) node[Quad Y,alt,anchor=1+,Y11=$Y_a$,Y22=$Y_b$,Y12=$Y_{re}$,Y21=$Y_{fe}$,I1=$I_d$,V1=$V_d$,I2=$I_c$,V2=$V_c$](Qy1){}
+ (Qy1.2+) -- ++(1,0) node[Thevenin,alt,anchor=1+,Vth=$V_1$,Zth=$Z_a$,I1=$I_h$,V1=$V_h$](th1){}
+ (Qz1.1-) -- ++(0,-1.5) node[Quad H,european,alt,anchor=1+,H11=$H_a$,H22=$H_b$,H12=$H_{re}$,H21=$H_{fe}$,I1=$I_e$,V1=$V_e$,I2=$I_e$,V2=$V_e$](Qh1){}
+ (Qh1.2+) -- ++(1.5,0) \ncoord(Y) -- ++(1.5,0) node[Quad G,alt,anchor=1+,G11=$G_a$,G22=$G_b$,G12=$G_{re}$,G21=$G_{fe}$,I1=$I_g$,V1=$V_g$,I2=$I_f$,V2=$V_f$](Qg1){}
+ (Qg1.2+) -- ++(1,0) node[Norton,alt,control sources,european,anchor=1+,In=$I_b$,Yn=$Y_b$,I1=$I_i$,V1=$V_i$](nr1){}
+ (Qz1.2-) -- (Qy1.1-) (Qy1.2-) -- (th1.1-)
+ (Qh1.2-) -- (Qg1.1-) (Qg1.2-) -- (nr1.1-)
+ ;
+ \draw (X) to[R=$Rx$] (X |- Qz1.2-)
+ (Y) to[R=$Ry$] (Y |- Qh1.2-)
+ ;
+\end{tikzpicture}
+}
+\end{codestore}
+
+\tsdemo*[codeprefix={},resultprefix={},emph={draw,node,coord},emph2={x,y,fit,to,outer,inner,round,control,sources,european,alt},emph3={Quad,Black,Box},basicstyle={\scriptsize\ttfamily},numbers=left]{DemoD}
+
+
+
+\end{document}
diff --git a/graphics/pgf/contrib/tikzquads/latex/tikzquads.sty b/graphics/pgf/contrib/tikzquads/latex/tikzquads.sty
new file mode 100644
index 0000000000..31fc675742
--- /dev/null
+++ b/graphics/pgf/contrib/tikzquads/latex/tikzquads.sty
@@ -0,0 +1,2202 @@
+%%%==============================================================================
+%% Copyright 2024-present by Alceu Frigeri
+%%
+%% This work may be distributed and/or modified under the conditions of
+%%
+%% * The [LaTeX Project Public License](http://www.latex-project.org/lppl.txt),
+%% version 1.3c (or later), and/or
+%% * The [GNU Affero General Public License](https://www.gnu.org/licenses/agpl-3.0.html),
+%% version 3 (or later)
+%%
+%% This work has the LPPL maintenance status *maintained*.
+%%
+%% The Current Maintainer of this work is Alceu Frigeri
+%%
+%% This is version {1.0} {2024/01/13}
+%%
+%% The list of files that compose this work can be found in the README.md file at
+%% https://ctan.org/pkg/tikzquads
+%%
+%%%==============================================================================
+%% WARNING: These are personal packs/tests
+%% They might and probably will change at will as needed
+%%
+%%%==============================================================================
+\NeedsTeXFormat{LaTeX2e}[2022/06/01]
+
+
+\ProvidesExplPackage
+ {tikzquads}
+ {2024/01/13}
+ {1.0}
+ {CircuiTikZ Extension - Quadripoles and Dipoles}
+
+\ExplSyntaxOn
+%%%%%%%
+%%%
+%%% Just an attempt of having my packages info in a regular way
+%%% Idea being: { <pck-name> / pkg info } for each and all.
+%%%
+%%%%%%%
+\keys_define:nn { tikzquads / pkg info}
+ {
+ name .code:n = {tikzquads} ,
+ prefix .code:n = {tikzquads} ,
+ date .code:n = {2024/01/13},
+ version .code:n = {1.0} ,
+ description .code:n = {CircuiTikZ~ Extension~- Quadripoles~ and~ Dipoles}
+ }
+\cs_if_exist:NF \PkgInfo
+ {
+ \NewDocumentCommand \PkgInfo {mm} { \keys_set:nn {#1 / pkg info}{#2} }
+ \NewDocumentCommand \PkgDescription {m}
+ { \noindent Package~ \textbf{\PkgInfo{#1}{name}}~Version:~\PkgInfo{#1}{version}~ -~ \PkgInfo{#1}{date}\par \emph{\PkgInfo{#1}{description}}~\par }
+ }
+%%%%%%%
+%%% End of cut-n-paste
+%%%%%%%
+
+\RequirePackage{pgfkeysearch}
+
+\ExplSyntaxOff
+
+
+\makeatletter
+
+%%%
+%%% This only makes sense 'for this package'
+%%%
+\NewDocumentCommand{\SearchValueOf}{mmm}{%
+ \pgfkeysearchvalueof{\csuse{tikzquads@@#1Path}}{#2}{#3}
+ }
+
+%
+%%%%%%%%%%%%%%%
+%%%
+%%% In case \SearchValueOf 'fails' one could use this (no expl3 code)
+%%%
+%%%%%%%%%%%%%%%
+\newcommand{\tikzquads@@ValueOf}[2]{\pgfkeysvalueof{\csuse{tikzquads@@#1Path}/#2}}
+
+
+\newtoggle{tikzquads@@toggle@inverted}
+\newtoggle{tikzquads@@toggle@generic}
+\newtoggle{tikzquads@@toggle@alternate}
+\newtoggle{tikzquads@@toggle@innermarks}
+\newtoggle{tikzquads@@toggle@outermarks}
+\newtoggle{tikzquads@@toggle@beziertip}
+\newtoggle{tikzquads@@toggle@roundsources}
+%
+
+%
+%%%%%%%%%%%%%%%
+%%%
+%%% general/base "Keys" Path
+%%%
+%%%%%%%%%%%%%%%
+%
+\def\tikzquads@@KeysPath{/tikz/tikzquads}
+\pgfkeys{\tikzquads@@KeysPath/.is family}
+
+\pgfkeys{\tikzquads@@KeysPath,
+ .search also={/tikz},
+ tip len/.initial=4pt,
+ tip type/.is choice,
+ tip type/bezier/.code={\toggletrue{tikzquads@@toggle@beziertip}},
+ tip type/triangle/.code={\togglefalse{tikzquads@@toggle@beziertip}},
+ source radius/.initial=0.3\pgf@circ@Rlen,%
+ @round sources/.code={\toggletrue{tikzquads@@toggle@roundsources}},
+ round sources/.style={@round sources},
+ @control sources/.code={\togglefalse{tikzquads@@toggle@roundsources}},
+ control sources/.style={@control sources},
+ thickness/.initial=2,
+ @generic/.code={\toggletrue{tikzquads@@toggle@generic}},
+ generic/.style={@generic},
+ european/.style={@generic},
+ @zigzag/.code={\togglefalse{tikzquads@@toggle@generic}},
+ zigzag/.style={@zigzag},
+ american/.style={@zigzag},
+ name/.initial={}, % this will be, if defined, the node name used in a to[] path
+ minussign len/.initial=1.0\pgf@circ@Rlen/14,%
+ plussign len/.initial=1.1\pgf@circ@Rlen/14,%
+ outer sep/.initial=1.5pt, %% Text separation
+ inner sep/.initial=1pt, %% Text separation
+}
+
+%%%%%%%%%%%%%%%
+%%%
+%%% "PGKeys" Path (for PseudoGraph)
+%%%
+%%%%%%%%%%%%%%%
+
+\def\tikzquads@@PGKeysPath{\tikzquads@@KeysPath/PseudoGraph}
+\pgfkeys{\tikzquads@@PGKeysPath/.is family}
+\pgfkeys{/tikz/PGKeys/.style={\tikzquads@@PGKeysPath}}
+
+\pgfkeys{\tikzquads@@PGKeysPath,
+ .search also={\tikzquads@@KeysPath,/tikz},
+ x axis/.initial={\footnotesize$V$},
+ y axis/.initial={\footnotesize$I$},
+ x val/.initial={\footnotesize$V_{th}$},
+ y val/.initial={\footnotesize$I_{N}$},
+ @PGPoints/.code={%
+ \tikzmath{%
+ %real \x , \y;
+ \y{Xaxispos}=\y{innerbottom};
+ \x{Yaxispos}=\x{innerleft};
+ %
+ \x{coordA}=\x{left};
+ \y{coordA}=\y{Ctop};
+ %
+ \x{coordB}=\x{Cright};
+ \y{coordB}=\y{bottom};
+ %
+ \y{TXaxiscoord}=\y{bottom};
+ \x{TYaxiscoord}=\x{left};
+ %
+ \x{TXvalcoord}=\x{Cright}-0;
+ \y{TXvalcoord}=\y{bottom};
+ %
+ \x{TYvalcoord}=\x{left};
+ \y{TYvalcoord}=\y{Ctop}-0;
+ }
+ \gdef\tikzquads@@PG@XaxisTanchor{top left}
+ \gdef\tikzquads@@PG@XvalTanchor{top right}
+ %
+ \gdef\tikzquads@@PG@YaxisTanchor{bottom right}
+ \gdef\tikzquads@@PG@YvalTanchor{top right}
+ },
+ first quadrant/.style={%
+ @PGPoints/.code={%
+ \tikzmath{%
+ %real \x , \y;
+ \y{Xaxispos}=\y{innerbottom};
+ \x{Yaxispos}=\x{innerleft};
+ %
+ \x{coordA}=\x{left};
+ \y{coordA}=\y{Ctop};
+ %
+ \x{coordB}=\x{Cright};
+ \y{coordB}=\y{bottom};
+ %
+ \y{TXaxiscoord}=\y{bottom};
+ \x{TYaxiscoord}=\x{left};
+ %
+ \x{TXvalcoord}=\x{Cright}-0;
+ \y{TXvalcoord}=\y{bottom};
+ %
+ \x{TYvalcoord}=\x{left};
+ \y{TYvalcoord}=\y{Ctop}-0;
+ }
+ \gdef\tikzquads@@PG@XaxisTanchor{top left}
+ \gdef\tikzquads@@PG@XvalTanchor{top right}
+ %
+ \gdef\tikzquads@@PG@YaxisTanchor{bottom right}
+ \gdef\tikzquads@@PG@YvalTanchor{top right}
+ },
+ },
+ second quadrant/.style={%
+ @PGPoints/.code={%
+ \tikzmath{%
+ %real \x , \y;
+ \y{Xaxispos}=\y{innerbottom};
+ \x{Yaxispos}=\x{innerright};
+ %
+ \x{coordA}=\x{right};
+ \y{coordA}=\y{Ctop};
+ %
+ \x{coordB}=\x{Cleft};
+ \y{coordB}=\y{bottom};
+ %
+ \y{TXaxiscoord}=\y{bottom};
+ \x{TYaxiscoord}=\x{Cright};
+ %
+ \x{TXvalcoord}=\x{Cleft}+2pt;
+ \y{TXvalcoord}=\y{bottom};
+ %
+ \x{TYvalcoord}=\x{right};
+ \y{TYvalcoord}=\y{Ctop}-2pt;
+ }
+ \gdef\tikzquads@@PG@XaxisTanchor{top left}
+ \gdef\tikzquads@@PG@XvalTanchor{top left}
+ %
+ \gdef\tikzquads@@PG@YaxisTanchor{bottom right}
+ \gdef\tikzquads@@PG@YvalTanchor{top left}
+ },
+ },
+ third quadrant/.style={%
+ @PGPoints/.code={%
+ \tikzmath{%
+ %real \x , \y;
+ \y{Xaxispos}=\y{innertop};
+ \x{Yaxispos}=\x{innerright};
+ %
+ \x{coordA}=\x{Cleft};
+ \y{coordA}=\y{top};
+ %
+ \x{coordB}=\x{right};
+ \y{coordB}=\y{Cbottom};
+ %
+ \y{TXaxiscoord}=\y{Ctop};
+ \x{TYaxiscoord}=\x{Cright};
+ %
+ \x{TXvalcoord}=\x{Cleft}+2pt;
+ \y{TXvalcoord}=\y{top};
+ %
+ \x{TYvalcoord}=\x{right};
+ \y{TYvalcoord}=\y{Cbottom}+2pt;
+ }
+ \gdef\tikzquads@@PG@XaxisTanchor{top left}
+ \gdef\tikzquads@@PG@XvalTanchor{bottom left}
+ %
+ \gdef\tikzquads@@PG@YaxisTanchor{bottom right}
+ \gdef\tikzquads@@PG@YvalTanchor{bottom left}
+ },
+ },
+ fourth quadrant/.style={%
+ @PGPoints/.code={%
+ \tikzmath{%
+ %real \x , \y;
+ \y{Xaxispos}=\y{innertop};
+ \x{Yaxispos}=\x{innerleft};
+ %
+ \x{coordA}=\x{left};
+ \y{coordA}=\y{Cbottom};
+ %
+ \x{coordB}=\x{Cright};
+ \y{coordB}=\y{top};
+ %
+ \y{TXaxiscoord}=\y{Ctop};
+ \x{TYaxiscoord}=\x{left};
+ %
+ \x{TXvalcoord}=\x{Cright}-2pt;
+ \y{TXvalcoord}=\y{top};
+ %
+ \x{TYvalcoord}=\x{left};
+ \y{TYvalcoord}=\y{Cbottom}+2pt;
+ }
+ \gdef\tikzquads@@PG@XaxisTanchor{top left}
+ \gdef\tikzquads@@PG@XvalTanchor{bottom right}
+ %
+ \gdef\tikzquads@@PG@YaxisTanchor{bottom right}
+ \gdef\tikzquads@@PG@YvalTanchor{bottom right}
+ },
+ },
+ half base height/.initial=0.5\pgf@circ@Rlen,%
+ base height/.code={%
+ \tikzmath{real \X;
+ \X{tmp} = 0.5*abs(#1);
+ }
+ \pgfkeysalso{\tikzquads@@QuadKeysPath/half base height=\X{tmp}}
+ },
+ half base width/.initial=0.5\pgf@circ@Rlen,%
+ base width/.code={%
+ \tikzmath{real \X;
+ \X{tmp} = 0.5*abs(#1);
+ }
+ \pgfkeysalso{\tikzquads@@QuadKeysPath/half base width=\X{tmp}}
+ },
+}
+
+
+%%%%%%%%%%%%%%%
+%%%
+%%% "QUadKeys" Path (Quadripoles)
+%%%
+%%%%%%%%%%%%%%%
+
+\def\tikzquads@@QuadKeysPath{\tikzquads@@KeysPath/QuadKeys}
+\pgfkeys{\tikzquads@@QuadKeysPath/.is family}
+\pgfkeys{/tikz/QuadKeys/.style={\tikzquads@@QuadKeysPath}}
+
+\newcommand{\tikzquads@@QuadGetAnchor}[2]{\pgfkeys{\tikzquads@@QuadKeysPath,#1={#2}}}
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% "R" Path (Rotation)
+%%%
+%%% re-mapping 'anchors names' in case of a 90 degree (clockwise) rotation
+%%% assuming the element should always be 90 degree rotated.
+%%%
+%%%%%%%%%%%%%%%%%%%
+\def\tikzquads@@RPath{\tikzquads@@QuadKeysPath/Anchor +90 Rotation}
+\pgfkeys{\tikzquads@@RPath/.is family}
+\pgfkeys{\tikzquads@@RPath,
+ south/.code={\csdef{#1}{west}},
+ south east/.code={\csdef{#1}{south west}},
+ east/.code={\csdef{#1}{south}},
+ north east/.code={\csdef{#1}{south east}},
+ north/.code={\csdef{#1}{east}},
+ north west/.code={\csdef{#1}{north east}},
+ west/.code={\csdef{#1}{north}},
+ south west/.code={\csdef{#1}{north west}},
+}
+\newcommand{\tikzquads@@RotateAnchor}[2]{\pgfkeys{\tikzquads@@RPath,#1={#2}}}
+
+
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% "AutoR" Path (Rotation)
+%%%
+%%% re-mapping 'anchors names' in case of a 90 degree (clockwise) rotation
+%%% assuming the element should always be 90 degree rotated.
+%%%
+%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%
+%%%%%% re-mapping 'anchors names' in case of an auto 90 degree (clockwise) rotation
+%%%%%% assuming the rotation was conditional (and original anchors were thought in the original position.)
+%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%
+%%%\def\tikzquads@@AutoRPath{\tikzquads@@QuadKeysPath/Anchor Auto +90 Rotation}
+%%%\pgfkeys{\tikzquads@@AutoRPath/.is family}
+%%%\pgfkeys{\tikzquads@@AutoRPath,
+%%% east/.code={\csdef{#1}{south}},
+%%% west/.code={\csdef{#1}{north}},
+%%% south west/.code={\csdef{#1}{south west}},
+%%% south east/.code={\csdef{#1}{north east}},
+%%% south/.code={\csdef{#1}{west}},
+%%% north/.code={\csdef{#1}{east}},
+%%% north east/.code={\csdef{#1}{north east}},
+%%% north west/.code={\csdef{#1}{south west}},
+%%%}
+%%%\newcommand{\tikzquads@@AutoRotateAnchor}[2]{\pgfkeys{\tikzquads@@AutoRPath,#1={#2}}}
+
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% re-mapping 'anchors names' in case of an 'auto' 90 degree (clockwise) rotation H Res -> V Res
+%%% assuming the rotation was conditional (and original anchors were thought in the original position.)
+%%%
+%%%%%%%%%%%%%%%%%%%
+\def\tikzquads@@AutoRPath{\tikzquads@@QuadKeysPath/Anchor Auto +90 Rotation}
+\pgfkeys{\tikzquads@@AutoRPath/.is family}
+\pgfkeys{\tikzquads@@AutoRPath,
+ east/.code={\csdef{#1}{east}},
+ west/.code={\csdef{#1}{west}},
+ south west/.code={\csdef{#1}{south east}},
+ south east/.code={\csdef{#1}{south west}},
+ south/.code={\csdef{#1}{south}},
+ north/.code={\csdef{#1}{north}},
+ north east/.code={\csdef{#1}{north west}},
+ north west/.code={\csdef{#1}{north east}},
+}
+\newcommand{\tikzquads@@AutoRotateAnchor}[2]{\pgfkeys{\tikzquads@@AutoRPath,#1={#2}}}
+
+
+%
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% re-mapping 'anchors names' in case of an 'invert' key
+%%%
+%%%%%%%%%%%%%%%%%%%
+\def\tikzquads@@TPath{\tikzquads@@QuadKeysPath/Translation}
+\pgfkeys{\tikzquads@@TPath/.is family}
+\pgfkeys{\tikzquads@@TPath,
+ setdefault/.style={#1/.code={\csdef{##1}{#1}}},
+ setdefault/.list={south west,south east,north west,north east,west,east,top left,top right,bottom left,bottom right,left,right},
+ set/.style 2 args={#1/.code={\csdef{##1}{#2}}},
+ .unknown/.code={\csdef{#1}{\pgfkeyscurrentname}},
+}
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% pgf hackery, well, extention: allowing composit names
+%%%
+%%%%%%%%%%%%%%%%%%%
+\pgfkeys{/pgf/text/.cd,
+ top left/.style={/pgf/text/.cd,top,left},
+ top right/.style={/pgf/text/.cd,top,right},
+ bottom left/.style={/pgf/text/.cd,bottom,left},
+ bottom right/.style={/pgf/text/.cd,bottom,right},
+}
+
+%
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% User Shapes as styles. Note that 'QuadKeys' assure that following keys are in the correct tree.
+%%%
+%%%%%%%%%%%%%%%%%%%
+
+\tikzset{BB/.style={BB shape,QuadKeys,@BB fit set,half base width=\pgf@circ@Rlen}}
+\tikzset{Black Box/.style={BB shape,QuadKeys,@BB fit set,half base width=\pgf@circ@Rlen}}
+\tikzset{Norton/.style={NortonBB shape,QuadKeys,@BB fit set,round sources,half base width=\pgf@circ@Rlen}}
+\tikzset{Thevenin/.style={TheveninBB shape,QuadKeys,@BB fit set,round sources,half base width=\pgf@circ@Rlen}}
+
+\tikzset{Quad compact/.style={Quad shape,QuadKeys,half base width=\pgf@circ@Rlen}}
+\tikzset{Quad/.style={Quad shape,QuadKeys}}
+\tikzset{Quad Z/.style={Quad Z shape,QuadKeys}}
+\tikzset{Quad Y/.style={Quad Y shape,QuadKeys}}
+\tikzset{Quad G/.style={Quad G shape,QuadKeys}}
+\tikzset{Quad H/.style={Quad H shape,QuadKeys}}
+
+\tikzset{PG load line/.style={PG linear load line shape,PGKeys}}
+\tikzset{PG linear load line/.style={PG linear load line shape,PGKeys}}
+
+%%
+%% These DO work, but be careful: the node gets a name only if <name> key is defined.
+%%
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% User shapes/keys which can be used in a to[]
+%%% These DO work, but be careful: the node gets a name only if <name> key is defined.
+%%%
+%%%%%%%%%%%%%%%%%%%
+\tikzset{ToQuad/.style={to path={node[Quad,outer x fit to={\tikztostart}{\tikztotarget}](\tikzquads@@ValueOf{Keys}{name}){}},QuadKeys}}
+\tikzset{ToQuad Z/.style={to path={node[Quad Z,outer x fit to={\tikztostart}{\tikztotarget}](\tikzquads@@ValueOf{Keys}{name}){}},QuadKeys}}
+\tikzset{ToQuad Y/.style={to path={node[Quad Y,outer x fit to={\tikztostart}{\tikztotarget}](\tikzquads@@ValueOf{Keys}{name}){}},QuadKeys}}
+\tikzset{ToQuad G/.style={to path={node[Quad G,outer x fit to={\tikztostart}{\tikztotarget}](\tikzquads@@ValueOf{Keys}{name}){}},QuadKeys}}
+\tikzset{ToQuad H/.style={to path={node[Quad H,outer x fit to={\tikztostart}{\tikztotarget}](\tikzquads@@ValueOf{Keys}{name}){}},QuadKeys}}
+\tikzset{ToNorton/.style={to path={node[Norton,@BB fit set,y fit to={\tikztostart}{\tikztotarget}](\tikzquads@@ValueOf{Keys}{name}){}},QuadKeys}}
+\tikzset{ToThevenin/.style={to path={node[Thevenin,@BB fit set,y fit to={\tikztostart}{\tikztotarget}](\tikzquads@@ValueOf{Keys}{name}){}},QuadKeys}}
+\tikzset{ToBlack Box/.style={to path={node[Black Box,@BB fit set,y fit to={\tikztostart}{\tikztotarget}](\tikzquads@@ValueOf{Keys}{name}){}},QuadKeys}}
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% Main keys definition
+%%%
+%%%%%%%%%%%%%%%%%%%
+\pgfkeys{\tikzquads@@QuadKeysPath,
+ %.unknown/.code={\let\searchname=\pgfkeyscurrentname%
+ % \pgfkeysalso{/tikz/\searchname=#1}},
+ .search also={\tikzquads@@KeysPath,/tikz},
+ none/.initial={}, %% this is a 'hack' for Thevenin/Norton ('control variable')
+ half base width/.initial=2\pgf@circ@Rlen,%
+ base width/.code={%
+ \tikzmath{real \X;
+ \X{tmp} = 0.5*abs(#1);
+ }
+ \pgfkeysalso{\tikzquads@@QuadKeysPath/half base width=\X{tmp}}
+ },
+ height ext/.initial=4\pgf@circ@Rlen/14,%
+ height ext+/.style={height ext={4\pgf@circ@Rlen/14 + #1}},%
+ height/.initial=\pgf@circ@Rlen,%
+ half base height/.initial=10\pgf@circ@Rlen/14,%
+ base height/.code={%
+ \tikzmath{real \X;
+ \X{tmp} = 0.5*abs(#1);
+ }
+ \pgfkeysalso{\tikzquads@@QuadKeysPath/half base height=\X{tmp}}
+ },
+ inner ext/.initial=2\pgf@circ@Rlen/14,%
+ outer ext/.initial=5\pgf@circ@Rlen/14,
+ Y11/.initial=$Y_{11}$, Y12/.initial=$Y_{12}$, Y21/.initial=$Y_{21}$, Y22/.initial=$Y_{22}$,
+ Z11/.initial=$Z_{11}$, Z12/.initial=$Z_{12}$, Z21/.initial=$Z_{21}$, Z22/.initial=$Z_{22}$,
+ H11/.initial=$H_{11}$, H12/.initial=$H_{12}$, H21/.initial=$H_{21}$, H22/.initial=$H_{22}$,
+ G11/.initial=$G_{11}$, G12/.initial=$G_{12}$, G21/.initial=$G_{21}$, G22/.initial=$G_{22}$,
+ I1/.initial=$I_1$, I2/.initial=$I_2$, V1/.initial=$V_1$, V2/.initial=$V_2$,
+ In/.initial=$I_N$, Yn/.initial=$Y_N$, Vth/.initial=$V_{th}$, Zth/.initial=$Z_{th}$,
+ label top left/.initial={},
+ label top center/.initial={},
+ label top right/.initial={},
+ label inner top left/.initial={},
+ label inner top center/.initial={},
+ label inner top right/.initial={},
+ label bottom left/.initial={},
+ label bottom center/.initial={},
+ label bottom right/.initial={},
+ label inner bottom left/.initial={},
+ label inner bottom center/.initial={},
+ label inner bottom right/.initial={},
+ @inner marks/.code={\toggletrue{tikzquads@@toggle@innermarks}},
+ inner marks/.style={@inner marks},
+ @outer marks/.code={\toggletrue{tikzquads@@toggle@outermarks}},
+ outer marks/.style={@outer marks},
+ @invert/.code={\toggletrue{tikzquads@@toggle@inverted}},
+ invert/.style={%
+ /tikz/xscale=-1,
+ @invert,
+ \tikzquads@@TPath,
+% set={south west}{south east},
+% set={south east}{south west},
+% set={north west}{north east},
+% set={north east}{north west},
+% set={west}{east},
+% set={east}{west},
+ set={bottom left}{bottom right},
+ set={bottom right}{bottom left},
+ set={top left}{top right},
+ set={top right}{top left},
+ set={left}{right},
+ set={right}{left},
+ \tikzquads@@QuadKeysPath,
+ },
+ compact/.style={half base width=\pgf@circ@Rlen},
+ @alternate/.code={\toggletrue{tikzquads@@toggle@alternate}},
+ alt/.style={@alternate},
+ opt/.style={@alternate},
+ inner x fit to/.style 2 args={inner x fit to*={#1}{#2}},
+ inner x fit to*/.code 2 args={%
+ \SearchValueOf{QuadKeys}{inner ext}{\@@innerext}
+ \tikzquads@@fitto{#1}{#2}{\@@innerext}{0}{\Xdiff}{\Xang}
+ \pgfkeysalso{/tikz/rotate=\Xang,\tikzquads@@QuadKeysPath/half base width=\Xdiff}
+ },
+ inner x fit to!/.code 2 args={%
+ \SearchValueOf{QuadKeys}{inner ext}{\@@innerext}
+ \tikzquads@@fitto{#1}{#2}{\@@innerext}{0}{\Xdiff}{\Xang}
+ \pgfkeysalso{\tikzquads@@QuadKeysPath/half base width=\Xdiff}
+ },
+ outer x fit to/.style 2 args={outer x fit to*={#1}{#2}},
+ outer x fit to*/.code 2 args={%
+ \SearchValueOf{QuadKeys}{outer ext}{\@@outerext}
+ \tikzquads@@fitto{#1}{#2}{-\@@outerext}{0}{\Xdiff}{\Xang}
+ \pgfkeysalso{/tikz/rotate=\Xang,\tikzquads@@QuadKeysPath/half base width=\Xdiff}
+ } ,
+ outer x fit to!/.code 2 args={%
+ \SearchValueOf{QuadKeys}{outer ext}{\@@outerext}
+ \tikzquads@@fitto{#1}{#2}{-\@@outerext}{0}{\Xdiff}{\Xang}
+ \pgfkeysalso{\tikzquads@@QuadKeysPath/half base width=\Xdiff}
+ } ,
+ y fit to/.style 2 args={y fit to!={#1}{#2}},
+ y fit to*/.code 2 args={%
+ \tikzquads@@fitto{#1}{#2}{0}{90}{\Ydiff}{\Yang}
+ \pgfkeysalso{/tikz/rotate=\Yang,\tikzquads@@QuadKeysPath/half base height=\Ydiff}
+ } ,
+ y fit to!/.code 2 args={%
+ \tikzquads@@fitto{#1}{#2}{0}{90}{\Ydiff}{\Yang}
+ \pgfkeysalso{\tikzquads@@QuadKeysPath/half base height=\Ydiff}
+ } ,
+ @BB fit set/.style={%
+ inner x fit to/.style 2 args={inner x fit to!={##1}{##2}},
+ outer x fit to/.style 2 args={outer x fit to!={##1}{##2}},
+ y fit to/.style 2 args={y fit to*={##1}{##2}},
+ }
+}
+
+\NewDocumentCommand{\tikzquads@@fitto}{mmmmmm}{
+ \tikzmath{coordinate \Ctmp; real \dx , \dy;% , \Rtmp ;
+ \Ctmp{from} = (#1);
+ \Ctmp{to} = (#2);
+ \dx{tmp} = (\Ctmpx{to} - \Ctmpx{from})/100;
+ \dy{tmp} = (\Ctmpy{to} - \Ctmpy{from})/100;
+ #5 = 50*sqrt((\dx{tmp})^2 + (\dy{tmp})^2) + #3;
+ #6 = atan2(\dy{tmp},\dx{tmp}) + #4;
+ }
+}
+
+\pgfkeys{\tikzquads@@QuadKeysPath,
+ setlabelscmd/.style={%
+ #1 N anchor/.style={},
+ #1 T anchor/.style={},
+ #1 label pos/.style 2 args={#1 N anchor/.style={\tikzquads@@TPath,##1=####1}, #1 T anchor/.style={\tikzquads@@TPath,##2=####1}, },
+ },
+ setlabelscmd/.list={Z11,Z12,Z21,Z22,Y11,Y12,Y21,Y22,G11,G12,G21,G22,H11,H12,H21,H22,In,Yn,Vth,Zth},
+ defaults/.style={
+ Z11 label pos={south west}{top left},
+ Z12 label pos={south east}{top left},
+ Z21 label pos={north west}{bottom right},
+ Z22 label pos={south east}{top right},
+%
+ Y11 label pos={south east}{top left},
+ Y12 label pos={south east}{top left},
+ Y21 label pos={north west}{bottom right},
+ Y22 label pos={north west}{bottom right},
+%
+ G11 label pos={south east}{top left},
+ G12 label pos={south east}{top left},
+ G21 label pos={north west}{bottom right},
+ G22 label pos={south east}{top right},
+%
+ H11 label pos={south west}{top left},
+ H12 label pos={south east}{top left},
+ H21 label pos={north west}{bottom right},
+ H22 label pos={north west}{bottom right},
+ %
+ Yn label pos={south east}{top left},
+ In label pos={south east}{top left},
+ %
+ Zth label pos={south west}{top left},
+ Vth label pos={south east}{top left},
+ %
+ },
+ defaults,
+}
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% Coordinates for a Quadripole
+%%%
+%%%%%%%%%%%%%%%%%%%
+\newcommand{\tikzquads@@QuadPoints}{
+ \SearchValueOf{QuadKeys}{half base width}{\@@halfbasewidth}
+ \SearchValueOf{QuadKeys}{half base height}{\@@halfbaseheight}
+ \SearchValueOf{QuadKeys}{height ext}{\@@heightext}
+ \SearchValueOf{QuadKeys}{outer ext}{\@@outerext}
+ \SearchValueOf{QuadKeys}{inner ext}{\@@innerext}
+ \tikzmath{
+ real \x,\y;
+ \x{center}=0;
+ \y{center}=0;
+ \x{right}=0 + \@@halfbasewidth;
+ \y{top}=0 +( \@@halfbaseheight + \@@heightext);
+ %
+ \x{left}=0 - \@@halfbasewidth;
+ \y{bottom}=0 -( \@@halfbaseheight + \@@heightext);
+ %
+ \y{innerbottom}=0 - \@@halfbaseheight;
+ \y{innertop}=0 + \@@halfbaseheight;
+ %
+ \y{outerbottom}=\y{bottom} - 0.5*\@@outerext;
+ \y{outertop}=\y{top} + 0.5*\@@outerext;
+ %
+ \x{outerleft}=\x{left} - \@@outerext;
+ \x{innerleft}=\x{left} + \@@innerext;
+ %
+ \x{outerright}=\x{right} + \@@outerext;
+ \x{innerright}=\x{right} - \@@innerext;
+ %
+ \x{refC}=0 - 0.4*\@@halfbasewidth;
+ \x{refB}=(\x{innerleft}+\x{refC})/2; %center point for Res shape
+ \x{refA}=(2*\x{innerleft}+\x{refC})/3; %'center' point for Y.Res shape
+ %
+ \y{Tbottom}=\y{bottom} + 0.65ex;
+ %\y{Ttop}=-\y{Tbottom};
+ \x{Tinnerleft}=\x{innerleft} ;
+ \y{Tinnerbottom}=\y{innerbottom} + 0.95ex;
+ %\y{Tinnertop}=-\y{Tinnerbottom};
+ \x{Tinnerright}=\x{innerright};
+ \x{Tcenter}=0;
+ %
+ \y{Ttop}=\y{top} - 0.65ex;
+ \y{Tinnertop}=\y{innertop} - 0.95ex;
+ }
+}
+
+
+
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% if <key value>, #1, is zero, #2 is executed, otherwise #3.
+%%%
+%%%%%%%%%%%%%%%%%%%
+\newcommand{\tikzquads@@CondDraw}[3]{
+ \IfDecimal{\tikzquads@@ValueOf{QuadKeys}{#1}}{
+ \ifnumequal{0+\tikzquads@@ValueOf{QuadKeys}{#1}}{0}{%
+ #2
+ }{%
+ #3
+ }
+ }{#3}
+}
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% if <key value>, #1, is zero, a in place line is drawn, otherwise shape #2 is draw.
+%%%
+%%%%%%%%%%%%%%%%%%%
+\newcommand{\tikzquads@@Zdraw}[5]{
+ \tikzquads@@CondDraw{#1}{%
+ \pgfnode{Shadow #2}{#3}{}{\tikz@fig@name-#1}{\pgfusepath{discard}}
+ \pgfpathmoveto{\pgfpointanchor{\tikz@fig@name-#1}{#4}}
+ \pgfpathlineto{\pgfpointanchor{\tikz@fig@name-#1}{#5}}
+ \pgfusepath{stroke}
+ }{%
+ \pgfnode{#2}{#3}{}{\tikz@fig@name-#1}{\pgfusepath{stroke}}
+ }
+}
+
+
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% Draws a Z side (impedance in series with a Voltage source
+%%%
+%%%%%%%%%%%%%%%%%%%
+
+\newtoggle{tikzquads@@toggle@auxA}
+\newtoggle{tikzquads@@toggle@auxB}
+%
+% #1->z11/z22 (res)
+% #2->z12/z21 (vsource)
+% #3 -> 'control source' I1/I2/V1/V2
+% #4->"-" minus signal !!! for B side
+%
+\newcommand{\tikzquads@@Zside}[4]{
+ \togglefalse{tikzquads@@toggle@auxA}
+ \IfDecimal{\tikzquads@@ValueOf{QuadKeys}{#1}}{
+ \ifnumequal{0+\tikzquads@@ValueOf{QuadKeys}{#1}}{0}{
+ \toggletrue{tikzquads@@toggle@auxA}}
+ }{}{
+ }
+ \togglefalse{tikzquads@@toggle@auxB}
+ \IfDecimal{\tikzquads@@ValueOf{QuadKeys}{#2}}{
+ \ifnumequal{0+\tikzquads@@ValueOf{QuadKeys}{#2}}{0}{
+ \toggletrue{tikzquads@@toggle@auxB}}
+ }{}{
+ }
+ \ifboolexpr{togl{tikzquads@@toggle@alternate} and ( togl{tikzquads@@toggle@auxA} or togl{tikzquads@@toggle@auxB})}{
+ \iftoggle{tikzquads@@toggle@auxA}{
+ {
+ \pgftransformshift{\pgfpoint{#4\x{refB}}{0}}
+ \tikzquads@@Zdraw{#2}{Vsource shape}{center}{north}{south}
+ }
+ {
+ \pgfpathmoveto{\pgfpoint{#4\x{innerleft}}{\y{innertop}}}
+ \pgfpathlineto{\pgfpoint{#4\x{refB}}{\y{innertop}}}
+ \pgfpathlineto{\pgfpointanchor{\tikz@fig@name-#2}{north}}
+ \pgfpathmoveto{\pgfpointanchor{\tikz@fig@name-#2}{south}}
+ \pgfpathlineto{\pgfpoint{#4\x{refB}}{\y{innerbottom}}}
+ \pgfpathlineto{\pgfpoint{#4\x{innerleft}}{\y{innerbottom}}}
+ \pgfusepath{stroke}
+ }
+ }{
+ {
+ \pgftransformshift{\pgfpoint{#4\x{refB}}{0}}
+% \pgftransformrotate{90} %%% was #490
+% \tikzquads@@Zdraw{#1}{H Res shape}{center}{west}{east}
+ \tikzquads@@Zdraw{#1}{V Res shape}{center}{north}{south}
+ \pgfusepath{stroke}
+ }
+ {
+ \pgfpathmoveto{\pgfpoint{#4\x{innerleft}}{\y{innertop}}}
+ \pgfpathlineto{\pgfpoint{#4\x{refB}}{\y{innertop}}}
+% \pgfpathlineto{\pgfpointanchor{\tikz@fig@name-#1}{east}}
+% \pgfpathmoveto{\pgfpointanchor{\tikz@fig@name-#1}{west}}
+ \pgfpathlineto{\pgfpointanchor{\tikz@fig@name-#1}{north}}
+ \pgfpathmoveto{\pgfpointanchor{\tikz@fig@name-#1}{south}}
+ \pgfpathlineto{\pgfpoint{#4\x{refB}}{\y{innerbottom}}}
+ \pgfpathlineto{\pgfpoint{#4\x{innerleft}}{\y{innerbottom}}}
+ \pgfusepath{stroke}
+ }
+ }
+ }{
+ {
+ \pgftransformshift{\pgfpoint{#4\x{refB}}{\y{innertop}}}
+ \tikzquads@@Zdraw{#1}{H Res shape}{center}{west}{east}
+ }
+ {
+ \pgftransformshift{\pgfpoint{#4\x{refC}}{0}}
+ \tikzquads@@Zdraw{#2}{Vsource shape}{center}{north}{south}
+ }
+ {
+ \pgfpathmoveto{\pgfpoint{#4\x{innerleft}}{\y{innertop}}}
+ \ifnumequal{#41}{-1}{%
+ \pgfpathlineto{\pgfpointanchor{\tikz@fig@name-#1}{east}}
+ \pgfpathmoveto{\pgfpointanchor{\tikz@fig@name-#1}{west}}
+ }{%
+ \pgfpathlineto{\pgfpointanchor{\tikz@fig@name-#1}{west}}
+ \pgfpathmoveto{\pgfpointanchor{\tikz@fig@name-#1}{east}}
+ }
+ \pgfpathlineto{\pgfpoint{#4\x{refC}}{\y{innertop}}}
+ \pgfpathlineto{\pgfpointanchor{\tikz@fig@name-#2}{north}}
+ \pgfpathmoveto{\pgfpointanchor{\tikz@fig@name-#2}{south}}
+ \pgfpathlineto{\pgfpoint{#4\x{refC}}{\y{innerbottom}}}
+ \pgfpathlineto{\pgfpoint{#4\x{innerleft}}{\y{innerbottom}}}
+ \pgfusepath{stroke}
+ }
+ }
+%
+ \tikzquads@@QuadGetAnchor{#2 N anchor}{tikzquads@@NanchorB}
+ \tikzquads@@QuadGetAnchor{#1 T anchor}{tikzquads@@TanchorA}
+ \tikzquads@@QuadGetAnchor{#2 T anchor}{tikzquads@@TanchorB}
+ \ifboolexpr{togl{tikzquads@@toggle@alternate} and togl{tikzquads@@toggle@auxB}}{%
+ \tikzquads@@QuadGetAnchor{#1 N anchor}{tikzquads@@NanchorAx}
+ \tikzquads@@AutoRotateAnchor{\tikzquads@@NanchorAx}{tikzquads@@NanchorA}
+ }{%
+ \tikzquads@@QuadGetAnchor{#1 N anchor}{tikzquads@@NanchorA}
+ }
+ {
+ \SearchValueOf{QuadKeys}{#1}{\@@valA}
+ \SearchValueOf{QuadKeys}{#2}{\@@valB}
+ \SearchValueOf{QuadKeys}{#3}{\@@valC}
+ \pgftransformresetnontranslations
+ \tikzquads@@CondDraw{#1}{}{\pgftext[\tikzquads@@TanchorA,at={\pgfpointanchor{\tikz@fig@name-#1}{\tikzquads@@NanchorA}}]{\@@valA}}
+ \tikzquads@@CondDraw{#2}{}{\pgftext[\tikzquads@@TanchorB,at={\pgfpointanchor{\tikz@fig@name-#2}{\tikzquads@@NanchorB}}]{\@@valB\@@valC}}
+ }
+}
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% if <key value>, #1, is zero, nothing is drawn, otherwise shape #2 is draw.
+%%%
+%%%%%%%%%%%%%%%%%%%
+\newcommand{\tikzquads@@Ydraw}[3]{
+ \tikzquads@@CondDraw{#1}{%
+ \pgfnode{Shadow #2}{#3}{}{\tikz@fig@name-#1}{\pgfusepath{discard}}
+ }{%
+ \pgfnode{#2}{#3}{}{\tikz@fig@name-#1}{\pgfusepath{stroke}}
+ }
+}
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% Draws a Y side (impedance in paralel with a Currente source
+%%%
+%%%%%%%%%%%%%%%%%%%
+
+% #1 Isource UP/DWN
+% #2->y11/y22 (res)
+% #3->y12/y21 (isource)
+% #4 -> 'control source' I1/I2/V1/V2
+% #5->"-" minus signal !!! for B side
+%
+\newcommand{\tikzquads@@Yside}[5][IsourceDOWN shape]{
+ \togglefalse{tikzquads@@toggle@auxA}
+ \IfDecimal{\tikzquads@@ValueOf{QuadKeys}{#2}}{
+ \ifnumequal{0+\tikzquads@@ValueOf{QuadKeys}{#2}}{0}{
+ \toggletrue{tikzquads@@toggle@auxA}}
+ }{}{
+ }
+ \togglefalse{tikzquads@@toggle@auxB}
+ \IfDecimal{\tikzquads@@ValueOf{QuadKeys}{#3}}{
+ \ifnumequal{0+\tikzquads@@ValueOf{QuadKeys}{#3}}{0}{
+ \toggletrue{tikzquads@@toggle@auxB}}
+ }{}{
+ }
+ \ifboolexpr{togl{tikzquads@@toggle@alternate} and ( togl{tikzquads@@toggle@auxA} or togl{tikzquads@@toggle@auxB})}{
+ \tikzmath{
+ \x{20} = \x{refB};
+ \x{21} = \x{refB};
+ }
+ }{
+ \tikzmath{
+ \x{20} = \x{refA};
+ \x{21} = \x{refC};
+ }
+ }
+%
+ {
+ \pgftransformshift{\pgfpoint{#5\x{20}}{0}}
+% \pgftransformrotate{90} %%% was {#590}
+% \tikzquads@@Ydraw{#2}{H Res shape}{center}
+ \tikzquads@@Ydraw{#2}{V Res shape}{center}
+ }
+ \tikzquads@@CondDraw{#2}{}{
+ \pgfpathmoveto{\pgfpoint{#5\x{innerleft}}{\y{innertop}}}
+ \pgfpathlineto{\pgfpoint{#5\x{20}}{\y{innertop}}}
+% \pgfpathlineto{\pgfpointanchor{\tikz@fig@name-#2}{east}}
+% \pgfpathmoveto{\pgfpointanchor{\tikz@fig@name-#2}{west}}
+ \pgfpathlineto{\pgfpointanchor{\tikz@fig@name-#2}{north}}
+ \pgfpathmoveto{\pgfpointanchor{\tikz@fig@name-#2}{south}}
+ \pgfpathlineto{\pgfpoint{#5\x{20}}{\y{innerbottom}}}
+ \pgfpathlineto{\pgfpoint{#5\x{innerleft}}{\y{innerbottom}}}
+ \pgfusepath{stroke}
+ }
+%
+ {
+ \pgftransformshift{\pgfpoint{#5\x{21}}{0}}
+ \tikzquads@@Ydraw{#3}{#1}{center}
+ }
+ \tikzquads@@CondDraw{#3}{}{
+ \pgfpathmoveto{\pgfpoint{#5\x{innerleft}}{\y{innertop}}}
+ \pgfpathlineto{\pgfpoint{#5\x{refA}}{\y{innertop}}}
+ \pgfpathlineto{\pgfpoint{#5\x{21}}{\y{innertop}}}
+ \pgfpathlineto{\pgfpointanchor{\tikz@fig@name-#3}{north}}
+ \pgfpathmoveto{\pgfpointanchor{\tikz@fig@name-#3}{south}}
+ \pgfpathlineto{\pgfpoint{#5\x{21}}{\y{innerbottom}}}
+ \pgfpathlineto{\pgfpoint{#5\x{innerleft}}{\y{innerbottom}}}
+ \pgfusepath{stroke}
+ }
+ %\tikzquads@@QuadGetAnchor{#2 N anchor}{tikzquads@@NanchorAx}
+ \tikzquads@@QuadGetAnchor{#2 N anchor}{tikzquads@@NanchorA}
+ \tikzquads@@QuadGetAnchor{#3 N anchor}{tikzquads@@NanchorB}
+ \tikzquads@@QuadGetAnchor{#2 T anchor}{tikzquads@@TanchorA}
+ \tikzquads@@QuadGetAnchor{#3 T anchor}{tikzquads@@TanchorB}
+ %\tikzquads@@RotateAnchor{\tikzquads@@NanchorAx}{tikzquads@@NanchorA}
+ {
+ \SearchValueOf{QuadKeys}{#2}{\@@valA}
+ \SearchValueOf{QuadKeys}{#3}{\@@valB}
+ \SearchValueOf{QuadKeys}{#4}{\@@valC}
+ \pgftransformresetnontranslations
+ \tikzquads@@CondDraw{#2}{}{\pgftext[\tikzquads@@TanchorA,at={\pgfpointanchor{\tikz@fig@name-#2}{\tikzquads@@NanchorA}}]{\@@valA}}
+ \tikzquads@@CondDraw{#3}{}{\pgftext[\tikzquads@@TanchorB,at={\pgfpointanchor{\tikz@fig@name-#3}{\tikzquads@@NanchorB}}]{\@@valB\@@valC}}
+ }
+}
+
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% Coordinates for a Horizontal Resistor
+%%%
+%%%%%%%%%%%%%%%%%%%
+\newcommand{\tikzquads@@HResPoints}{
+ \SearchValueOf{QuadKeys}{outer sep}{\@@outersep}
+ \tikzmath{
+ real \x,\y;
+ \x{center}=0;
+ \y{center}=0;
+ %
+ \x{left}=-\ctikzvalof{bipoles/resistor/width}\pgf@circ@Rlen/2;
+ \x{right}=\ctikzvalof{bipoles/resistor/width}\pgf@circ@Rlen/2;
+ %
+ \y{top}=+\ctikzvalof{bipoles/resistor/height}\pgf@circ@Rlen/2;
+ \y{bottom}=-\ctikzvalof{bipoles/resistor/height}\pgf@circ@Rlen/2;
+ %
+ \x{step}=\ctikzvalof{bipoles/resistor/width}\pgf@circ@Rlen/12;
+ \y{step}=\ctikzvalof{bipoles/resistor/height}\pgf@circ@Rlen/2;
+ %
+ \x{Tcenter}=0;
+ \y{Tcenter}=0;
+ %
+ \y{Ttop}=+\ctikzvalof{bipoles/resistor/height}\pgf@circ@Rlen/2 +\@@outersep;
+ \y{Tbottom}=-\y{Ttop};
+ %
+ \x{Tright}=+\ctikzvalof{bipoles/resistor/width}\pgf@circ@Rlen/2 +\@@outersep;
+ \x{Tleft}=-\x{Tright};
+ %
+ \y{Ctop}=\y{Ttop};
+ \y{Cbottom}=\y{Tbottom};
+ %
+ \x{Cleft}=\x{left};
+ \x{Cright}=\x{right};
+ }
+}
+
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% Coordinates for a Vertical Resistor
+%%%
+%%%%%%%%%%%%%%%%%%%
+\newcommand{\tikzquads@@VResPoints}{
+ \SearchValueOf{QuadKeys}{outer sep}{\@@outersep}
+ \tikzmath{
+ real \x,\y;
+ \x{center}=0;
+ \y{center}=0;
+ %
+ \y{bottom}=-\ctikzvalof{bipoles/resistor/width}\pgf@circ@Rlen/2;
+ \y{top}=\ctikzvalof{bipoles/resistor/width}\pgf@circ@Rlen/2;
+ %
+ \x{right}=+\ctikzvalof{bipoles/resistor/height}\pgf@circ@Rlen/2;
+ \x{left}=-\ctikzvalof{bipoles/resistor/height}\pgf@circ@Rlen/2;
+%
+ \x{step}=\ctikzvalof{bipoles/resistor/width}\pgf@circ@Rlen/12;
+ \y{step}=\ctikzvalof{bipoles/resistor/height}\pgf@circ@Rlen/2;
+ %
+ \x{Tcenter}=0;
+ \y{Tcenter}=0;
+ %
+ \y{Ttop}=+\ctikzvalof{bipoles/resistor/width}\pgf@circ@Rlen/2 +\@@outersep;
+ \y{Tbottom}=-\y{Ttop};
+ %
+ \x{Tright}=+\ctikzvalof{bipoles/resistor/height}\pgf@circ@Rlen/2 +\@@outersep;
+ \x{Tleft}=-\x{Tright};
+ %
+ \y{Ctop}=\y{top};
+ \y{Cbottom}=\y{bottom};
+ %
+ \x{Cleft}=\x{Tleft};
+ \x{Cright}=\x{Tright};
+ }
+}
+
+
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% Base Anchors for a Resistor like shape
+%%%
+%%%%%%%%%%%%%%%%%%%
+\newcommand{\tikzquads@@ResBaseAnchors}[1]{
+ \anchor{center}{\centerpoint}
+ \savedanchor\centerpoint{%
+ #1
+ \pgfpoint{\x{center}}{\y{center}}
+ }
+ \anchor{text}{
+ #1
+ \pgfpoint{\x{Tcenter}}{\y{Ttop}}
+ }
+ \anchor{west}{\west}
+ \savedanchor{\west}{%
+ #1
+ \pgfpoint{\x{Cleft}}{\y{center}}
+ }
+ \anchor{east}{\east}
+ \savedanchor{\east}{%
+ #1
+ \pgfpoint{\x{Cright}}{\y{center}}
+ }
+ \anchor{north}{\north}
+ \savedanchor{\north}{%
+ #1
+ \pgfpoint{\x{center}}{\y{Ctop}}
+ }
+ \anchor{south}{\south}
+ \savedanchor{\south}{%
+ #1
+ \pgfpoint{\x{center}}{\y{Cbottom}}
+ }
+ \anchor{north west}{\northwest}%
+ \savedanchor{\northwest}{%
+ #1
+ \pgfpoint{\x{Tleft}}{\y{Ttop}}
+ }
+ \anchor{north east}{\northeast}%
+ \savedanchor{\northeast}{%
+ #1
+ \pgfpoint{\x{Tright}}{\y{Ttop}}
+ }
+ \anchor{south west}{\southwest}%
+ \savedanchor{\southwest}{%
+ #1
+ \pgfpoint{\x{Tleft}}{\y{Tbottom}}
+ }
+ \anchor{south east}{\southeast}%
+ \savedanchor{\southeast}{%
+ #1
+ \pgfpoint{\x{Tright}}{\y{Tbottom}}
+ }
+}
+
+\newcommand{\tikzquads@@DrawRes}[1]{
+}
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% Resistor shape. either zig-zag or generic/european
+%%%
+%%%%%%%%%%%%%%%%%%%
+\pgfdeclareshape{H Res shape}{
+ \tikzquads@@ResBaseAnchors{\tikzquads@@HResPoints}
+ \behindbackgroundpath{
+ \tikzquads@@HResPoints
+ \pgfsetxvec{\pgfpoint{\x{step}}{0}}
+ \pgfsetyvec{\pgfpoint{0}{\y{step}}}
+ \begin{pgfscope}
+ \SearchValueOf{QuadKeys}{thickness}{\@@tmpthickness}
+ \pgfsetlinewidth{\@@tmpthickness\pgflinewidth}
+ \pgfsetbeveljoin
+ \iftoggle{tikzquads@@toggle@generic}{
+ \pgfpathmoveto{\pgfpointxy{-6}{-1}}
+ \pgfpathlineto{\pgfpointxy{-6}{1}}
+ \pgfpathlineto{\pgfpointxy{6}{1}}
+ \pgfpathlineto{\pgfpointxy{6}{-1}}
+ \pgfpathlineto{\pgfpointxy{-6}{-1}}
+ }{
+ \pgfpathmoveto{\pgfpointxy{-6}{0}}
+ \pgfpathlineto{\pgfpointxy{-5}{1}}
+ \pgfpathlineto{\pgfpointxy{-3}{-1}}
+ \pgfpathlineto{\pgfpointxy{-1}{1}}
+ \pgfpathlineto{\pgfpointxy{1}{-1}}
+ \pgfpathlineto{\pgfpointxy{3}{1}}
+ \pgfpathlineto{\pgfpointxy{5}{-1}}
+ \pgfpathlineto{\pgfpointxy{6}{0}}
+ }
+ \pgfusepath{stroke}
+ \end{pgfscope}
+ }
+ \backgroundpath{}
+}
+
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% Shadow H Res shape => do nothing but defines anchors
+%%%
+%%%%%%%%%%%%%%%%%%%
+\pgfdeclareshape{Shadow H Res shape}{
+ \inheritsavedanchors[from=H Res shape]
+ \foreach \anchor in {north,north west,north east,center,west,east,
+ ,south,south west,south east,text}{%
+ \inheritanchor[from=H Res shape]{\anchor}}
+ \backgroundpath{}
+}
+
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% Resistor shape. either zig-zag or generic/european
+%%%
+%%%%%%%%%%%%%%%%%%%
+\pgfdeclareshape{V Res shape}{
+ \tikzquads@@ResBaseAnchors{\tikzquads@@VResPoints}
+ \behindbackgroundpath{
+ \tikzquads@@HResPoints
+ \pgfsetxvec{\pgfpoint{\x{step}}{0}}
+ \pgfsetyvec{\pgfpoint{0}{\y{step}}}
+ \begin{pgfscope}
+ \SearchValueOf{QuadKeys}{thickness}{\@@tmpthickness}
+ \pgfsetlinewidth{\@@tmpthickness\pgflinewidth}
+ \pgfsetbeveljoin
+ \pgftransformrotate{90}
+ \iftoggle{tikzquads@@toggle@generic}{
+ \pgfpathmoveto{\pgfpointxy{-6}{-1}}
+ \pgfpathlineto{\pgfpointxy{-6}{1}}
+ \pgfpathlineto{\pgfpointxy{6}{1}}
+ \pgfpathlineto{\pgfpointxy{6}{-1}}
+ \pgfpathlineto{\pgfpointxy{-6}{-1}}
+ }{
+ \pgfpathmoveto{\pgfpointxy{-6}{0}}
+ \pgfpathlineto{\pgfpointxy{-5}{1}}
+ \pgfpathlineto{\pgfpointxy{-3}{-1}}
+ \pgfpathlineto{\pgfpointxy{-1}{1}}
+ \pgfpathlineto{\pgfpointxy{1}{-1}}
+ \pgfpathlineto{\pgfpointxy{3}{1}}
+ \pgfpathlineto{\pgfpointxy{5}{-1}}
+ \pgfpathlineto{\pgfpointxy{6}{0}}
+ }
+ \pgfusepath{stroke}
+ \end{pgfscope}
+ }
+ \backgroundpath{}
+}
+
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% Shadow V Res shape => do nothing but defines anchors
+%%%
+%%%%%%%%%%%%%%%%%%%
+\pgfdeclareshape{Shadow V Res shape}{
+ \inheritsavedanchors[from=V Res shape]
+ \foreach \anchor in {north,north west,north east,center,west,east,
+ ,south,south west,south east,text}{%
+ \inheritanchor[from=V Res shape]{\anchor}}
+ \backgroundpath{}
+}
+
+
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% a simple arrow tip, can be a simple triangle or a bezier based one.
+%%% back of the tip at the 'starting point'
+%%%
+%%%%%%%%%%%%%%%%%%%
+\newcommand{\tikzquads@@arrowtipat}[3]{
+ {
+ \pgftransformshift{\pgfpoint{#2}{#3}}
+ \pgftransformscale{\tikzquads@@ValueOf{Keys}{tip len}}
+ \pgftransformrotate{#1}
+ \iftoggle{tikzquads@@toggle@beziertip}{
+ %% bezier version
+ \pgfsetroundcap\pgfsetbeveljoin
+ \pgfpathmoveto{\pgfpoint{1}{0}}
+ \pgfpathcurveto{\pgfpoint{0.3}{0.125}}{\pgfpoint{0.3}{0.125}}{\pgfpoint{0}{0.4}}
+ \pgfpathcurveto{\pgfpoint{0.15}{0}}{\pgfpoint{0.15}{0}}{\pgfpoint{0}{-0.4}}
+ \pgfpathcurveto{\pgfpoint{0.3}{-0.125}}{\pgfpoint{0.3}{-0.125}}{\pgfpoint{1}{0}}
+ }{ %% simple triangle version
+ \pgfsetroundcap
+ \pgfpathmoveto{\pgfpoint{1}{0}}
+ \pgfpathlineto{\pgfpoint{0}{0.45}}
+ \pgfpathlineto{\pgfpoint{0}{-0.45}}
+ \pgfpathlineto{\pgfpoint{1}{0}}
+ }
+ }
+}
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% a simple, centered at point of reference, 'plus' sign... it could be a \pgftext... but, that way it is more controlable.
+%%%
+%%%%%%%%%%%%%%%%%%%
+\newcommand{\tikzquads@@plussignat}[3][\tikzquads@@ValueOf{Keys}{plussign len}]{%
+ {
+ \pgftransformshift{\pgfpoint{#2}{#3}}
+ \pgftransformscale{#1}
+ \pgfpathmoveto{\pgfpoint{-1}{0}}
+ \pgfpathlineto{\pgfpoint{1}{0}}
+ \pgfpathmoveto{\pgfpoint{0}{-1}}
+ \pgfpathlineto{\pgfpoint{0}{1}}
+ }
+}
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% a simple, centered at point of reference, 'minus' sign... it could be a \pgftext... but, that way it is more controlable.
+%%%
+%%%%%%%%%%%%%%%%%%%
+\newcommand{\tikzquads@@minussignat}[3][\tikzquads@@ValueOf{Keys}{minussign len}]{%
+ {
+ \pgftransformshift{\pgfpoint{#2}{#3}}
+ \pgftransformscale{#1}
+ \pgfpathmoveto{\pgfpoint{-1}{0}}
+ \pgfpathlineto{\pgfpoint{1}{0}}
+ }
+}
+
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% Coordinates for a (base) Source
+%%%
+%%%%%%%%%%%%%%%%%%%
+\newcommand{\tikzquads@@SourcePoints}{
+ \SearchValueOf{QuadKeys}{source radius}{\@@sourceradius}
+ \SearchValueOf{QuadKeys}{outer sep}{\@@outersep}
+ \tikzmath{
+ real \x,\y;
+ \x{center}=0;
+ \y{center}=0;
+ \x{left}=-\@@sourceradius;
+ \x{right}=\@@sourceradius;
+ \y{top}=\@@sourceradius;
+ \y{bottom}=-\@@sourceradius;
+ %
+ \x{Tcenter}=0;
+ \y{Tcenter}=0;
+ \y{Tmiddletop}=+cos(45)*(\@@sourceradius+\@@outersep);
+ \y{Tmiddlebottom}=-\y{Tmiddletop};
+ %
+ \x{Tmiddleright}=+cos(45)*(\@@sourceradius+\@@outersep);
+ \x{Tmiddleleft}=-\x{Tmiddleright};
+ }
+}
+
+
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% Base Anchors for a Source like shape
+%%%
+%%%%%%%%%%%%%%%%%%%
+\newcommand{\tikzquads@@SourceBaseAnchors}[1]{
+ \savedanchor\centerpoint{
+ \pgfpoint{0}{0}
+ }
+ \anchor{center}{\centerpoint}
+ \anchor{text}{\text}%
+ \savedanchor{\text}{%
+ #1
+ \pgfpoint{\x{Tmiddleright}}{\y{Tmiddletop}}
+ }
+ \anchor{west}{\west}%
+ \savedanchor{\west}{%
+ #1
+ \pgfpoint{\x{left}}{\y{center}}
+ }
+ \anchor{east}{\east}%
+ \savedanchor{\east}{%
+ #1
+ \pgfpoint{\x{right}}{\y{center}}
+ }
+ \anchor{north}{\north}%
+ \savedanchor{\north}{%
+ #1
+ \pgfpoint{\x{center}}{\y{top}}
+ }
+ \anchor{south}{\south}%
+ \savedanchor{\south}{%
+ #1
+ \pgfpoint{\x{center}}{\y{bottom}}
+ }
+ \anchor{north west}{\northwest}%
+ \savedanchor{\northwest}{%
+ #1
+ \pgfpoint{\x{Tmiddleleft}}{\y{Tmiddletop}}
+ }
+ \anchor{north east}{\northeast}%
+ \savedanchor{\northeast}{%
+ #1
+ \pgfpoint{\x{Tmiddleright}}{\y{Tmiddletop}}
+ }
+ \anchor{south west}{\southwest}%
+ \savedanchor{\southwest}{%
+ #1
+ \pgfpoint{\x{Tmiddleleft}}{\y{Tmiddlebottom}}
+ }
+ \anchor{south east}{\southeast}%
+ \savedanchor{\southeast}{%
+ #1
+ \pgfpoint{\x{Tmiddleright}}{\y{Tmiddlebottom}}
+ }
+}
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% Base shape for a source like shape
+%%%
+%%%%%%%%%%%%%%%%%%%
+\pgfdeclareshape{Base source shape}{
+ \tikzquads@@SourceBaseAnchors{\tikzquads@@SourcePoints}
+ \backgroundpath{}
+ }
+
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% Voltage source shape. either round or diamond
+%%%
+%%%%%%%%%%%%%%%%%%%
+\pgfdeclareshape{Vsource shape}{
+ \inheritsavedanchors[from=Base source shape]
+ \foreach \anchor in {north,north west,north east,center,west,east,
+ ,south,south west,south east,text}{%
+ \inheritanchor[from=Base source shape]{\anchor}}
+ \backgroundpath{
+ \SearchValueOf{QuadKeys}{thickness}{\@@tmpthickness}
+ \SearchValueOf{QuadKeys}{source radius}{\@@sourceradius}
+ \SearchValueOf{QuadKeys}{minussign len}{\@@minussignlen}
+ \SearchValueOf{QuadKeys}{plussign len}{\@@plussignlen}
+ \pgfsetroundcap
+ \begin{pgfscope}
+ \tikzquads@@SourcePoints
+ \pgfsetbeveljoin
+ \pgfsetlinewidth{\@@tmpthickness\pgflinewidth}
+ \iftoggle{tikzquads@@toggle@roundsources}{
+ \pgfpathcircle{\pgfpoint{0}{0}}{\@@sourceradius}
+ }{
+ \pgfpathmoveto{\pgfpoint{\x{center}}{\y{top}}}
+ \pgfpathlineto{\pgfpoint{\x{right}}{\y{center}}}
+ \pgfpathlineto{\pgfpoint{\x{center}}{\y{bottom}}}
+ \pgfpathlineto{\pgfpoint{\x{left}}{\y{center}}}
+ \pgfpathlineto{\pgfpoint{\x{center}}{\y{top}}}
+ }
+ \pgfusepath{stroke}
+ \end{pgfscope}
+ \tikzquads@@minussignat[\@@minussignlen]{0}{-0.4*\@@sourceradius}
+ \tikzquads@@plussignat[\@@plussignlen]{0}{0.4*\@@sourceradius}
+ \pgfusepath{stroke}
+ }
+}
+
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% Shadow Vsource shape => do nothing but defines anchors
+%%%
+%%%%%%%%%%%%%%%%%%%
+\pgfdeclareshape{Shadow Vsource shape}{
+ \inheritsavedanchors[from=Base source shape]
+ \foreach \anchor in {north,north west,north east,center,west,east,
+ ,south,south west,south east,text}{%
+ \inheritanchor[from=Base source shape]{\anchor}}
+ \backgroundpath{}
+}
+
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% currente source shape, arrow pointing down. either round or diamond
+%%%
+%%%%%%%%%%%%%%%%%%%
+\pgfdeclareshape{IsourceDOWN shape}{
+ \inheritsavedanchors[from=Base source shape]
+ \foreach \anchor in {north,north west,north east,center,west,east,
+ ,south,south west,south east,text}{%
+ \inheritanchor[from=Base source shape]{\anchor}}
+ \backgroundpath{
+ \SearchValueOf{QuadKeys}{thickness}{\@@tmpthickness}
+ \SearchValueOf{QuadKeys}{source radius}{\@@sourceradius}
+ \SearchValueOf{QuadKeys}{tip len}{\@@tiplen}
+ \begin{pgfscope}
+ \tikzquads@@SourcePoints
+ \pgfsetlinewidth{\@@tmpthickness\pgflinewidth}
+ \pgfsetroundcap
+ \iftoggle{tikzquads@@toggle@roundsources}{
+ \pgfpathcircle{\pgfpoint{0}{0}}{\@@sourceradius}
+ }{
+ \pgfpathmoveto{\pgfpoint{\x{center}}{\y{top}}}
+ \pgfpathlineto{\pgfpoint{\x{right}}{\y{center}}}
+ \pgfpathlineto{\pgfpoint{\x{center}}{\y{bottom}}}
+ \pgfpathlineto{\pgfpoint{\x{left}}{\y{center}}}
+ \pgfpathlineto{\pgfpoint{\x{center}}{\y{top}}}
+ }
+ \pgfpathmoveto{\pgfpoint{0}{0.7*\@@sourceradius}}
+ \pgfpathlineto{\pgfpoint{0}{-0.7*\@@sourceradius}}
+ %
+ \pgfusepath{stroke}
+ \tikzquads@@arrowtipat{-90}{0}{-0.7*\@@sourceradius+\@@tiplen}
+ \pgfusepath{stroke,fill}
+ \end{pgfscope}
+ }}
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% Shadow IsourceDOWN shape => do nothing but defines anchors
+%%%
+%%%%%%%%%%%%%%%%%%%
+\pgfdeclareshape{Shadow IsourceDOWN shape}{
+ \inheritsavedanchors[from=Base source shape]
+ \foreach \anchor in {north,north west,north east,center,west,east,
+ ,south,south west,south east,text}{%
+ \inheritanchor[from=Base source shape]{\anchor}}
+ \backgroundpath{}
+}
+
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% currente source shape, arrow pointing up. either round or diamond
+%%%
+%%%%%%%%%%%%%%%%%%%
+\pgfdeclareshape{IsourceUP shape}{
+ \inheritsavedanchors[from=Base source shape]
+ \foreach \anchor in {north,north west,north east,center,west,east,
+ ,south,south west,south east,text}{%
+ \inheritanchor[from=Base source shape]{\anchor}}
+ \backgroundpath{
+ \SearchValueOf{QuadKeys}{thickness}{\@@tmpthickness}
+ \SearchValueOf{QuadKeys}{source radius}{\@@sourceradius}
+ \SearchValueOf{QuadKeys}{tip len}{\@@tiplen}
+ \begin{pgfscope}
+ \tikzquads@@SourcePoints
+ \pgfsetlinewidth{\@@tmpthickness\pgflinewidth}
+ \pgfsetroundcap
+ \iftoggle{tikzquads@@toggle@roundsources}{
+ \pgfpathcircle{\pgfpoint{0}{0}}{\@@sourceradius}
+ }{
+ \pgfpathmoveto{\pgfpoint{\x{center}}{\y{top}}}
+ \pgfpathlineto{\pgfpoint{\x{right}}{\y{center}}}
+ \pgfpathlineto{\pgfpoint{\x{center}}{\y{bottom}}}
+ \pgfpathlineto{\pgfpoint{\x{left}}{\y{center}}}
+ \pgfpathlineto{\pgfpoint{\x{center}}{\y{top}}}
+ }
+ \pgfpathmoveto{\pgfpoint{0}{0.7*\@@sourceradius}}
+ \pgfpathlineto{\pgfpoint{0}{-0.7*\@@sourceradius}}
+ %
+ \pgfusepath{stroke}
+ \tikzquads@@arrowtipat{90}{0}{0.7*\@@sourceradius-\@@tiplen}
+ \pgfusepath{stroke,fill}
+ \end{pgfscope}
+ }
+}
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% Shadow IsourceUP shape => do nothing but defines anchors
+%%%
+%%%%%%%%%%%%%%%%%%%
+\pgfdeclareshape{Shadow IsourceUP shape}{
+ \inheritsavedanchors[from=Base source shape]
+ \foreach \anchor in {north,north west,north east,center,west,east,
+ ,south,south west,south east,text}{%
+ \inheritanchor[from=Base source shape]{\anchor}}
+ \backgroundpath{}
+}
+
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% Base Anchors for a Quadripole like shape
+%%% (note that the second side anchors are missing,
+%%% since this will also be used as a base for the black box)
+%%%
+%%%%%%%%%%%%%%%%%%%
+\newcommand{\tikzquads@@QuadBaseAnchors}[1]{
+ \savedanchor\centerpoint{
+ \pgfpoint{0}{0}
+ }
+ \anchor{center}{\centerpoint}
+ \anchor{text}{\text}%
+ \savedanchor{\text}{%
+ #1
+ \pgfpoint{\x{Tinnerleft}}{\y{Tbottom}}
+ }
+ \anchor{bottom left}{\bottomleft}
+ \savedanchor{\bottomleft}{%
+ #1
+ \pgfpoint{\x{Tinnerleft}}{\y{Tbottom}}
+ }
+ \anchor{bottom center}{\bottomcenter}
+ \savedanchor{\bottomcenter}{%
+ #1
+ \pgfpoint{0}{\y{Tbottom}}
+ }
+ \anchor{bottom right}{\bottomright}
+ \savedanchor{\bottomright}{%
+ #1
+ \pgfpoint{\x{Tinnerright}}{\y{Tbottom}}
+ }
+ \anchor{inner bottom left}{\innerbottomleft}
+ \savedanchor{\innerbottomleft}{%
+ #1
+ \pgfpoint{\x{Tinnerleft}}{\y{Tinnerbottom}}
+ }
+ \anchor{inner bottom center}{\innerbottomcenter}%
+ \savedanchor{\innerbottomcenter}{%
+ #1
+ \pgfpoint{0}{\y{Tinnerbottom}}
+ }
+ \anchor{inner bottom right}{\innerbottomright}%
+ \savedanchor{\innerbottomright}{%
+ #1
+ \pgfpoint{\x{Tinnerright}}{\y{Tinnerbottom}}
+ }
+ \anchor{top left}{\topleft}%
+ \savedanchor{\topleft}{%
+ #1
+ \pgfpoint{\x{Tinnerleft}}{-\y{Tbottom}}
+ }
+ \anchor{top center}{\topcenter}%
+ \savedanchor{\topcenter}{%
+ #1
+ \pgfpoint{0}{-\y{Tbottom}}
+ }
+ \anchor{top right}{\topright}%
+ \savedanchor{\topright}{%
+ #1
+ \pgfpoint{\x{Tinnerright}}{-\y{Tbottom}}
+ }
+ \anchor{inner top left}{\innertopleft}%
+ \savedanchor{\innertopleft}{%
+ #1
+ \pgfpoint{\x{Tinnerleft}}{-\y{Tinnerbottom}}
+ }
+ \anchor{inner top center}{\innertopcenter}%
+ \savedanchor{\innertopcenter}{%
+ #1
+ \pgfpoint{0}{-\y{Tinnerbottom}}
+ }
+ \anchor{inner top right}{\innertopright}%
+ \savedanchor{\innertopright}{%
+ #1
+ \pgfpoint{\x{Tinnerright}}{-\y{Tinnerbottom}}
+ }
+ \anchor{west}{\west}%
+ \savedanchor{\west}{%
+ #1
+ \pgfpoint{\x{outerleft}}{\y{center}}
+ }
+ \anchor{east}{\east}%
+ \savedanchor{\east}{%
+ #1
+ \pgfpoint{\x{outerright}}{\y{center}}
+ }
+ \anchor{north}{\north}%
+ \savedanchor{\north}{%
+ #1
+ \pgfpoint{\x{center}}{\y{outertop}}
+ }
+ \anchor{north west}{\northwest}%
+ \savedanchor{\northwest}{%
+ #1
+ \pgfpoint{\x{outerleft}}{\y{outertop}}
+ }
+ \anchor{north east}{\northeast}%
+ \savedanchor{\northeast}{%
+ #1
+ \pgfpoint{\x{outerright}}{\y{outertop}}
+ }
+ \anchor{south}{\south}%
+ \savedanchor{\south}{%
+ #1
+ \pgfpoint{\x{center}}{\y{outerbottom}}
+ }
+ \anchor{south west}{\southwest}%
+ \savedanchor{\southwest}{%
+ #1
+ \pgfpoint{\x{outerleft}}{\y{outerbottom}}
+ }
+ \anchor{south east}{\southeast}%
+ \savedanchor{\southeast}{%
+ #1
+ \pgfpoint{\x{outerright}}{\y{outerbottom}}
+ }
+ \anchor{1+}{\NodeA}
+ \savedanchor{\NodeA}{
+ #1
+ \pgfpoint{\x{outerleft}}{\y{innertop}}
+ }
+ \anchor{1-}{\NodeB}
+ \savedanchor{\NodeB}{
+ #1
+ \pgfpoint{\x{outerleft}}{\y{innerbottom}}
+ }
+ \anchor{inner 1+}{\NodeAi}
+ \savedanchor{\NodeAi}{
+ #1
+ \pgfpoint{\x{innerleft}}{\y{innertop}}
+ }
+ \anchor{inner 1-}{\NodeBi}
+ \savedanchor{\NodeBi}{
+ #1
+ \pgfpoint{\x{innerleft}}{\y{innerbottom}}
+ }
+}
+
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% the Quadripole Base shape itself. Just a box with the external currents and voltages marked.
+%%%
+%%%%%%%%%%%%%%%%%%%
+\pgfdeclareshape{Quad shape}{
+%
+ \tikzquads@@QuadBaseAnchors{\tikzquads@@QuadPoints}
+%
+ \anchor{2+}{\NodeC}
+ \savedanchor{\NodeC}{
+ \tikzquads@@QuadPoints
+ \pgfpoint{\x{outerright}}{\y{innertop}}
+ }
+ \anchor{2-}{\NodeD}
+ \savedanchor{\NodeD}{
+ \tikzquads@@QuadPoints
+ \pgfpoint{\x{outerright}}{\y{innerbottom}}
+ }
+ \anchor{inner 2+}{\NodeCi}
+ \savedanchor{\NodeCi}{
+ \tikzquads@@QuadPoints
+ \pgfpoint{\x{innerright}}{\y{innertop}}
+ }
+ \anchor{inner 2-}{\NodeDi}
+ \savedanchor{\NodeDi}{
+ \tikzquads@@QuadPoints
+ \pgfpoint{\x{innerright}}{\y{innerbottom}}
+ }
+%
+ \behindbackgroundpath{% this is new
+ \tikzquads@@QuadPoints
+ \SearchValueOf{QuadKeys}{outer ext}{\@@outerext}
+ \SearchValueOf{QuadKeys}{minussign len}{\@@minussignlen}
+ \SearchValueOf{QuadKeys}{plussign len}{\@@plussignlen}
+%
+ \pgfpathmoveto{\pgfpoint{\x{left}}{\y{bottom}}}
+ \pgfpathlineto{\pgfpoint{\x{left}}{\y{top}}}
+ \pgfpathlineto{\pgfpoint{\x{right}}{\y{top}}}
+ \pgfpathlineto{\pgfpoint{\x{right}}{\y{bottom}}}
+ \pgfpathlineto{\pgfpoint{\x{left}}{\y{bottom}}}
+ \pgfpathmoveto{\pgfpoint{\x{outerleft}}{\y{innerbottom}}}
+ \pgfpathlineto{\pgfpoint{\x{innerleft}}{\y{innerbottom}}}
+ \pgfpathmoveto{\pgfpoint{-\x{outerleft}}{\y{innerbottom}}}
+ \pgfpathlineto{\pgfpoint{-\x{innerleft}}{\y{innerbottom}}}
+ \pgfpathmoveto{\pgfpoint{\x{outerleft}}{\y{innertop}}}
+ \pgfpathlineto{\pgfpoint{\x{innerleft}}{\y{innertop}}}
+ \pgfpathmoveto{\pgfpoint{-\x{outerleft}}{\y{innertop}}}
+ \pgfpathlineto{\pgfpoint{-\x{innerleft}}{\y{innertop}}}
+ \tikzquads@@plussignat[\@@plussignlen/2]{\x{outerleft}+\@@outerext/2}{\y{innertop}-\@@outerext/2}
+ \tikzquads@@minussignat[\@@minussignlen/2]{\x{outerleft}+\@@outerext/2}{\y{innerbottom}+\@@outerext/2}
+ \tikzquads@@plussignat[\@@plussignlen/2]{-\x{outerleft}-\@@outerext/2}{\y{innertop}-\@@outerext/2}
+ \tikzquads@@minussignat[\@@minussignlen/2]{-\x{outerleft}-\@@outerext/2}{\y{innerbottom}+\@@outerext/2}
+ \pgfusepath{draw}
+ \tikzquads@@arrowtipat{0}{\x{outerleft}+\@@outerext/2}{\y{innertop}}
+ \tikzquads@@arrowtipat{180}{-\x{outerleft}-\@@outerext/2}{\y{innertop}}
+ \pgfusepath{draw,fill}
+ %
+ \iftoggle{tikzquads@@toggle@innermarks}{
+ {
+ \pgftransformshift{\pgfpoint{-\x{innerleft}}{\y{innertop}}}
+ \pgfnode{circ}{center}{}{}{}
+ }
+ {
+ \pgftransformshift{\pgfpoint{\x{innerleft}}{\y{innertop}}}
+ \pgfnode{circ}{center}{}{}{}
+ }
+ {
+ \pgftransformshift{\pgfpoint{\x{innerleft}}{\y{innerbottom}}}
+ \pgfnode{circ}{center}{}{}{}
+ }
+ {
+ \pgftransformshift{\pgfpoint{-\x{innerleft}}{\y{innerbottom}}}
+ \pgfnode{circ}{center}{}{}{}
+ }
+ }{}
+ %
+ \iftoggle{tikzquads@@toggle@outermarks}{
+ {
+ \pgftransformshift{\pgfpoint{-\x{outerleft}}{\y{innertop}}}
+ \pgfnode{circ}{center}{}{}{}
+ }
+ {
+ \pgftransformshift{\pgfpoint{\x{outerleft}}{\y{innertop}}}
+ \pgfnode{circ}{center}{}{}{}
+ }
+ {
+ \pgftransformshift{\pgfpoint{\x{outerleft}}{\y{innerbottom}}}
+ \pgfnode{circ}{center}{}{}{}
+ }
+ {
+ \pgftransformshift{\pgfpoint{-\x{outerleft}}{\y{innerbottom}}}
+ \pgfnode{circ}{center}{}{}{}
+ }
+ }{}
+ %
+ {
+ \pgfsetdash{{0.8pt}{1pt}{0.2pt}{1pt}}{0pt}
+ \pgfsetlinewidth{0.5\pgflinewidth}
+ \pgfpathmoveto{\pgfpoint{-\x{refA}}{\y{innerbottom}}}
+ \pgfpathlineto{\pgfpoint{\x{refA}}{\y{innerbottom}}}
+ \pgfusepath{draw}
+ }
+ \SearchValueOf{QuadKeys}{I1}{\@@IA}
+ \SearchValueOf{QuadKeys}{I2}{\@@IB}
+ \SearchValueOf{QuadKeys}{V1}{\@@VA}
+ \SearchValueOf{QuadKeys}{V2}{\@@VB}
+ %
+ \iftoggle{tikzquads@@toggle@inverted}{
+ \pgftransformresetnontranslations
+ \pgftext[bottom,right,at={\pgfpoint{\x{left}-0.4ex}{\y{innertop}+0.8ex}}]{\@@IB}
+ \pgftext[bottom,left,at={\pgfpoint{\x{right}+0.4ex}{\y{innertop}+0.8ex}}]{\@@IA}
+ \pgftext[left,x=\x{right}+0.4ex]{\@@VA}
+ \pgftext[right,x=\x{left}-0.4ex]{\@@VB}
+ }{
+ %\pgftransformresetnontranslations %might be added, changes nothing if nothing scaled/rotated.
+ \pgftext[bottom,left,at={\pgfpoint{\x{right}+0.4ex}{\y{innertop}+0.8ex}}]{\@@IB}
+ \pgftext[bottom,right,at={\pgfpoint{\x{left}-0.4ex}{\y{innertop}+0.8ex}}]{\@@IA}
+ \pgftext[right,x=\x{left}-0.4ex]{\@@VA}
+ \pgftext[left,x=\x{right}+0.4ex]{\@@VB}
+ }
+ \SearchValueOf{QuadKeys}{label top left}{\@@Ltl}
+ \SearchValueOf{QuadKeys}{label top center}{\@@Ltc}
+ \SearchValueOf{QuadKeys}{label top right}{\@@Ltr}
+ \SearchValueOf{QuadKeys}{label inner top left}{\@@Litl}
+ \SearchValueOf{QuadKeys}{label inner top center}{\@@Litc}
+ \SearchValueOf{QuadKeys}{label inner top right}{\@@Litr}
+ %
+ \SearchValueOf{QuadKeys}{label bottom left}{\@@Lbl}
+ \SearchValueOf{QuadKeys}{label bottom center}{\@@Lbc}
+ \SearchValueOf{QuadKeys}{label bottom right}{\@@Lbr}
+ \SearchValueOf{QuadKeys}{label inner bottom left}{\@@Libl}
+ \SearchValueOf{QuadKeys}{label inner bottom center}{\@@Libc}
+ \SearchValueOf{QuadKeys}{label inner bottom right}{\@@Libr}
+ {
+ \iftoggle{tikzquads@@toggle@inverted}{ \pgftransformresetnontranslations }{}
+ \pgftext[top,left,at={\pgfpoint{\x{Tinnerleft}}{\y{Ttop}}}]{\@@Ltl}
+ \pgftext[top,center,at={\pgfpoint{\x{Tcenter}}{\y{Ttop}}}]{\@@Ltc}
+ \pgftext[top,right,at={\pgfpoint{\x{Tinnerright}}{\y{Ttop}}}]{\@@Ltr}
+ %
+ \pgftext[top,left,at={\pgfpoint{\x{Tinnerleft}}{\y{Tinnertop}}}]{\@@Litl}
+ \pgftext[top,center,at={\pgfpoint{\x{Tcenter}}{\y{Tinnertop}}}]{\@@Litc}
+ \pgftext[top,right,at={\pgfpoint{\x{Tinnerright}}{\y{Tinnertop}}}]{\@@Litr}
+ %
+ \pgftext[bottom,left,at={\pgfpoint{\x{Tinnerleft}}{\y{Tbottom}}}]{\@@Lbl}
+ \pgftext[bottom,center,at={\pgfpoint{\x{Tcenter}}{\y{Tbottom}}}]{\@@Lbc}
+ \pgftext[bottom,right,at={\pgfpoint{\x{Tinnerright}}{\y{Tbottom}}}]{\@@Lbr}
+ %
+ \pgftext[bottom,left,at={\pgfpoint{\x{Tinnerleft}}{\y{Tinnerbottom}}}]{\@@Libl}
+ \pgftext[bottom,center,at={\pgfpoint{\x{Tcenter}}{\y{Tinnerbottom}}}]{\@@Libc}
+ \pgftext[bottom,right,at={\pgfpoint{\x{Tinnerright}}{\y{Tinnerbottom}}}]{\@@Libr}
+ %
+ }
+ }
+ \backgroundpath{ \iftoggle{tikzquads@@toggle@inverted}{\pgftransformresetnontranslations}{} }
+}
+
+
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% the Z Quadripole shape itself.
+%%%
+%%%%%%%%%%%%%%%%%%%
+\pgfdeclareshape{Quad Z shape}{
+ \inheritsavedanchors[from=Quad shape]
+ \foreach \anchor in {north,center,west,east,south,north west,north east,south west, south east,
+ text,bottom left,bottom right,bottom center, inner bottom left, inner bottom right, inner bottom center,
+ top left,top right,top center, inner top left, inner top right, inner top center,
+ 1+,2+,1-,2-, inner 1+, inner 2+, inner 1-, inner 2-}{%
+ \inheritanchor[from=Quad shape]{\anchor}}
+ \inheritbehindbackgroundpath[from=Quad shape]
+ \backgroundpath{
+ \tikzquads@@QuadPoints
+ \tikzquads@@Zside{Z11}{Z12}{I2}{}
+ \tikzquads@@Zside{Z22}{Z21}{I1}{-}
+ \iftoggle{tikzquads@@toggle@inverted}{\pgftransformresetnontranslations}{}
+ }
+}
+
+
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% the Y Quadripole shape itself.
+%%%
+%%%%%%%%%%%%%%%%%%%
+\pgfdeclareshape{Quad Y shape}{
+ \inheritsavedanchors[from=Quad shape]
+ \foreach \anchor in {north,center,west,east,south,north west,north east,south west, south east,
+ text,bottom left,bottom right,bottom center, inner bottom left, inner bottom right, inner bottom center,
+ top left,top right,top center, inner top left, inner top right, inner top center,
+ 1+,2+,1-,2-, inner 1+, inner 2+, inner 1-, inner 2-}{%
+ \inheritanchor[from=Quad shape]{\anchor}}
+ \inheritbehindbackgroundpath[from=Quad shape]
+ \backgroundpath{
+ \tikzquads@@QuadPoints
+ \tikzquads@@Yside{Y11}{Y12}{V2}{}
+ \tikzquads@@Yside{Y22}{Y21}{V1}{-}
+ \iftoggle{tikzquads@@toggle@inverted}{\pgftransformresetnontranslations}{}
+ }
+}
+
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% the H Quadripole shape itself.
+%%%
+%%%%%%%%%%%%%%%%%%%
+\pgfdeclareshape{Quad H shape}{
+ \inheritsavedanchors[from=Quad shape]
+ \foreach \anchor in {north,center,west,east,south,north west,north east,south west, south east,
+ text,bottom left,bottom right,bottom center, inner bottom left, inner bottom right, inner bottom center,
+ top left,top right,top center, inner top left, inner top right, inner top center,
+ 1+,2+,1-,2-, inner 1+, inner 2+, inner 1-, inner 2-}{%
+ \inheritanchor[from=Quad shape]{\anchor}}
+ \inheritbehindbackgroundpath[from=Quad shape]
+ \backgroundpath{
+ \tikzquads@@QuadPoints
+ \tikzquads@@Zside{H11}{H12}{V2}{}
+ \tikzquads@@Yside{H22}{H21}{I1}{-}
+ \iftoggle{tikzquads@@toggle@inverted}{\pgftransformresetnontranslations}{}
+ }
+}
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% the G Quadripole shape itself.
+%%%
+%%%%%%%%%%%%%%%%%%%
+\pgfdeclareshape{Quad G shape}{
+ \inheritsavedanchors[from=Quad shape]
+ \foreach \anchor in {north,center,west,east,south,north west,north east,south west, south east,
+ text,bottom left,bottom right,bottom center, inner bottom left, inner bottom right, inner bottom center,
+ top left,top right,top center, inner top left, inner top right, inner top center,
+ 1+,2+,1-,2-, inner 1+, inner 2+, inner 1-, inner 2-}{%
+ \inheritanchor[from=Quad shape]{\anchor}}
+ \inheritbehindbackgroundpath[from=Quad shape]
+ \backgroundpath{
+ \tikzquads@@QuadPoints
+ \tikzquads@@Yside{G11}{G12}{I2}{}
+ \tikzquads@@Zside{G22}{G21}{V1}{-}
+ \iftoggle{tikzquads@@toggle@inverted}{\pgftransformresetnontranslations}{}
+ }
+}
+
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% the BB (Black Box) is just a 'single sided' Quad
+%%%
+%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% Coordinates for a Black Box
+%%%
+%%%%%%%%%%%%%%%%%%%
+\newcommand{\tikzquads@@BBPoints}{
+ \SearchValueOf{QuadKeys}{outer ext}{\@@outerext}
+ \SearchValueOf{QuadKeys}{inner ext}{\@@innerext}
+ \SearchValueOf{QuadKeys}{half base height}{\@@halfbaseheight}
+ \SearchValueOf{QuadKeys}{half base width}{\@@halfbasewidth}
+ \SearchValueOf{QuadKeys}{height ext}{\@@heightext}
+ \tikzmath{
+ real \x,\y;
+ \x{center}=0;
+ \y{center}=0;
+ \x{right}=0 + \@@halfbasewidth;
+ \y{top}=0 +( \@@halfbaseheight + \@@heightext);
+ %
+ \x{left}=0 - \@@halfbasewidth;
+ \y{bottom}=0 -( \@@halfbaseheight + \@@heightext);
+ %
+ \y{innerbottom}=0 - \@@halfbaseheight;
+ \y{innertop}=0 + \@@halfbaseheight;
+ %
+ \y{outerbottom}=\y{bottom} - 0.5*\@@outerext;
+ \y{outertop}=\y{top} + 0.5*\@@outerext;
+ %
+ \x{outerleft}=\x{left} - \@@outerext;
+ \x{innerleft}=\x{left} + \@@innerext;
+ %
+ \x{outerright}=\x{right} + \@@outerext;
+ \x{innerright}=\x{right} - \@@innerext;
+ %
+ \x{refC}=0 + 0.3*\@@halfbasewidth;
+ \x{refB}=(\x{innerleft}+\x{refC})/2; %center point for Res shape
+ \x{refA}=(2*\x{innerleft}+\x{refC})/3; %'center' point for Y.Res shape
+ %
+ \y{Tbottom}=\y{bottom} + 0.65ex;
+ \x{Tinnerleft}=\x{innerleft} ;
+ \y{Tinnerbottom}=\y{innerbottom} + 0.95ex;
+ \x{Tinnerright}=\x{innerright};
+ \x{Tcenter}=0;
+ %
+ \y{Ttop}=\y{top} - 0.65ex;
+ \y{Tinnertop}=\y{innertop} - 0.95ex;
+ }
+}
+
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% the base shape for a one port 'black box'. Just the box plus the external current/voltage marked
+%%%
+%%%%%%%%%%%%%%%%%%%
+\pgfdeclareshape{BB shape}{
+ \tikzquads@@QuadBaseAnchors{\tikzquads@@BBPoints}
+ \behindbackgroundpath{
+ \tikzquads@@BBPoints
+ \SearchValueOf{QuadKeys}{outer ext}{\@@outerext}
+ \SearchValueOf{QuadKeys}{plussign len}{\@@plussignlen}
+ \SearchValueOf{QuadKeys}{minussign len}{\@@minussignlen}
+ \pgfpathmoveto{\pgfpoint{\x{left}}{\y{bottom}}}
+ \pgfpathlineto{\pgfpoint{\x{left}}{\y{top}}}
+ \pgfpathlineto{\pgfpoint{\x{right}}{\y{top}}}
+ \pgfpathlineto{\pgfpoint{\x{right}}{\y{bottom}}}
+ \pgfpathlineto{\pgfpoint{\x{left}}{\y{bottom}}}
+ \pgfpathmoveto{\pgfpoint{\x{outerleft}}{\y{innerbottom}}}
+ \pgfpathlineto{\pgfpoint{\x{innerleft}}{\y{innerbottom}}}
+ \pgfpathmoveto{\pgfpoint{\x{outerleft}}{\y{innertop}}}
+ \pgfpathlineto{\pgfpoint{\x{innerleft}}{\y{innertop}}}
+ \tikzquads@@plussignat[\@@plussignlen/2]{\x{outerleft}+\@@outerext/2}{\y{innertop}-\@@outerext/2}
+ \tikzquads@@minussignat[\@@minussignlen/2]{\x{outerleft}+\@@outerext/2}{\y{innerbottom}+\@@outerext/2}
+ \pgfusepath{draw}
+ \tikzquads@@arrowtipat{180}{\x{outerleft}+\@@outerext/2}{\y{innertop}}
+ \pgfusepath{draw,fill}
+ %
+ \iftoggle{tikzquads@@toggle@innermarks}{
+ {
+ \pgftransformshift{\pgfpoint{\x{innerleft}}{\y{innertop}}}
+ \pgfnode{circ}{center}{}{}{}
+ }
+ {
+ \pgftransformshift{\pgfpoint{\x{innerleft}}{\y{innerbottom}}}
+ \pgfnode{circ}{center}{}{}{}
+ }
+ }{}
+ %
+ \iftoggle{tikzquads@@toggle@outermarks}{
+ {
+ \pgftransformshift{\pgfpoint{\x{outerleft}}{\y{innertop}}}
+ \pgfnode{circ}{center}{}{}{}
+ }
+ {
+ \pgftransformshift{\pgfpoint{\x{outerleft}}{\y{innerbottom}}}
+ \pgfnode{circ}{center}{}{}{}
+ }
+ }{}
+ %
+ \SearchValueOf{QuadKeys}{I1}{\@@IA}
+ \SearchValueOf{QuadKeys}{V1}{\@@VA}
+ %
+ \iftoggle{tikzquads@@toggle@inverted}{
+ \pgftransformresetnontranslations
+ \pgftext[bottom,left,at={\pgfpoint{\x{right}+0.4ex}{\y{innertop}+0.8ex}}]{\@@IA}
+ \pgftext[left,x=\x{right}+0.4ex]{\@@VA}
+ }{
+ \pgftext[bottom,right,at={\pgfpoint{\x{left}-0.4ex}{\y{innertop}+0.8ex}}]{\@@IA}
+ \pgftext[right,x=\x{left}-0.4ex]{\@@VA}
+ }
+ \SearchValueOf{QuadKeys}{label top left}{\@@Ltl}
+ \SearchValueOf{QuadKeys}{label top center}{\@@Ltc}
+ \SearchValueOf{QuadKeys}{label top right}{\@@Ltr}
+ \SearchValueOf{QuadKeys}{label inner top left}{\@@Litl}
+ \SearchValueOf{QuadKeys}{label inner top center}{\@@Litc}
+ \SearchValueOf{QuadKeys}{label inner top right}{\@@Litr}
+ %
+ \SearchValueOf{QuadKeys}{label bottom left}{\@@Lbl}
+ \SearchValueOf{QuadKeys}{label bottom center}{\@@Lbc}
+ \SearchValueOf{QuadKeys}{label bottom right}{\@@Lbr}
+ \SearchValueOf{QuadKeys}{label inner bottom left}{\@@Libl}
+ \SearchValueOf{QuadKeys}{label inner bottom center}{\@@Libc}
+ \SearchValueOf{QuadKeys}{label inner bottom right}{\@@Libr}
+ {
+ \iftoggle{tikzquads@@toggle@inverted}{ \pgftransformresetnontranslations }{}
+ \pgftext[top,left,at={\pgfpoint{\x{Tinnerleft}}{\y{Ttop}}}]{\@@Ltl}
+ \pgftext[top,center,at={\pgfpoint{\x{Tcenter}}{\y{Ttop}}}]{\@@Ltc}
+ \pgftext[top,right,at={\pgfpoint{\x{Tinnerright}}{\y{Ttop}}}]{\@@Ltr}
+ %
+ \pgftext[top,left,at={\pgfpoint{\x{Tinnerleft}}{\y{Tinnertop}}}]{\@@Litl}
+ \pgftext[top,center,at={\pgfpoint{\x{Tcenter}}{\y{Tinnertop}}}]{\@@Litc}
+ \pgftext[top,right,at={\pgfpoint{\x{Tinnerright}}{\y{Tinnertop}}}]{\@@Litr}
+ %
+ \pgftext[bottom,left,at={\pgfpoint{\x{Tinnerleft}}{\y{Tbottom}}}]{\@@Lbl}
+ \pgftext[bottom,center,at={\pgfpoint{\x{Tcenter}}{\y{Tbottom}}}]{\@@Lbc}
+ \pgftext[bottom,right,at={\pgfpoint{\x{Tinnerright}}{\y{Tbottom}}}]{\@@Lbr}
+ %
+ \pgftext[bottom,left,at={\pgfpoint{\x{Tinnerleft}}{\y{Tinnerbottom}}}]{\@@Libl}
+ \pgftext[bottom,center,at={\pgfpoint{\x{Tcenter}}{\y{Tinnerbottom}}}]{\@@Libc}
+ \pgftext[bottom,right,at={\pgfpoint{\x{Tinnerright}}{\y{Tinnerbottom}}}]{\@@Libr}
+ %
+ }
+ \pgfusepath{draw}
+ }
+ \backgroundpath{}
+}
+
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% A 'Thevenin' circuit inside a black box.
+%%%
+%%%%%%%%%%%%%%%%%%%
+\pgfdeclareshape{TheveninBB shape}{
+ \inheritsavedanchors[from=BB shape]
+ \foreach \anchor in {north,center,west,east,south,north west,north east,south west, south east,
+ text,bottom left,bottom right,bottom center, inner bottom left, inner bottom right, inner bottom center,
+ top left,top right,top center, inner top left, inner top right, inner top center,
+ 1+,1-, inner 1+, inner 1-}{%
+ \inheritanchor[from=BB shape]{\anchor}}
+ \inheritbehindbackgroundpath[from=BB shape]
+ \backgroundpath{
+ \tikzquads@@BBPoints
+ \tikzquads@@Zside{Zth}{Vth}{none}{}
+ \iftoggle{tikzquads@@toggle@inverted}{\pgftransformresetnontranslations}{}
+ }
+}
+
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% A 'Norton' circuit inside a black box.
+%%%
+%%%%%%%%%%%%%%%%%%%
+\pgfdeclareshape{NortonBB shape}{
+ \inheritsavedanchors[from=BB shape]
+ \foreach \anchor in {north,center,west,east,south,north west,north east,south west, south east,
+ text,bottom left,bottom right,bottom center, inner bottom left, inner bottom right, inner bottom center,
+ top left,top right,top center, inner top left, inner top right, inner top center,
+ 1+,1-, inner 1+, inner 1-}{%
+ \inheritanchor[from=BB shape]{\anchor}}
+ \inheritbehindbackgroundpath[from=BB shape]
+ \backgroundpath{
+ \tikzquads@@BBPoints
+ \tikzquads@@Yside[IsourceUP shape]{Yn}{In}{none}{}
+ \iftoggle{tikzquads@@toggle@inverted}{\pgftransformresetnontranslations}{}
+ }
+}
+
+
+
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% A Pseudo-Graph is just that, a crude representantion of a graph, out-of-scale.
+%%%
+%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% Coordinates for a Pseudo-Graph shape
+%%%
+%%%%%%%%%%%%%%%%%%%
+\newcommand{\tikzquads@@PGPoints}{
+ \SearchValueOf{PGKeys}{outer sep}{\@@outersep}
+ \SearchValueOf{PGKeys}{half base width}{\@@halfbasewidth}
+ \SearchValueOf{PGKeys}{half base height}{\@@halfbaseheight}
+ \tikzmath{
+ real \x,\y;
+ \x{center}=0;
+ \y{center}=0;
+ \x{right}=\@@halfbasewidth + \@@outersep;
+ \x{left}= 0-\x{right};
+ \y{top}=+( \@@halfbaseheight + \@@outersep);
+ \y{bottom}=0-\y{top};
+ %
+ \x{axisright}=\@@halfbasewidth;
+ \x{axisleft}=0-\x{right};
+ \y{axistop}=+\@@halfbaseheight;
+ \y{axisbottom}=0-\y{top};
+%
+ \y{Cbottom}=0.6*\y{axisbottom};
+ \y{Ctop}=0-\y{Cbottom};
+ %
+ \x{Cleft}=0.6*\x{axisleft};
+ \x{Cright}=-\x{Cleft};
+%
+ \y{innerbottom}=0.8*\y{axisbottom};
+ \y{innertop}=0-\y{innerbottom};
+ %
+ \x{innerleft}=0.8*\x{axisleft};
+ \x{innerright}=-\x{innerleft};
+ %
+ }
+}
+
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% Base Anchors for a PseudoGraph like shape
+%%%
+%%%%%%%%%%%%%%%%%%%
+\newcommand{\tikzquads@@PGBaseAnchors}[1]{
+ \savedanchor\centerpoint{
+ \pgfpoint{0}{0}
+ }
+ \anchor{center}{\centerpoint}
+ \anchor{text}{\text}%
+ \savedanchor{\text}{%
+ #1
+ \pgfpoint{\x{center}}{\y{center}}
+ }
+ \anchor{west}{\west}%
+ \savedanchor{\west}{%
+ #1
+ \pgfpoint{\x{left}}{\y{center}}
+ }
+ \anchor{east}{\east}%
+ \savedanchor{\east}{%
+ #1
+ \pgfpoint{\x{right}}{\y{center}}
+ }
+ \anchor{north}{\north}%
+ \savedanchor{\north}{%
+ #1
+ \pgfpoint{\x{center}}{\y{top}}
+ }
+ \anchor{south}{\south}%
+ \savedanchor{\south}{%
+ #1
+ \pgfpoint{\x{center}}{\y{bottom}}
+ }
+ \anchor{north west}{\northwest}%
+ \savedanchor{\northwest}{%
+ #1
+ \pgfpoint{\x{left}}{\y{top}}
+ }
+ \anchor{north east}{\northeast}%
+ \savedanchor{\northeast}{%
+ #1
+ \pgfpoint{\x{right}}{\y{top}}
+ }
+ \anchor{south west}{\southwest}%
+ \savedanchor{\southwest}{%
+ #1
+ \pgfpoint{\x{left}}{\y{bottom}}
+ }
+ \anchor{south east}{\southeast}%
+ \savedanchor{\southeast}{%
+ #1
+ \pgfpoint{\x{right}}{\y{bottom}}
+ }
+}
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% Base shape for a source like shape
+%%%
+%%%%%%%%%%%%%%%%%%%
+\pgfdeclareshape{Base PG shape}{
+ \tikzquads@@PGBaseAnchors{\tikzquads@@PGPoints}
+ \backgroundpath{
+ }
+}
+
+
+%%%%%%%%%%%%%%%%%%%
+%%%
+%%% currente source shape, arrow pointing up. either round or diamond
+%%%
+%%%%%%%%%%%%%%%%%%%
+\newdimen\tikzquads@@pgflinewidth
+\pgfdeclareshape{PG linear load line shape}{
+ \inheritsavedanchors[from=Base PG shape]
+ \foreach \anchor in {north,north west,north east,center,west,east,
+ ,south,south west,south east,text}{%
+ \inheritanchor[from=Base PG shape]{\anchor}}
+ \backgroundpath{
+ \begin{pgfscope}
+ \tikzquads@@PGPoints
+ \tikzquads@@pgflinewidth=\pgflinewidth
+ \SearchValueOf{QuadKeys}{thickness}{\@@tmpthickness}
+ \pgfsetlinewidth{\@@tmpthickness\pgflinewidth}
+ \pgfsetroundcap
+ \pgfkeys{\tikzquads@@PGKeysPath/@PGPoints}
+ \pgfpathmoveto{\pgfpoint{\x{axisleft}}{\y{Xaxispos}}}
+ \pgfpathlineto{\pgfpoint{\x{axisright}}{\y{Xaxispos}}}
+ %
+ \pgfpathmoveto{\pgfpoint{\x{Yaxispos}}{\y{axisbottom}}}
+ \pgfpathlineto{\pgfpoint{\x{Yaxispos}}{\y{axistop}}}
+ \pgfusepath{stroke}
+ \tikzquads@@arrowtipat{0}{\x{axisright}}{\y{Xaxispos}}
+ \tikzquads@@arrowtipat{90}{\x{Yaxispos}}{\y{axistop}}
+ \pgfusepath{stroke,fill}
+ \pgfsetlinewidth{\tikzquads@@pgflinewidth}
+ \pgfpathmoveto{\pgfpoint{\x{coordA}}{\y{coordA}}}
+ \pgfpathlineto{\pgfpoint{\x{coordB}}{\y{coordB}}}
+ \pgfusepath{stroke}
+ \SearchValueOf{PGKeys}{x axis}{\@@Xaxis}
+ \SearchValueOf{PGKeys}{x val}{\@@Xval}
+ \SearchValueOf{PGKeys}{y axis}{\@@Yaxis}
+ \SearchValueOf{PGKeys}{y val}{\@@Yval}
+ \pgftext[\tikzquads@@PG@XaxisTanchor,at=\pgfpoint{\x{axisright}}{\y{TXaxiscoord}}]{\@@Xaxis}
+ \pgftext[\tikzquads@@PG@XvalTanchor,at=\pgfpoint{\x{TXvalcoord}}{\y{TXvalcoord}}]{\@@Xval}
+ \pgftext[\tikzquads@@PG@YaxisTanchor,at=\pgfpoint{\x{TYaxiscoord}}{\y{axistop}}]{\@@Yaxis}
+ \pgftext[\tikzquads@@PG@YvalTanchor,at=\pgfpoint{\x{TYvalcoord}}{\y{TYvalcoord}}]{\@@Yval}
+ \end{pgfscope}
+ }
+}
+
diff --git a/macros/latex/contrib/docshots/docshots.dtx b/macros/latex/contrib/docshots/docshots.dtx
index 393f867408..04a7402a2b 100644
--- a/macros/latex/contrib/docshots/docshots.dtx
+++ b/macros/latex/contrib/docshots/docshots.dtx
@@ -50,7 +50,7 @@
%<package>\NeedsTeXFormat{LaTeX2e}
%<package>\ProvidesPackage{docshots}
%<*package>
-[2024-01-09 0.4.1 TeX Samples Next to Their PDF Snapshots in DTX]
+[2024-01-13 0.4.2 TeX Samples Next to Their PDF Snapshots in DTX]
%</package>
%<*driver>
\documentclass{ltxdoc}
@@ -466,16 +466,37 @@ Hello, world!
% \section{Implementation}
% \changes{0.0.1}{2022/10/09}{Initial version}
-% First, we include a few packages:
+% First, we include \href{https://ctan.org/pkg/iexec}{iexec}
+% in order to execute shell commands, such as |pdflatex| and |pdfcrop|:
% \begin{macrocode}
\RequirePackage{iexec}
+% \end{macrocode}
+
+% Then, we include \href{https://ctan.org/pkg/fancyvrb}{fancyvrb}
+% in order to render verbatim texts:
+% \begin{macrocode}
\RequirePackage{fancyvrb}
+% \end{macrocode}
+
+% Then, we include \href{https://ctan.org/pkg/xcolor}{xcolor}
+% in order to make borders gray:
+% \begin{macrocode}
\RequirePackage{xcolor}
+% \end{macrocode}
+
+% Then, we include \href{https://ctan.org/pkg/graphicx}{graphicx}
+% in order to be able to use |\includegraphics| command:
+% \begin{macrocode}
\RequirePackage{graphicx}
+% \end{macrocode}
+
+% Then, we include \href{https://ctan.org/pkg/tikz}{tikz}
+% in order to be able to position elements:
+% \begin{macrocode}
\RequirePackage{tikz}
% \end{macrocode}
-% Then, we process package options:
+% Then, we process package options with the help of \href{https://ctan.org/pkg/pgfopts}{pgfopts}:
% \changes{0.0.4}{2022/10/18}{Package options "lstinputlisting" and "inputminted" introduced to enable printing of verbatim text either via listings or minted packages.}
% \changes{0.0.5}{2022/10/24}{Package option "log" added, which enables detailed logging via exec. By default, there is no logging at all.}
% \changes{0.2.0}{2022/10/26}{New package option "nocrop" added to allow disabling of "pdfcrop" execution.}
@@ -540,17 +561,21 @@ Hello, world!
% \begin{macro}{\docshots@mdfive}
% \changes{0.1.1}{2022/10/26}{New supplementary command added to calculate MD5 sum of a file.}
-% Then, we define a command for MD5 hash calculating of a file:
+% Then, we define a command for MD5 hash calculating of a file, with
+% the help of \href{https://ctan.org/pkg/pdftexcmds}{pdftexcmds}:
% \begin{macrocode}
\RequirePackage{pdftexcmds}
-\makeatletter\newcommand\docshots@mdfive[1]{\pdf@filemdfivesum{#1}}\makeatother
+\makeatletter
+\newcommand\docshots@mdfive[1]{\pdf@filemdfivesum{#1}}
+\makeatother
% \end{macrocode}
% \end{macro}
% \begin{macro}{docshot}
% Then, we define |docshot| environment:
% \begin{macrocode}
-\makeatletter\newenvironment{docshot}
+\makeatletter
+\newenvironment{docshot}
{\VerbatimEnvironment\begin{VerbatimOut}
{\docshots@tmpdir/\jobname/verbatim.tex}}
{\end{VerbatimOut}%
@@ -620,25 +645,7 @@ Hello, world!
"\docshots@tmpdir/\jobname/\hash.pdf"
"\docshots@tmpdir/\jobname/\hash.crop.pdf"}%
\fi}%
-% \end{macrocode}
-% We configure |fancyvrb|:
-% \begin{macrocode}
- \def\docshots@xopts{
- numbers=left,numbersep=3pt,
- frame=leftline,framerule=.2pt,rulecolor=\color{gray},
- samepage=true,
- commandchars=none,
- baselinestretch=1
- }%
- \ifdefined\docshots@small%
- \edef\docshots@xopts{\unexpanded\expandafter{\docshots@xopts},fontsize=\small}%
- \fi%
- \ifdefined\docshots@tiny%
- \edef\docshots@xopts{\unexpanded\expandafter{\docshots@xopts},fontsize=\scriptsize}%
- \fi%
- \ifdefined\docshots@opts
- \edef\docshots@xopts{\unexpanded\expandafter{\docshots@xopts},\docshots@opts}
- \fi
+ \message{docshots: the PDF is ready from line no. \the\inputlineno^^J}%
% \end{macrocode}
% Finally, we render the two-column content:
% \begin{macrocode}
@@ -660,38 +667,56 @@ Hello, world!
{\docshots@inputminted}
{\docshots@tmpdir/\jobname/\hash.tex}%
\else%
- \expandafter\VerbatimInput\expandafter[\docshots@xopts]
- {\docshots@tmpdir/\jobname/\hash.tex}%
+ \fvset{numbers=left,numbersep=3pt}%
+ \fvset{frame=leftline,framerule=.2pt,rulecolor=\color{gray}}%
+ \fvset{samepage=true}%
+ \fvset{commandchars=none}%
+ \fvset{baselinestretch=1}%
+ \ifdefined\docshots@small%
+ \fvset{fontsize=\small}%
+ \fi%
+ \ifdefined\docshots@tiny%
+ \fvset{fontsize=\scriptsize}%
+ \fi%
+ \ifdefined\docshots@opts%
+ \fvset{\docshots@opts}%
+ \fi%
+ \VerbatimInput{\docshots@tmpdir/\jobname/\hash.tex}%
\fi\fi%
\vspace{0pt}%
\end{minipage}%
\par%
\endgroup%
\docshotOptions{}%
-}\makeatother
+}
+\makeatother
% \end{macrocode}
% \end{macro}
% \begin{macro}{\docshotPrerequisite}
% Then, we define |\docshotPrerequisite| command:
% \begin{macrocode}
-\makeatletter\newcommand\docshotPrerequisite[1]{
+\makeatletter
+\newcommand\docshotPrerequisite[1]{
\iexec[\docshots@log,quiet]{cp #1 "\docshots@tmpdir/\jobname"}%
\message{docshots: File '#1' copied to
'\docshots@tmpdir/\jobname/#1'^^J}%
-}\makeatother
+}
+\makeatother
% \end{macrocode}
% \end{macro}
% \begin{macro}{\docshotAfter}
% Then, we define |\docshotAfter| command:
% \begin{macrocode}
-\makeatletter\newcommand\docshotAfter[1]{
+\makeatletter
+\newcommand\docshotAfter[1]{
\iexec[\docshots@log,quiet]{/bin/echo -n '\detokenize{#1}'
> "\docshots@tmpdir/\jobname/after.sh"}%
\message{docshots: File
'\docshots@tmpdir/\jobname/after.sh' created^^J}%
-}\makeatother
+}
+\makeatother
% \end{macrocode}
% \end{macro}
@@ -703,7 +728,8 @@ Hello, world!
\gdef\docshots@opts{}
\newcommand\docshotOptions[1]{%
\gdef\docshots@opts{#1}%
-}\makeatother
+}
+\makeatother
% \end{macrocode}
% \end{macro}
diff --git a/macros/latex/contrib/docshots/docshots.pdf b/macros/latex/contrib/docshots/docshots.pdf
index 903ad5d3ce..e24ef6c4f5 100644
--- a/macros/latex/contrib/docshots/docshots.pdf
+++ b/macros/latex/contrib/docshots/docshots.pdf
Binary files differ
diff --git a/macros/latex/contrib/easybook/easybook.dtx b/macros/latex/contrib/easybook/easybook.dtx
index 5bc284e694..826602cab4 100644
--- a/macros/latex/contrib/easybook/easybook.dtx
+++ b/macros/latex/contrib/easybook/easybook.dtx
@@ -15,7 +15,7 @@
%<*class>
\NeedsTeXFormat{LaTeX2e}[2020/10/01]
\RequirePackage{l3keys2e}
-\ProvidesExplClass{easybook}{2024/01/10}{2024F}
+\ProvidesExplClass{easybook}{2024/01/13}{2024G}
{Easily typesetting Chinese theses or books}
\bool_set_false:N \l__eb_compile_draft_bool
@@ -302,7 +302,7 @@
%<*package>
\NeedsTeXFormat{LaTeX2e}[2020/10/01]
\RequirePackage{l3keys2e,etoolbox}
-\ProvidesExplPackage{easybase}{2024/01/10}{2024F}
+\ProvidesExplPackage{easybase}{2024/01/13}{2024G}
{Easily typesetting Chinese theses or books}
\cs_generate_variant:Nn \dim_set:Nn { NV }
@@ -904,7 +904,7 @@
fntext-num/unknown .code:n = \eb_fnmarktext_short_label_set:Nn \thefootnote {#1},
fnmarktext-num .meta:n = { fntext-num = #1,fnmark-num = #1 },
fnmarktext-num .initial:n = plain,
- unknown .code:n = \eb_msg_deprecated_option:n { hdrset }
+ unknown .code:n = \eb_msg_deprecated_option:n { hdrset }
}
\eb_at_end_preamble:n
@@ -1304,7 +1304,7 @@
hyphen-listing = #1,hyphen-equation = #1
},
hyphen-every .initial:n = .,
- unknown .code:n = \eb_msg_deprecated_option:n { style }
+ unknown .code:n = \eb_msg_deprecated_option:n { style }
}
\eb_seq_map_inline:nn
{ figure,table,lstlisting,equation }
@@ -1418,7 +1418,7 @@
{\eb_toc_float_list_parse:nnnnn {##1} {##2} {##3} {#1} {#2}}
\ctex_define:n
{
- #1/##1 .meta:nn = { ctex/##1 } {####1},
+ #1 .meta:nn = { ctex/#1 } {##1},
#1/between .tl_set:c = l__eb_toc_#1_between_hook_tl,
#1/tocline .cs_set:cp = { eb@tocline@#1 } ##1##2,
#1/tocline .initial:n = \listnumberline{#1}##2
@@ -1431,6 +1431,7 @@
\DeclareFloatList{lstlisting}{lol}
\cs_gset:Npn \caption@@@addcontentsline #1#2#3#4
{
+ \exp_args:Nnnx
\addcontentsline{#1}{#2}
{
\prop_if_in:NnTF \l__eb_toc_float_label_prop {#2}
@@ -1556,9 +1557,9 @@
lolskip .skip_set:N = \eb@toc@lol@skip,
lolskip .initial:n = 10pt,
between .tl_set:N = \l__eb_toc_main_between_hook_tl,
- between .initial:n = \bool_if:NT \l__eb_class_mode_book_bool { \vspace*{-1pc} },
+ between .initial:n = \bool_if:NT \l__eb_class_mode_book_bool { \vspace*{-1pc} },
bibetween .tl_set:N = \l__eb_toc_bimain_between_hook_tl,
- bibetween .initial:n = \bool_if:NT \l__eb_class_mode_book_bool { \vspace*{-1pc} },
+ bibetween .initial:n = \bool_if:NT \l__eb_class_mode_book_bool { \vspace*{-1pc} },
dotalign .bool_set:N = \l__eb_toc_dot_align_bool,
dotalign .default:n = true,
dotalign .initial:n = true,
@@ -1567,7 +1568,7 @@
hang .initial:n = true,
pagenumwd .code:n = \contentsmargin{#1},
pagenumwd .initial:n = 1.55em,
- unknown .code:n = \eb_msg_deprecated_option:n { tocset }
+ unknown .code:n = \eb_msg_deprecated_option:n { tocset }
}
\NewDocumentCommand{\tocrule}{st-O{0.7pc}d()mO{}}
{
@@ -1704,7 +1705,7 @@
footnote .tl_set:N = \l__eb_subfont_footnote_tl,
marginpar .tl_set:N = \marginfont,
marginpar .initial:n = \footnotesize,
- unknown .code:n = \eb_msg_deprecated_option:n { subfont }
+ unknown .code:n = \eb_msg_deprecated_option:n { subfont }
}
\cs_new_protected:Npn \addtosubfont #1#2
{
@@ -1754,7 +1755,7 @@
line = #1,table = #1,math = #1,
caption-every = #1,footnote = #1
},
- unknown .code:n = \eb_msg_deprecated_option:n { spread }
+ unknown .code:n = \eb_msg_deprecated_option:n { spread }
}
\eb_seq_map_inline:nn
@@ -1927,23 +1928,17 @@
{
\RequirePackage{amsthm,thmtools}
\eb_package_date_check:nn { thmtools } { 2020/08/01 }
- \cs_set_eq:NN \eb@declaretheorem@save \declaretheorem
\cs_set_eq:NN \eb@declaretheoremsyle@save \declaretheoremstyle
- \RenewDocumentCommand{\declaretheorem}{O{}mO{}}
- {\eb@declaretheorem@save[#1,#3]{#2}}
\RenewDocumentCommand{\declaretheoremstyle}{O{}mO{}}
{\eb@declaretheoremsyle@save[#1,#3]{#2}}
\ctex_define:nn { thmset }
- {
- tcbwrap .code:n = { },
- unknown .code:n = \eb_msg_deprecated_option:n { thmset }
- }
+ { unknown .code:n = \eb_msg_deprecated_option:n { thmset } }
\declaretheoremstyle{default}[
spaceabove = 0ex plus .1ex,
spacebelow = 0ex plus .1ex,
headindent = 0em,
within = \bool_if:NT \l__eb_class_mode_book_bool { chapter },
- headpunct = :,
+ headpunct = { },
headfont = \color{ctex@emph}\sffamily,
bodyfont = \normalfont,
postheadspace = 1em
@@ -2022,7 +2017,7 @@
datafile .clist_set:N = \l__eb_bib_datafile_clist,
bititle .tl_set:N = \eb@bib@bitoc@title,
bititle .initial:n = Bibliography,
- unknown .code:n = \eb_msg_deprecated_option:n { bibset }
+ unknown .code:n = \eb_msg_deprecated_option:n { bibset }
}
\cs_new_protected:Npn \eb_bibtex_natbib_set:
@@ -2290,6 +2285,7 @@
\labelformat{chapter}{\CTEXthechapter}
\labelformat{figure}{\figurename~#1}
\labelformat{table}{\tablename~#1}
+ \labelformat{lstlisting}{\lstlistingname~#1}
\tl_if_eq:NnTF \l__ctex_scheme_tl { chinese }
{
\labelformat{section}{节#1}
@@ -2326,7 +2322,7 @@
}
%</package>
%<*tcolorbox>
-\ProvidesExplFile{eb-tcolorbox.cfg}{2024/01/10}{2024F}
+\ProvidesExplFile{eb-tcolorbox.cfg}{2024/01/13}{2024G}
{Customization of tcolorbox for easybook}
\cs_set_protected:Npn \addtotcbstyle #1#2
@@ -2407,7 +2403,7 @@
}{#2}
\DeclareTotalTCBox{\eboxii}{O{Green}mO{}}
{
- colback = #1,colframe = #1,
+ colback = #1,colframe = black,
tc-eboxii,#3
}{#2}
%</tcolorbox> \ No newline at end of file
diff --git a/macros/latex/contrib/easybook/easybook.pdf b/macros/latex/contrib/easybook/easybook.pdf
index e45cbbca7e..5704cd25bf 100644
--- a/macros/latex/contrib/easybook/easybook.pdf
+++ b/macros/latex/contrib/easybook/easybook.pdf
Binary files differ
diff --git a/macros/latex/contrib/easybook/easybook.tex b/macros/latex/contrib/easybook/easybook.tex
index feb54cec19..9f4f1d91c8 100644
--- a/macros/latex/contrib/easybook/easybook.tex
+++ b/macros/latex/contrib/easybook/easybook.tex
@@ -11,7 +11,7 @@
{
cs => violet,
option => Green,
- cnltx => NavyBlue,
+ cnltx => DarkBlue,
link => DeepPink,
module => FireBrick,
beginend => FireBrick,
@@ -23,8 +23,8 @@
name = easybook,
color-scheme = blue,
title = EASYBOOK使用手册,
- version = v2024F,
- date = 2024/01/10,
+ version = v2024G,
+ date = 2024/01/13,
authors = 瞿毅,
info = 简便地排版中文学位论文或书籍,
email = toquyi@163.com,
@@ -40,20 +40,20 @@
}
\KOMAoptions{numbers = noenddot}
\setfootnoterule[0.5pt]{0.4\columnwidth}
-\addtokomafont{headsepline}{\color{NavyBlue}}
-\addtokomafont{footnoterule}{\color{NavyBlue}}
+\addtokomafont{headsepline}{\color{DarkBlue}}
+\addtokomafont{footnoterule}{\color{DarkBlue}}
\addtokomafont{section}{\normalfont\sffamily}
\addtokomafont{subsection}{\normalfont\sffamily}
\addtokomafont{subsubsection}{\normalfont\sffamily}
\DeclareTOCStyleEntry[entryformat = \sffamily]{default}{section}
\DeclareFieldFormat[book]{title}{\textsf{#1}}
\geometry{margin = 1in,marginparwidth = 0.6in}
-\SetEnumitemValue{label}{smallbullet}{\small\color{NavyBlue}\textbullet}
+\SetEnumitemValue{label}{smallbullet}{\small\color{DarkBlue}\textbullet}
\setlist{nosep,topsep = \smallskipamount,labelsep = 0.5em}
\setlist[1]{labelindent = \parindent}
\setlist[itemize,1]{label = smallbullet,leftmargin = *}
\setcounter{tocdepth}{2}
-\SetTblrInner[talltblr]{hline{1,Z} = {0.8pt,NavyBlue}}
+\SetTblrInner[talltblr]{hline{1,Z} = {0.8pt,DarkBlue}}
\SetTblrTemplate{caption}{empty}
\DefTblrTemplate{remark-sep}{default}{\space}
\SetTblrStyle{remark}{font = \small\normalfont}
@@ -144,7 +144,7 @@
baselinestretch = 1.2,
gobble = 2,
fontsize = \small,
- rulecolor = \color{NavyBlue},
+ rulecolor = \color{DarkBlue},
framerule = 0.5pt,
frame = single,
framesep = 6pt
@@ -253,7 +253,7 @@
\subsection{基本选项}
\begin{options}
\opt{draft}
- 开启草稿模式会加快编译速度,表现有显示页面边框、行溢出的地方显示黑色方块、图片变成占位方框、显示当前日期和关闭超链接渲染。不使用绘图宏包及依赖于 \pkg*{tcolorbox} 宏包的盒子环境也会增快编译速度,详情见\ref{subsec:box}。
+ 开启草稿模式会加快编译速度,表现有显示页面边框、行溢出的地方显示黑色方块、图片变成占位方框、显示当前日期和关闭超链接渲染。不使用绘图宏包及依赖 \pkg*{tcolorbox} 宏包的盒子环境也会增快编译速度,详情见\ref{subsec:box}。
\opt{newline}\dtag
部分和章标题的样式为另起一行,符合一般英文书籍的习惯。
\keychoice{scheme}{\fbox{chinese},plain}\dtag
@@ -263,9 +263,9 @@
\keychoice{paper}{\fbox{a4paper},b5paper,c5paper,letterpaper,other paper}
文档页面尺寸选项将参数交给 \pkg*{geometry} 宏包处理,可使用它支持的所有标准纸张规格。
\keyval{config}{配置文件列表}\dtag
- 载入用户配置的文件名列表,文件列表以花括号包裹并以英文逗号分隔。文件名应包含如 \code{tex}、\code{def} 或 \code{cfg} 等扩展名。若配置文件不在当前文件夹则文件名需要包含路径。
+ 载入用户配置的文件名列表,文件列表以花括号包裹并以英文逗号分隔。文件名应包含如 \code{tex}、\code{def} 或 \code{cfg} 等扩展名。若配置文件不在当前文件夹则文件名需要包含路径,即 \code{path/file.cfg}。
\keychoice{floatpage}{true,\fbox{false}}
- 开启这个选项后浮动环境 \env*{table} 和 \env*{figure} 的比例参数会使用默认值。关闭它则尽可能避免出现浮动页,使图表环境与正文段落更加紧凑,减少多余的空白版面。
+ 开启这个选项后浮动环境 \env{table} 和 \env{figure} 的比例参数会使用默认值。关闭它则尽可能避免出现浮动页,使图表环境与正文段落更加紧凑,减少多余的空白版面。
\keychoice{theorem}{\fbox{true},false}
是否提供定理功能支持。选项开启时定理样式模块生效,此时会载入 \pkg*{amsthm} 和 \pkg*{thmtools} 宏包。
\end{options}
@@ -291,7 +291,7 @@
remark{\ding{72}} = \code{times*} 方案为 \textsf{windows} 系统的预置字体。
]{
colspec = @{}*{4}{c}@{},
- hline{2} = {0.5pt,NavyBlue},
+ hline{2} = {0.5pt,DarkBlue},
row{1} = {font = \sffamily},
column{1} = {cmd = \code}
}{
@@ -328,7 +328,7 @@
\insertalltblr
{
colspec = @{}*{5}{c}@{},
- hline{3} = {0.5pt,NavyBlue},
+ hline{3} = {0.5pt,DarkBlue},
row{1,3} = {font = \sffamily,belowsep = 0pt},
row{2,4} = {cmd = \module*}
}{
@@ -433,7 +433,7 @@
\begin{options}
\keychoice{linktype}{\fbox{edge},colors,none}
超链接类型。\code{edge} 使超链接形式为边框,\code{colors} 使超链接字体为彩色,\code{none} 关闭超链接边框与颜色,此时 \option{linkcolor} 选项无效。
- \keychoice{linkcolor}{fresh,cutepink,\fbox{navyblue},crimson}
+ \keychoice{linkcolor}{fresh,cutepink,\fbox{DarkBlue},crimson}
超链接颜色样式。预置了四种超链接颜色风格。为使相关颜色能够正确显示,选项 \option{linkcolor} 应当在 \option{linktype} 前使用。
\begin{commands}
\command{DeclareLinkColor}[\splitmarg{风格名称,颜色1,颜色2,颜色3}]
@@ -452,7 +452,7 @@
\keyval{line}{数值}
正文行距因子。行距因子初始值为 \code{1.354}(相当于 \textsf{Word} 的1.25倍行距),如果设置了文类或 \pkg*{ctex} 宏包的全局行距选项 \option*{linespread} 则初始值设为它的值。
\keyval{table}{数值}\Default{1.354}
- 表格内容行距因子。对传统表格 \env*{tabular} 和 \env*{tabularx} 等环境以及 \pkg*{tabularray} 宏包的 \env{tblr} 环境生效,同时 \env{tblr} 也自带有 \option*{stretch} 选项设置行距系数。
+ 表格内容行距因子。对传统表格 \env{tabular} 和 \env{tabularx} 等环境以及 \pkg*{tabularray} 宏包的 \env{tblr} 环境生效,同时 \env{tblr} 也自带有 \option*{stretch} 选项设置行距系数。
\keyval{math}{数值}\Default{1.354}
数学环境的行距因子,包含了 \pkg*{amsmath} 和 \pkg*{mathtools} 宏包提供的公式环境。
\keyval{caption-figure}{数值}\Default{1.2}
@@ -509,7 +509,7 @@
\keyval{citestyle}{标注风格}
标注参考文献的风格。后端为 \code{bibtex} 时可使用 \option{super}(数字上标标注,默认)或 \option{numbers}(数字标注)等 \pkg*{natbib} 宏包带有的标注风格,后端为 \code{biblatex} 时可使用 \pkg*{biblatex} 宏包支持的标注风格。
\keyval{datafile}{数据库列表}
- 参考文献数据库的文件名列表,文件列表以花括号包裹并以英文逗号分隔。使用 \hologo{biber} 处理时要带有 \code{bib} 后缀,若参考文献文件不在当前文件夹则文件名需要包含路径。不设置参考文献数据库名时 \module*{bibset} 模块中的选项会失效,即不自动载入 \pkg*{natbib} 或 \pkg*{biblatex} 宏包,此时需要手动载入相关宏包配置参考文献。
+ 参考文献数据库的文件名列表,文件列表以花括号包裹并以英文逗号分隔。使用 \hologo{biber} 处理时文件名要带 \code{bib} 扩展名,若参考文献文件不在当前文件夹则文件名需要包含路径,即 \code{path/file.bib}。不设置参考文献数据库名时 \module*{bibset} 模块中的选项会失效,即不自动载入 \pkg*{natbib} 或 \pkg*{biblatex} 宏包,此时需要手动载入相关宏包配置参考文献。
\end{options}
\begin{commands}
@@ -519,17 +519,17 @@
\begin{options}
\keychoice*{heading}{bibliography,subbibliography,\fbox{bibintoc},subbibintoc}
- 参考文献通常有一个章标题或者节标题,该选项选择由 \cs*{defbibheading} 定义的标题名。
- \keyval*{title}{参考文献标题名}
+ 参考文献通常有一个章标题或者节标题,该选项选择由 \cs{defbibheading} 定义的标题名。
+ \keyval{title}{参考文献标题名}
如果标题定义支持的话,该选项覆盖由 \option*{heading} 选项提供的缺省标题名。
- \keyval*{prenote}{参考文献前注}
- 该选项选择由 \cs*{defbibnote} 所定义的前注,缺省状态下不打印任何前注。
- \keyval*{section}{整数}\Default{0}
+ \keyval{prenote}{参考文献前注}
+ 该选项选择由 \cs{defbibnote} 所定义的前注,缺省状态下不打印任何前注。
+ \keyval{section}{整数}\Default{0}
只打印在指定文节中引用的条目。该参考文献节从1开始编号,所有在 \env*{refsection} 环境外给出的引用标记为第零节。
- \keyval*{type}{条目类型}
+ \keyval{type}{条目类型}
指定条目的打印类型。
- \keyval*{filter}{过滤器名}
- 使用由 \cs*{defbibfilter} 定义的 \option*{filter} 来过滤条目。
+ \keyval{filter}{过滤器名}
+ 使用由 \cs{defbibfilter} 定义的 \option*{filter} 来过滤条目。
可能在一些情况下您希望更加灵活地设置参考文献或有更多需求,下面举一个在导言区手动配置 \pkg*{biblatex} 宏包并使一个条目输出双语对照文献的例子:
\begin{ctexexam}
@@ -544,20 +544,22 @@
\subsection[定理样式]{定理样式\smodule{thmset}}
\label{subsec:theorem of style}
-模块 \module*{thmset} 由 \pkg*{thmtools} 宏包提供支持,主要提供了定理声明和样式声明两个命令。定理声明命令使用的定理样式由样式声明命令提供,文档类预置了一个定理样式 \code{default}。
+模块 \module*{thmset} 由 \pkg*{thmtools} 宏包提供支持,主要提供了定理环境和样式声明两个命令。定理环境声明命令 \cs{declaretheorem} 使用的定理样式由样式声明命令 \cs{declaretheoremstyle} 提供,文档类预置了一个定理样式 \code{default},但未定义任何定理环境。
\begin{commands}
\command{declaretheorem}[\oarg{键值列表1}\marg{环境名}\oarg{键值列表2}]
定理环境声明命令。可选参数的 \meta{键值列表1} 与 \meta{键值列表2} 等效,其中常用的选项如下:
\begin{options}
- \keyval*{name}{定理名}
+ \keyval{name}{定理名}
定理环境的标题名称,默认为英文首字母大写的环境名。
- \keychoice*{numbered}{no,yes,unless unique}
+ \keychoice{numbered}{no,yes,unless unique}
定理可以被编号、不被编号或者只有在文档中多次出现时才被编号。
- \keychoice*{within}{chapter,section,empty,counter}
+ \keychoice{within}{chapter,section,empty,counter}
定理编号跟随的计数器。当计数器值递增时定理编号会从零开始,通常这是一个章节计数器。
- \keyval*{numberlike}{计数器}
+ \keyval{numberlike}{计数器}
定理将使用此 \meta{计数器} 进行编号,通常这是另一个定理环境的名称。
- \keyval*{style}{定理样式}
+ \keyval{qed}{证毕符号}
+ 证毕符号。位于定理段落末尾行的右侧边缘,可以设置成 \cs{qedsymbol} 默认是空心方块。
+ \keyval{style}{定理样式}
选项的值为使用 \cs{declaretheoremstyle} 命令新定义的定理样式。
使用 \cs{declaretheorem} 命令以\ref{exam:new theorem sty} 中的定理样式 \code{fancy} 新建一个定理环境猜想,然后用一个基于 \pkg*{tcolorbox} 宏包的预置彩色盒子 \env{easyboxi} 增加背景:
@@ -614,10 +616,10 @@
\begin{options}\noitemsep
\keyval{headruleskip}{页眉线间距}\Default*{0pt}
\keyval{footruleskip}{页脚线间距}\Default*{3.5pt}
- \kvsplit*{hdivide}{左边距,页面文本宽度,右边距}\default{}
- \kvsplit*{hmargin}{左边距,右边距}\default{}
- \keyval*{textheight}{页面文本高度}\default{}
- \keychoice*{nofoot}{true,\fbox{false}}
+ \kvsplit{hdivide}{左边距,页面文本宽度,右边距}\default{}
+ \kvsplit{hmargin}{左边距,右边距}\default{}
+ \keyval{textheight}{页面文本高度}\default{}
+ \keychoice{nofoot}{true,\fbox{false}}
\begin{ctexexam}
\ebgeoset
{
@@ -671,8 +673,8 @@
\end{commands}
\begin{commands}\noitemsep
- \command*{markboth}[\marg{左页标题标记}\marg{右页标题标记}]\default{}
- \command*{markright}[\marg{右页标题标记}]\default{}
+ \command{markboth}[\marg{左页标题标记}\marg{右页标题标记}]\default{}
+ \command{markright}[\marg{右页标题标记}]\default{}
\command{markdouble}[\marg{双页标题标记}]
这三个命令用于手动设置当前页标题标记,特殊情况下可以使用它们定义与标题不同的页眉页脚标记。上述标记命令内容的选项便是基于这三个命令。其中 \cs{markdouble} 根据是否是双面打印设置相应标记。如果是单面打印,则 \meta{左页标题标记} 无效。
\end{commands}
@@ -698,7 +700,7 @@
\ebhdrset{footnotetype = {hang,bottom}}
\end{ctexexam}
\keyval{fnfirstindent}{刚性长度}\Default{0.8em}
- 每个脚注首段的首行缩进(选项 \option*{hang} 为整体缩进),等于长度 \cs{fnfirstindent} 的值。
+ 每个脚注首段的首行缩进(悬挂缩进 \code{hang} 为整段缩进),等于长度 \cs{fnfirstindent} 的值。
\keyval{fnafterindent}{刚性长度}\Default{2em}
每个脚注第二段及之后段落的首行缩进,等于长度 \cs{fnafterindent} 的值。
\keyval{fnparskip}{弹性长度}\Default{0ex plus .1ex}
@@ -732,13 +734,13 @@
\keychoice{fnmarktext-num}{\fbox{plain},pifont,pifont*,pisans,pisans*,short num}
同时设定脚注正文标记编号 \option{fnmark-num} 与脚注内容标记编号 \option{fntext-num} 的类型。目前脚注编号类型选项对于迷你页环境 \env*{minipage} 无效,其中的脚注保持默认英文字母的编号类型。
\keychoice{fnmark-vmove}{fixed length,match}\Default{0pt}
- 脚注正文标记的垂直偏移。可以设为刚性长度,或用 \code{match} 匹配 \option*{spvmove} 全局的值。
+ 脚注正文标记的垂直偏移。可以设为刚性长度,或用 \code{match} 匹配 \option{spvmove} 全局的值。
\keychoice{fnmark-hmove}{fixed length,match}\Default{0pt}
- 脚注正文标记的水平偏移。可以设为刚性长度,或用 \code{match} 匹配 \option*{sphmove} 全局的值。
+ 脚注正文标记的水平偏移。可以设为刚性长度,或用 \code{match} 匹配 \option{sphmove} 全局的值。
\keychoice{fntext-vmove}{fixed length,match}\Default{0pt}
- 脚注内容标记的垂直偏移。可以设为刚性长度,或用 \code{match} 匹配 \option*{spvmove} 全局的值。
+ 脚注内容标记的垂直偏移。可以设为刚性长度,或用 \code{match} 匹配 \option{spvmove} 全局的值。
\keychoice{fnmarktext-format}{format code,match}
- 默认脚注标记的格式,选项 \code{match} 可以匹配 \option*{spcmd} 全局的值。一般配合 \keyis{fnmarktext-num}{plain} 原生编号形式使用,例如用 \pkg*{circledtext} 宏包的带圈字符命令 \cs*{circledtext} 给脚注标记添加圆圈:
+ 默认脚注标记的格式,选项 \code{match} 可以匹配 \option{spcmd} 全局的值。一般配合 \keyis{fnmarktext-num}{plain} 原生编号形式使用,例如用 \pkg*{circledtext} 宏包的带圈字符命令 \cs{circledtext} 给脚注标记添加圆圈:
\begin{ctexexam}
\usepackage{circledtext}
\circledtextset{resize = real,width = 0.5em}
@@ -765,7 +767,7 @@
\defdownfntmark{\notminipage{\textcolor{blue}{\thedownfootnote}}{}}
\end{ctexexam}
\keychoice{fncustom-format}{format code,match}
- 单独设定自定义脚注标记的格式,选项 \code{match} 可以匹配 \option*{spcmd} 全局的值。自定义脚注内容和正文标记的命令与用法可以见下方和\ref{exam:custom footnote markers} 的介绍。
+ 单独设定自定义脚注标记的格式,选项 \code{match} 可以匹配 \option{spcmd} 全局的值。自定义脚注内容和正文标记的命令与用法可以见下方和\ref{exam:custom footnote markers} 的介绍。
\begin{commands}\noitemsep
\command{Footnote}[\oarg{内容标记}\marg{正文标记}\marg{脚注文本}]\default{}
\command{Footnotetext}[\marg{内容标记}\marg{脚注文本}]\default{}
@@ -776,26 +778,26 @@
\end{ctexexam}
\end{commands}
\keychoice{fnboth-format}{format code,match}
- 同时设定默认脚注标记 \option{fnmarktext-format} 和自定义脚注标记 \option{fncustom-format} 的格式。两种脚注标记匹配上标格式 \option*{spcmd} 的值是独立的,使用 \code{match} 则可以同时匹配。标记格式选项含有字体命令会覆盖 \option{footnote} 的设置,最后一个格式命令可以带有一个参数接受脚注标记。
+ 同时设定默认脚注标记 \option{fnmarktext-format} 和自定义脚注标记 \option{fncustom-format} 的格式。两种脚注标记匹配上标格式 \option{spcmd} 的值是独立的,使用 \code{match} 则可以同时匹配。标记格式选项含有字体命令会覆盖 \option{footnote} 的设置,最后一个格式命令可以带有一个参数接受脚注标记。
\keyval{fnpara-format}{格式代码}
脚注内容的格式。在此设置字体命令会覆盖 \option{footnote} 的设置,最后一个格式命令可以带有一个参数接受脚注内容。
\kvsplit{fntext-code}{前代码,后代码}
- 可以用 \meta{前代码} 与 \meta{后代码} 额外增加脚注内容标记前后的代码。也可以只有前部分,\meta{前代码} 中最后一个格式命令可以带有一个参数接受脚注内容标记。由于脚注标记处于水平模式,一般用于在脚注内容标记与脚注首行间插入一点距离,或与脚注正文标记的格式稍有不同。
+ 可以用 \meta{前代码} 与 \meta{后代码} 额外增加脚注内容标记前后的代码。也可以只有前部分,\meta{前代码} 中最后一个格式命令可以带有一个参数接受脚注内容标记。由于脚注标记处于水平模式,可以配合盒子命令设置脚注内容标记的对齐方式,或在标记与脚注首行间插入一点距离。
\begin{ctexexam}
\ebhdrset
{
- footnotetype = flush,
- fntext-code = {,\enskip}
+ footnotetype = hang,
+ fntext-code = {\hspace{1em}\llap,\enskip}
}
\end{ctexexam}
\end{options}
\subsection[目录样式]{目录样式\smodule{tocset}}
\label{subsec:catalog style}
-模块 \module*{tocset} 将使用 \pkg*{titletoc} 宏包处理目录样式。默认包括 \module*{part}、\module*{chapter}、\module*{section}、\module*{subsection}、\module*{figure}、\module*{table} 和 \module*{lstlisting} 二级路径,而使用 \module*{float} 路径可以统一设置图片、表格和代码目录的样式。选项前带有 \ding{73} 符号表示支持所有相应\textbf{条目名}的路径,其它选项则处于 \module*{tocset} 一级路径下。目前支持标准的论文目录样式,更复杂的样式可以查看 \pkg*{titletoc} 的相关用法。
+模块 \module*{tocset} 将使用 \pkg*{titletoc} 宏包处理目录样式。默认包括 \module*{part}、\module*{chapter}、\module*{section}、\module*{subsection}、\module*{figure}、\module*{table} 和 \module*{lstlisting} 条目名的键路径,而使用 \module*{float} 路径可以统一设置图片、表格和代码目录的样式。选项前带有 \ding{73} 符号表示支持所有相应\textbf{条目名}的路径,其它选项则处于 \module*{tocset} 键路径下。目前支持多数学术论文目录样式,更复杂的样式可以查看 \pkg*{titletoc} 的相关用法。
\begin{options}
\keyval{tocformat}{条目格式}\dtag
- 目录中各级别条目的格式。可以设置条目字体和加入垂直间距等,垂直间距最好使用防止垂直间距重合的 \cs*{addvspace} 命令。
+ 目录中各类型条目的格式。可以设置条目字体和加入垂直间距等,垂直间距最好使用防止垂直间距重合的 \cs*{addvspace} 命令。
\keyval{tocformat+}{条目格式}\dtag
与选项 \option{tocformat} 用法一样,只是在已有的格式命令后附加代码。
\keyval{tocindent}{刚性长度}\dtag
@@ -804,10 +806,10 @@
引导线选项 \option{tocrule} 中一般可以使用基于 \cs*{xleaders} 命令的 \cs{tocrule} 绘制引导线。
\begin{commands}
\command{tocrule}[\sarg\harg\oarg{引导点间距}\darg{放大因子}\marg{引导点}\oarg{页码格式}]
- 生成目录引导线的命令,需要在引导线选项 \option{tocrule} 中使用。带有星号的命令与 \keyis{dotalign}{false} 效果相同。带有 \harg{} 号的命令不添加引导线后的目录页码。\meta{引导点间距} 需带有长度单位,\meta{放大因子} 为 \meta{引导点} 的放大倍数。\meta{页码格式} 中最后一个命令可以带有一个参数为页码编号。
+ 生成目录引导线的命令,需要在引导线选项 \option{tocrule} 中使用。带有星号的命令与 \keyis{dotalign}{false} 效果相同。命令带 \harg{} 号参数不添加目录页码,此时无格式的页码被保存在 \cs{thecontentspage} 命令中,可以配合盒子命令设置不同的页码左右间距和对齐方式。\meta{引导点间距} 需带有长度单位,\meta{放大因子} 为 \meta{引导点} 的放大倍数。\meta{页码格式} 中最后一个命令可以带有一个参数为页码编号。
\end{commands}
\keyval{tocafter}{距离命令}\dtag\Default{\cs*{hspace}\Marg{1em}}
- 目录条目编号与标题间的代码,默认为插入 \code{1em} 横向距离。
+ 目录条目标签与标题间的代码,默认为插入 \code{1em} 横向距离。
\keyval{tocbelow}{距离命令}\dtag\newtag%
在目录条目下方执行的代码,可以插入垂直距离等命令。
\keyval{tocline}{条目定义}\dtag[\textcolor{red}{\ding{73}}]
@@ -815,35 +817,37 @@
\begin{ctexexam}
\ctexset
{
- chapter =
+ chapter =
{
- tocformat = \addvspace{8pt}\large,
- tocindent = 1.5em,
- tocrule = \tocrule[0.6pc](1.1){.}[\zihao{5}],
- tocline = \CTEXnumberline{#1}#2
- }
+ tocformat = \addvspace{8pt}\large,
+ tocindent = 1.5em,
+ tocrule = \tocrule[0.6pc](1.1){.}[\zihao{5}],
+ tocline = \CTEXnumberline{#1}#2
+ },
+ section/tocrule = \tocrule-{}\makebox[1cm]{\rlap{\thecontentspage}}
}
\end{ctexexam}
\end{options}
\begin{commands}
\command{RegisterTocName}[\marg{条目名}]\newtag%
- 给名称为 \meta{条目名} 的浮动环境注册设置目录样式的选项,选项前有符号 \ding{73} 表示在注册后可用。
+ 给条目类型名称为 \meta{条目名} 的标题注册用于设置目录样式的选项,即选项前有符号 \ding{73} 表示需要注册后使用。前面提到的条目类型均已注册,需要注意新类型的条目注册后选项初始值\textbf{均为空}。
\command{contentsuse}[\marg{条目名}\marg{扩展名}]
- 激活名称为 \meta{条目名} 的浮动环境目录定制功能,它使用的目录文件后缀为 \meta{扩展名}。需要在激活条目后再使用命令 \cs{RegisterTocName} 注册选项。
+ 激活条目类型名称为 \meta{条目名} 的目录定制功能,它使用的目录文件后缀为 \meta{扩展名}。需要在激活条目后再使用命令 \cs{RegisterTocName} 注册选项。
\command{DeclareFloatList}[\marg{条目名}\marg{扩展名}]\newtag%
- 声明一个浮动环境题注的目录命令 \cs*{listof}\meta{条目名}\code{\textcolor{cs}{s}},并且支持\ref{subsec:directory command} 中图表目录命令的机制。使用这个命令要确保将条目加入目录的机制已经存在,推荐搭配 \pkg*{newfloat} 宏包创建新的浮动环境。选项前有红色符号 \textcolor{red}{\ding{73}}(仍包含黑色符号选项的性质)表示在声明后可用。下面举一个声明算法环境和题注目录的例子:
+ 声明一种条目类型的目录命令 \cs*{listof}\meta{条目名}\code{\textcolor{cs}{s}},并且支持\ref{subsec:directory command} 中图表目录命令的机制。使用这个命令要确保将条目加入目录的机制已经存在,例如搭配 \pkg*{newfloat} 宏包创建新的浮动环境。选项前有红色符号 \textcolor{red}{\ding{73}}(仍包含黑色符号选项的性质)表示在声明后可用。下面举一个声明算法环境和对应题注目录的例子:
\begin{ctexexam}
\usepackage{newfloat}
\DeclareFloatingEnvironment[
fileext = loa,
- listname = 算法清单
+ listname = 算法清单,
+ name = 算法
]{algorithm}
\DeclareFloatList{algorithm}{loa}
\listofalgorithms[multoc] % 在正文中输出双栏算法目录
\end{ctexexam}
\command{listnumberline}[\marg{条目名}]
- 在图表等浮动环境目录中插入条目标签和编号,默认标签可以由格式命令 \cs{labelformat} 设置。注意其中 \meta{条目名} 需要用对应名称\textbf{显式指定}。
+ 在图表等浮动环境的题注目录中插入条目标签,默认标签的名字可以由格式命令 \cs{labelformat} 设置。注意其中 \meta{条目名} 需要用对应名称\textbf{显式指定}。
\begin{ctexexam}
\ctexset
{
@@ -855,23 +859,23 @@
\begin{options}
\keychoice{hang}{\fbox{true},false}
- 悬挂缩进选项 \option{hang} 使目录条目为悬挂缩进形式。缩进距离为条目编号及其与标题间距的长度和。这个选项对所有条目名同时生效。
+ 悬挂缩进选项 \option{hang} 使目录条目为悬挂缩进形式。缩进距离为条目标签及其与标题内容间距的长度和。通常情况下会统一设置条目标题是否悬挂缩进,因此这个选项被设计为对所有类型条目生效。
\keyval{lolskip}{弹性长度}\Default{10pt}
代码目录中每章第一个条目上方增加的垂直距离。与 \CTeX 的表格和图片目录中每章间的条目距离选项 \option*{lotskip} 和 \option*{lofskip} 类似,在 \cls*{article} 模式中此选项失效。
\keyval{between}{代码钩子}\dtag[\textcolor{red}{\ding{73}}]
- 目录标题与内容间的钩子(作用于标题下方间距之后),一般插入负的垂直距离代码用于抵消目录首行额外的垂直间距。一级路径此选项对应文档主目录的钩子,二级路径为浮动环境的 \meta{条目名}。
+ 目录标题与条目内容间的钩子(作用于标题下方间距之后),一般插入负的垂直距离代码用于抵消目录首行额外的垂直间距。除了条目名的键路径外,此选项也可用于 \module*{tocset} 路径中,表示章节标题目录标题代码钩子。
\keyval{bibetween}{代码钩子}\newtag%
- 与选项 \option{between} 类似,是位于一级路径的英文文档主目录(如果启用)代码钩子。
+ 与选项 \option{between} 类似,是英文章节标题目录(如果启用)标题代码钩子。
\keychoice{dotalign}{\fbox{true},false}
引导线选项 \option{dotalign} 可以使目录引导线右端对齐并与页码保持一定间距,否则会与页码相连。
\keyval{pagenumwd}{刚性长度}\Default{1.55em}
目录条目页码的宽度。开启 \option{dotalign} 选项时宽度越大引导线与页码的距离就越大。
\keyval{tocafter-every}{距离命令}\Default{\cs*{hspace}\Marg{1em}}
- 统一设置所有级别条目编号与标题间的代码。
+ 统一设置所有类型条目编号与标题间的代码(仅支持上述预注册的条目)。
\keyval{tocindent-every}{刚性长度}
- 统一设置所有级别条目的左边缩进。
+ 统一设置所有类型条目的左边缩进(仅支持上述预注册的条目)。
\keyval{tocrule-every}{引导线命令}
- 统一设置所有级别的目录引导线样式。
+ 统一设置所有类型的目录引导线样式(仅支持上述预注册的条目)。
\end{options}
\section{环境和命令}
@@ -894,10 +898,10 @@
\label{subsec:directory command}
\begin{commands}
\command{tableofcontents}[\sarg\oarg{键值列表}\darg{代码钩子}]
- 文档主目录命令,支持中英文双语标题目录输出。带有星号参数不输出目录条目上方的标题。\meta{代码钩子} 是当方案 \keyis{plan}{both} 时中文与英文目录之间执行的代码,可以插入目录样式和换页等命令。
+ 章节标题目录命令,支持中英文双语标题目录输出。带有星号参数不输出目录条目上方的标题。\meta{代码钩子} 是当输出方案 \keyis{plan}{both} 时中文与英文目录之间执行的代码,可以插入设置目录样式和换页等命令。
\begin{options}
\keychoice{plan}{\fbox{cn},bi,both}\newtag[Exp]%
- 文档主目录的输出方案。\code{cn} 只输出中文目录,\code{bi} 只输出英文目录。\code{both} 同时连续输出中文和英文目录,需要与双语目录标题命令 \cs{bichapter} 等或双语标题选项 \option{title} 配合使用。
+ 章节标题目录的输出方案。\code{cn} 只输出中文目录,\code{bi} 只输出英文目录。\code{both} 同时连续输出中文和英文目录,需要与双语目录标题命令 \cs{bichapter} 等或双语标题选项 \option{title} 配合使用。
\keyval{bicontentsname}{英文目录标题}\Default{Contents}\newtag%
英文目录的标题,为通用接口命令 \cs*{ctexset} 的选项。
\end{options}
@@ -921,7 +925,7 @@
\kvsplit{title}{中文目录标题,英文目录标题}
用于更改目录的双语标题。标题之间用一个英文逗号分开,对主目录来说前部分为中文目录标题,后部分为英文目录标题,对图表和代码目录来说后部分则是加入英文目录的条目。也可以只有一部分,表示中文目录的标题。
\keychoice{bilist}{mix,\fbox{new}}
- 确定文档主目录中双语标题列表的输出排列方式。选项 \code{mix} 使每个英文标题条目在中文目录中跟随对应的中文标题输出,\code{new} 则在新建的英文目录中输出英文标题。
+ 确定章节标题目录中双语标题条目的输出排列方式。选项 \code{mix} 使每个英文标题条目在中文目录中跟随对应的中文标题输出,\code{new} 则在新建的英文目录中输出英文标题。
\keyval{format}{目录标题格式}
设置目录标题的格式,在标题级别为 \code{chapter} 或者 \cls*{article} 模式且标题级别为 \code{section} 时有效。
\keyval{aftertitle}{标题后代码}
@@ -997,16 +1001,16 @@
\subsection{公式}
\begin{environments}\noitemsep
- \environment*{equation}\default{}
- \environment*{multline}\default{}
- \environment*{gather}\default{}
- \environment*{align}
- \pkg*{amsmath} 宏包提供了一系列行间数学环境,它们可以排布各种对齐或不对齐的公式组。\env*{multline} 环境用于一行无法放下的长公式,\env*{gather} 环境用于每行居中的公式组,\env*{align} 环境用于多列对齐的公式组。还有例如 \pkg*{mathtools} 等对数学功能进行扩展的宏包,提供了更全面的数学命令与环境。
+ \environment{equation}\default{}
+ \environment{multline}\default{}
+ \environment{gather}\default{}
+ \environment{align}
+ \pkg*{amsmath} 宏包提供了一系列行间数学环境,它们可以排布各种对齐或不对齐的公式组。\env{multline} 环境用于一行无法放下的长公式,\env{gather} 环境用于每行居中的公式组,\env{align} 环境用于多列对齐的公式组。还有例如 \pkg*{mathtools} 等对数学功能进行扩展的宏包,提供了更全面的数学命令与环境。
\end{environments}
\subsection{表格}
\begin{environments}\noitemsep
- \environment*{tabular}[\marg{列格式}]\default{}
+ \environment{tabular}[\marg{列格式}]\default{}
\environment{tblr}[\marg{键值列表}]
\pkg*{tabularray} 是一个强大且全面的表格宏包,不依赖其它表格宏包所以同时使用不会产生冲突。不仅提供了各种传统表格宏包的功能,还实现了用键值列表方式简便地设置表格样式。具体用法可见宏包的说明文档,下面演示一个 \env{tblr} 表格的用法:
\begin{ctexexam}
@@ -1046,9 +1050,9 @@
\end{commands}
\begin{environments}\noitemsep
- \environment*{enumerate}[\oarg{键值列表}]\default{}
- \environment*{itemize}[\oarg{键值列表}]\default{}
- \environment*{description}[\oarg{键值列表}]
+ \environment{enumerate}[\oarg{键值列表}]\default{}
+ \environment{itemize}[\oarg{键值列表}]\default{}
+ \environment{description}[\oarg{键值列表}]
已为三种列表各自预置了三个级别。同种列表或不同种列表间的不同级别可相互嵌套,可以使用短编号的形式,带有星号的环境为行内列表。默认列表标签与标准文档类一致,下面举几个更改列表标签以及其它格式的例子:
\begin{ctexexam}
\setlist*{wide = 0em} % 取消所有列表的左边距
@@ -1072,7 +1076,7 @@
\subsection{代码}
\begin{commands}
- \command*{lstdefinestyle}[\marg{代码风格}\marg{键值列表}]
+ \command{lstdefinestyle}[\marg{代码风格}\marg{键值列表}]
代码抄录宏包 \pkg*{listings} 的代码风格定义命令,提供大量选项对代码样式进行高度定制。可以根据需要的代码语言和样式定义多种风格,默认使用的 \meta{代码风格} 为 \code{lst-latex}。
\command{lstinline}[\oarg{键值列表}\marg{行内代码}]
行内代码抄录命令。较原生的 \cs*{verb} 命令有较大改进,具有代码语言和样式支持。
@@ -1080,7 +1084,7 @@
\begin{environments}
\environment{lstlisting}[\oarg{键值列表}]
- 行间代码抄录环境。支持多种语言库,默认使用 \code{LaTeX} 代码语言,可使用 \meta{键值列表} 局部修改代码样式。另外还提供了 \cs*{lstnewenvironment} 命令包装自定义名称的代码环境。
+ 行间代码抄录环境。支持多种语言库,默认使用 \code{LaTeX} 代码语言,可使用 \meta{键值列表} 局部修改代码样式。另外还提供了 \cs{lstnewenvironment} 命令包装自定义名称的代码环境。
\begin{ctexexam}
\lstdefinestyle{lst-pascal}
{
@@ -1098,7 +1102,7 @@
\begin{options}\noitemsep
\keyval{lstlistlistingname}{代码目录标题名}\default{}
\keyval{lstlistingname}{代码题注标题名}
- 代码目录名与代码环境题注名选项 \option*{lstlistlistingname} 和 \option*{lstlistingname} 用法与 \CTeX 使用手册标题汉化一节类似,可以看作对这节的扩展。
+ 代码目录名与代码环境题注名选项 \option{lstlistlistingname} 和 \option{lstlistingname} 用法与 \CTeX 使用手册标题汉化一节类似,可以看作对这节的扩展。
\end{options}
\subsection{盒子}
@@ -1146,7 +1150,7 @@
\command{eboxi}[\oarg{颜色名}\marg{内容}\oarg{配置选项}]
行内盒子命令 \cs{eboxi} 具有模糊边缘类似高亮的效果。
\command{eboxii}[\oarg{颜色名}\marg{内容}\oarg{配置选项}]
- 行内盒子命令 \cs{eboxii} 则有直角边缘和四周框线,效果类似带颜色的 \cs*{fbox} 盒子。
+ 行内盒子命令 \cs{eboxii} 则有直角边缘和四周框线,效果类似带背景色的 \cs*{fbox} 盒子。
\end{commands}
\section{扩展功能}
@@ -1302,7 +1306,7 @@
\command{uline}[\marg{下划直线}]\default{}
\command{uuline}[\marg{下划双直线}]\default{}
\command{uwave}[\marg{下划波浪线}]
- \pkg*{ulem} 宏包提供了多种下划线命令,可以重新定义 \cs*{ULthickness} 命令控制下划线的粗细。下划线的深度由 \cs*{ULdepth} 控制,默认值 \cs*{maxdimen} 是一个允许深度根据当前字体变化的特殊标志,当然也可以使用 \cs*{setlength} 设定为指定深度。
+ \pkg*{ulem} 宏包提供了多种下划线命令,可以重新定义 \cs{ULthickness} 命令控制下划线的粗细。下划线的深度由 \cs{ULdepth} 控制,默认值 \cs*{maxdimen} 是一个允许深度根据当前字体变化的特殊标志,当然也可以使用 \cs*{setlength} 设定为指定深度。
\end{commands}
\appendix
@@ -1312,7 +1316,7 @@
\begin{version}[v = 1.46,date = 2022/01/12]
\added
\item 增加定义脚注正文和内容标记格式的命令 \cs{defupfntmark} 和 \cs{defdownfntmark}。
- \item 新增文档主目录中双语标题列表的输出排列方式选项 \option{bilist}。
+ \item 新增章节标题目录中双语标题条目的输出排列方式选项 \option{bilist}。
\end{version}
\begin{version}[v = 1.55,date = 2022/01/28]
\added
@@ -1330,13 +1334,16 @@
\end{version}
\begin{version}[v = 1.636,date = 2022/03/03]
\added
- \item \cs*{tableofcontents} 命令增加输出方案选项 \option{plan},不再使用 \parg{} 参数输出英文目录。
+ \item \cs{tableofcontents} 命令增加输出方案选项 \option{plan},不再使用 \parg{} 参数输出英文目录。
\item 增加英文主文档目录钩子选项 \option{bibetween}。
\end{version}
\shortversion{v = 1.638,date = 2022/03/04,changes = 增加目录条目样式选项注册命令 \cs{RegisterTocName}。}
\shortversion{v = 1.644,date = 2022/03/10,changes = 增加浮动环境目录声明命令 \cs{DeclareFloatList} 配合 \pkg*{caption} 宏包。}
- \shortversion{v = 1.682,date = 2022/05/01,changes = 将迷你页判断命令 \cs*{notminipage} 改为被保护命令兼容 \pkg*{circledtext} 宏包。}
- \shortversion{v = 2024F,date = 2024/01/10,changes = 核对依赖宏包的更新改动,优化使用手册的内容细节。}
+ \shortversion{v = 1.682,date = 2022/05/01,changes = 将迷你页判断命令 \cs{notminipage} 改为被保护命令兼容 \pkg*{circledtext} 宏包。}
+ \begin{version}[v = 2024G,date = 2024/01/13,simple]
+ \item 核对依赖宏包的更新改动,优化使用手册的内容细节。
+ \item 修复图表题注目录中条目标签编号的计数器值显示错误问题。
+ \end{version}
\end{changelog}
\nocite{*}
diff --git a/support/TeX4ht/source/ChangeLog b/support/TeX4ht/source/ChangeLog
index ed0ea64188..bc25d6c9d9 100644
--- a/support/TeX4ht/source/ChangeLog
+++ b/support/TeX4ht/source/ChangeLog
@@ -1,3 +1,8 @@
+2024-01-12 Michal Hoftich <michal.h21@gmail.com>
+
+ * tex4ht-4ht.tex (siunitx.4ht): fixed support for the \ang command.
+ https://fosstodon.org/@alerque@mastodon.social/111701555810243494
+
2024-01-10 Michal Hoftich <michal.h21@gmail.com>
* tex4ht-4ht.tex (fancyvrb.4ht): fixed regression in \FVC@Verb in
diff --git a/support/TeX4ht/source/tex4ht-4ht.tex b/support/TeX4ht/source/tex4ht-4ht.tex
index be94b6b5e3..1bac75c2c3 100644
--- a/support/TeX4ht/source/tex4ht-4ht.tex
+++ b/support/TeX4ht/source/tex4ht-4ht.tex
@@ -1,4 +1,4 @@
-% $Id: tex4ht-4ht.tex 1435 2024-01-10 09:23:41Z michal_h21 $
+% $Id: tex4ht-4ht.tex 1437 2024-01-12 15:30:32Z michal_h21 $
% tex tex4ht-4ht or ht tex tex4ht-4ht
%
% Copyright 2009-2024 TeX Users Group
@@ -30679,12 +30679,39 @@ What \Verb+\put@line+ of the 08 version does?
\<siunitx.4ht\><<<
% siunitx.4ht (|version), generated from |jobname.tex
-% Copyright 2021 TeX Users Group
+% Copyright 2021-2024 TeX Users Group
|<TeX4ht license text|>
+|<siunitx ang|>
\Hinput{siunitx}
\endinput
>>> \AddFile{9}{siunitx}
+This should bring support for the \Verb+\ang+ command, which can be used
+to input angles.
+
+\<siunitx ang\><<<
+\ExplSyntaxOn
+\cs_set_protected:Npn \__siunitx_angle_arc_print_auxv_fourht:w
+ #1 \q_nil #2 \q_nil #3 \q_nil #4 \q_nil #5 \q_nil #6 \q_stop
+{\bgroup\siunitx_print_number:n {#1#2#3#4#5}\egroup}
+
+\HLet\__siunitx_angle_arc_print_auxv:w\__siunitx_angle_arc_print_auxv_fourht:w
+
+
+\cs_set_protected:Npn \__siunitx_angle_arc_print_auxvi_fourht:n #1
+{
+ % we need to define these commands here
+ \def\degree{\ht:special{t4ht@+&{35}x2218;}x}
+ \def\arcminute{\prime}
+ \def\arcsecond{\prime\prime}
+ \ensuremath{\NoFonts\sp{#1}\EndNoFonts}
+}
+
+\HLet\__siunitx_angle_arc_print_auxvi:n\__siunitx_angle_arc_print_auxvi_fourht:n
+\ExplSyntaxOff
+
+>>>
+
%%%%%%%%%%%%%
\Section{Ushort}
%%%%%%%%%%%%%
diff --git a/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl b/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
index fc6269dcd4..141457a54f 100644
--- a/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
+++ b/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
@@ -30,7 +30,6 @@ $mirrors = {
},
'India' => {
'https://in.mirrors.cicku.me/ctan/' => 1,
- 'https://mirror.niser.ac.in/ctan/' => 1,
},
'Indonesia' => {
'http://repo.ugm.ac.id/ctan/' => 1,
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb b/systems/texlive/tlnet/tlpkg/texlive.tlpdb
index 0b9db08581..82c4a35ed8 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb
@@ -26,11 +26,11 @@ depend container_split_src_files/1
depend frozen/0
depend minrelease/2016
depend release/2023
-depend revision/69391
+depend revision/69405
name 00texlive.image
category TLCore
-revision 69391
+revision 69404
shortdesc TeX Live files only in the source repository
longdesc The files here are not copied by the installer and containers
longdesc are not built for them; they exist only in the source
@@ -40,7 +40,7 @@ longdesc IgnorePatterns in the check_files routine in tlmgr.pl augment
longdesc this list. Those are not included in the source/ tarball. For
longdesc information on the 00texlive prefix see
longdesc 00texlive.installation(.tlpsrc)
-runfiles size=13637
+runfiles size=13630
.mkisofsrc
autorun.inf
texmf-dist/README
@@ -2742,6 +2742,7 @@ runfiles size=13637
tlpkg/tlpsrc/lua-alt-getopt.tlpsrc
tlpkg/tlpsrc/lua-check-hyphen.tlpsrc
tlpkg/tlpsrc/lua-physical.tlpsrc
+ tlpkg/tlpsrc/lua-placeholders.tlpsrc
tlpkg/tlpsrc/lua-tinyyaml.tlpsrc
tlpkg/tlpsrc/lua-typo.tlpsrc
tlpkg/tlpsrc/lua-uca.tlpsrc
@@ -4832,7 +4833,7 @@ depend setting_available_architectures:aarch64-linux amd64-freebsd amd64-netbsd
name 00texlive.installer
category TLCore
-revision 69377
+revision 69393
shortdesc TeX Live standalone installer package
longdesc This package defines the files to go into the installer
longdesc archives (install-tl-unx.tar.gz, install-tl.zip) built by the
@@ -37085,7 +37086,7 @@ catalogue-version 2.6
name bibcop
category Package
-revision 69378
+revision 69395
shortdesc Style checker for .bib files
longdesc This LaTeX package checks the quality of your .bib file and
longdesc emits warning messages if any issues are found. For this, the
@@ -37096,10 +37097,10 @@ longdesc Windows.
depend bibcop.ARCH
depend iexec
depend pgfopts
-containersize 8120
-containerchecksum 45309cd5d5041a81adbd5c9f1ee47cbc213818e3f46d73091fa26358e4b922b716153c7ce82c726d8d53633d26166e5fe2accc76338985e3a60b2cd5a2b2ee09
+containersize 8168
+containerchecksum e4520627247c144f8fdaa3f3923f150297714171124f3e76e0d772ef0455d89c8229574a3e9bc8875c6902103465dace4eda81b0e30de3830152f3cd260bc794
doccontainersize 359716
-doccontainerchecksum 9b3ecc6b1478771e130a476d38f1c703006435a01d225e4e72511b2aba800a90e86523dd5a4d8c35e989ffdb059046705d7ffafc29a5fc4b22dcf305c9766f95
+doccontainerchecksum 30ee2abd74da23ece25080c25c9c94bf44a54dea50088fa6a04109a7f67c9ddbd08973679499854cc4a29ed432a110283319cd2f8f53f6aed005a03218d0ab0c
docfiles size=95
texmf-dist/doc/bibtex/bibcop/DEPENDS.txt
texmf-dist/doc/bibtex/bibcop/LICENSE.txt
@@ -37108,8 +37109,8 @@ docfiles size=95
texmf-dist/doc/bibtex/bibcop/bibcop.pdf details="Package documentation"
texmf-dist/doc/man/man1/bibcop.1
texmf-dist/doc/man/man1/bibcop.man1.pdf
-srccontainersize 6236
-srccontainerchecksum ca4d408ba930f72f7b8fd3fadab371ebe750e5eea87e9dc249e78cda8066696953004e929a4abf287bdd340103d8478b6b1e3df39accb3fd5f6c54dc50683495
+srccontainersize 6244
+srccontainerchecksum e2bfecbc459f92887760ce2862874f05a392970c8d5dc5564a46128564f7da7d8dec4d4fa27ae4381efc79222760d76c74f19f5a6216fc234a377f83402ee0db
srcfiles size=5
texmf-dist/source/bibtex/bibcop/bibcop.dtx
texmf-dist/source/bibtex/bibcop/bibcop.ins
@@ -37120,7 +37121,7 @@ catalogue-contact-repository https://github.com/yegor256/bibcop
catalogue-ctan /biblio/bibtex/utils/bibcop
catalogue-license mit
catalogue-topics biblio-supp ext-code
-catalogue-version 0.0.16
+catalogue-version 0.0.17
name bibcop.aarch64-linux
category Package
@@ -43965,7 +43966,7 @@ catalogue-version 1.6
name bodeplot
category Package
-revision 68530
+revision 69397
shortdesc Draw Bode, Nyquist and Nichols plots with gnuplot or pgfplots
relocated 1
longdesc This is a LaTeX package to plot Bode, Nichols, and Nyquist
@@ -43979,16 +43980,16 @@ longdesc and unstable second order transfer functions. Support for both
longdesc Gnuplot (default) and pgfplots (package option pgf). Support
longdesc for linear and asymptotic approximation of magnitude and phase
longdesc plots of any transfer function given poles, zeros, and gain.
-containersize 5500
-containerchecksum 1f2282b88604bbd44d59c5f2638d6453b28263a298c15818d15be5b074a9cecc4753c19b2ae108612ef2333e48a122ceb76de863b77288fc26c08ed57b69ae7b
-doccontainersize 731968
-doccontainerchecksum 2f761e7feccab5d4792f6464e7539d3304ac75f1b34b8047665441a3779ae52f4f51d6ec6fb0e2a1414801721a6b2ba199612707ede615dfc949c891ef10b6e3
-docfiles size=260
+containersize 5788
+containerchecksum ce07cd6d21576123e5fcbefe15417f90a3c8bb65344a0700cb017bbcf76a27b2a3938e7d3f13e12a06398f6af739af69d4e09e614f1ca58850f2d74150bedb71
+doccontainersize 738136
+doccontainerchecksum 478f633335f8fd55c712c37b11f54523c9d51a650d9025bd0f09b4ba77241710a6921fac8caac6ab0c4aeab252ba89886871c3887b327d1abc01771e6e9c5618
+docfiles size=267
RELOC/doc/latex/bodeplot/README.md details="Readme"
RELOC/doc/latex/bodeplot/bodeplot-doc.pdf details="Package documentation"
-srccontainersize 16932
-srccontainerchecksum 2961ff985e02418b81cbc5c6f276e77b807f4d92f034d32385faba7c4db715fb62e01dfa81a3be815ec0913aa2c046121156c314984740edc536982f022db32c
-srcfiles size=26
+srccontainersize 17376
+srccontainerchecksum 53c0f4825ad3323af7cb59ee07327d628a075e86dc880edffcac25dd0b3891d2f156085764cf0153c4b7bb9549f6e9253d090a4b08c0d12d195e872dbab02686
+srcfiles size=27
RELOC/source/latex/bodeplot/bodeplot.dtx
RELOC/source/latex/bodeplot/bodeplot.ins
runfiles size=9
@@ -43999,7 +44000,7 @@ catalogue-contact-repository https://github.com/rlkamalapurkar/bodeplot
catalogue-ctan /graphics/pgf/contrib/bodeplot
catalogue-license lppl1.3c
catalogue-topics engineering graphics-plot pgf-tikz
-catalogue-version 1.1.4
+catalogue-version 1.1.5
name bohr
category Package
@@ -45612,37 +45613,36 @@ catalogue-version 1.0
name braids
category Package
-revision 64817
+revision 69398
shortdesc Draw braid diagrams with PGF/TikZ
relocated 1
longdesc The package enables drawing of braid diagrams with PGF/TikZ
longdesc using a simple syntax. The braid itself is specified by giving
longdesc a word in the braid group, and there are many options for
longdesc styling the strands and for drawing "floors".
-containersize 7848
-containerchecksum f22e6cd21211deea82179b351911f9809d420bf5a9c59064a24134b87d8e75e2a7a0268b6e285117b782884a7faf3a9b54ca9a6e2e3f2c5203c45c85984ccae5
-doccontainersize 690396
-doccontainerchecksum 52922680397d933d9d99fe63004b2874061cdf83aef88e8d3dedbc46c97b270b559affa8b7a5bd515c086aa83f21552c35c161c9450ae57cbef57d96e2c70cd5
-docfiles size=193
+containersize 8248
+containerchecksum e92513b484cd34387542fd39684141d6bd24c99ac4e99791498e75e28c814b9647f9762a5803aa127e9c5423dfb93ac9126348d94668bd7e82c82b54af482f34
+doccontainersize 783420
+doccontainerchecksum b8a26f24d450b8176a2a6d094e3f0e66faade539266652319c354cc45a824358fbcde416582fa34917de422d0a86f782858247b7d457b50353ec4803b9024f91
+docfiles size=219
RELOC/doc/latex/braids/README.txt details="Readme"
- RELOC/doc/latex/braids/braids.pdf details="Package documentation"
+ RELOC/doc/latex/braids/braids.pdf details="User manual"
RELOC/doc/latex/braids/braids.tex
- RELOC/doc/latex/braids/braids_code.pdf
-srccontainersize 15452
-srccontainerchecksum 54d308837fa78d4133d88d2d162cf1f80a032b00860adb560ff08bb2ea9b33fe7a8f5ac36e918b281547c44a0c3584efff53d0e5538f36fc03c554ed2b6b26f3
-srcfiles size=22
+ RELOC/doc/latex/braids/braids_code.pdf details="Documented source code"
+srccontainersize 16400
+srccontainerchecksum c47edfa15e2d11bb06d984cce5735699f2fa2bcbe5ce09abf7f4220bcb904bbb5a541fd0ba9479d941b909ad9cf4df3374fffae8fe6a90fbbed9e80e26def3f9
+srcfiles size=23
RELOC/source/latex/braids/braids_code.dtx
RELOC/source/latex/braids/braids_code.ins
runfiles size=15
RELOC/tex/latex/braids/braids.sty
RELOC/tex/latex/braids/tikzlibrarybraids.code.tex
catalogue-contact-bugs https://github.com/loopspace/braids/issues
-catalogue-contact-home https://github.com/loopspace/braids
catalogue-contact-repository https://github.com/loopspace/braids
catalogue-ctan /graphics/pgf/contrib/braids
catalogue-license lppl1.3c
-catalogue-topics maths graphics diagram pgf-tikz
-catalogue-version 2.2
+catalogue-topics maths graphics diagram pgf-tikz expl3
+catalogue-version 2.3
name braille
category Package
@@ -73296,7 +73296,7 @@ containerchecksum 586232e420ea3c53c4c9532252681a8ef20185348deba9e1f37c1e0231203a
name collection-luatex
category Collection
-revision 69052
+revision 69404
shortdesc LuaTeX packages
relocated 1
longdesc Packages for LuaTeX, a TeX engine using Lua as an embedded
@@ -73330,6 +73330,7 @@ depend ligtype
depend linebreaker
depend lparse
depend lt3luabridge
+depend lua-placeholders
depend lua-tinyyaml
depend lua-typo
depend lua-uca
@@ -73405,8 +73406,8 @@ depend tsvtemplate
depend typewriter
depend uninormalize
depend yamlvars
-containersize 1012
-containerchecksum 5ba714547d29f957862efc10a212562d91f951c36e602c47940418b6e944d0d0090695197e20180e35229ec0868357afa84080d869194b2304561cc755dd8caf
+containersize 1020
+containerchecksum d03b9242340be7be8c32e87c2773bb8aecd4a6b7e1594fe755d9955f111dad4863e497bd3f374140c162b84c6c90379ff86c930267ab5c6d26c3cd0e3968c745
name collection-mathscience
category Collection
@@ -173381,7 +173382,7 @@ catalogue-version 3.1415
name keyfloat
category Package
-revision 65446
+revision 69399
shortdesc Provides a key/value interface for generating floats
relocated 1
longdesc The keyfloat package provides a key/value user interface for
@@ -173400,27 +173401,27 @@ longdesc columns, continuing to the next row if necessary. Nested
longdesc sub-rows may be used to generate layouts such as two small
longdesc figures placed vertically next to one larger figure. Subfloats
longdesc are supported by two environments.
-containersize 7112
-containerchecksum aeb72770dda420e3694b98ba4d9071e814b0fea850ca6876769c44ad4b7fb1b3873db0e2eddebfbc85b11603f301826dc5d04c9aa5d9e250c807d3ffa795de79
-doccontainersize 1052496
-doccontainerchecksum 19a7aa10ea4916fdfbbddd9e843db4b312a2bd5a24192fd980b34bdf5669dfe3dc5553089bb3fbd7a892167a9fa21a0424c7461a881fe2ab16f353b9c0216376
+containersize 7108
+containerchecksum b3bbbe74c5db4eeb1a74d49e0fe9608df347921caa0814faca8eb62cad674fc3977c7af1cd58849fe6abab5a1231b4ac3999d5af7aceb7655f12d883e41148bd
+doccontainersize 1052904
+doccontainerchecksum 43771371d9f81311e29be4b7ad2b1876299d6ff4ea740e9cd759a01701665bb6bd37983828238e13141e39c253b6d3d92b566fc97ba2944d7967cf55e492913a
docfiles size=264
RELOC/doc/latex/keyfloat/README.txt details="Readme"
RELOC/doc/latex/keyfloat/images/image.pdf
RELOC/doc/latex/keyfloat/images/image2.pdf
RELOC/doc/latex/keyfloat/keyfloat.pdf details="Package documentation"
srccontainersize 31332
-srccontainerchecksum f0d8d54049cb79aa54d52b6c669104e6c9928e863d70df6dd434f6842bfee3bd653c4249732feb11237c5db88010d4ef0bae7f1238b19ffb807e33d4bfeb0573
+srccontainerchecksum 89f10c6c68e6941de535abfc4e86a0e019a1bcbd2cf10f0fa542adc208f5ee8c1c7884f679d87186c2103b4b1f69b36b50e3c73512fd9209db1be4f5c87f05c9
srcfiles size=42
RELOC/source/latex/keyfloat/keyfloat.dtx
RELOC/source/latex/keyfloat/keyfloat.ins
runfiles size=10
RELOC/tex/latex/keyfloat/keyfloat.sty
-catalogue-contact-home http://bdtechconcepts.com
+catalogue-contact-bugs https://github.com/bdtc/keyfloat
catalogue-ctan /macros/latex/contrib/keyfloat
catalogue-license lppl1.3
catalogue-topics float
-catalogue-version 2.08
+catalogue-version 2.09
name keyindex
category Package
@@ -179306,7 +179307,7 @@ catalogue-version 1.0
name labelschanged
category Package
-revision 46040
+revision 69400
shortdesc Identify labels which cause endless "may have changed" warnings
relocated 1
longdesc Several conditions can cause LaTeX labels to keep changing, no
@@ -179315,25 +179316,25 @@ longdesc helps diagnose the cause of repeated "Label(s) may have
longdesc changed" warnings. The names and before/after definitions of
longdesc changing labels are printed at the end of each compile.
longdesc Multiply-defined labels are printed as well.
-containersize 1060
-containerchecksum e9cbb45a636fa75c9b9c8d8400fd9a0cf0ef2a46f998d650631e9874907daa7b4deeb4c99d1610eefc343436d164ace717b32cb1d0c45e860e64d69e4c827a07
-doccontainersize 195592
-doccontainerchecksum 130c0e5f27f0de161949fca202f73bce3486e9346a48584ce1b8636c16367eb3398b36f0145e37531d64933698c201132ba90ca3b5d5b011978d0fad0cc5ad63
-docfiles size=49
+containersize 1032
+containerchecksum 9d40f477089880f8e0c61f95af1e94848dbac11a8ea5ee3a0c0c33a5883a8aba4c0471d2e23319667aa0dbf0699599372c8267588247809f316304e868ebaaf5
+doccontainersize 210564
+doccontainerchecksum ca1f6dd7d4be5c9b130a17c75cfe927e354ffd5756bd893ef99c2f67dfef69a585e139d9d3b44e0828cf0928197bfcc8a909e5a32ca386380ca2a203a8ad0fee
+docfiles size=54
RELOC/doc/latex/labelschanged/README.txt details="Readme"
RELOC/doc/latex/labelschanged/labelschanged.pdf details="Package documentation"
-srccontainersize 4164
-srccontainerchecksum 59c1cd3371e97542f6f1cd8fcd14b3cadfabffbecad635bcea33eb535e45ba8b174e9e392e135c799afec08c195b867477255d1336c281a1e9dffe7c1c457cd3
+srccontainersize 4224
+srccontainerchecksum e3e5187658e31d0391910a1d4610cdb5572ddf13006423aa673475e165b04bcca56f6d324f0b383a6e7faf0a3263e68f5727c39eef38e903ee2950981c5b290c
srcfiles size=4
RELOC/source/latex/labelschanged/labelschanged.dtx
RELOC/source/latex/labelschanged/labelschanged.ins
runfiles size=1
RELOC/tex/latex/labelschanged/labelschanged.sty
-catalogue-contact-home http://bdtechconcepts.com/
+catalogue-contact-bugs https://github.com/bdtc/labelschanged
catalogue-ctan /macros/latex/contrib/labelschanged
catalogue-license pd
catalogue-topics misc-support label-ref
-catalogue-version 1.0
+catalogue-version 1.01
name labyrinth
category Package
@@ -201729,6 +201730,46 @@ catalogue-license mit
catalogue-topics physics luatex
catalogue-version 1.0.5
+name lua-placeholders
+category Package
+revision 69404
+shortdesc Specifying placeholders for demonstration purposes
+relocated 1
+longdesc This package is meant for setting parameters in a LuaLaTeX
+longdesc document in a more programmatic way with YAML. Parameters can
+longdesc be specified by adding a "recipe" file. These recipe files
+longdesc describe the parameter's type, placeholders and/or default
+longdesc values. From thereon, the placeholders can be displayed in the
+longdesc document and an "example" document can be created. An "actual
+longdesc copy" document can be created by loading additional "payload"
+longdesc files, which all must correspond to a recipe file.
+containersize 5340
+containerchecksum 11d13babb26aefb2782ed7e84444ba645bc808a3283bc0e927cea84db95e9b06895df23a4ad830e2c4a401426a151a7acdf8eac43faa3ba69dbe434349d7867f
+doccontainersize 255384
+doccontainerchecksum 88b9e069384f0c86ec3f86c21c985c37d199a9dc1962bb8d829b28a34a8ce7cfbc46ab57358070ed2ae71fc9d9c92b2090a69ff0c48053dba54586274caf7737
+docfiles size=91
+ RELOC/doc/lualatex/lua-placeholders/README.md details="Readme"
+ RELOC/doc/lualatex/lua-placeholders/lua-placeholders-deps.bib
+ RELOC/doc/lualatex/lua-placeholders/lua-placeholders-example/example-specification.yaml
+ RELOC/doc/lualatex/lua-placeholders/lua-placeholders-example/example.json
+ RELOC/doc/lualatex/lua-placeholders/lua-placeholders-example/example.pdf details="Example of use"
+ RELOC/doc/lualatex/lua-placeholders/lua-placeholders-example/example.tex
+ RELOC/doc/lualatex/lua-placeholders/lua-placeholders-example/example.yaml
+ RELOC/doc/lualatex/lua-placeholders/lua-placeholders-manual.pdf details="Package documentation"
+ RELOC/doc/lualatex/lua-placeholders/lua-placeholders-manual.tex
+runfiles size=8
+ RELOC/scripts/lua-placeholders/lua-placeholders-common.lua
+ RELOC/scripts/lua-placeholders/lua-placeholders-namespace.lua
+ RELOC/scripts/lua-placeholders/lua-placeholders-parser.lua
+ RELOC/scripts/lua-placeholders/lua-placeholders-types.lua
+ RELOC/scripts/lua-placeholders/lua-placeholders.lua
+ RELOC/tex/lualatex/lua-placeholders/lua-placeholders.sty
+catalogue-contact-repository https://github.com/Xerdi/lua-placeholders
+catalogue-ctan /macros/luatex/latex/lua-placeholders
+catalogue-license lppl1.3c
+catalogue-topics luatex
+catalogue-version 0.1.0
+
name lua-tinyyaml
category Package
revision 66776
@@ -201754,7 +201795,7 @@ catalogue-version 0.4.3
name lua-typo
category Package
-revision 68267
+revision 69403
shortdesc Highlighting typographical flaws with LuaLaTeX
relocated 1
longdesc Prints the list of pages on which typographical flaws were
@@ -201762,11 +201803,11 @@ longdesc found (i.e. widows, orphans, hyphenated words split across two
longdesc pages, consecutive lines ending with hyphens, paragraphs ending
longdesc on too short or nearly full lines, homeoarchy, etc).
longdesc Customisable colours are used to highlight these flaws.
-containersize 12840
-containerchecksum bbbef9dedd3a6b66b098a9b9673685f3c44f8c594bc029ab6eaf1104600d5f519fc3d712617b8cb86d44888e182b89ef3a32ed22a86a578dcf92adf265a50996
-doccontainersize 293356
-doccontainerchecksum f3bca9d7af2676d7d2ee17375b9e0916c4dc0d9c4a48d7bfcf960b3a8fada5b7d50a2cfaff403341702468b2fa1b48f997f9261e071ba491b450c2265b0f5150
-docfiles size=90
+containersize 13004
+containerchecksum 177b89a930ed061d18e25bafc230b402976e25ebc88d09a0a42c70b5848fdf5b7964fa69160c3456a02f207dce39363c9fbf603c928cd50b373be6ba8a2c8ab3
+doccontainersize 297064
+doccontainerchecksum 60a9e3560c35583377d4629ee4885ad5e8bf52773927c9d3e2b06a2385196303df704bbcc6245a2e0fc93c396b4a6252309180af270d9bd13fada543c9f3b7b1
+docfiles size=89
RELOC/doc/lualatex/lua-typo/README.md details="Readme"
RELOC/doc/lualatex/lua-typo/lua-typo-demo.pdf details="Example of use"
RELOC/doc/lualatex/lua-typo/lua-typo-demo.tex
@@ -201774,8 +201815,8 @@ docfiles size=90
RELOC/doc/lualatex/lua-typo/lua-typo-fr.pdf details="Package documentation (French)" language="fr"
RELOC/doc/lualatex/lua-typo/lua-typo.ltx
RELOC/doc/lualatex/lua-typo/lua-typo.pdf details="Package documentation (English)"
-srccontainersize 29212
-srccontainerchecksum a799538db847fc9dbeab4df98799e4ce34a73e6a374e315ed39fc87e2ee3ff983d31b326e72c1c20e8edd047930a39d8fead965a13b2b5820090a478f5e77a96
+srccontainersize 29728
+srccontainerchecksum 65eac5cf5c4af2eebbc7d6412cf6ba17a4de37c6c47caf7667e047edc6697a0e93f9f3a334f3ace081127654b6337ebbe5db767d1de2eb48a275c22c0617ca08
srcfiles size=32
RELOC/source/lualatex/lua-typo/lua-typo.dtx
runfiles size=31
@@ -201786,7 +201827,7 @@ runfiles size=31
catalogue-ctan /macros/luatex/latex/lua-typo
catalogue-license lppl1.3c
catalogue-topics luatex text-layout
-catalogue-version 0.85
+catalogue-version 0.86
name lua-uca
category Package
@@ -213728,7 +213769,7 @@ catalogue-version 0.12
name metalogox
category Package
-revision 65448
+revision 69401
shortdesc Adjust TeX logos, with font detection
relocated 1
longdesc This package extends the metalogo package to automatically
@@ -213737,26 +213778,26 @@ longdesc XeLaTeX, and LuaLaTeX, depending on the font detected or the
longdesc option given to metalogox. Most of the serif and sans fonts
longdesc listed at The LaTeX Font Catalogue are supported. The package
longdesc depends on metalogo, xparse, and etoolbox.
-containersize 4208
-containerchecksum 14de5e149673db96124b7c3542ccfa253a193e6ea00320665ca6cd024fb055d9bc5e6de770f63d5f7123a85ecb604eaa76e6637f7450b08ce4835fa7a097bb6b
-doccontainersize 380028
-doccontainerchecksum 0ade0e0562ec5deb0e30e442c3909c27a18a78a9bf6fbe21589cd4d8a615be0c59f27bcab76f6cec6d897c26522c2e5442a9684eeebcfd5ec45a790ba8011165
+containersize 4212
+containerchecksum 4b91892cccf068c85d774b9d545c07c004a7c6badf89114b5d8cc5818090fb7fa87b3dfd6a7d1162c22939f633bdfb318a670092f70540910d257ccfb6a39a09
+doccontainersize 380132
+doccontainerchecksum 6da27bf652e239ac7d307a0e5bfd01183ddacdfad38fe1b97d4cf6c084daf9bc43f54cda651b92a5c6693c16f9f6c2a61f821f64c5d1362f8db3f6a808ae722d
docfiles size=96
RELOC/doc/latex/metalogox/README.txt details="Readme"
RELOC/doc/latex/metalogox/metalogox.pdf details="Package documentation"
-srccontainersize 8644
-srccontainerchecksum 6b4de632d4ee28b93f92c270da26badb00eacc425761a3a0a3ee0c296af44f0d152f04f2ed5521729725e1a223d20943a4a7a2d73e1c03e31fe316b5ddfefc11
+srccontainersize 8668
+srccontainerchecksum 1887d1004349bd5b586f7d02bba1e2668e6d0534317e59c12915af847d478dd5022f5dc91f952032582feea48c0e01034dbf34c949ea08c699056e0c5d500fc0
srcfiles size=12
RELOC/source/latex/metalogox/metalogox.dtx
RELOC/source/latex/metalogox/metalogox.ins
runfiles size=7
RELOC/tex/latex/metalogox/metalogox.sty
catalogue-also metalogo
-catalogue-contact-home http://bdtechconcepts.com/
+catalogue-contact-bugs https://github.com/bdtc/metalogox
catalogue-ctan /macros/latex/contrib/metalogox
catalogue-license lppl1.3
catalogue-topics logo
-catalogue-version 1.01
+catalogue-version 1.02
name metanorma
category Package
@@ -294110,7 +294151,7 @@ catalogue-version 1.6a
name simpleicons
category Package
-revision 69235
+revision 69396
shortdesc Simple Icons for LaTeX
relocated 1
longdesc Similar to FontAwesome icons being provided on LaTeX by the
@@ -294118,16 +294159,16 @@ longdesc fontawesome package, this package aims to do the same with
longdesc Simple Icons. For reference, visit their website:
longdesc https://simpleicons.org/.
execute addMap simpleicons.map
-containersize 3320692
-containerchecksum ace1694bfb3b4a10509da5be81f0ffecdc9fef7432ab524e53b776ba5896e929a98bac1b9bbbb14de938befc59e813bc8ce1207bc4eecc6359c75cd790619fff
-doccontainersize 2429360
-doccontainerchecksum f184ae386afa42050a02f30733844ef505717dbf4a4a43d53718d8e79a94dcff15bbace22af27bae79183b54bc95e0b0ce202147bfe020b1467729faf19f73ec
-docfiles size=634
+containersize 3325712
+containerchecksum f6f651493ec472e4be6286bf8a29c3fe024b883390c62debdbaf107915b0e2451c3303687a2a41dec8091318a8c6a0cbf6da1142278782189c498b73d03aecff
+doccontainersize 2432460
+doccontainerchecksum 0904648f121bc9b29f95f98b636b2edadc5fde6634a9303549d5588f5c52d2a87d6a559c8f714be7215ab3d17371105a1d60d1fb0731fcc62e34e5b8256fb64c
+docfiles size=636
RELOC/doc/fonts/simpleicons/README.md details="Readme"
RELOC/doc/fonts/simpleicons/bindings.tex
RELOC/doc/fonts/simpleicons/simpleicons.pdf details="Package documentation"
RELOC/doc/fonts/simpleicons/simpleicons.tex
-runfiles size=1273
+runfiles size=1274
RELOC/fonts/enc/dvips/simpleicons/simpleiconseight.enc
RELOC/fonts/enc/dvips/simpleicons/simpleiconsfive.enc
RELOC/fonts/enc/dvips/simpleicons/simpleiconsfour.enc
@@ -294175,7 +294216,7 @@ catalogue-contact-repository https://github.com/ineshbose/simple-icons-latex
catalogue-ctan /fonts/simpleicons
catalogue-license cc-by-1
catalogue-topics font font-symbol font-supp-symbol font-otf font-type1
-catalogue-version 10.4.0
+catalogue-version 11.0.0
name simpleinvoice
category Package
@@ -311526,7 +311567,7 @@ binfiles arch=x86_64-solaris size=1
name tex4ht
category Package
-revision 69375
+revision 69405
shortdesc Convert (La)TeX to HTML/XML
longdesc A converter from TeX and LaTeX to SGML-based formats such as
longdesc (X)HTML, MathML, OpenDocument, and Docbook, providing a
@@ -311547,10 +311588,10 @@ longdesc files from them is nontrivial, and generally done with the
longdesc Makefile in development, from which the TeX4ht package in TeX
longdesc Live is updated.
depend tex4ht.ARCH
-containersize 1115932
-containerchecksum 080dcfeec76fcc06415fa9ef63d6d0c66cbc27181b09efc03774721e73f6d012be17056c6b226f8499806b7f783c5d5b22f0e8f5de79b30d43e64777aaf051e3
+containersize 1116108
+containerchecksum 1815c5b0a046c740d5e6617c323aa1a8385a57802ab5fa0c11d744aea62db87dd6e4c743e6cbc1477cc68c96135cb098804bec95269e9f9a7723eb6eda5fb472
doccontainersize 136384
-doccontainerchecksum 4a72fd1e19f25e216d7dd04fe4d75bc67e32d49644aa14f68cb46794afe38b3ad63379ccb8b199b40251912409f54f915c072c231dfa4c1f4881ae2511dd6557
+doccontainerchecksum 7cdb3acf93842bc06069ec79246b1f50023de83dc1f1304ee17a5a8d22afee4af8b60bb683790af57b7fd1c46c081dde756c1b4c6b91b68cbd494562fa9540b9
docfiles size=260
texmf-dist/doc/generic/tex4ht/Makefile
texmf-dist/doc/generic/tex4ht/README details="Readme"
@@ -311622,8 +311663,8 @@ docfiles size=260
texmf-dist/doc/generic/tex4ht/mn56.html
texmf-dist/doc/generic/tex4ht/mn5x.png
texmf-dist/doc/generic/tex4ht/mn6x.png
-srccontainersize 1481104
-srccontainerchecksum 37c12d5935732c4ef49c4ae036636461a43c4bf3786d1ca34cca3939b7ba8eb0fcc1e4e45b1d95b9e1945eab7e43553df493df3bc631bfa46c6c3af651aa6f82
+srccontainersize 1479328
+srccontainerchecksum 260a356e856b49686c33a7024aaabe36405dbde108e5ca701f59329baf627432d7f26e647e83941b89dd5ce06310c961f810fd649a6688244b3fa7c8211000fb
srcfiles size=4632
texmf-dist/source/generic/tex4ht/ChangeLog
texmf-dist/source/generic/tex4ht/Makefile
@@ -324034,7 +324075,7 @@ docfiles size=376
name texlive-scripts
category TLCore
-revision 69377
+revision 69394
shortdesc TeX Live infrastructure programs
longdesc Includes install-tl, tl-portable, rungs, etc.; not needed for
longdesc tlmgr to run but still ours. Not included in tlcritical.
@@ -324042,10 +324083,10 @@ depend texlive-scripts.ARCH
depend texlive.infra
execute addMap mathpple.map
postaction shortcut type=menu name="TeX Live command-line" cmd=TEXDIR/tlpkg/installer/tl-cmd.bat
-containersize 114280
-containerchecksum df6939b4beb10925245a098b1d82d36801712ba1b32495aa648d1f69b426b392f8813497cd8567fa9b760ba91835e86643e74baed66c3bca126ec096b81661e7
-doccontainersize 431292
-doccontainerchecksum 747817a5ca3b8a132c71727c3891248ab42b582639665cb5375315ba4ea64104cefc7e7901a4abf32faeb6eed6be6edde612e9d1f2db86f6fd5c45420b201267
+containersize 114256
+containerchecksum 2bba34712708a9e8eb7165031f6358de366c9fa3df316d9359e3c324f6e2166578ef4456c0fd2730ac2aee7901e4ccf8afd69395a4b36db224a9b90e15ef78aa
+doccontainersize 431344
+doccontainerchecksum f0cb3e074b71dd9793224fe53a2791bdfb354b61f2fa9cb0e95a4341fec1d5f2331816f56af36eaecb4de7366b581da502269625fa566b2dfcd86e6d740aee31
docfiles size=562
doc.html
texmf-dist/doc/man/man1/fmtutil-sys.1
@@ -339648,7 +339689,7 @@ catalogue-version 1.5k
name tocdata
category Package
-revision 65451
+revision 69402
shortdesc Adds names to chapters, sections, figures in the TOC and LOF
relocated 1
longdesc The tocdata package may be used to add a small amount of data
@@ -339665,24 +339706,25 @@ longdesc user-level macros control formatting. tocdata works with the
longdesc TOC/LOF formatting of the default LaTeX classes, memoir,
longdesc koma-script, and with titletoc, tocloft, tocbasic, and
longdesc tocstyle.
-containersize 3356
-containerchecksum 7a8cc901e669e552cb3ece2f60add154c15443cd875eede2c54b90e89ef9c97149aea4e9b9134ba1606aa5ce7ef24941f4850023222e7d0d97f59e8d7f583da3
-doccontainersize 949356
-doccontainerchecksum 6ee4234813c1d4730fd0e8041b1182b9e570ea986a33dec32a786a6fb88fe2cd99b31163dabb154202d1831fea372ac4fa76d0774f322300930f88edcfd12ab5
+containersize 3384
+containerchecksum 17bc7e29a5f4d03374b19254c0967634de212ee47e0f00be9c3a8dd9a9a7694a8cf14b9da318e8337a5be00f420810ee27a115c7deb8f97e1a02ba98fd3b654a
+doccontainersize 949528
+doccontainerchecksum 816da5a5017dc7372d40a29b45f0279629553e8399e62ce3da4871e9597017e00c8a4c39928462d5d5f168963d930247081f483e9685028cbfabae9f74098541
docfiles size=236
RELOC/doc/latex/tocdata/README.txt details="Readme"
RELOC/doc/latex/tocdata/tocdata.pdf details="Package documentation"
-srccontainersize 12028
-srccontainerchecksum 9408c8f9f951b4bb39f00a51ea73e5c5f5bc379837ccb9794e64a72bbc3ced295b50fda2a082af1aee69f53c6d2a0550dbf55a1cb8171a8d5bb399eed35871b0
+srccontainersize 12052
+srccontainerchecksum 9d8767d2fc97ce25cd6c540abe83a1b1eba920f16cef02c9451bae34168812456d8b52a38ac7bc88d484b2a02d2cea774f9def03eb3e82bdd9411df0b4421670
srcfiles size=14
RELOC/source/latex/tocdata/tocdata.dtx
RELOC/source/latex/tocdata/tocdata.ins
runfiles size=4
RELOC/tex/latex/tocdata/tocdata.sty
+catalogue-contact-bugs https://github.com/bdtc/tocdata
catalogue-ctan /macros/latex/contrib/tocdata
catalogue-license lppl1.3
catalogue-topics toc-etc
-catalogue-version 2.05
+catalogue-version 2.06
name tocloft
category Package
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
index 4087720546..0e1a94d9e5 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
@@ -1 +1 @@
-5d5d58a41d08eb141da3a704ef32e23d texlive.tlpdb
+06565cc7292f1dc1b337d777cd71e1de texlive.tlpdb
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
index e3d12f7389..c0ec287b05 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
@@ -1 +1 @@
-1997b3508e6a474074e1528c18b72f35fe7cd77e1026767a33416595a26a5332df863dd04ce2ece587df018aaa4806065ef2b5e9f8e124a59fcf02d961520fc6 texlive.tlpdb
+9f9842bde437f63969dfd272a2bd4985cfa2b13199308761df64c08944eb4155c9d59027ce7597bb7b52b9fa51c619afd6a2883e977370448eb50ecd18f30877 texlive.tlpdb
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
index 895a33c50e..505cbe053c 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
@@ -1,11 +1,11 @@
-----BEGIN PGP SIGNATURE-----
-iQEyBAEBCgAdFiEE2PL4YFeoV+QqiBBqTOGHfhlDjHAFAmWgi/EACgkQTOGHfhlD
-jHDDXQf46XbACx9Aj7NAmED0UwOtS2avIrCVk8CaWHhMBcLADg3WpDtVhYVtfIqS
-NjPJffFX0g3PP7TqVOun448HYX87ghycoprZMdNDCIqqXxobfftFyGmGoznz/Dp+
-S1nY6vfbEjhFmO93awEfSehXeW5R8qi25JM0Z0wjKwMxYa4n7GwH+nCRRkwQMQKU
-8pCoylWumXa5uOX2mmManQ5MWZO5M4wZRIEpFQpn7yMbWzCV6mb4fTEna4tMg+W+
-NrpvpJJEdsccVb4go2402CzmNQiXcqdeMcR615ar7K8Jx991tJ7g0dwqGmghb6YF
-vim+eXX9PS7urfPcZn+NML5DJGTy
-=9nEQ
+iQEzBAEBCgAdFiEE2PL4YFeoV+QqiBBqTOGHfhlDjHAFAmWh3YIACgkQTOGHfhlD
+jHArrAf8CHr9zbv5eUj9n3JH8uYUHMWqnKGJkXqrKPBnURIg94lpffg6wVmhxxPw
+x9P4EIlYpow5w+7nbDQ5nuhnBWkEnAtlnRs3bfhevutRmfQ4jy5K/ZwMY0+5kjn5
+iRypQ4cRznxVzh9PT8B71i4TA0M+Evotn9LebZh9IegfcHDXgAtvyyMydrSiYzVB
+I9SEU4iZw8bjHssYaNq5BUhggLZlOsIyjhQgNTxSUBgwuctwv3rmTri2yExEIPeB
+8qbtigjUzJd/QYrmjQVhyt1FcxdRTNuKxoPk2wxW8PQUhA60cmzMo1VA4Vp+dEDs
+oQfscDhEYwZJBTJRTxrVk/NmZwmHuA==
+=eIA5
-----END PGP SIGNATURE-----
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
index 6c0a00cde7..9882755793 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
Binary files differ
diff --git a/timestamp b/timestamp
index 37817f923a..f43836e526 100644
--- a/timestamp
+++ b/timestamp
@@ -2,4 +2,4 @@
# The source CTAN of this site's material:
dante.ctan.org
# The year-month-day-hour-minute of this site's material:
-2024-01-13-02-02
+2024-01-14-02-02