From 4cc7922324b7a08ba0418e8f245cf1dcfa1891ac Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Mon, 21 Dec 2020 03:01:35 +0000 Subject: CTAN sync 202012210301 --- FILES.byname | 1681 ++++---- FILES.byname.gz | Bin 2246602 -> 2247305 bytes FILES.last07days | 1109 ++++-- fonts/cochineal/README | 5 +- fonts/cochineal/tex/uzcochmia.fd | 4 +- fonts/notomath/README | 5 +- fonts/notomath/tfm/notobmia.tfm | Bin 2384 -> 2400 bytes fonts/notomath/tfm/notomia.tfm | Bin 2368 -> 2380 bytes fonts/notomath/vf/notobmia.vf | Bin 2064 -> 2092 bytes fonts/notomath/vf/notomia.vf | Bin 2056 -> 2084 bytes fonts/scholax/README | 5 +- fonts/scholax/tfm/zncbmia.tfm | Bin 1920 -> 1932 bytes fonts/scholax/tfm/zncfbmia.tfm | Bin 2136 -> 2144 bytes fonts/scholax/tfm/zncfmia.tfm | Bin 2096 -> 2104 bytes fonts/scholax/tfm/zncmia.tfm | Bin 1932 -> 1940 bytes fonts/scholax/vf/zncbmia.vf | Bin 1520 -> 1544 bytes fonts/scholax/vf/zncfbmia.vf | Bin 1704 -> 1728 bytes fonts/scholax/vf/zncfmia.vf | Bin 1700 -> 1720 bytes fonts/scholax/vf/zncmia.vf | Bin 1516 -> 1540 bytes graphics/circuit_macros/CHANGES | 6 +- graphics/circuit_macros/Copying | 2 +- graphics/circuit_macros/INSTALL | 4 + graphics/circuit_macros/README | 64 +- graphics/circuit_macros/darrow.m4 | 3 +- graphics/circuit_macros/doc/ACsymbol.m4 | 4 + graphics/circuit_macros/doc/AntennasMan.m4 | 4 +- graphics/circuit_macros/doc/ArrestersMan.m4 | 75 + graphics/circuit_macros/doc/CctTableMan.m4 | 2 + graphics/circuit_macros/doc/Circuit_macros.pdf | Bin 1285894 -> 950156 bytes graphics/circuit_macros/doc/DCsymbol.m4 | 4 + graphics/circuit_macros/doc/GroundsMan.m4 | 6 +- graphics/circuit_macros/doc/Makefile | 10 +- graphics/circuit_macros/doc/Version.tex | 2 +- graphics/circuit_macros/doc/body.tex | 357 +- graphics/circuit_macros/doc/defines.tex | 122 +- graphics/circuit_macros/dpictools.pic | 2 +- graphics/circuit_macros/examples/ASME_Y14-5.m4 | 168 + graphics/circuit_macros/examples/Antennas.m4 | 4 +- graphics/circuit_macros/examples/Attention.m4 | 41 + graphics/circuit_macros/examples/Autoencoder.m4 | 82 + graphics/circuit_macros/examples/CctTable.m4 | 3 + graphics/circuit_macros/examples/Chuck.m4 | 162 +- graphics/circuit_macros/examples/Conn.m4 | 4 +- graphics/circuit_macros/examples/Connectors.m4 | 22 +- graphics/circuit_macros/examples/Coxeter.m4 | 38 + graphics/circuit_macros/examples/Flow.m4 | 66 +- graphics/circuit_macros/examples/FlowchartDefs.m4 | 199 +- graphics/circuit_macros/examples/Geometry.m4 | 46 + graphics/circuit_macros/examples/Grounds.m4 | 6 +- graphics/circuit_macros/examples/Heathkit.m4 | 204 +- graphics/circuit_macros/examples/Lyap.m4 | 159 + graphics/circuit_macros/examples/MC.m4 | 29 +- graphics/circuit_macros/examples/Makefile | 90 +- graphics/circuit_macros/examples/PushPull.m4 | 10 +- graphics/circuit_macros/examples/Timer.m4 | 52 - graphics/circuit_macros/examples/Variable.m4 | 10 +- graphics/circuit_macros/examples/ex01.m4 | 55 +- graphics/circuit_macros/examples/ex09.m4 | 1 + graphics/circuit_macros/examples/examples.pdf | Bin 893788 -> 876477 bytes graphics/circuit_macros/examples/examples.tex | 2 +- graphics/circuit_macros/examples/files.tex | 16 +- graphics/circuit_macros/examples/ics.m4 | 10 - graphics/circuit_macros/examples/mf/cct.mf | 2 +- graphics/circuit_macros/examples/mpost/Makefile | 2 +- graphics/circuit_macros/examples/nsvg/Makefile | 92 + .../circuit_macros/examples/nsvg/dev/F_test.tex | 5 + graphics/circuit_macros/examples/nsvg/dev/Makefile | 81 + .../circuit_macros/examples/nsvg/dev/test-1.svg | 162 + graphics/circuit_macros/examples/nsvg/dev/test.pdf | Bin 0 -> 35308 bytes graphics/circuit_macros/examples/nsvg/dev/test.pic | 383 ++ graphics/circuit_macros/examples/nsvg/dev/test.svg | 239 ++ graphics/circuit_macros/examples/nsvg/dev/test.tex | 1136 ++++++ .../circuit_macros/examples/nsvg/dev/tikztosvg | 181 + .../circuit_macros/examples/nsvg/dev/tstSVG.htmx | 62 + graphics/circuit_macros/examples/nsvg/examples.pdf | Bin 0 -> 897744 bytes .../circuit_macros/examples/nsvg/examplesSVG.htmx | 70 + graphics/circuit_macros/examples/oFlow.m4 | 108 + graphics/circuit_macros/examples/psfrag/Makefile | 3 +- graphics/circuit_macros/examples/random.m4 | 4 +- graphics/circuit_macros/examples/shapes.m4 | 4 + .../circuit_macros/examples/svg/AutoencoderSVG.m4 | 97 + graphics/circuit_macros/examples/svg/Banking.m4 | 59 + graphics/circuit_macros/examples/svg/BtreeSVG.m4 | 76 +- .../circuit_macros/examples/svg/CctTableSVG.m4 | 73 +- .../circuit_macros/examples/svg/ConnectorsSVG.m4 | 2 +- graphics/circuit_macros/examples/svg/FlowSVG.m4 | 222 +- graphics/circuit_macros/examples/svg/FourbarSVG.m4 | 59 + .../circuit_macros/examples/svg/GeometrySVG.m4 | 46 + graphics/circuit_macros/examples/svg/JackSVG.m4 | 2 +- graphics/circuit_macros/examples/svg/LyapSVG.m4 | 159 + graphics/circuit_macros/examples/svg/MCSVG.m4 | 34 +- graphics/circuit_macros/examples/svg/Makefile | 46 +- graphics/circuit_macros/examples/svg/OpampSVG.m4 | 2 +- graphics/circuit_macros/examples/svg/PconnSVG.m4 | 2 +- graphics/circuit_macros/examples/svg/UNO.m4 | 265 ++ graphics/circuit_macros/examples/svg/UNOSVG.m4 | 577 +++ graphics/circuit_macros/examples/svg/Xtest.m4 | 58 + graphics/circuit_macros/examples/svg/Y14-5SVG.m4 | 173 + graphics/circuit_macros/examples/svg/ex01SVG.m4 | 58 +- graphics/circuit_macros/examples/svg/ex05SVG.m4 | 66 +- .../circuit_macros/examples/svg/examplesSVG.htmx | 734 +++- graphics/circuit_macros/examples/svg/paletteSVG.m4 | 4 +- .../circuit_macros/examples/svg/pwrsupplySVG.m4 | 102 +- graphics/circuit_macros/examples/svg/quickSVG.m4 | 8 +- graphics/circuit_macros/examples/svg/randomSVG.m4 | 4 +- graphics/circuit_macros/examples/svg/tstSVG.htmx | 3 + graphics/circuit_macros/examples/xfig/xfiglib.fig | 2 +- graphics/circuit_macros/gpic.m4 | 2 +- graphics/circuit_macros/lib3D.m4 | 12 +- graphics/circuit_macros/libcct.m4 | 209 +- graphics/circuit_macros/libgen.m4 | 107 +- graphics/circuit_macros/liblog.m4 | 2 +- graphics/circuit_macros/mfpic.m4 | 2 +- graphics/circuit_macros/mpost.m4 | 2 +- graphics/circuit_macros/pgf.m4 | 2 +- graphics/circuit_macros/postscript.m4 | 2 +- graphics/circuit_macros/psfrag.m4 | 2 +- graphics/circuit_macros/pstricks.m4 | 8 +- graphics/circuit_macros/svg.m4 | 5 +- graphics/circuit_macros/xfig.m4 | 2 +- info/apprendre-a-programmer-en-tex/README | 53 +- .../output/apprendre-a-programmer-en-tex.pdf | Bin 4356465 -> 4012401 bytes .../output/progtexcode.txt | 2 +- .../source/apprendre-a-programmer-en-tex.tex | 18 +- macros/latex/contrib/curve2e/README.txt | 2 +- macros/latex/contrib/curve2e/curve2e-manual.pdf | Bin 571161 -> 571391 bytes macros/latex/contrib/curve2e/curve2e.dtx | 49 +- macros/latex/contrib/curve2e/curve2e.pdf | Bin 654000 -> 654227 bytes macros/latex/contrib/easyfloats/DEPENDS.txt | 14 + macros/latex/contrib/easyfloats/README.md | 49 + .../doc/content/bug-reports-and-contributions.tex | 41 + .../easyfloats/doc/content/documentation.tex | 1082 +++++ .../contrib/easyfloats/doc/content/examples.tex | 355 ++ .../easyfloats/doc/content/installation.tex | 8 + .../contrib/easyfloats/doc/content/license.tex | 17 + .../contrib/easyfloats/doc/content/motivation.tex | 378 ++ .../latex/contrib/easyfloats/doc/content/names.tex | 18 + .../easyfloats/doc/content/other-packages.tex | 51 + .../contrib/easyfloats/doc/content/titlepage.tex | 17 + .../easyfloats/doc/content/used-packages.tex | 29 + macros/latex/contrib/easyfloats/doc/easyfloats.bib | 141 + macros/latex/contrib/easyfloats/doc/easyfloats.pdf | Bin 0 -> 546772 bytes macros/latex/contrib/easyfloats/doc/easyfloats.tex | 63 + .../contrib/easyfloats/doc/lexer/latex_atletter.py | 17 + macros/latex/contrib/easyfloats/doc/links.tex | 44 + .../easyfloats/doc/preamble/bibliography.tex | 35 + .../easyfloats/doc/preamble/description-links.tex | 224 ++ .../easyfloats/doc/preamble/examplecode.tex | 778 ++++ .../contrib/easyfloats/doc/preamble/keydoc.tex | 754 ++++ .../latex/contrib/easyfloats/doc/preamble/link.tex | 53 + .../contrib/easyfloats/doc/preamble/macros.tex | 218 + .../contrib/easyfloats/doc/preamble/markdown.tex | 153 + .../contrib/easyfloats/doc/preamble/pdfstring.tex | 35 + .../easyfloats/doc/undescribed-keywords.tex | 247 ++ .../contrib/easyfloats/easyfloats-file-list.txt | 40 + macros/latex/contrib/easyfloats/easyfloats.dtx | 1897 +++++++++ macros/latex/contrib/easyfloats/easyfloats.ins | 82 + macros/latex/contrib/pdfpc/pdfpc-doc.pdf | Bin 173566 -> 173201 bytes macros/latex/contrib/pdfpc/pdfpc-doc.tex | 2 +- macros/latex/contrib/pdfpc/pdfpc.sty | 6 +- .../reledmac/examples/1-criticalendnotes.pdf | Bin 197373 -> 197373 bytes .../contrib/reledmac/examples/1-criticalnotes.pdf | Bin 195586 -> 195586 bytes .../contrib/reledmac/examples/1-sidenotes.pdf | Bin 291128 -> 291128 bytes .../latex/contrib/reledmac/examples/1-tabular.pdf | Bin 280887 -> 280887 bytes .../reledmac/examples/1-verses-doublenumbering.pdf | Bin 197414 -> 197414 bytes .../latex/contrib/reledmac/examples/1-verses.pdf | Bin 197363 -> 197363 bytes .../latex/contrib/reledmac/examples/2-antilabe.pdf | Bin 205371 -> 205371 bytes .../reledmac/examples/2-cross_referencing.pdf | Bin 196250 -> 196250 bytes .../reledmac/examples/2-footnote_spacing.pdf | Bin 199696 -> 199696 bytes .../contrib/reledmac/examples/2-glossaries.pdf | Bin 280642 -> 280642 bytes .../latex/contrib/reledmac/examples/2-indexing.pdf | Bin 279716 -> 279716 bytes .../reledmac/examples/2-lemma_disambigution.pdf | Bin 273887 -> 273887 bytes .../reledmac/examples/2-line_numbers_in_header.pdf | Bin 289371 -> 289371 bytes .../contrib/reledmac/examples/2-linespacing.pdf | Bin 284597 -> 284597 bytes .../reledmac/examples/2-manuscript-apparatus.pdf | Bin 285213 -> 285213 bytes .../contrib/reledmac/examples/2-notes-width.pdf | Bin 202991 -> 202991 bytes .../reledmac/examples/2-one_series_per_pstart.pdf | Bin 208585 -> 208585 bytes .../contrib/reledmac/examples/2-performances.pdf | Bin 281520 -> 281520 bytes .../reledmac/examples/2-reledmac-right-to-left.pdf | Bin 31045 -> 31052 bytes .../examples/2-subdivision-number-in-header.pdf | Bin 304585 -> 304585 bytes .../2-titles_in_line_numbering_with_notes.pdf | Bin 283465 -> 283465 bytes .../examples/2-titles_not_in_line_numbering.pdf | Bin 196014 -> 196014 bytes .../3-reledpar_columns_different_languages.pdf | Bin 23264 -> 23269 bytes .../contrib/reledmac/examples/3-reledpar_mwe.pdf | Bin 172561 -> 172561 bytes ...reledpar_pages_different_languages_lualatex.pdf | Bin 32053 -> 32053 bytes .../3-reledpar_same_page_number_in_both_side.pdf | Bin 284700 -> 284700 bytes ...reledpar_sync_setting_advancedshifted-nomax.pdf | Bin 190058 -> 190058 bytes .../3-reledpar_sync_setting_advancedshifted.pdf | Bin 189290 -> 189290 bytes .../examples/3-reledpar_sync_setting_default.pdf | Bin 168066 -> 168066 bytes .../3-reledpar_sync_setting_nomax-shifted.pdf | Bin 189692 -> 189692 bytes .../examples/3-reledpar_sync_setting_nomax.pdf | Bin 188622 -> 188622 bytes .../examples/3-reledpar_sync_setting_nosync.pdf | Bin 188675 -> 188675 bytes .../examples/3-reledpar_sync_setting_shifted.pdf | Bin 188809 -> 188809 bytes ...mn_mix_with_not_column-continuous-numbering.pdf | Bin 209918 -> 209918 bytes .../4-reledpar_column_mix_with_not_column.pdf | Bin 208856 -> 208856 bytes .../examples/4-reledpar_columns_alignment.pdf | Bin 201188 -> 201188 bytes ...columns_titles_in_line_numbering_with_notes.pdf | Bin 292929 -> 292929 bytes .../examples/4-reledpar_inside-outside-columns.pdf | Bin 200260 -> 200260 bytes .../examples/4-reledpar_one_series_per_pstart.pdf | Bin 221533 -> 221533 bytes .../examples/4-reledpar_pages_long_notes.pdf | Bin 246187 -> 246187 bytes .../examples/4-reledpar_pages_notes_leftpage.pdf | Bin 200801 -> 200801 bytes ...-reledpar_pages_paragraph_separator_between.pdf | Bin 196882 -> 196882 bytes ...r_pages_titles_in_line_numbering_with_notes.pdf | Bin 297242 -> 297242 bytes .../4-reledpar_titles_not_in_line_numbering.pdf | Bin 203241 -> 203241 bytes .../examples/4-reledpar_verse_text_between.pdf | Bin 192355 -> 192355 bytes macros/latex/contrib/reledmac/reledmac.dtx | 5 +- macros/latex/contrib/reledmac/reledmac.pdf | Bin 2021684 -> 2021691 bytes macros/latex/contrib/reledmac/reledpar.pdf | Bin 986955 -> 986981 bytes macros/luatex/generic/luaxml/README | 2 +- macros/luatex/generic/luaxml/luaxml-cssquery.lua | 184 +- macros/luatex/generic/luaxml/luaxml-domobject.lua | 3 +- macros/luatex/generic/luaxml/luaxml-entities.lua | 2 +- .../luatex/generic/luaxml/luaxml-namedentities.lua | 4193 ++++++++++---------- .../luatex/generic/luaxml/luaxml-parse-query.lua | 19 +- macros/luatex/generic/luaxml/luaxml-transform.lua | 161 + macros/luatex/generic/luaxml/luaxml.pdf | Bin 99665 -> 107935 bytes macros/luatex/generic/luaxml/luaxml.tex | 61 +- .../texlive/tlnet/tlpkg/installer/ctan-mirrors.pl | 1 - systems/texlive/tlnet/tlpkg/texlive.tlpdb | 116 +- systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 | 2 +- systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 | 2 +- .../texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc | 14 +- systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz | Bin 2254556 -> 2255136 bytes systems/win32/miktex/tm/packages/next/pr.ini | 8 +- systems/win32/miktex/tm/packages/pr.ini | 8 +- systems/win32/w32tex/ChangeLog | 4 + timestamp | 2 +- 227 files changed, 17960 insertions(+), 4578 deletions(-) create mode 100644 graphics/circuit_macros/doc/ACsymbol.m4 create mode 100644 graphics/circuit_macros/doc/ArrestersMan.m4 create mode 100644 graphics/circuit_macros/doc/DCsymbol.m4 create mode 100644 graphics/circuit_macros/examples/ASME_Y14-5.m4 create mode 100644 graphics/circuit_macros/examples/Attention.m4 create mode 100644 graphics/circuit_macros/examples/Autoencoder.m4 create mode 100644 graphics/circuit_macros/examples/Coxeter.m4 create mode 100644 graphics/circuit_macros/examples/Geometry.m4 create mode 100644 graphics/circuit_macros/examples/Lyap.m4 delete mode 100644 graphics/circuit_macros/examples/Timer.m4 create mode 100644 graphics/circuit_macros/examples/nsvg/Makefile create mode 100644 graphics/circuit_macros/examples/nsvg/dev/F_test.tex create mode 100644 graphics/circuit_macros/examples/nsvg/dev/Makefile create mode 100644 graphics/circuit_macros/examples/nsvg/dev/test-1.svg create mode 100644 graphics/circuit_macros/examples/nsvg/dev/test.pdf create mode 100644 graphics/circuit_macros/examples/nsvg/dev/test.pic create mode 100644 graphics/circuit_macros/examples/nsvg/dev/test.svg create mode 100644 graphics/circuit_macros/examples/nsvg/dev/test.tex create mode 100644 graphics/circuit_macros/examples/nsvg/dev/tikztosvg create mode 100644 graphics/circuit_macros/examples/nsvg/dev/tstSVG.htmx create mode 100644 graphics/circuit_macros/examples/nsvg/examples.pdf create mode 100644 graphics/circuit_macros/examples/nsvg/examplesSVG.htmx create mode 100644 graphics/circuit_macros/examples/oFlow.m4 create mode 100644 graphics/circuit_macros/examples/svg/AutoencoderSVG.m4 create mode 100644 graphics/circuit_macros/examples/svg/Banking.m4 create mode 100644 graphics/circuit_macros/examples/svg/FourbarSVG.m4 create mode 100644 graphics/circuit_macros/examples/svg/GeometrySVG.m4 create mode 100644 graphics/circuit_macros/examples/svg/LyapSVG.m4 create mode 100644 graphics/circuit_macros/examples/svg/UNO.m4 create mode 100644 graphics/circuit_macros/examples/svg/UNOSVG.m4 create mode 100644 graphics/circuit_macros/examples/svg/Xtest.m4 create mode 100644 graphics/circuit_macros/examples/svg/Y14-5SVG.m4 create mode 100644 macros/latex/contrib/easyfloats/DEPENDS.txt create mode 100644 macros/latex/contrib/easyfloats/README.md create mode 100644 macros/latex/contrib/easyfloats/doc/content/bug-reports-and-contributions.tex create mode 100644 macros/latex/contrib/easyfloats/doc/content/documentation.tex create mode 100644 macros/latex/contrib/easyfloats/doc/content/examples.tex create mode 100644 macros/latex/contrib/easyfloats/doc/content/installation.tex create mode 100644 macros/latex/contrib/easyfloats/doc/content/license.tex create mode 100644 macros/latex/contrib/easyfloats/doc/content/motivation.tex create mode 100644 macros/latex/contrib/easyfloats/doc/content/names.tex create mode 100644 macros/latex/contrib/easyfloats/doc/content/other-packages.tex create mode 100644 macros/latex/contrib/easyfloats/doc/content/titlepage.tex create mode 100644 macros/latex/contrib/easyfloats/doc/content/used-packages.tex create mode 100644 macros/latex/contrib/easyfloats/doc/easyfloats.bib create mode 100644 macros/latex/contrib/easyfloats/doc/easyfloats.pdf create mode 100644 macros/latex/contrib/easyfloats/doc/easyfloats.tex create mode 100644 macros/latex/contrib/easyfloats/doc/lexer/latex_atletter.py create mode 100644 macros/latex/contrib/easyfloats/doc/links.tex create mode 100644 macros/latex/contrib/easyfloats/doc/preamble/bibliography.tex create mode 100644 macros/latex/contrib/easyfloats/doc/preamble/description-links.tex create mode 100644 macros/latex/contrib/easyfloats/doc/preamble/examplecode.tex create mode 100644 macros/latex/contrib/easyfloats/doc/preamble/keydoc.tex create mode 100644 macros/latex/contrib/easyfloats/doc/preamble/link.tex create mode 100644 macros/latex/contrib/easyfloats/doc/preamble/macros.tex create mode 100644 macros/latex/contrib/easyfloats/doc/preamble/markdown.tex create mode 100644 macros/latex/contrib/easyfloats/doc/preamble/pdfstring.tex create mode 100644 macros/latex/contrib/easyfloats/doc/undescribed-keywords.tex create mode 100644 macros/latex/contrib/easyfloats/easyfloats-file-list.txt create mode 100644 macros/latex/contrib/easyfloats/easyfloats.dtx create mode 100644 macros/latex/contrib/easyfloats/easyfloats.ins create mode 100644 macros/luatex/generic/luaxml/luaxml-transform.lua diff --git a/FILES.byname b/FILES.byname index 550e3898bb..df2a2a5c47 100644 --- a/FILES.byname +++ b/FILES.byname @@ -5025,7 +5025,7 @@ 1990/10/02 | 5440 | dviware/vutex/vaxvms.hlp 1990/10/02 | 812 | dviware/vutex/vaxvms.ins 1990/10/02 | 127576 | dviware/vutex/vutex.web -2020/12/19 | 155999 | FILES.last07days +2020/12/20 | 197325 | FILES.last07days 2020/08/14 | 104065 | fonts/academicons/academicons.pdf 2020/08/14 | 17247 | fonts/academicons/academicons.sty 2020/08/14 | 6546 | fonts/academicons/academicons.tex @@ -23039,7 +23039,7 @@ 2020/09/15 | 231836 | fonts/cochineal/opentype/Cochineal-Bold.otf 2020/09/15 | 231680 | fonts/cochineal/opentype/Cochineal-Italic.otf 2020/09/15 | 230184 | fonts/cochineal/opentype/Cochineal-Roman.otf -2020/09/24 | 6852 | fonts/cochineal/README +2020/12/20 | 6953 | fonts/cochineal/README 2016/01/31 | 196 | fonts/cochineal/tex/cochineal.fontspec 2020/09/21 | 6802 | fonts/cochineal/tex/cochineal.sty 2016/02/17 | 1195 | fonts/cochineal/tex/LGRCochineal-LF.fd @@ -23077,7 +23077,7 @@ 2018/10/15 | 1199 | fonts/cochineal/tex/TS1Cochineal-OsF.fd 2018/10/15 | 1199 | fonts/cochineal/tex/TS1Cochineal-TLF.fd 2018/10/15 | 1216 | fonts/cochineal/tex/TS1Cochineal-TOsF.fd -2016/01/19 | 681 | fonts/cochineal/tex/uzcochmia.fd +2020/12/20 | 713 | fonts/cochineal/tex/uzcochmia.fd 2019/10/16 | 1448 | fonts/cochineal/tfm/cochBMI.tfm 2019/10/16 | 1184 | fonts/cochineal/tfm/cochBRM.tfm 2020/09/15 | 1144 | fonts/cochineal/tfm/Cochineal-alph.tfm @@ -23598,7 +23598,7 @@ 2020/09/15 | 2584 | fonts/cochineal/vf/zcochbmi.vf 2020/09/24 | 1956 | fonts/cochineal/vf/zcochmia.vf 2020/09/15 | 2496 | fonts/cochineal/vf/zcochmi.vf -2020/09/24 | 5874675 | fonts/cochineal.zip +2020/12/20 | 5874721 | fonts/cochineal.zip 2020/04/13 | 63456 | fonts/coelacanth/doc/coelacanth-samples.pdf 2019/10/10 | 712 | fonts/coelacanth/doc/coelacanth-samples.tex 2019/10/10 | 4433 | fonts/coelacanth/doc/LICENSE.md @@ -81153,19 +81153,19 @@ 2020/08/05 | 15233 | fonts/notomath/doc/notomath-doc.tex 2020/08/04 | 65497 | fonts/notomath/doc/samplerSerif-crop.pdf 2020/08/05 | 364 | fonts/notomath/map/NotoMath.map -2020/08/05 | 585 | fonts/notomath/README +2020/12/20 | 644 | fonts/notomath/README 2020/07/27 | 158 | fonts/notomath/tex/newtx-notosans-subs.tex 2020/07/27 | 158 | fonts/notomath/tex/newtx-noto-subs.tex 2020/08/04 | 3171 | fonts/notomath/tex/notomath.sty 2020/08/05 | 761 | fonts/notomath/tex/omlnotomi.fd 2020/08/05 | 825 | fonts/notomath/tex/omlnotosansmi.fd -2020/07/31 | 2384 | fonts/notomath/tfm/notobmia.tfm +2020/12/20 | 2400 | fonts/notomath/tfm/notobmia.tfm 2020/07/31 | 3288 | fonts/notomath/tfm/notobmi.tfm 2020/07/31 | 1548 | fonts/notomath/tfm/NotoMathBMI.tfm 2020/07/31 | 1076 | fonts/notomath/tfm/NotoMathBRM.tfm 2020/07/31 | 1532 | fonts/notomath/tfm/NotoMathMI.tfm 2020/07/31 | 724 | fonts/notomath/tfm/NotoMathRM.tfm -2020/07/31 | 2368 | fonts/notomath/tfm/notomia.tfm +2020/12/20 | 2380 | fonts/notomath/tfm/notomia.tfm 2020/07/31 | 3244 | fonts/notomath/tfm/notomi.tfm 2020/07/31 | 2380 | fonts/notomath/tfm/notosansbmia.tfm 2020/07/31 | 3276 | fonts/notomath/tfm/notosansbmi.tfm @@ -81183,15 +81183,15 @@ 2020/08/05 | 22218 | fonts/notomath/type1/NotoSansMathBRM.pfb 2020/08/05 | 30944 | fonts/notomath/type1/NotoSansMathMI.pfb 2020/08/05 | 14657 | fonts/notomath/type1/NotoSansMathRM.pfb -2020/07/31 | 2064 | fonts/notomath/vf/notobmia.vf +2020/12/20 | 2092 | fonts/notomath/vf/notobmia.vf 2020/07/31 | 2460 | fonts/notomath/vf/notobmi.vf -2020/07/31 | 2056 | fonts/notomath/vf/notomia.vf +2020/12/20 | 2084 | fonts/notomath/vf/notomia.vf 2020/07/31 | 2352 | fonts/notomath/vf/notomi.vf 2020/07/31 | 2124 | fonts/notomath/vf/notosansbmia.vf 2020/07/31 | 2540 | fonts/notomath/vf/notosansbmi.vf 2020/07/31 | 2116 | fonts/notomath/vf/notosansmia.vf 2020/07/31 | 2432 | fonts/notomath/vf/notosansmi.vf -2020/08/05 | 709830 | fonts/notomath.zip +2020/12/20 | 709956 | fonts/notomath.zip 2019/12/11 | 3002 | fonts/noto/README 2019/12/10 | 9072 | fonts/noto/tfm/NotoSans-BlackItalic-lf-lgr.tfm 2019/12/10 | 11328 | fonts/noto/tfm/NotoSans-BlackItalic-lf-ly1.tfm @@ -116452,7 +116452,7 @@ 2020/12/19 | 154216 | fonts/scholax/opentype/TeXGyreScholaX-Italic.otf 2020/12/19 | 145912 | fonts/scholax/opentype/TeXGyreScholaX-Regular.otf 2020/12/19 | 164568 | fonts/scholax/opentype/TeXGyreScholaX-Slanted.otf -2020/12/19 | 2645 | fonts/scholax/README +2020/12/20 | 2743 | fonts/scholax/README 2020/12/19 | 2395 | fonts/scholax/tex/LY1TeXGyreScholaX-Inf.fd 2019/12/24 | 2462 | fonts/scholax/tex/LY1TeXGyreScholaX-LF.fd 2019/12/24 | 2501 | fonts/scholax/tex/LY1TeXGyreScholaX-OsF.fd @@ -116843,14 +116843,14 @@ 2020/12/19 | 8020 | fonts/scholax/tfm/zcs-Italic-tlf-th-ly1.tfm 2020/12/19 | 3424 | fonts/scholax/tfm/zcs-Italic-tlf-th-ot1.tfm 2020/12/19 | 12020 | fonts/scholax/tfm/zcs-Italic-tlf-th-t1.tfm -2020/06/01 | 1920 | fonts/scholax/tfm/zncbmia.tfm -2020/06/01 | 3404 | fonts/scholax/tfm/zncbmi.tfm -2020/06/01 | 2136 | fonts/scholax/tfm/zncfbmia.tfm -2020/06/01 | 3372 | fonts/scholax/tfm/zncfbmi.tfm -2020/06/01 | 2096 | fonts/scholax/tfm/zncfmia.tfm -2020/06/01 | 3400 | fonts/scholax/tfm/zncfmi.tfm -2020/06/01 | 1932 | fonts/scholax/tfm/zncmia.tfm -2020/06/01 | 3396 | fonts/scholax/tfm/zncmi.tfm +2020/12/20 | 1932 | fonts/scholax/tfm/zncbmia.tfm +2020/12/20 | 3404 | fonts/scholax/tfm/zncbmi.tfm +2020/12/20 | 2144 | fonts/scholax/tfm/zncfbmia.tfm +2020/12/20 | 3372 | fonts/scholax/tfm/zncfbmi.tfm +2020/12/20 | 2104 | fonts/scholax/tfm/zncfmia.tfm +2020/12/20 | 3400 | fonts/scholax/tfm/zncfmi.tfm +2020/12/20 | 1940 | fonts/scholax/tfm/zncmia.tfm +2020/12/20 | 3396 | fonts/scholax/tfm/zncmi.tfm 2020/03/09 | 14199 | fonts/scholax/type1/NCXFourierBMI.pfb 2020/03/09 | 13585 | fonts/scholax/type1/NCXFourierBMR.pfb 2020/03/09 | 15080 | fonts/scholax/type1/NCXFourierMI.pfb @@ -117003,15 +117003,15 @@ 2020/12/19 | 1704 | fonts/scholax/vf/TeXGyreScholaX-Slanted-tosf-sc-t1.vf 2020/12/19 | 1728 | fonts/scholax/vf/TeXGyreScholaX-Slanted-tosf-t1.vf 2020/12/19 | 976 | fonts/scholax/vf/TeXGyreScholaX-Slanted-tosf-ts1.vf -2020/06/01 | 1520 | fonts/scholax/vf/zncbmia.vf -2020/06/01 | 2824 | fonts/scholax/vf/zncbmi.vf -2020/06/01 | 1704 | fonts/scholax/vf/zncfbmia.vf -2020/06/01 | 2788 | fonts/scholax/vf/zncfbmi.vf -2020/06/01 | 1700 | fonts/scholax/vf/zncfmia.vf -2020/06/01 | 2676 | fonts/scholax/vf/zncfmi.vf -2020/06/01 | 1516 | fonts/scholax/vf/zncmia.vf -2020/06/01 | 2672 | fonts/scholax/vf/zncmi.vf -2020/12/19 | 3426213 | fonts/scholax.zip +2020/12/20 | 1544 | fonts/scholax/vf/zncbmia.vf +2020/12/20 | 2824 | fonts/scholax/vf/zncbmi.vf +2020/12/20 | 1728 | fonts/scholax/vf/zncfbmia.vf +2020/12/20 | 2788 | fonts/scholax/vf/zncfbmi.vf +2020/12/20 | 1720 | fonts/scholax/vf/zncfmia.vf +2020/12/20 | 2676 | fonts/scholax/vf/zncfmi.vf +2020/12/20 | 1540 | fonts/scholax/vf/zncmia.vf +2020/12/20 | 2672 | fonts/scholax/vf/zncmi.vf +2020/12/20 | 3426395 | fonts/scholax.zip 2014/12/02 | 998647 | fonts/schulschriften/doc/schulschriften.pdf 2014/12/02 | 42250 | fonts/schulschriften/doc/schulschriften.tex 2014/12/02 | 4784 | fonts/schulschriften/README @@ -132895,439 +132895,469 @@ 2020/05/24 | 7475 | graphics/bookshelf/README.md 2020/05/24 | 41 | graphics/bookshelf/VERSION 2020/05/24 | 1783280 | graphics/bookshelf.zip -2020/05/01 | 1185 | graphics/circuit_macros/boxdims.sty -2020/05/01 | 12244 | graphics/circuit_macros/CHANGES -2020/05/01 | 462 | graphics/circuit_macros/Copying -2020/05/01 | 14346 | graphics/circuit_macros/darrow.m4 -2020/05/01 | 494 | graphics/circuit_macros/doc/AmpTableMan.m4 -2020/05/01 | 1940 | graphics/circuit_macros/doc/AmpTable.tex -2020/05/01 | 1211 | graphics/circuit_macros/doc/AntennasMan.m4 -2020/05/01 | 2634 | graphics/circuit_macros/doc/AudioMan.m4 -2020/05/01 | 10164 | graphics/circuit_macros/doc/Audio.tex -2020/05/01 | 131 | graphics/circuit_macros/doc/Axes.m4 -2020/05/01 | 614 | graphics/circuit_macros/doc/BigResistor.m4 -2020/05/01 | 1619 | graphics/circuit_macros/doc/BipMan.m4 -2020/05/01 | 5545 | graphics/circuit_macros/doc/Bip.tex -2020/05/01 | 1074 | graphics/circuit_macros/doc/bistableMan.m4 -2020/05/01 | 1860 | graphics/circuit_macros/doc/bi_trans.m4 -2020/05/01 | 130 | graphics/circuit_macros/doc/bitrbody.m4 -2020/05/01 | 50 | graphics/circuit_macros/doc/bitr.m4 -2020/05/01 | 136113 | graphics/circuit_macros/doc/body.tex -2020/05/01 | 1953 | graphics/circuit_macros/doc/Buffer.m4 -2020/05/01 | 25460 | graphics/circuit_macros/doc/Capture.JPG -2020/05/01 | 2670 | graphics/circuit_macros/doc/CctTableMan.m4 -2020/05/01 | 29074 | graphics/circuit_macros/doc/CctTable.tex -2020/05/01 | 4073 | graphics/circuit_macros/doc/Circuit_macros.bib -2020/05/01 | 1285894 | graphics/circuit_macros/doc/Circuit_macros.pdf -2020/05/01 | 2639 | graphics/circuit_macros/doc/Circuit_macros.tex -2020/05/01 | 1857 | graphics/circuit_macros/doc/Composite.m4 -2020/05/01 | 1120 | graphics/circuit_macros/doc/ConfigA.m4 -2020/05/01 | 1257 | graphics/circuit_macros/doc/ConfigB.m4 -2020/05/01 | 1291 | graphics/circuit_macros/doc/ConfigC.m4 -2020/05/01 | 2179 | graphics/circuit_macros/doc/ConnMan.m4 -2020/05/01 | 6550 | graphics/circuit_macros/doc/Conn.tex -2020/05/01 | 3326 | graphics/circuit_macros/doc/ContactMan.m4 -2020/05/01 | 1585 | graphics/circuit_macros/doc/ContactsMan.m4 -2020/05/01 | 6067 | graphics/circuit_macros/doc/Contacts.tex -2020/05/01 | 13833 | graphics/circuit_macros/doc/Contact.tex -2020/05/01 | 1995 | graphics/circuit_macros/doc/Corners.m4 -2020/05/01 | 1329 | graphics/circuit_macros/doc/currents.m4 -2020/05/01 | 2389 | graphics/circuit_macros/doc/Dac.m4 -2020/05/01 | 1151 | graphics/circuit_macros/doc/Darlington.m4 -2020/05/01 | 77979 | graphics/circuit_macros/doc/defines.tex -2020/05/01 | 1485 | graphics/circuit_macros/doc/DemultiplexerMan.m4 -2020/05/01 | 4817 | graphics/circuit_macros/doc/Demultiplexer.tex -2020/05/01 | 1467 | graphics/circuit_macros/doc/DiodesMan.m4 -2020/05/01 | 12050 | graphics/circuit_macros/doc/Diodes.tex -2020/05/01 | 483 | graphics/circuit_macros/doc/eboxdims.m4 -2020/05/01 | 980 | graphics/circuit_macros/doc/EmarrowsMan.m4 -2020/05/01 | 5502 | graphics/circuit_macros/doc/Emarrows.tex -2020/05/01 | 1229 | graphics/circuit_macros/doc/fbfilter.m4 -2020/05/01 | 4489 | graphics/circuit_macros/doc/fetMan.m4 -2020/05/01 | 16420 | graphics/circuit_macros/doc/fet.tex -2020/05/01 | 329 | graphics/circuit_macros/doc/FF.m4 -2020/05/01 | 1975 | graphics/circuit_macros/doc/FlipFlop.m4 -2020/05/01 | 960 | graphics/circuit_macros/doc/Flowdiag.m4 -2020/05/01 | 999 | graphics/circuit_macros/doc/FusesMan.m4 -2020/05/01 | 4789 | graphics/circuit_macros/doc/Fuses.tex -2020/05/01 | 815 | graphics/circuit_macros/doc/GroundsMan.m4 -2020/05/01 | 2661 | graphics/circuit_macros/doc/Grounds.tex -2020/05/01 | 1132 | graphics/circuit_macros/doc/HeadersMan.m4 -2020/05/01 | 7503 | graphics/circuit_macros/doc/Headers.tex -2020/05/01 | 2013 | graphics/circuit_macros/doc/HybridPi.m4 -2020/05/01 | 2362 | graphics/circuit_macros/doc/JackMan.m4 -2020/05/01 | 12006 | graphics/circuit_macros/doc/Jack.tex -2020/05/01 | 2119 | graphics/circuit_macros/doc/LogicMan.m4 -2020/05/01 | 7533 | graphics/circuit_macros/doc/Logic.tex -2020/05/01 | 269 | graphics/circuit_macros/doc/Loop.m4 -2020/05/01 | 387 | graphics/circuit_macros/doc/lrarrows.m4 -2020/05/01 | 4483 | graphics/circuit_macros/doc/Makefile -2020/05/01 | 1575 | graphics/circuit_macros/doc/mplex.m4 -2020/05/01 | 1400 | graphics/circuit_macros/doc/MultiplexerMan.m4 -2020/05/01 | 4964 | graphics/circuit_macros/doc/Multiplexer.tex -2020/05/01 | 499 | graphics/circuit_macros/doc/NLGMan.m4 -2020/05/01 | 3183 | graphics/circuit_macros/doc/NLG.tex -2020/05/01 | 1128 | graphics/circuit_macros/doc/NPDTMan.m4 -2020/05/01 | 5137 | graphics/circuit_macros/doc/NPDT.tex -2020/05/01 | 1040 | graphics/circuit_macros/doc/NportMan.m4 -2020/05/01 | 4666 | graphics/circuit_macros/doc/Nport.tex -2020/05/01 | 137 | graphics/circuit_macros/doc/oaxbody.m4 -2020/05/01 | 48 | graphics/circuit_macros/doc/oax.m4 -2020/05/01 | 782 | graphics/circuit_macros/doc/Oblique.m4 -2020/05/01 | 1433 | graphics/circuit_macros/doc/OpampMan.m4 -2020/05/01 | 835 | graphics/circuit_macros/doc/Opto.m4 -2020/05/01 | 1624 | graphics/circuit_macros/doc/ParSeries.m4 -2020/05/01 | 1802 | graphics/circuit_macros/doc/PconnMan.m4 -2020/05/01 | 15033 | graphics/circuit_macros/doc/Pconn.tex -2020/05/01 | 801 | graphics/circuit_macros/doc/Potentiometers.m4 -2020/05/01 | 774 | graphics/circuit_macros/doc/quick.m4 -2020/05/01 | 1921 | graphics/circuit_macros/doc/relaycoilMan.m4 -2020/05/01 | 1259 | graphics/circuit_macros/doc/RelayMan.m4 -2020/05/01 | 7316 | graphics/circuit_macros/doc/Relay.tex -2020/05/01 | 369 | graphics/circuit_macros/doc/sampleIC.m4 -2020/05/01 | 404 | graphics/circuit_macros/doc/Series.m4 -2020/05/01 | 1406 | graphics/circuit_macros/doc/ShiftRMan.m4 -2020/05/01 | 9425 | graphics/circuit_macros/doc/ShiftR.tex -2020/05/01 | 421 | graphics/circuit_macros/doc/Sinus.m4 -2020/05/01 | 2165 | graphics/circuit_macros/doc/SourcesMan.m4 -2020/05/01 | 15388 | graphics/circuit_macros/doc/Sources.tex -2020/05/01 | 217 | graphics/circuit_macros/doc/stringdims.m4 -2020/05/01 | 3973 | graphics/circuit_macros/doc/SwitchesMan.m4 -2020/05/01 | 19142 | graphics/circuit_macros/doc/Switches.tex -2020/05/01 | 1464 | graphics/circuit_macros/doc/Taps.m4 -2020/05/01 | 11 | graphics/circuit_macros/doc/test.tex -2020/05/01 | 1022 | graphics/circuit_macros/doc/TgateMan.m4 -2020/05/01 | 4178 | graphics/circuit_macros/doc/Tgate.tex -2020/05/01 | 144 | graphics/circuit_macros/doc/Thermal.m4 -2020/05/01 | 3321 | graphics/circuit_macros/doc/thyristorMan.m4 -2020/05/01 | 20418 | graphics/circuit_macros/doc/thyristor.tex -2020/05/01 | 535 | graphics/circuit_macros/doc/Tline.m4 -2020/05/01 | 165 | graphics/circuit_macros/doc/tranbody.m4 -2020/05/01 | 660 | graphics/circuit_macros/doc/ujtMan.m4 -2020/05/01 | 2441 | graphics/circuit_macros/doc/ujt.tex -2020/05/01 | 926 | graphics/circuit_macros/doc/VariableMan.m4 -2020/05/01 | 10401 | graphics/circuit_macros/doc/Variable.tex -2020/05/01 | 12 | graphics/circuit_macros/doc/Version.tex -2020/05/01 | 3346 | graphics/circuit_macros/doc/WindingsMan.m4 -2020/05/01 | 449 | graphics/circuit_macros/doc/woodchips.m4 -2020/05/01 | 2912 | graphics/circuit_macros/doc/Workflow.m4 -2020/05/01 | 1526 | graphics/circuit_macros/doc/XformMan.m4 -2020/05/01 | 25849 | graphics/circuit_macros/doc/Xform.tex -2020/05/01 | 19250 | graphics/circuit_macros/dpictools.pic -2020/05/01 | 1730 | graphics/circuit_macros/examples/ABlogix.m4 -2020/05/01 | 2402 | graphics/circuit_macros/examples/Adder.m4 -2020/05/01 | 4205 | graphics/circuit_macros/examples/Alogix.m4 -2020/05/01 | 494 | graphics/circuit_macros/examples/AmpTable.m4 -2020/05/01 | 1211 | graphics/circuit_macros/examples/Antennas.m4 -2020/05/01 | 5042 | graphics/circuit_macros/examples/AntiqueClock.m4 -2020/05/01 | 777 | graphics/circuit_macros/examples/Arrester.m4 -2020/05/01 | 2634 | graphics/circuit_macros/examples/Audio.m4 -2020/05/01 | 1962 | graphics/circuit_macros/examples/Autologix.m4 -2020/05/01 | 4638 | graphics/circuit_macros/examples/Ball.m4 -2020/05/01 | 1619 | graphics/circuit_macros/examples/Bip.m4 -2020/05/01 | 905 | graphics/circuit_macros/examples/birds.m4 -2020/05/01 | 1075 | graphics/circuit_macros/examples/bistable.m4 -2020/05/01 | 3175 | graphics/circuit_macros/examples/Blogix.m4 -2020/05/01 | 2542 | graphics/circuit_macros/examples/brace.m4 -2020/05/01 | 1024 | graphics/circuit_macros/examples/Btree.m4 -2020/05/01 | 3508 | graphics/circuit_macros/examples/Buttons.m4 -2020/05/01 | 991 | graphics/circuit_macros/examples/Byte.m4 -2020/05/01 | 6371 | graphics/circuit_macros/examples/CanLogic.m4 -2020/05/01 | 2670 | graphics/circuit_macros/examples/CctTable.m4 -2020/05/01 | 233 | graphics/circuit_macros/examples/Ccurve.m4 -2020/05/01 | 1039 | graphics/circuit_macros/examples/chaos.m4 -2020/05/01 | 8955 | graphics/circuit_macros/examples/Chuck.m4 -2020/05/01 | 482 | graphics/circuit_macros/examples/clock.m4 -2020/05/01 | 674 | graphics/circuit_macros/examples/Connectors.m4 -2020/05/01 | 2179 | graphics/circuit_macros/examples/Conn.m4 -2020/05/01 | 3326 | graphics/circuit_macros/examples/Contact.m4 -2020/05/01 | 1585 | graphics/circuit_macros/examples/Contacts.m4 -2020/05/01 | 4288 | graphics/circuit_macros/examples/control.m4 -2020/05/01 | 551 | graphics/circuit_macros/examples/Counting.m4 -2020/05/01 | 1358 | graphics/circuit_macros/examples/Crossbar.m4 -2020/05/01 | 2520 | graphics/circuit_macros/examples/Crow.m4 -2020/05/01 | 1879 | graphics/circuit_macros/examples/Cruller.m4 -2020/05/01 | 2295 | graphics/circuit_macros/examples/csc.m4 -2020/05/01 | 6003 | graphics/circuit_macros/examples/CSlight.m4 -2020/05/01 | 5890 | graphics/circuit_macros/examples/Csource.m4 -2020/05/01 | 460 | graphics/circuit_macros/examples/debug1.tex -2020/05/01 | 1959 | graphics/circuit_macros/examples/debug2.m4 -2020/05/01 | 655 | graphics/circuit_macros/examples/Decoder.m4 -2020/05/01 | 1485 | graphics/circuit_macros/examples/Demultiplexer.m4 -2020/05/01 | 654 | graphics/circuit_macros/examples/diamond.m4 -2020/05/01 | 6854 | graphics/circuit_macros/examples/Dini.m4 -2020/05/01 | 1467 | graphics/circuit_macros/examples/Diodes.m4 -2020/05/01 | 1966 | graphics/circuit_macros/examples/Drive.m4 -2020/05/01 | 980 | graphics/circuit_macros/examples/Emarrows.m4 -2020/05/01 | 2584 | graphics/circuit_macros/examples/Escher.m4 -2020/05/01 | 4305 | graphics/circuit_macros/examples/Euro.m4 -2020/05/01 | 2412 | graphics/circuit_macros/examples/ex00.m4 -2020/05/01 | 697 | graphics/circuit_macros/examples/ex01.m4 -2020/05/01 | 1100 | graphics/circuit_macros/examples/ex02.m4 -2020/05/01 | 673 | graphics/circuit_macros/examples/ex03.m4 -2020/05/01 | 1654 | graphics/circuit_macros/examples/ex04.m4 -2020/05/01 | 1608 | graphics/circuit_macros/examples/ex05.m4 -2020/05/01 | 2170 | graphics/circuit_macros/examples/ex06.m4 -2020/05/01 | 2556 | graphics/circuit_macros/examples/ex08.m4 -2020/05/01 | 4312 | graphics/circuit_macros/examples/ex09.m4 -2020/05/01 | 1492 | graphics/circuit_macros/examples/ex10.m4 -2020/05/01 | 2361 | graphics/circuit_macros/examples/ex11.m4 -2020/05/01 | 3339 | graphics/circuit_macros/examples/ex12.m4 -2020/05/01 | 1003 | graphics/circuit_macros/examples/ex15.m4 -2020/05/01 | 1865 | graphics/circuit_macros/examples/ex16.m4 -2020/05/01 | 1126 | graphics/circuit_macros/examples/ex17.m4 -2020/05/01 | 865 | graphics/circuit_macros/examples/ex18.m4 -2020/05/01 | 2000 | graphics/circuit_macros/examples/ex21.m4 -2020/05/01 | 893788 | graphics/circuit_macros/examples/examples.pdf -2020/05/01 | 1766 | graphics/circuit_macros/examples/examples.tex -2020/05/01 | 8372 | graphics/circuit_macros/examples/exp.m4 -2020/05/01 | 4489 | graphics/circuit_macros/examples/fet.m4 -2020/05/01 | 17076 | graphics/circuit_macros/examples/files.tex -2020/05/01 | 645 | graphics/circuit_macros/examples/Floor.m4 -2020/05/01 | 5552 | graphics/circuit_macros/examples/FlowchartDefs.m4 -2020/05/01 | 3911 | graphics/circuit_macros/examples/Flow.m4 -2020/05/01 | 999 | graphics/circuit_macros/examples/Fuses.m4 -2020/05/01 | 421 | graphics/circuit_macros/examples/GrayCode.m4 -2020/05/01 | 5478 | graphics/circuit_macros/examples/graysurf.m4 -2020/05/01 | 815 | graphics/circuit_macros/examples/Grounds.m4 -2020/05/01 | 1132 | graphics/circuit_macros/examples/Headers.m4 -2020/05/01 | 1458 | graphics/circuit_macros/examples/header.tex -2020/05/01 | 13026 | graphics/circuit_macros/examples/Heathkit.m4 -2020/05/01 | 2068 | graphics/circuit_macros/examples/I2L.m4 -2020/05/01 | 1668 | graphics/circuit_macros/examples/IC10107.m4 -2020/05/01 | 9861 | graphics/circuit_macros/examples/ics.m4 -2020/05/01 | 32 | graphics/circuit_macros/examples/Incl.eps.bb -2020/05/01 | 45323 | graphics/circuit_macros/examples/Incl.eps.gz -2020/05/01 | 741 | graphics/circuit_macros/examples/Incleps.m4 -2020/05/01 | 29772 | graphics/circuit_macros/examples/Incl.pdf -2020/05/01 | 709 | graphics/circuit_macros/examples/Inclpdf.m4 -2020/05/01 | 2362 | graphics/circuit_macros/examples/Jack.m4 -2020/05/01 | 2696 | graphics/circuit_macros/examples/keyval.m4 -2020/05/01 | 489 | graphics/circuit_macros/examples/Koch.m4 -2020/05/01 | 7113 | graphics/circuit_macros/examples/lcct.m4 -2020/05/01 | 2119 | graphics/circuit_macros/examples/Logic.m4 -2020/05/01 | 2304 | graphics/circuit_macros/examples/Loglog.m4 -2020/05/01 | 8815 | graphics/circuit_macros/examples/Makefile -2020/05/01 | 2939 | graphics/circuit_macros/examples/MC.m4 -2020/05/01 | 94474 | graphics/circuit_macros/examples/mf/cct.mf -2020/05/01 | 776 | graphics/circuit_macros/examples/mf/cct.tfm -2020/05/01 | 4615 | graphics/circuit_macros/examples/mf/font.m4 -2020/05/01 | 1529 | graphics/circuit_macros/examples/mf/Makefile -2020/05/01 | 1076 | graphics/circuit_macros/examples/mf/mftest -2020/05/01 | 3785 | graphics/circuit_macros/examples/Mixer.m4 -2020/05/01 | 1922 | graphics/circuit_macros/examples/MotorControl.m4 -2020/05/01 | 409 | graphics/circuit_macros/examples/mpost/examplesmpost.tex -2020/05/01 | 4240 | graphics/circuit_macros/examples/mpost/Makefile -2020/05/01 | 685 | graphics/circuit_macros/examples/mpost/mptest -2020/05/01 | 703 | graphics/circuit_macros/examples/mpost/README-mpost -2020/05/01 | 418 | graphics/circuit_macros/examples/mpost/tstmpost.tex -2020/05/01 | 1400 | graphics/circuit_macros/examples/Multiplexer.m4 -2020/05/01 | 499 | graphics/circuit_macros/examples/NLG.m4 -2020/05/01 | 1128 | graphics/circuit_macros/examples/NPDT.m4 -2020/05/01 | 1040 | graphics/circuit_macros/examples/Nport.m4 -2020/05/01 | 2792 | graphics/circuit_macros/examples/OpAmpFilter.m4 -2020/05/01 | 1433 | graphics/circuit_macros/examples/Opamp.m4 -2020/05/01 | 2442 | graphics/circuit_macros/examples/Optoiso.m4 -2020/05/01 | 1852 | graphics/circuit_macros/examples/Orbits.m4 -2020/05/01 | 1802 | graphics/circuit_macros/examples/Pconn.m4 -2020/05/01 | 1375 | graphics/circuit_macros/examples/person.m4 -2020/05/01 | 2674 | graphics/circuit_macros/examples/Planes.m4 -2020/05/01 | 1174 | graphics/circuit_macros/examples/PPA.m4 -2020/05/01 | 715 | graphics/circuit_macros/examples/psfrag/examplespsfrag.tex -2020/05/01 | 4670 | graphics/circuit_macros/examples/psfrag/Makefile -2020/05/01 | 317 | graphics/circuit_macros/examples/psfrag/README-psfrag.txt -2020/05/01 | 371 | graphics/circuit_macros/examples/psfrag/tstpsfrag.tex -2020/05/01 | 3919 | graphics/circuit_macros/examples/PushPull.m4 -2020/05/01 | 2014 | graphics/circuit_macros/examples/pwrsupply.m4 -2020/05/01 | 918 | graphics/circuit_macros/examples/Quantum.m4 -2020/05/01 | 774 | graphics/circuit_macros/examples/quick.m4 -2020/05/01 | 3545 | graphics/circuit_macros/examples/random.m4 -2020/05/01 | 2828 | graphics/circuit_macros/examples/README-examples -2020/05/01 | 7006 | graphics/circuit_macros/examples/Rectifiers.m4 -2020/05/01 | 3825 | graphics/circuit_macros/examples/recycle.m4 -2020/05/01 | 1921 | graphics/circuit_macros/examples/relaycoil.m4 -2020/05/01 | 1259 | graphics/circuit_macros/examples/Relay.m4 -2020/05/01 | 1443 | graphics/circuit_macros/examples/Resolver.m4 -2020/05/01 | 4569 | graphics/circuit_macros/examples/rose.m4 -2020/05/01 | 221 | graphics/circuit_macros/examples/rotate.tex -2020/05/01 | 1525 | graphics/circuit_macros/examples/rotatetext.m4 -2020/05/01 | 518 | graphics/circuit_macros/examples/Rotbox.m4 -2020/05/01 | 365 | graphics/circuit_macros/examples/rotellipse.m4 -2020/05/01 | 740 | graphics/circuit_macros/examples/SampleFlow.m4 -2020/05/01 | 1778 | graphics/circuit_macros/examples/Schottky.m4 -2020/05/01 | 2761 | graphics/circuit_macros/examples/sfg.m4 -2020/05/01 | 4751 | graphics/circuit_macros/examples/Shaky.m4 -2020/05/01 | 7529 | graphics/circuit_macros/examples/shapes.m4 -2020/05/01 | 1406 | graphics/circuit_macros/examples/ShiftR.m4 -2020/05/01 | 1331 | graphics/circuit_macros/examples/Sierpinski.m4 -2020/05/01 | 419 | graphics/circuit_macros/examples/Sixpole.m4 -2020/05/01 | 370 | graphics/circuit_macros/examples/snake.m4 -2020/05/01 | 2165 | graphics/circuit_macros/examples/Sources.m4 -2020/05/01 | 1906 | graphics/circuit_macros/examples/SPM.m4 -2020/05/01 | 380 | graphics/circuit_macros/examples/SQUID.m4 -2020/05/01 | 947 | graphics/circuit_macros/examples/squiggle.m4 -2020/05/01 | 1955 | graphics/circuit_macros/examples/svg/ABlogixSVG.m4 -2020/05/01 | 2528 | graphics/circuit_macros/examples/svg/AdderSVG.m4 -2020/05/01 | 4337 | graphics/circuit_macros/examples/svg/AlogixSVG.m4 -2020/05/01 | 538 | graphics/circuit_macros/examples/svg/AmpTableSVG.m4 -2020/05/01 | 1090 | graphics/circuit_macros/examples/svg/AntennasSVG.m4 -2020/05/01 | 5044 | graphics/circuit_macros/examples/svg/AntiqueClockSVG.m4 -2020/05/01 | 2720 | graphics/circuit_macros/examples/svg/AudioSVG.m4 -2020/05/01 | 1812 | graphics/circuit_macros/examples/svg/BipSVG.m4 -2020/05/01 | 1080 | graphics/circuit_macros/examples/svg/BtreeSVG.m4 -2020/05/01 | 3567 | graphics/circuit_macros/examples/svg/ButtonsSVG.m4 -2020/05/01 | 937 | graphics/circuit_macros/examples/svg/ByteSVG.m4 -2020/05/01 | 6413 | graphics/circuit_macros/examples/svg/CanLogicSVG.m4 -2020/05/01 | 2180 | graphics/circuit_macros/examples/svg/CctTableSVG.m4 -2020/05/01 | 726 | graphics/circuit_macros/examples/svg/ConnectorsSVG.m4 -2020/05/01 | 2111 | graphics/circuit_macros/examples/svg/ConnSVG.m4 -2020/05/01 | 1737 | graphics/circuit_macros/examples/svg/ContactsSVG.m4 -2020/05/01 | 3646 | graphics/circuit_macros/examples/svg/ContactSVG.m4 -2020/05/01 | 3206 | graphics/circuit_macros/examples/svg/controlSVG.m4 -2020/05/01 | 793 | graphics/circuit_macros/examples/svg/CountingSVG.m4 -2020/05/01 | 1387 | graphics/circuit_macros/examples/svg/CrossbarSVG.m4 -2020/05/01 | 2525 | graphics/circuit_macros/examples/svg/CrowSVG.m4 -2020/05/01 | 1882 | graphics/circuit_macros/examples/svg/CrullerSVG.m4 -2020/05/01 | 2324 | graphics/circuit_macros/examples/svg/cscSVG.m4 -2020/05/01 | 7418 | graphics/circuit_macros/examples/svg/CsourceSVG.m4 -2020/05/01 | 745 | graphics/circuit_macros/examples/svg/DecoderSVG.m4 -2020/05/01 | 1373 | graphics/circuit_macros/examples/svg/DemultiplexerSVG.m4 -2020/05/01 | 609 | graphics/circuit_macros/examples/svg/diamondSVG.m4 -2020/05/01 | 6854 | graphics/circuit_macros/examples/svg/DiniSVG.m4 -2020/05/01 | 1429 | graphics/circuit_macros/examples/svg/DiodesSVG.m4 -2020/05/01 | 1966 | graphics/circuit_macros/examples/svg/DriveSVG.m4 -2020/05/01 | 1070 | graphics/circuit_macros/examples/svg/EmarrowsSVG.m4 -2020/05/01 | 2443 | graphics/circuit_macros/examples/svg/ex00SVG.m4 -2020/05/01 | 933 | graphics/circuit_macros/examples/svg/ex01SVG.m4 -2020/05/01 | 1093 | graphics/circuit_macros/examples/svg/ex02SVG.m4 -2020/05/01 | 855 | graphics/circuit_macros/examples/svg/ex03SVG.m4 -2020/05/01 | 1891 | graphics/circuit_macros/examples/svg/ex04SVG.m4 -2020/05/01 | 1807 | graphics/circuit_macros/examples/svg/ex05SVG.m4 -2020/05/01 | 2018 | graphics/circuit_macros/examples/svg/ex06SVG.m4 -2020/05/01 | 2559 | graphics/circuit_macros/examples/svg/ex08SVG.m4 -2020/05/01 | 4119 | graphics/circuit_macros/examples/svg/ex09SVG.m4 -2020/05/01 | 1699 | graphics/circuit_macros/examples/svg/ex10SVG.m4 -2020/05/01 | 2685 | graphics/circuit_macros/examples/svg/ex11SVG.m4 -2020/05/01 | 3522 | graphics/circuit_macros/examples/svg/ex12SVG.m4 -2020/05/01 | 970 | graphics/circuit_macros/examples/svg/ex15SVG.m4 -2020/05/01 | 1893 | graphics/circuit_macros/examples/svg/ex16SVG.m4 -2020/05/01 | 1204 | graphics/circuit_macros/examples/svg/ex17SVG.m4 -2020/05/01 | 1065 | graphics/circuit_macros/examples/svg/ex18SVG.m4 -2020/05/01 | 2177 | graphics/circuit_macros/examples/svg/ex21SVG.m4 -2020/05/01 | 13734 | graphics/circuit_macros/examples/svg/examplesSVG.htmx -2020/05/01 | 10589 | graphics/circuit_macros/examples/svg/expSVG.m4 -2020/05/01 | 3836 | graphics/circuit_macros/examples/svg/fetSVG.m4 -2020/05/01 | 9954 | graphics/circuit_macros/examples/svg/FlowSVG.m4 -2020/05/01 | 538 | graphics/circuit_macros/examples/svg/FontsSVG.m4 -2020/05/01 | 959 | graphics/circuit_macros/examples/svg/FusesSVG.m4 -2020/05/01 | 422 | graphics/circuit_macros/examples/svg/GrayCodeSVG.m4 -2020/05/01 | 5521 | graphics/circuit_macros/examples/svg/graysurfSVG.m4 -2020/05/01 | 810 | graphics/circuit_macros/examples/svg/GroundsSVG.m4 -2020/05/01 | 1265 | graphics/circuit_macros/examples/svg/HeadersSVG.m4 -2020/05/01 | 12711 | graphics/circuit_macros/examples/svg/HeathkitSVG.m4 -2020/05/01 | 2171 | graphics/circuit_macros/examples/svg/I2LSVG.m4 -2020/05/01 | 9276 | graphics/circuit_macros/examples/svg/icsSVG.m4 -2020/05/01 | 4003 | graphics/circuit_macros/examples/svg/InclepsSVG.m4 -2020/05/01 | 21384 | graphics/circuit_macros/examples/svg/Incl.jpg -2020/05/01 | 2051 | graphics/circuit_macros/examples/svg/JackSVG.m4 -2020/05/01 | 7203 | graphics/circuit_macros/examples/svg/lcctSVG.m4 -2020/05/01 | 6216 | graphics/circuit_macros/examples/svg/LgateSVG.m4 -2020/05/01 | 63 | graphics/circuit_macros/examples/svg/local_init.m4 -2020/05/01 | 1931 | graphics/circuit_macros/examples/svg/LogicSVG.m4 -2020/05/01 | 2241 | graphics/circuit_macros/examples/svg/LoglogSVG.m4 -2020/05/01 | 4582 | graphics/circuit_macros/examples/svg/Makefile -2020/05/01 | 3421 | graphics/circuit_macros/examples/svg/MCSVG.m4 -2020/05/01 | 3489 | graphics/circuit_macros/examples/svg/MixerSVG.m4 -2020/05/01 | 1953 | graphics/circuit_macros/examples/svg/MotorControlSVG.m4 -2020/05/01 | 1467 | graphics/circuit_macros/examples/svg/MultiplexerSVG.m4 -2020/05/01 | 532 | graphics/circuit_macros/examples/svg/NLGSVG.m4 -2020/05/01 | 1157 | graphics/circuit_macros/examples/svg/NPDTSVG.m4 -2020/05/01 | 748 | graphics/circuit_macros/examples/svg/Np.m4 -2020/05/01 | 1238 | graphics/circuit_macros/examples/svg/NportSVG.m4 -2020/05/01 | 1034 | graphics/circuit_macros/examples/svg/OpampSVG.m4 -2020/05/01 | 2551 | graphics/circuit_macros/examples/svg/OptoisoSVG.m4 -2020/05/01 | 10445 | graphics/circuit_macros/examples/svg/paletteSVG.m4 -2020/05/01 | 1776 | graphics/circuit_macros/examples/svg/PconnSVG.m4 -2020/05/01 | 3779 | graphics/circuit_macros/examples/svg/PushPullSVG.m4 -2020/05/01 | 862 | graphics/circuit_macros/examples/svg/pwrsupplySVG.m4 -2020/05/01 | 947 | graphics/circuit_macros/examples/svg/QuantumSVG.m4 -2020/05/01 | 839 | graphics/circuit_macros/examples/svg/quickSVG.m4 -2020/05/01 | 3573 | graphics/circuit_macros/examples/svg/randomSVG.m4 -2020/05/01 | 7546 | graphics/circuit_macros/examples/svg/RectifiersSVG.m4 -2020/05/01 | 3825 | graphics/circuit_macros/examples/svg/recycleSVG.m4 -2020/05/01 | 2069 | graphics/circuit_macros/examples/svg/relaycoilSVG.m4 -2020/05/01 | 1431 | graphics/circuit_macros/examples/svg/RelaySVG.m4 -2020/05/01 | 4624 | graphics/circuit_macros/examples/svg/roseSVG.m4 -2020/05/01 | 545 | graphics/circuit_macros/examples/svg/RotboxSVG.m4 -2020/05/01 | 1837 | graphics/circuit_macros/examples/svg/SchottkySVG.m4 -2020/05/01 | 3290 | graphics/circuit_macros/examples/svg/sfgSVG.m4 -2020/05/01 | 7526 | graphics/circuit_macros/examples/svg/shapesSVG.m4 -2020/05/01 | 1446 | graphics/circuit_macros/examples/svg/ShiftRSVG.m4 -2020/05/01 | 1331 | graphics/circuit_macros/examples/svg/SierpinskiSVG.m4 -2020/05/01 | 419 | graphics/circuit_macros/examples/svg/SixpoleSVG.m4 -2020/05/01 | 1907 | graphics/circuit_macros/examples/svg/SourcesSVG.m4 -2020/05/01 | 417 | graphics/circuit_macros/examples/svg/SQUIDSVG.m4 -2020/05/01 | 1050 | graphics/circuit_macros/examples/svg/SVGconfig.m4 -2020/05/01 | 4309 | graphics/circuit_macros/examples/svg/SwitchesSVG.m4 -2020/05/01 | 1055 | graphics/circuit_macros/examples/svg/TgateSVG.m4 -2020/05/01 | 1444 | graphics/circuit_macros/examples/svg/ThreeSVG.m4 -2020/05/01 | 3310 | graphics/circuit_macros/examples/svg/thyristorSVG.m4 -2020/05/01 | 1612 | graphics/circuit_macros/examples/svg/TimerSVG.m4 -2020/05/01 | 9198 | graphics/circuit_macros/examples/svg/tstSVG.htmx -2020/05/01 | 1675 | graphics/circuit_macros/examples/svg/TTLnandSVG.m4 -2020/05/01 | 3091 | graphics/circuit_macros/examples/svg/TtreeSVG.m4 -2020/05/01 | 12478 | graphics/circuit_macros/examples/svg/TubediagsSVG.m4 -2020/05/01 | 682 | graphics/circuit_macros/examples/svg/ujtSVG.m4 -2020/05/01 | 988 | graphics/circuit_macros/examples/svg/VariableSVG.m4 -2020/05/01 | 2994 | graphics/circuit_macros/examples/svg/WindingsSVG.m4 -2020/05/01 | 353 | graphics/circuit_macros/examples/svg/windows.m4 -2020/05/01 | 3631 | graphics/circuit_macros/examples/svg/wormSVG.m4 -2020/05/01 | 1559 | graphics/circuit_macros/examples/svg/XformSVG.m4 -2020/05/01 | 1985 | graphics/circuit_macros/examples/svg/XORSVG.m4 -2020/05/01 | 3973 | graphics/circuit_macros/examples/Switches.m4 -2020/05/01 | 591 | graphics/circuit_macros/examples/test.m4 -2020/05/01 | 416 | graphics/circuit_macros/examples/testpdf.tex -2020/05/01 | 1022 | graphics/circuit_macros/examples/Tgate.m4 -2020/05/01 | 1287 | graphics/circuit_macros/examples/Three.m4 -2020/05/01 | 3321 | graphics/circuit_macros/examples/thyristor.m4 -2020/05/01 | 382 | graphics/circuit_macros/examples/tikz.tex -2020/05/01 | 1546 | graphics/circuit_macros/examples/Timer.m4 -2020/05/01 | 219 | graphics/circuit_macros/examples/tst1.tex -2020/05/01 | 613 | graphics/circuit_macros/examples/tst.tex -2020/05/01 | 1558 | graphics/circuit_macros/examples/TTLnand.m4 -2020/05/01 | 2097 | graphics/circuit_macros/examples/Ttree.m4 -2020/05/01 | 9840 | graphics/circuit_macros/examples/tubedefs.m4 -2020/05/01 | 13264 | graphics/circuit_macros/examples/Tubediags.m4 -2020/05/01 | 660 | graphics/circuit_macros/examples/ujt.m4 -2020/05/01 | 926 | graphics/circuit_macros/examples/Variable.m4 -2020/05/01 | 442 | graphics/circuit_macros/examples/Wheat.m4 -2020/05/01 | 3346 | graphics/circuit_macros/examples/Windings.m4 -2020/05/01 | 353 | graphics/circuit_macros/examples/windows.m4 -2020/05/01 | 2799 | graphics/circuit_macros/examples/worm.m4 -2020/05/01 | 337 | graphics/circuit_macros/examples/xfig/Makefile -2020/05/01 | 21230 | graphics/circuit_macros/examples/xfig/xfiglib.fig -2020/05/01 | 5969 | graphics/circuit_macros/examples/xfig/xfiglib.m4 -2020/05/01 | 1526 | graphics/circuit_macros/examples/Xform.m4 -2020/05/01 | 1823 | graphics/circuit_macros/examples/XOR.m4 -2020/05/01 | 656 | graphics/circuit_macros/examples/Zcos.m4 -2020/05/01 | 1019 | graphics/circuit_macros/gpic.m4 -2020/05/01 | 3946 | graphics/circuit_macros/INSTALL -2020/05/01 | 11273 | graphics/circuit_macros/lib3D.m4 -2020/05/01 | 161931 | graphics/circuit_macros/libcct.m4 -2020/05/01 | 78720 | graphics/circuit_macros/libgen.m4 -2020/05/01 | 47768 | graphics/circuit_macros/liblog.m4 -2020/05/01 | 19176 | graphics/circuit_macros/Licence.txt -2020/05/01 | 1639 | graphics/circuit_macros/Makefile -2020/05/01 | 1114 | graphics/circuit_macros/mfpic.m4 -2020/05/01 | 1640 | graphics/circuit_macros/mpost.m4 -2020/05/01 | 2085 | graphics/circuit_macros/pgf.m4 -2020/05/01 | 2834 | graphics/circuit_macros/postscript.m4 -2020/05/01 | 706 | graphics/circuit_macros/psfrag.m4 -2020/05/01 | 2099 | graphics/circuit_macros/pstricks.m4 -2020/05/01 | 16140 | graphics/circuit_macros/README -2020/05/01 | 9902 | graphics/circuit_macros/svg.m4 -2020/05/01 | 1029 | graphics/circuit_macros/xfig.m4 -2020/05/01 | 2533091 | graphics/circuit_macros.zip +2020/12/20 | 1185 | graphics/circuit_macros/boxdims.sty +2020/12/20 | 12472 | graphics/circuit_macros/CHANGES +2020/12/20 | 462 | graphics/circuit_macros/Copying +2020/12/20 | 14287 | graphics/circuit_macros/darrow.m4 +2020/12/20 | 26 | graphics/circuit_macros/doc/ACsymbol.m4 +2020/12/20 | 494 | graphics/circuit_macros/doc/AmpTableMan.m4 +2020/12/20 | 1940 | graphics/circuit_macros/doc/AmpTable.tex +2020/12/20 | 1230 | graphics/circuit_macros/doc/AntennasMan.m4 +2020/12/20 | 1618 | graphics/circuit_macros/doc/ArrestersMan.m4 +2020/12/20 | 2634 | graphics/circuit_macros/doc/AudioMan.m4 +2020/12/20 | 10164 | graphics/circuit_macros/doc/Audio.tex +2020/12/20 | 131 | graphics/circuit_macros/doc/Axes.m4 +2020/12/20 | 614 | graphics/circuit_macros/doc/BigResistor.m4 +2020/12/20 | 1619 | graphics/circuit_macros/doc/BipMan.m4 +2020/12/20 | 5545 | graphics/circuit_macros/doc/Bip.tex +2020/12/20 | 1074 | graphics/circuit_macros/doc/bistableMan.m4 +2020/12/20 | 1860 | graphics/circuit_macros/doc/bi_trans.m4 +2020/12/20 | 130 | graphics/circuit_macros/doc/bitrbody.m4 +2020/12/20 | 50 | graphics/circuit_macros/doc/bitr.m4 +2020/12/20 | 137028 | graphics/circuit_macros/doc/body.tex +2020/12/20 | 1953 | graphics/circuit_macros/doc/Buffer.m4 +2020/12/20 | 25460 | graphics/circuit_macros/doc/Capture.JPG +2020/12/20 | 2735 | graphics/circuit_macros/doc/CctTableMan.m4 +2020/12/20 | 29074 | graphics/circuit_macros/doc/CctTable.tex +2020/12/20 | 4073 | graphics/circuit_macros/doc/Circuit_macros.bib +2020/12/20 | 950156 | graphics/circuit_macros/doc/Circuit_macros.pdf +2020/12/20 | 2639 | graphics/circuit_macros/doc/Circuit_macros.tex +2020/12/20 | 1857 | graphics/circuit_macros/doc/Composite.m4 +2020/12/20 | 1120 | graphics/circuit_macros/doc/ConfigA.m4 +2020/12/20 | 1257 | graphics/circuit_macros/doc/ConfigB.m4 +2020/12/20 | 1291 | graphics/circuit_macros/doc/ConfigC.m4 +2020/12/20 | 2179 | graphics/circuit_macros/doc/ConnMan.m4 +2020/12/20 | 6550 | graphics/circuit_macros/doc/Conn.tex +2020/12/20 | 3326 | graphics/circuit_macros/doc/ContactMan.m4 +2020/12/20 | 1585 | graphics/circuit_macros/doc/ContactsMan.m4 +2020/12/20 | 6067 | graphics/circuit_macros/doc/Contacts.tex +2020/12/20 | 13833 | graphics/circuit_macros/doc/Contact.tex +2020/12/20 | 1995 | graphics/circuit_macros/doc/Corners.m4 +2020/12/20 | 1329 | graphics/circuit_macros/doc/currents.m4 +2020/12/20 | 2389 | graphics/circuit_macros/doc/Dac.m4 +2020/12/20 | 1151 | graphics/circuit_macros/doc/Darlington.m4 +2020/12/20 | 26 | graphics/circuit_macros/doc/DCsymbol.m4 +2020/12/20 | 81656 | graphics/circuit_macros/doc/defines.tex +2020/12/20 | 1485 | graphics/circuit_macros/doc/DemultiplexerMan.m4 +2020/12/20 | 4817 | graphics/circuit_macros/doc/Demultiplexer.tex +2020/12/20 | 1467 | graphics/circuit_macros/doc/DiodesMan.m4 +2020/12/20 | 12050 | graphics/circuit_macros/doc/Diodes.tex +2020/12/20 | 483 | graphics/circuit_macros/doc/eboxdims.m4 +2020/12/20 | 980 | graphics/circuit_macros/doc/EmarrowsMan.m4 +2020/12/20 | 5502 | graphics/circuit_macros/doc/Emarrows.tex +2020/12/20 | 1229 | graphics/circuit_macros/doc/fbfilter.m4 +2020/12/20 | 4489 | graphics/circuit_macros/doc/fetMan.m4 +2020/12/20 | 16420 | graphics/circuit_macros/doc/fet.tex +2020/12/20 | 329 | graphics/circuit_macros/doc/FF.m4 +2020/12/20 | 1975 | graphics/circuit_macros/doc/FlipFlop.m4 +2020/12/20 | 960 | graphics/circuit_macros/doc/Flowdiag.m4 +2020/12/20 | 999 | graphics/circuit_macros/doc/FusesMan.m4 +2020/12/20 | 4789 | graphics/circuit_macros/doc/Fuses.tex +2020/12/20 | 831 | graphics/circuit_macros/doc/GroundsMan.m4 +2020/12/20 | 2661 | graphics/circuit_macros/doc/Grounds.tex +2020/12/20 | 1132 | graphics/circuit_macros/doc/HeadersMan.m4 +2020/12/20 | 7503 | graphics/circuit_macros/doc/Headers.tex +2020/12/20 | 2013 | graphics/circuit_macros/doc/HybridPi.m4 +2020/12/20 | 2362 | graphics/circuit_macros/doc/JackMan.m4 +2020/12/20 | 12006 | graphics/circuit_macros/doc/Jack.tex +2020/12/20 | 2119 | graphics/circuit_macros/doc/LogicMan.m4 +2020/12/20 | 7533 | graphics/circuit_macros/doc/Logic.tex +2020/12/20 | 269 | graphics/circuit_macros/doc/Loop.m4 +2020/12/20 | 387 | graphics/circuit_macros/doc/lrarrows.m4 +2020/12/20 | 4687 | graphics/circuit_macros/doc/Makefile +2020/12/20 | 1575 | graphics/circuit_macros/doc/mplex.m4 +2020/12/20 | 1400 | graphics/circuit_macros/doc/MultiplexerMan.m4 +2020/12/20 | 4964 | graphics/circuit_macros/doc/Multiplexer.tex +2020/12/20 | 499 | graphics/circuit_macros/doc/NLGMan.m4 +2020/12/20 | 3183 | graphics/circuit_macros/doc/NLG.tex +2020/12/20 | 1128 | graphics/circuit_macros/doc/NPDTMan.m4 +2020/12/20 | 5137 | graphics/circuit_macros/doc/NPDT.tex +2020/12/20 | 1040 | graphics/circuit_macros/doc/NportMan.m4 +2020/12/20 | 4666 | graphics/circuit_macros/doc/Nport.tex +2020/12/20 | 137 | graphics/circuit_macros/doc/oaxbody.m4 +2020/12/20 | 48 | graphics/circuit_macros/doc/oax.m4 +2020/12/20 | 782 | graphics/circuit_macros/doc/Oblique.m4 +2020/12/20 | 1433 | graphics/circuit_macros/doc/OpampMan.m4 +2020/12/20 | 835 | graphics/circuit_macros/doc/Opto.m4 +2020/12/20 | 1624 | graphics/circuit_macros/doc/ParSeries.m4 +2020/12/20 | 1802 | graphics/circuit_macros/doc/PconnMan.m4 +2020/12/20 | 15033 | graphics/circuit_macros/doc/Pconn.tex +2020/12/20 | 801 | graphics/circuit_macros/doc/Potentiometers.m4 +2020/12/20 | 774 | graphics/circuit_macros/doc/quick.m4 +2020/12/20 | 1921 | graphics/circuit_macros/doc/relaycoilMan.m4 +2020/12/20 | 1259 | graphics/circuit_macros/doc/RelayMan.m4 +2020/12/20 | 7316 | graphics/circuit_macros/doc/Relay.tex +2020/12/20 | 369 | graphics/circuit_macros/doc/sampleIC.m4 +2020/12/20 | 404 | graphics/circuit_macros/doc/Series.m4 +2020/12/20 | 1406 | graphics/circuit_macros/doc/ShiftRMan.m4 +2020/12/20 | 9425 | graphics/circuit_macros/doc/ShiftR.tex +2020/12/20 | 421 | graphics/circuit_macros/doc/Sinus.m4 +2020/12/20 | 2165 | graphics/circuit_macros/doc/SourcesMan.m4 +2020/12/20 | 15388 | graphics/circuit_macros/doc/Sources.tex +2020/12/20 | 217 | graphics/circuit_macros/doc/stringdims.m4 +2020/12/20 | 3973 | graphics/circuit_macros/doc/SwitchesMan.m4 +2020/12/20 | 19142 | graphics/circuit_macros/doc/Switches.tex +2020/12/20 | 1464 | graphics/circuit_macros/doc/Taps.m4 +2020/12/20 | 11 | graphics/circuit_macros/doc/test.tex +2020/12/20 | 1022 | graphics/circuit_macros/doc/TgateMan.m4 +2020/12/20 | 4178 | graphics/circuit_macros/doc/Tgate.tex +2020/12/20 | 144 | graphics/circuit_macros/doc/Thermal.m4 +2020/12/20 | 3321 | graphics/circuit_macros/doc/thyristorMan.m4 +2020/12/20 | 20418 | graphics/circuit_macros/doc/thyristor.tex +2020/12/20 | 535 | graphics/circuit_macros/doc/Tline.m4 +2020/12/20 | 165 | graphics/circuit_macros/doc/tranbody.m4 +2020/12/20 | 660 | graphics/circuit_macros/doc/ujtMan.m4 +2020/12/20 | 2441 | graphics/circuit_macros/doc/ujt.tex +2020/12/20 | 926 | graphics/circuit_macros/doc/VariableMan.m4 +2020/12/20 | 10401 | graphics/circuit_macros/doc/Variable.tex +2020/12/20 | 12 | graphics/circuit_macros/doc/Version.tex +2020/12/20 | 3346 | graphics/circuit_macros/doc/WindingsMan.m4 +2020/12/20 | 449 | graphics/circuit_macros/doc/woodchips.m4 +2020/12/20 | 2912 | graphics/circuit_macros/doc/Workflow.m4 +2020/12/20 | 1526 | graphics/circuit_macros/doc/XformMan.m4 +2020/12/20 | 25849 | graphics/circuit_macros/doc/Xform.tex +2020/12/20 | 19250 | graphics/circuit_macros/dpictools.pic +2020/12/20 | 1730 | graphics/circuit_macros/examples/ABlogix.m4 +2020/12/20 | 2402 | graphics/circuit_macros/examples/Adder.m4 +2020/12/20 | 4205 | graphics/circuit_macros/examples/Alogix.m4 +2020/12/20 | 494 | graphics/circuit_macros/examples/AmpTable.m4 +2020/12/20 | 1230 | graphics/circuit_macros/examples/Antennas.m4 +2020/12/20 | 5042 | graphics/circuit_macros/examples/AntiqueClock.m4 +2020/12/20 | 777 | graphics/circuit_macros/examples/Arrester.m4 +2020/12/20 | 6243 | graphics/circuit_macros/examples/ASME_Y14-5.m4 +2020/12/20 | 771 | graphics/circuit_macros/examples/Attention.m4 +2020/12/20 | 2634 | graphics/circuit_macros/examples/Audio.m4 +2020/12/20 | 2517 | graphics/circuit_macros/examples/Autoencoder.m4 +2020/12/20 | 1962 | graphics/circuit_macros/examples/Autologix.m4 +2020/12/20 | 4638 | graphics/circuit_macros/examples/Ball.m4 +2020/12/20 | 1619 | graphics/circuit_macros/examples/Bip.m4 +2020/12/20 | 905 | graphics/circuit_macros/examples/birds.m4 +2020/12/20 | 1075 | graphics/circuit_macros/examples/bistable.m4 +2020/12/20 | 3175 | graphics/circuit_macros/examples/Blogix.m4 +2020/12/20 | 2542 | graphics/circuit_macros/examples/brace.m4 +2020/12/20 | 1024 | graphics/circuit_macros/examples/Btree.m4 +2020/12/20 | 3508 | graphics/circuit_macros/examples/Buttons.m4 +2020/12/20 | 991 | graphics/circuit_macros/examples/Byte.m4 +2020/12/20 | 6371 | graphics/circuit_macros/examples/CanLogic.m4 +2020/12/20 | 2736 | graphics/circuit_macros/examples/CctTable.m4 +2020/12/20 | 233 | graphics/circuit_macros/examples/Ccurve.m4 +2020/12/20 | 1039 | graphics/circuit_macros/examples/chaos.m4 +2020/12/20 | 7673 | graphics/circuit_macros/examples/Chuck.m4 +2020/12/20 | 482 | graphics/circuit_macros/examples/clock.m4 +2020/12/20 | 746 | graphics/circuit_macros/examples/Connectors.m4 +2020/12/20 | 2179 | graphics/circuit_macros/examples/Conn.m4 +2020/12/20 | 3326 | graphics/circuit_macros/examples/Contact.m4 +2020/12/20 | 1585 | graphics/circuit_macros/examples/Contacts.m4 +2020/12/20 | 4288 | graphics/circuit_macros/examples/control.m4 +2020/12/20 | 551 | graphics/circuit_macros/examples/Counting.m4 +2020/12/20 | 1521 | graphics/circuit_macros/examples/Coxeter.m4 +2020/12/20 | 1358 | graphics/circuit_macros/examples/Crossbar.m4 +2020/12/20 | 2520 | graphics/circuit_macros/examples/Crow.m4 +2020/12/20 | 1879 | graphics/circuit_macros/examples/Cruller.m4 +2020/12/20 | 2295 | graphics/circuit_macros/examples/csc.m4 +2020/12/20 | 6003 | graphics/circuit_macros/examples/CSlight.m4 +2020/12/20 | 5890 | graphics/circuit_macros/examples/Csource.m4 +2020/12/20 | 460 | graphics/circuit_macros/examples/debug1.tex +2020/12/20 | 1959 | graphics/circuit_macros/examples/debug2.m4 +2020/12/20 | 655 | graphics/circuit_macros/examples/Decoder.m4 +2020/12/20 | 1485 | graphics/circuit_macros/examples/Demultiplexer.m4 +2020/12/20 | 654 | graphics/circuit_macros/examples/diamond.m4 +2020/12/20 | 6854 | graphics/circuit_macros/examples/Dini.m4 +2020/12/20 | 1467 | graphics/circuit_macros/examples/Diodes.m4 +2020/12/20 | 1966 | graphics/circuit_macros/examples/Drive.m4 +2020/12/20 | 980 | graphics/circuit_macros/examples/Emarrows.m4 +2020/12/20 | 2584 | graphics/circuit_macros/examples/Escher.m4 +2020/12/20 | 4305 | graphics/circuit_macros/examples/Euro.m4 +2020/12/20 | 2412 | graphics/circuit_macros/examples/ex00.m4 +2020/12/20 | 2279 | graphics/circuit_macros/examples/ex01.m4 +2020/12/20 | 1100 | graphics/circuit_macros/examples/ex02.m4 +2020/12/20 | 673 | graphics/circuit_macros/examples/ex03.m4 +2020/12/20 | 1654 | graphics/circuit_macros/examples/ex04.m4 +2020/12/20 | 1608 | graphics/circuit_macros/examples/ex05.m4 +2020/12/20 | 2170 | graphics/circuit_macros/examples/ex06.m4 +2020/12/20 | 2556 | graphics/circuit_macros/examples/ex08.m4 +2020/12/20 | 4313 | graphics/circuit_macros/examples/ex09.m4 +2020/12/20 | 1492 | graphics/circuit_macros/examples/ex10.m4 +2020/12/20 | 2361 | graphics/circuit_macros/examples/ex11.m4 +2020/12/20 | 3339 | graphics/circuit_macros/examples/ex12.m4 +2020/12/20 | 1003 | graphics/circuit_macros/examples/ex15.m4 +2020/12/20 | 1865 | graphics/circuit_macros/examples/ex16.m4 +2020/12/20 | 1126 | graphics/circuit_macros/examples/ex17.m4 +2020/12/20 | 865 | graphics/circuit_macros/examples/ex18.m4 +2020/12/20 | 2000 | graphics/circuit_macros/examples/ex21.m4 +2020/12/20 | 876477 | graphics/circuit_macros/examples/examples.pdf +2020/12/20 | 1765 | graphics/circuit_macros/examples/examples.tex +2020/12/20 | 8372 | graphics/circuit_macros/examples/exp.m4 +2020/12/20 | 4489 | graphics/circuit_macros/examples/fet.m4 +2020/12/20 | 17196 | graphics/circuit_macros/examples/files.tex +2020/12/20 | 645 | graphics/circuit_macros/examples/Floor.m4 +2020/12/20 | 11270 | graphics/circuit_macros/examples/FlowchartDefs.m4 +2020/12/20 | 4751 | graphics/circuit_macros/examples/Flow.m4 +2020/12/20 | 999 | graphics/circuit_macros/examples/Fuses.m4 +2020/12/20 | 1250 | graphics/circuit_macros/examples/Geometry.m4 +2020/12/20 | 421 | graphics/circuit_macros/examples/GrayCode.m4 +2020/12/20 | 5478 | graphics/circuit_macros/examples/graysurf.m4 +2020/12/20 | 828 | graphics/circuit_macros/examples/Grounds.m4 +2020/12/20 | 1132 | graphics/circuit_macros/examples/Headers.m4 +2020/12/20 | 1458 | graphics/circuit_macros/examples/header.tex +2020/12/20 | 13324 | graphics/circuit_macros/examples/Heathkit.m4 +2020/12/20 | 2068 | graphics/circuit_macros/examples/I2L.m4 +2020/12/20 | 1668 | graphics/circuit_macros/examples/IC10107.m4 +2020/12/20 | 9686 | graphics/circuit_macros/examples/ics.m4 +2020/12/20 | 32 | graphics/circuit_macros/examples/Incl.eps.bb +2020/12/20 | 45323 | graphics/circuit_macros/examples/Incl.eps.gz +2020/12/20 | 741 | graphics/circuit_macros/examples/Incleps.m4 +2020/12/20 | 29772 | graphics/circuit_macros/examples/Incl.pdf +2020/12/20 | 709 | graphics/circuit_macros/examples/Inclpdf.m4 +2020/12/20 | 2362 | graphics/circuit_macros/examples/Jack.m4 +2020/12/20 | 2696 | graphics/circuit_macros/examples/keyval.m4 +2020/12/20 | 489 | graphics/circuit_macros/examples/Koch.m4 +2020/12/20 | 7113 | graphics/circuit_macros/examples/lcct.m4 +2020/12/20 | 2119 | graphics/circuit_macros/examples/Logic.m4 +2020/12/20 | 2304 | graphics/circuit_macros/examples/Loglog.m4 +2020/12/20 | 4459 | graphics/circuit_macros/examples/Lyap.m4 +2020/12/20 | 9800 | graphics/circuit_macros/examples/Makefile +2020/12/20 | 2986 | graphics/circuit_macros/examples/MC.m4 +2020/12/20 | 94474 | graphics/circuit_macros/examples/mf/cct.mf +2020/12/20 | 776 | graphics/circuit_macros/examples/mf/cct.tfm +2020/12/20 | 4615 | graphics/circuit_macros/examples/mf/font.m4 +2020/12/20 | 1529 | graphics/circuit_macros/examples/mf/Makefile +2020/12/20 | 1076 | graphics/circuit_macros/examples/mf/mftest +2020/12/20 | 3785 | graphics/circuit_macros/examples/Mixer.m4 +2020/12/20 | 1922 | graphics/circuit_macros/examples/MotorControl.m4 +2020/12/20 | 409 | graphics/circuit_macros/examples/mpost/examplesmpost.tex +2020/12/20 | 4247 | graphics/circuit_macros/examples/mpost/Makefile +2020/12/20 | 685 | graphics/circuit_macros/examples/mpost/mptest +2020/12/20 | 703 | graphics/circuit_macros/examples/mpost/README-mpost +2020/12/20 | 418 | graphics/circuit_macros/examples/mpost/tstmpost.tex +2020/12/20 | 1400 | graphics/circuit_macros/examples/Multiplexer.m4 +2020/12/20 | 499 | graphics/circuit_macros/examples/NLG.m4 +2020/12/20 | 1128 | graphics/circuit_macros/examples/NPDT.m4 +2020/12/20 | 1040 | graphics/circuit_macros/examples/Nport.m4 +2020/12/20 | 135 | graphics/circuit_macros/examples/nsvg/dev/F_test.tex +2020/12/20 | 2453 | graphics/circuit_macros/examples/nsvg/dev/Makefile +2020/12/20 | 39908 | graphics/circuit_macros/examples/nsvg/dev/test-1.svg +2020/12/20 | 35308 | graphics/circuit_macros/examples/nsvg/dev/test.pdf +2020/12/20 | 18958 | graphics/circuit_macros/examples/nsvg/dev/test.pic +2020/12/20 | 55406 | graphics/circuit_macros/examples/nsvg/dev/test.svg +2020/12/20 | 36472 | graphics/circuit_macros/examples/nsvg/dev/test.tex +2020/12/20 | 2854 | graphics/circuit_macros/examples/nsvg/dev/tikztosvg +2020/12/20 | 1484 | graphics/circuit_macros/examples/nsvg/dev/tstSVG.htmx +2020/12/20 | 897744 | graphics/circuit_macros/examples/nsvg/examples.pdf +2020/12/20 | 1692 | graphics/circuit_macros/examples/nsvg/examplesSVG.htmx +2020/12/20 | 2725 | graphics/circuit_macros/examples/nsvg/Makefile +2020/12/20 | 3911 | graphics/circuit_macros/examples/oFlow.m4 +2020/12/20 | 2792 | graphics/circuit_macros/examples/OpAmpFilter.m4 +2020/12/20 | 1433 | graphics/circuit_macros/examples/Opamp.m4 +2020/12/20 | 2442 | graphics/circuit_macros/examples/Optoiso.m4 +2020/12/20 | 1852 | graphics/circuit_macros/examples/Orbits.m4 +2020/12/20 | 1802 | graphics/circuit_macros/examples/Pconn.m4 +2020/12/20 | 1375 | graphics/circuit_macros/examples/person.m4 +2020/12/20 | 2674 | graphics/circuit_macros/examples/Planes.m4 +2020/12/20 | 1174 | graphics/circuit_macros/examples/PPA.m4 +2020/12/20 | 715 | graphics/circuit_macros/examples/psfrag/examplespsfrag.tex +2020/12/20 | 4683 | graphics/circuit_macros/examples/psfrag/Makefile +2020/12/20 | 317 | graphics/circuit_macros/examples/psfrag/README-psfrag.txt +2020/12/20 | 371 | graphics/circuit_macros/examples/psfrag/tstpsfrag.tex +2020/12/20 | 3954 | graphics/circuit_macros/examples/PushPull.m4 +2020/12/20 | 2014 | graphics/circuit_macros/examples/pwrsupply.m4 +2020/12/20 | 918 | graphics/circuit_macros/examples/Quantum.m4 +2020/12/20 | 774 | graphics/circuit_macros/examples/quick.m4 +2020/12/20 | 3727 | graphics/circuit_macros/examples/random.m4 +2020/12/20 | 2828 | graphics/circuit_macros/examples/README-examples +2020/12/20 | 7006 | graphics/circuit_macros/examples/Rectifiers.m4 +2020/12/20 | 3825 | graphics/circuit_macros/examples/recycle.m4 +2020/12/20 | 1921 | graphics/circuit_macros/examples/relaycoil.m4 +2020/12/20 | 1259 | graphics/circuit_macros/examples/Relay.m4 +2020/12/20 | 1443 | graphics/circuit_macros/examples/Resolver.m4 +2020/12/20 | 4569 | graphics/circuit_macros/examples/rose.m4 +2020/12/20 | 221 | graphics/circuit_macros/examples/rotate.tex +2020/12/20 | 1525 | graphics/circuit_macros/examples/rotatetext.m4 +2020/12/20 | 518 | graphics/circuit_macros/examples/Rotbox.m4 +2020/12/20 | 365 | graphics/circuit_macros/examples/rotellipse.m4 +2020/12/20 | 740 | graphics/circuit_macros/examples/SampleFlow.m4 +2020/12/20 | 1778 | graphics/circuit_macros/examples/Schottky.m4 +2020/12/20 | 2761 | graphics/circuit_macros/examples/sfg.m4 +2020/12/20 | 4751 | graphics/circuit_macros/examples/Shaky.m4 +2020/12/20 | 7721 | graphics/circuit_macros/examples/shapes.m4 +2020/12/20 | 1406 | graphics/circuit_macros/examples/ShiftR.m4 +2020/12/20 | 1331 | graphics/circuit_macros/examples/Sierpinski.m4 +2020/12/20 | 419 | graphics/circuit_macros/examples/Sixpole.m4 +2020/12/20 | 370 | graphics/circuit_macros/examples/snake.m4 +2020/12/20 | 2165 | graphics/circuit_macros/examples/Sources.m4 +2020/12/20 | 1906 | graphics/circuit_macros/examples/SPM.m4 +2020/12/20 | 380 | graphics/circuit_macros/examples/SQUID.m4 +2020/12/20 | 947 | graphics/circuit_macros/examples/squiggle.m4 +2020/12/20 | 1955 | graphics/circuit_macros/examples/svg/ABlogixSVG.m4 +2020/12/20 | 2528 | graphics/circuit_macros/examples/svg/AdderSVG.m4 +2020/12/20 | 4337 | graphics/circuit_macros/examples/svg/AlogixSVG.m4 +2020/12/20 | 538 | graphics/circuit_macros/examples/svg/AmpTableSVG.m4 +2020/12/20 | 1090 | graphics/circuit_macros/examples/svg/AntennasSVG.m4 +2020/12/20 | 5044 | graphics/circuit_macros/examples/svg/AntiqueClockSVG.m4 +2020/12/20 | 2720 | graphics/circuit_macros/examples/svg/AudioSVG.m4 +2020/12/20 | 2989 | graphics/circuit_macros/examples/svg/AutoencoderSVG.m4 +2020/12/20 | 1668 | graphics/circuit_macros/examples/svg/Banking.m4 +2020/12/20 | 1812 | graphics/circuit_macros/examples/svg/BipSVG.m4 +2020/12/20 | 4258 | graphics/circuit_macros/examples/svg/BtreeSVG.m4 +2020/12/20 | 3567 | graphics/circuit_macros/examples/svg/ButtonsSVG.m4 +2020/12/20 | 937 | graphics/circuit_macros/examples/svg/ByteSVG.m4 +2020/12/20 | 6413 | graphics/circuit_macros/examples/svg/CanLogicSVG.m4 +2020/12/20 | 2661 | graphics/circuit_macros/examples/svg/CctTableSVG.m4 +2020/12/20 | 715 | graphics/circuit_macros/examples/svg/ConnectorsSVG.m4 +2020/12/20 | 2111 | graphics/circuit_macros/examples/svg/ConnSVG.m4 +2020/12/20 | 1737 | graphics/circuit_macros/examples/svg/ContactsSVG.m4 +2020/12/20 | 3646 | graphics/circuit_macros/examples/svg/ContactSVG.m4 +2020/12/20 | 3206 | graphics/circuit_macros/examples/svg/controlSVG.m4 +2020/12/20 | 793 | graphics/circuit_macros/examples/svg/CountingSVG.m4 +2020/12/20 | 1387 | graphics/circuit_macros/examples/svg/CrossbarSVG.m4 +2020/12/20 | 2525 | graphics/circuit_macros/examples/svg/CrowSVG.m4 +2020/12/20 | 1882 | graphics/circuit_macros/examples/svg/CrullerSVG.m4 +2020/12/20 | 2324 | graphics/circuit_macros/examples/svg/cscSVG.m4 +2020/12/20 | 7418 | graphics/circuit_macros/examples/svg/CsourceSVG.m4 +2020/12/20 | 745 | graphics/circuit_macros/examples/svg/DecoderSVG.m4 +2020/12/20 | 1373 | graphics/circuit_macros/examples/svg/DemultiplexerSVG.m4 +2020/12/20 | 609 | graphics/circuit_macros/examples/svg/diamondSVG.m4 +2020/12/20 | 6854 | graphics/circuit_macros/examples/svg/DiniSVG.m4 +2020/12/20 | 1429 | graphics/circuit_macros/examples/svg/DiodesSVG.m4 +2020/12/20 | 1966 | graphics/circuit_macros/examples/svg/DriveSVG.m4 +2020/12/20 | 1070 | graphics/circuit_macros/examples/svg/EmarrowsSVG.m4 +2020/12/20 | 2443 | graphics/circuit_macros/examples/svg/ex00SVG.m4 +2020/12/20 | 2625 | graphics/circuit_macros/examples/svg/ex01SVG.m4 +2020/12/20 | 1093 | graphics/circuit_macros/examples/svg/ex02SVG.m4 +2020/12/20 | 855 | graphics/circuit_macros/examples/svg/ex03SVG.m4 +2020/12/20 | 1891 | graphics/circuit_macros/examples/svg/ex04SVG.m4 +2020/12/20 | 3390 | graphics/circuit_macros/examples/svg/ex05SVG.m4 +2020/12/20 | 2018 | graphics/circuit_macros/examples/svg/ex06SVG.m4 +2020/12/20 | 2559 | graphics/circuit_macros/examples/svg/ex08SVG.m4 +2020/12/20 | 4119 | graphics/circuit_macros/examples/svg/ex09SVG.m4 +2020/12/20 | 1699 | graphics/circuit_macros/examples/svg/ex10SVG.m4 +2020/12/20 | 2685 | graphics/circuit_macros/examples/svg/ex11SVG.m4 +2020/12/20 | 3522 | graphics/circuit_macros/examples/svg/ex12SVG.m4 +2020/12/20 | 970 | graphics/circuit_macros/examples/svg/ex15SVG.m4 +2020/12/20 | 1893 | graphics/circuit_macros/examples/svg/ex16SVG.m4 +2020/12/20 | 1204 | graphics/circuit_macros/examples/svg/ex17SVG.m4 +2020/12/20 | 1065 | graphics/circuit_macros/examples/svg/ex18SVG.m4 +2020/12/20 | 2177 | graphics/circuit_macros/examples/svg/ex21SVG.m4 +2020/12/20 | 23972 | graphics/circuit_macros/examples/svg/examplesSVG.htmx +2020/12/20 | 10589 | graphics/circuit_macros/examples/svg/expSVG.m4 +2020/12/20 | 3836 | graphics/circuit_macros/examples/svg/fetSVG.m4 +2020/12/20 | 5171 | graphics/circuit_macros/examples/svg/FlowSVG.m4 +2020/12/20 | 538 | graphics/circuit_macros/examples/svg/FontsSVG.m4 +2020/12/20 | 1992 | graphics/circuit_macros/examples/svg/FourbarSVG.m4 +2020/12/20 | 959 | graphics/circuit_macros/examples/svg/FusesSVG.m4 +2020/12/20 | 1250 | graphics/circuit_macros/examples/svg/GeometrySVG.m4 +2020/12/20 | 422 | graphics/circuit_macros/examples/svg/GrayCodeSVG.m4 +2020/12/20 | 5521 | graphics/circuit_macros/examples/svg/graysurfSVG.m4 +2020/12/20 | 810 | graphics/circuit_macros/examples/svg/GroundsSVG.m4 +2020/12/20 | 1265 | graphics/circuit_macros/examples/svg/HeadersSVG.m4 +2020/12/20 | 12711 | graphics/circuit_macros/examples/svg/HeathkitSVG.m4 +2020/12/20 | 2171 | graphics/circuit_macros/examples/svg/I2LSVG.m4 +2020/12/20 | 9276 | graphics/circuit_macros/examples/svg/icsSVG.m4 +2020/12/20 | 4003 | graphics/circuit_macros/examples/svg/InclepsSVG.m4 +2020/12/20 | 21384 | graphics/circuit_macros/examples/svg/Incl.jpg +2020/12/20 | 2051 | graphics/circuit_macros/examples/svg/JackSVG.m4 +2020/12/20 | 7203 | graphics/circuit_macros/examples/svg/lcctSVG.m4 +2020/12/20 | 6216 | graphics/circuit_macros/examples/svg/LgateSVG.m4 +2020/12/20 | 63 | graphics/circuit_macros/examples/svg/local_init.m4 +2020/12/20 | 1931 | graphics/circuit_macros/examples/svg/LogicSVG.m4 +2020/12/20 | 2241 | graphics/circuit_macros/examples/svg/LoglogSVG.m4 +2020/12/20 | 4521 | graphics/circuit_macros/examples/svg/LyapSVG.m4 +2020/12/20 | 5424 | graphics/circuit_macros/examples/svg/Makefile +2020/12/20 | 3473 | graphics/circuit_macros/examples/svg/MCSVG.m4 +2020/12/20 | 3489 | graphics/circuit_macros/examples/svg/MixerSVG.m4 +2020/12/20 | 1953 | graphics/circuit_macros/examples/svg/MotorControlSVG.m4 +2020/12/20 | 1467 | graphics/circuit_macros/examples/svg/MultiplexerSVG.m4 +2020/12/20 | 532 | graphics/circuit_macros/examples/svg/NLGSVG.m4 +2020/12/20 | 1157 | graphics/circuit_macros/examples/svg/NPDTSVG.m4 +2020/12/20 | 748 | graphics/circuit_macros/examples/svg/Np.m4 +2020/12/20 | 1238 | graphics/circuit_macros/examples/svg/NportSVG.m4 +2020/12/20 | 1034 | graphics/circuit_macros/examples/svg/OpampSVG.m4 +2020/12/20 | 2551 | graphics/circuit_macros/examples/svg/OptoisoSVG.m4 +2020/12/20 | 10447 | graphics/circuit_macros/examples/svg/paletteSVG.m4 +2020/12/20 | 1776 | graphics/circuit_macros/examples/svg/PconnSVG.m4 +2020/12/20 | 3779 | graphics/circuit_macros/examples/svg/PushPullSVG.m4 +2020/12/20 | 2027 | graphics/circuit_macros/examples/svg/pwrsupplySVG.m4 +2020/12/20 | 947 | graphics/circuit_macros/examples/svg/QuantumSVG.m4 +2020/12/20 | 886 | graphics/circuit_macros/examples/svg/quickSVG.m4 +2020/12/20 | 3756 | graphics/circuit_macros/examples/svg/randomSVG.m4 +2020/12/20 | 7546 | graphics/circuit_macros/examples/svg/RectifiersSVG.m4 +2020/12/20 | 3825 | graphics/circuit_macros/examples/svg/recycleSVG.m4 +2020/12/20 | 2069 | graphics/circuit_macros/examples/svg/relaycoilSVG.m4 +2020/12/20 | 1431 | graphics/circuit_macros/examples/svg/RelaySVG.m4 +2020/12/20 | 4624 | graphics/circuit_macros/examples/svg/roseSVG.m4 +2020/12/20 | 545 | graphics/circuit_macros/examples/svg/RotboxSVG.m4 +2020/12/20 | 1837 | graphics/circuit_macros/examples/svg/SchottkySVG.m4 +2020/12/20 | 3290 | graphics/circuit_macros/examples/svg/sfgSVG.m4 +2020/12/20 | 7526 | graphics/circuit_macros/examples/svg/shapesSVG.m4 +2020/12/20 | 1446 | graphics/circuit_macros/examples/svg/ShiftRSVG.m4 +2020/12/20 | 1331 | graphics/circuit_macros/examples/svg/SierpinskiSVG.m4 +2020/12/20 | 419 | graphics/circuit_macros/examples/svg/SixpoleSVG.m4 +2020/12/20 | 1907 | graphics/circuit_macros/examples/svg/SourcesSVG.m4 +2020/12/20 | 417 | graphics/circuit_macros/examples/svg/SQUIDSVG.m4 +2020/12/20 | 1050 | graphics/circuit_macros/examples/svg/SVGconfig.m4 +2020/12/20 | 4309 | graphics/circuit_macros/examples/svg/SwitchesSVG.m4 +2020/12/20 | 1055 | graphics/circuit_macros/examples/svg/TgateSVG.m4 +2020/12/20 | 1444 | graphics/circuit_macros/examples/svg/ThreeSVG.m4 +2020/12/20 | 3310 | graphics/circuit_macros/examples/svg/thyristorSVG.m4 +2020/12/20 | 1612 | graphics/circuit_macros/examples/svg/TimerSVG.m4 +2020/12/20 | 9380 | graphics/circuit_macros/examples/svg/tstSVG.htmx +2020/12/20 | 1675 | graphics/circuit_macros/examples/svg/TTLnandSVG.m4 +2020/12/20 | 3091 | graphics/circuit_macros/examples/svg/TtreeSVG.m4 +2020/12/20 | 12478 | graphics/circuit_macros/examples/svg/TubediagsSVG.m4 +2020/12/20 | 682 | graphics/circuit_macros/examples/svg/ujtSVG.m4 +2020/12/20 | 9747 | graphics/circuit_macros/examples/svg/UNO.m4 +2020/12/20 | 24133 | graphics/circuit_macros/examples/svg/UNOSVG.m4 +2020/12/20 | 988 | graphics/circuit_macros/examples/svg/VariableSVG.m4 +2020/12/20 | 2994 | graphics/circuit_macros/examples/svg/WindingsSVG.m4 +2020/12/20 | 353 | graphics/circuit_macros/examples/svg/windows.m4 +2020/12/20 | 3631 | graphics/circuit_macros/examples/svg/wormSVG.m4 +2020/12/20 | 1559 | graphics/circuit_macros/examples/svg/XformSVG.m4 +2020/12/20 | 1985 | graphics/circuit_macros/examples/svg/XORSVG.m4 +2020/12/20 | 1546 | graphics/circuit_macros/examples/svg/Xtest.m4 +2020/12/20 | 6150 | graphics/circuit_macros/examples/svg/Y14-5SVG.m4 +2020/12/20 | 3973 | graphics/circuit_macros/examples/Switches.m4 +2020/12/20 | 591 | graphics/circuit_macros/examples/test.m4 +2020/12/20 | 416 | graphics/circuit_macros/examples/testpdf.tex +2020/12/20 | 1022 | graphics/circuit_macros/examples/Tgate.m4 +2020/12/20 | 1287 | graphics/circuit_macros/examples/Three.m4 +2020/12/20 | 3321 | graphics/circuit_macros/examples/thyristor.m4 +2020/12/20 | 382 | graphics/circuit_macros/examples/tikz.tex +2020/12/20 | 219 | graphics/circuit_macros/examples/tst1.tex +2020/12/20 | 613 | graphics/circuit_macros/examples/tst.tex +2020/12/20 | 1558 | graphics/circuit_macros/examples/TTLnand.m4 +2020/12/20 | 2097 | graphics/circuit_macros/examples/Ttree.m4 +2020/12/20 | 9840 | graphics/circuit_macros/examples/tubedefs.m4 +2020/12/20 | 13264 | graphics/circuit_macros/examples/Tubediags.m4 +2020/12/20 | 660 | graphics/circuit_macros/examples/ujt.m4 +2020/12/20 | 932 | graphics/circuit_macros/examples/Variable.m4 +2020/12/20 | 442 | graphics/circuit_macros/examples/Wheat.m4 +2020/12/20 | 3346 | graphics/circuit_macros/examples/Windings.m4 +2020/12/20 | 353 | graphics/circuit_macros/examples/windows.m4 +2020/12/20 | 2799 | graphics/circuit_macros/examples/worm.m4 +2020/12/20 | 337 | graphics/circuit_macros/examples/xfig/Makefile +2020/12/20 | 21230 | graphics/circuit_macros/examples/xfig/xfiglib.fig +2020/12/20 | 5969 | graphics/circuit_macros/examples/xfig/xfiglib.m4 +2020/12/20 | 1526 | graphics/circuit_macros/examples/Xform.m4 +2020/12/20 | 1823 | graphics/circuit_macros/examples/XOR.m4 +2020/12/20 | 656 | graphics/circuit_macros/examples/Zcos.m4 +2020/12/20 | 1019 | graphics/circuit_macros/gpic.m4 +2020/12/20 | 4079 | graphics/circuit_macros/INSTALL +2020/12/20 | 11566 | graphics/circuit_macros/lib3D.m4 +2020/12/20 | 164867 | graphics/circuit_macros/libcct.m4 +2020/12/20 | 81505 | graphics/circuit_macros/libgen.m4 +2020/12/20 | 47768 | graphics/circuit_macros/liblog.m4 +2020/12/20 | 19176 | graphics/circuit_macros/Licence.txt +2020/12/20 | 1639 | graphics/circuit_macros/Makefile +2020/12/20 | 1114 | graphics/circuit_macros/mfpic.m4 +2020/12/20 | 1640 | graphics/circuit_macros/mpost.m4 +2020/12/20 | 2085 | graphics/circuit_macros/pgf.m4 +2020/12/20 | 2834 | graphics/circuit_macros/postscript.m4 +2020/12/20 | 706 | graphics/circuit_macros/psfrag.m4 +2020/12/20 | 2099 | graphics/circuit_macros/pstricks.m4 +2020/12/20 | 16205 | graphics/circuit_macros/README +2020/12/20 | 10059 | graphics/circuit_macros/svg.m4 +2020/12/20 | 1029 | graphics/circuit_macros/xfig.m4 +2020/12/20 | 3395920 | graphics/circuit_macros.zip 2018/09/22 | 49163 | graphics/coloremoji/coloremoji.sty 2018/09/22 | 15169 | graphics/coloremoji/emoji_images/hires/1F004.pdf 2018/09/22 | 24318 | graphics/coloremoji/emoji_images/hires/1F0CF.pdf @@ -145356,21 +145386,21 @@ 2005/10/16 | 610 | info/amslatex/vietnamese/src/Makefile 2004/11/05 | 168 | info/amslatex/vietnamese/TODO 2005/10/17 | 1214340 | info/amslatex/vietnamese.zip -2019/04/27 | 2270333 | info/apprendre-a-programmer-en-tex/cover/couverture.pdf -2019/04/27 | 26646490 | info/apprendre-a-programmer-en-tex/fonts/libertine-legacy.zip -2019/04/27 | 3370866 | info/apprendre-a-programmer-en-tex/fonts/linlibmonoc.zip -2019/04/27 | 4356465 | info/apprendre-a-programmer-en-tex/output/apprendre-a-programmer-en-tex.pdf -2019/04/27 | 335917 | info/apprendre-a-programmer-en-tex/output/progtexcode.txt -2019/04/27 | 7465 | info/apprendre-a-programmer-en-tex/README -2019/04/27 | 1320861 | info/apprendre-a-programmer-en-tex/source/apprendre-a-programmer-en-tex.tex -2019/04/27 | 993472 | info/apprendre-a-programmer-en-tex/source/mandelbrot.pdf -2019/04/27 | 1142 | info/apprendre-a-programmer-en-tex/source/mandelbrot.tex -2019/04/27 | 83734 | info/apprendre-a-programmer-en-tex/source/pg0001.pdf -2019/04/27 | 83363 | info/apprendre-a-programmer-en-tex/source/pg0002.pdf -2019/04/27 | 83475 | info/apprendre-a-programmer-en-tex/source/pg0003.pdf -2019/04/27 | 81497 | info/apprendre-a-programmer-en-tex/source/progtexmacro.tex -2019/04/27 | 39113 | info/apprendre-a-programmer-en-tex/source/vignette.png -2019/04/27 | 37638601 | info/apprendre-a-programmer-en-tex.zip +2020/12/20 | 2270333 | info/apprendre-a-programmer-en-tex/cover/couverture.pdf +2020/12/20 | 306184 | info/apprendre-a-programmer-en-tex/fonts/GMC.zip +2020/12/20 | 26646490 | info/apprendre-a-programmer-en-tex/fonts/libertine-legacy.zip +2020/12/20 | 4012401 | info/apprendre-a-programmer-en-tex/output/apprendre-a-programmer-en-tex.pdf +2020/12/20 | 335917 | info/apprendre-a-programmer-en-tex/output/progtexcode.txt +2020/12/20 | 6640 | info/apprendre-a-programmer-en-tex/README +2020/12/20 | 1320848 | info/apprendre-a-programmer-en-tex/source/apprendre-a-programmer-en-tex.tex +2020/12/20 | 993472 | info/apprendre-a-programmer-en-tex/source/mandelbrot.pdf +2020/12/20 | 1142 | info/apprendre-a-programmer-en-tex/source/mandelbrot.tex +2020/12/20 | 83734 | info/apprendre-a-programmer-en-tex/source/pg0001.pdf +2020/12/20 | 83363 | info/apprendre-a-programmer-en-tex/source/pg0002.pdf +2020/12/20 | 83475 | info/apprendre-a-programmer-en-tex/source/pg0003.pdf +2020/12/20 | 81497 | info/apprendre-a-programmer-en-tex/source/progtexmacro.tex +2020/12/20 | 39113 | info/apprendre-a-programmer-en-tex/source/vignette.png +2020/12/20 | 34224145 | info/apprendre-a-programmer-en-tex.zip 2010/07/08 | 2504858 | info/apprends-latex/Apprends_LaTeX.pdf 2010/07/08 | 289639 | info/apprends-latex/Apprends_LaTeX.tex 2010/03/28 | 2703 | info/apprends-latex/avance.bib @@ -168863,7 +168893,6 @@ 2019/10/25 | 2401518 | install/fonts/clearsans.tds.zip 2016/02/14 | 739416 | install/fonts/cm/cmtiup.tds.zip 2010/04/20 | 535128 | install/fonts/cmll.tds.zip -2020/09/24 | 5935971 | install/fonts/cochineal.tds.zip 2020/04/13 | 9646462 | install/fonts/coelacanth.tds.zip 2019/06/24 | 1223758 | install/fonts/comfortaa.tds.zip 2020/04/26 | 1498480 | install/fonts/comicneue.tds.zip @@ -168925,7 +168954,6 @@ 2020/11/02 | 3203408 | install/fonts/newpx.tds.zip 2020/02/15 | 441366 | install/fonts/newtxtt.tds.zip 2020/01/29 | 5685191 | install/fonts/nimbus15.tds.zip -2020/08/05 | 715344 | install/fonts/notomath.tds.zip 2019/12/10 | 107860149 | install/fonts/noto.tds.zip 2020/05/30 | 3595835 | install/fonts/oldstandard.tds.zip 2019/06/24 | 4612348 | install/fonts/opensans.tds.zip @@ -191730,12 +191758,12 @@ 1999/01/19 | 1335 | macros/latex/contrib/cursor/cursor.tex 1999/01/19 | 420 | macros/latex/contrib/cursor/read.me 2007/01/01 | 16025 | macros/latex/contrib/cursor.zip -2020/12/12 | 183897 | macros/latex/contrib/curve2e/curve2e.dtx -2020/12/12 | 571161 | macros/latex/contrib/curve2e/curve2e-manual.pdf +2020/12/20 | 183801 | macros/latex/contrib/curve2e/curve2e.dtx +2020/12/20 | 571391 | macros/latex/contrib/curve2e/curve2e-manual.pdf 2020/12/12 | 74595 | macros/latex/contrib/curve2e/curve2e-manual.tex -2020/12/12 | 654000 | macros/latex/contrib/curve2e/curve2e.pdf -2020/12/12 | 5989 | macros/latex/contrib/curve2e/README.txt -2020/12/12 | 1297427 | macros/latex/contrib/curve2e.zip +2020/12/20 | 654227 | macros/latex/contrib/curve2e/curve2e.pdf +2020/12/20 | 5989 | macros/latex/contrib/curve2e/README.txt +2020/12/20 | 1297880 | macros/latex/contrib/curve2e.zip 2010/12/14 | 88817 | macros/latex/contrib/curve/curve.dtx 2010/12/14 | 3268 | macros/latex/contrib/curve/curve.el 2010/12/14 | 1746 | macros/latex/contrib/curve/curve.ins @@ -193174,6 +193202,36 @@ 2018/03/30 | 175553 | macros/latex/contrib/easyfig/easyfig.pdf 2018/03/30 | 775 | macros/latex/contrib/easyfig/README 2018/03/30 | 180117 | macros/latex/contrib/easyfig.zip +2020/12/20 | 366 | macros/latex/contrib/easyfloats/DEPENDS.txt +2020/12/20 | 2036 | macros/latex/contrib/easyfloats/doc/content/bug-reports-and-contributions.tex +2020/12/20 | 56881 | macros/latex/contrib/easyfloats/doc/content/documentation.tex +2020/12/20 | 12318 | macros/latex/contrib/easyfloats/doc/content/examples.tex +2020/12/20 | 241 | macros/latex/contrib/easyfloats/doc/content/installation.tex +2020/12/20 | 790 | macros/latex/contrib/easyfloats/doc/content/license.tex +2020/12/20 | 17611 | macros/latex/contrib/easyfloats/doc/content/motivation.tex +2020/12/20 | 1075 | macros/latex/contrib/easyfloats/doc/content/names.tex +2020/12/20 | 3133 | macros/latex/contrib/easyfloats/doc/content/other-packages.tex +2020/12/20 | 566 | macros/latex/contrib/easyfloats/doc/content/titlepage.tex +2020/12/20 | 1305 | macros/latex/contrib/easyfloats/doc/content/used-packages.tex +2020/12/20 | 3618 | macros/latex/contrib/easyfloats/doc/easyfloats.bib +2020/12/20 | 546772 | macros/latex/contrib/easyfloats/doc/easyfloats.pdf +2020/12/20 | 1738 | macros/latex/contrib/easyfloats/doc/easyfloats.tex +2020/12/20 | 536 | macros/latex/contrib/easyfloats/doc/lexer/latex_atletter.py +2020/12/20 | 2761 | macros/latex/contrib/easyfloats/doc/links.tex +2020/12/20 | 920 | macros/latex/contrib/easyfloats/doc/preamble/bibliography.tex +2020/12/20 | 6764 | macros/latex/contrib/easyfloats/doc/preamble/description-links.tex +2020/12/20 | 27712 | macros/latex/contrib/easyfloats/doc/preamble/examplecode.tex +2020/12/20 | 26125 | macros/latex/contrib/easyfloats/doc/preamble/keydoc.tex +2020/12/20 | 1530 | macros/latex/contrib/easyfloats/doc/preamble/link.tex +2020/12/20 | 7207 | macros/latex/contrib/easyfloats/doc/preamble/macros.tex +2020/12/20 | 4735 | macros/latex/contrib/easyfloats/doc/preamble/markdown.tex +2020/12/20 | 971 | macros/latex/contrib/easyfloats/doc/preamble/pdfstring.tex +2020/12/20 | 5056 | macros/latex/contrib/easyfloats/doc/undescribed-keywords.tex +2020/12/20 | 60576 | macros/latex/contrib/easyfloats/easyfloats.dtx +2020/12/20 | 1255 | macros/latex/contrib/easyfloats/easyfloats-file-list.txt +2020/12/20 | 3098 | macros/latex/contrib/easyfloats/easyfloats.ins +2020/12/20 | 1924 | macros/latex/contrib/easyfloats/README.md +2020/12/20 | 617115 | macros/latex/contrib/easyfloats.zip 2002/03/19 | 3468 | macros/latex/contrib/easy/for-latex2html/easybib.perl 2002/03/19 | 3140 | macros/latex/contrib/easy/for-latex2html/easybmat.perl 2002/03/19 | 10211 | macros/latex/contrib/easy/for-latex2html/easyeqn.perl @@ -203915,11 +203973,11 @@ 2018/07/21 | 904 | macros/latex/contrib/pdfpc-movie/pdfpc-movie.ins 2018/07/21 | 1374 | macros/latex/contrib/pdfpc-movie/README.md 2018/07/21 | 81193 | macros/latex/contrib/pdfpc-movie.zip -2020/11/15 | 173566 | macros/latex/contrib/pdfpc/pdfpc-doc.pdf -2020/11/15 | 5035 | macros/latex/contrib/pdfpc/pdfpc-doc.tex -2020/11/15 | 5058 | macros/latex/contrib/pdfpc/pdfpc.sty -2020/11/15 | 1147 | macros/latex/contrib/pdfpc/README.md -2020/11/15 | 176730 | macros/latex/contrib/pdfpc.zip +2020/12/20 | 173201 | macros/latex/contrib/pdfpc/pdfpc-doc.pdf +2020/12/20 | 5035 | macros/latex/contrib/pdfpc/pdfpc-doc.tex +2020/12/20 | 5060 | macros/latex/contrib/pdfpc/pdfpc.sty +2020/12/20 | 1147 | macros/latex/contrib/pdfpc/README.md +2020/12/20 | 176362 | macros/latex/contrib/pdfpc.zip 2017/12/03 | 19452 | macros/latex/contrib/pdfprivacy/LICENSE 2017/12/03 | 14446 | macros/latex/contrib/pdfprivacy/pdfprivacy.dtx 2017/12/03 | 1975 | macros/latex/contrib/pdfprivacy/pdfprivacy.ins @@ -205464,111 +205522,111 @@ 2020/11/24 | 243 | macros/latex/contrib/reledmac/doc-more/makefile 2020/11/29 | 40836 | macros/latex/contrib/reledmac/doc-more/page-typesetting-columns.pdf 2020/11/24 | 4645 | macros/latex/contrib/reledmac/doc-more/page-typesetting-columns.tex -2020/11/29 | 197373 | macros/latex/contrib/reledmac/examples/1-criticalendnotes.pdf -2020/11/24 | 1979 | macros/latex/contrib/reledmac/examples/1-criticalendnotes.tex -2020/11/29 | 195586 | macros/latex/contrib/reledmac/examples/1-criticalnotes.pdf -2020/11/24 | 2161 | macros/latex/contrib/reledmac/examples/1-criticalnotes.tex -2020/11/29 | 291128 | macros/latex/contrib/reledmac/examples/1-sidenotes.pdf -2020/11/24 | 9804 | macros/latex/contrib/reledmac/examples/1-sidenotes.tex -2020/11/29 | 280887 | macros/latex/contrib/reledmac/examples/1-tabular.pdf -2020/11/24 | 2004 | macros/latex/contrib/reledmac/examples/1-tabular.tex -2020/11/29 | 197414 | macros/latex/contrib/reledmac/examples/1-verses-doublenumbering.pdf -2020/11/24 | 2592 | macros/latex/contrib/reledmac/examples/1-verses-doublenumbering.tex -2020/11/29 | 197363 | macros/latex/contrib/reledmac/examples/1-verses.pdf -2020/11/24 | 1902 | macros/latex/contrib/reledmac/examples/1-verses.tex -2020/11/29 | 205371 | macros/latex/contrib/reledmac/examples/2-antilabe.pdf -2020/11/24 | 1998 | macros/latex/contrib/reledmac/examples/2-antilabe.tex -2020/11/29 | 196250 | macros/latex/contrib/reledmac/examples/2-cross_referencing.pdf -2020/11/24 | 1857 | macros/latex/contrib/reledmac/examples/2-cross_referencing.tex -2020/11/29 | 199696 | macros/latex/contrib/reledmac/examples/2-footnote_spacing.pdf -2020/11/24 | 6806 | macros/latex/contrib/reledmac/examples/2-footnote_spacing.tex -2020/11/29 | 280642 | macros/latex/contrib/reledmac/examples/2-glossaries.pdf -2020/11/24 | 1776 | macros/latex/contrib/reledmac/examples/2-glossaries.tex -2020/11/29 | 279716 | macros/latex/contrib/reledmac/examples/2-indexing.pdf -2020/11/24 | 2761 | macros/latex/contrib/reledmac/examples/2-indexing.tex -2020/11/29 | 273887 | macros/latex/contrib/reledmac/examples/2-lemma_disambigution.pdf -2020/11/28 | 1140 | macros/latex/contrib/reledmac/examples/2-lemma_disambigution.tex -2020/11/29 | 289371 | macros/latex/contrib/reledmac/examples/2-line_numbers_in_header.pdf -2020/11/24 | 11391 | macros/latex/contrib/reledmac/examples/2-line_numbers_in_header.tex -2020/11/29 | 284597 | macros/latex/contrib/reledmac/examples/2-linespacing.pdf -2020/11/24 | 1488 | macros/latex/contrib/reledmac/examples/2-linespacing.tex -2020/11/29 | 285213 | macros/latex/contrib/reledmac/examples/2-manuscript-apparatus.pdf -2020/11/24 | 21449 | macros/latex/contrib/reledmac/examples/2-manuscript-apparatus.tex -2020/11/29 | 202991 | macros/latex/contrib/reledmac/examples/2-notes-width.pdf -2020/11/24 | 1528 | macros/latex/contrib/reledmac/examples/2-notes-width.tex -2020/11/29 | 208585 | macros/latex/contrib/reledmac/examples/2-one_series_per_pstart.pdf -2020/11/24 | 5161 | macros/latex/contrib/reledmac/examples/2-one_series_per_pstart.tex -2020/11/29 | 281520 | macros/latex/contrib/reledmac/examples/2-performances.pdf -2020/11/24 | 2710 | macros/latex/contrib/reledmac/examples/2-performances.tex -2020/11/29 | 31045 | macros/latex/contrib/reledmac/examples/2-reledmac-right-to-left.pdf +2020/12/19 | 197373 | macros/latex/contrib/reledmac/examples/1-criticalendnotes.pdf +2020/11/29 | 1979 | macros/latex/contrib/reledmac/examples/1-criticalendnotes.tex +2020/12/19 | 195586 | macros/latex/contrib/reledmac/examples/1-criticalnotes.pdf +2020/11/29 | 2161 | macros/latex/contrib/reledmac/examples/1-criticalnotes.tex +2020/12/19 | 291128 | macros/latex/contrib/reledmac/examples/1-sidenotes.pdf +2020/11/29 | 9804 | macros/latex/contrib/reledmac/examples/1-sidenotes.tex +2020/12/19 | 280887 | macros/latex/contrib/reledmac/examples/1-tabular.pdf +2020/11/29 | 2004 | macros/latex/contrib/reledmac/examples/1-tabular.tex +2020/12/19 | 197414 | macros/latex/contrib/reledmac/examples/1-verses-doublenumbering.pdf +2020/11/29 | 2592 | macros/latex/contrib/reledmac/examples/1-verses-doublenumbering.tex +2020/12/19 | 197363 | macros/latex/contrib/reledmac/examples/1-verses.pdf +2020/11/29 | 1902 | macros/latex/contrib/reledmac/examples/1-verses.tex +2020/12/19 | 205371 | macros/latex/contrib/reledmac/examples/2-antilabe.pdf +2020/11/29 | 1998 | macros/latex/contrib/reledmac/examples/2-antilabe.tex +2020/12/19 | 196250 | macros/latex/contrib/reledmac/examples/2-cross_referencing.pdf +2020/11/29 | 1857 | macros/latex/contrib/reledmac/examples/2-cross_referencing.tex +2020/12/19 | 199696 | macros/latex/contrib/reledmac/examples/2-footnote_spacing.pdf +2020/11/29 | 6806 | macros/latex/contrib/reledmac/examples/2-footnote_spacing.tex +2020/12/19 | 280642 | macros/latex/contrib/reledmac/examples/2-glossaries.pdf +2020/11/29 | 1776 | macros/latex/contrib/reledmac/examples/2-glossaries.tex +2020/12/19 | 279716 | macros/latex/contrib/reledmac/examples/2-indexing.pdf +2020/11/29 | 2761 | macros/latex/contrib/reledmac/examples/2-indexing.tex +2020/12/19 | 273887 | macros/latex/contrib/reledmac/examples/2-lemma_disambigution.pdf +2020/11/29 | 1140 | macros/latex/contrib/reledmac/examples/2-lemma_disambigution.tex +2020/12/19 | 289371 | macros/latex/contrib/reledmac/examples/2-line_numbers_in_header.pdf +2020/11/29 | 11391 | macros/latex/contrib/reledmac/examples/2-line_numbers_in_header.tex +2020/12/19 | 284597 | macros/latex/contrib/reledmac/examples/2-linespacing.pdf +2020/11/29 | 1488 | macros/latex/contrib/reledmac/examples/2-linespacing.tex +2020/12/19 | 285213 | macros/latex/contrib/reledmac/examples/2-manuscript-apparatus.pdf +2020/11/29 | 21449 | macros/latex/contrib/reledmac/examples/2-manuscript-apparatus.tex +2020/12/19 | 202991 | macros/latex/contrib/reledmac/examples/2-notes-width.pdf +2020/11/29 | 1528 | macros/latex/contrib/reledmac/examples/2-notes-width.tex +2020/12/19 | 208585 | macros/latex/contrib/reledmac/examples/2-one_series_per_pstart.pdf +2020/11/29 | 5161 | macros/latex/contrib/reledmac/examples/2-one_series_per_pstart.tex +2020/12/19 | 281520 | macros/latex/contrib/reledmac/examples/2-performances.pdf +2020/11/29 | 2710 | macros/latex/contrib/reledmac/examples/2-performances.tex +2020/12/19 | 31052 | macros/latex/contrib/reledmac/examples/2-reledmac-right-to-left.pdf 2020/11/24 | 3159 | macros/latex/contrib/reledmac/examples/2-reledmac-right-to-left.tex -2020/11/29 | 304585 | macros/latex/contrib/reledmac/examples/2-subdivision-number-in-header.pdf -2020/11/24 | 15949 | macros/latex/contrib/reledmac/examples/2-subdivision-number-in-header.tex -2020/11/29 | 283465 | macros/latex/contrib/reledmac/examples/2-titles_in_line_numbering_with_notes.pdf -2020/11/24 | 3065 | macros/latex/contrib/reledmac/examples/2-titles_in_line_numbering_with_notes.tex -2020/11/29 | 196014 | macros/latex/contrib/reledmac/examples/2-titles_not_in_line_numbering.pdf -2020/11/24 | 2006 | macros/latex/contrib/reledmac/examples/2-titles_not_in_line_numbering.tex -2020/11/29 | 23264 | macros/latex/contrib/reledmac/examples/3-reledpar_columns_different_languages.pdf +2020/12/19 | 304585 | macros/latex/contrib/reledmac/examples/2-subdivision-number-in-header.pdf +2020/11/29 | 15949 | macros/latex/contrib/reledmac/examples/2-subdivision-number-in-header.tex +2020/12/19 | 283465 | macros/latex/contrib/reledmac/examples/2-titles_in_line_numbering_with_notes.pdf +2020/11/29 | 3065 | macros/latex/contrib/reledmac/examples/2-titles_in_line_numbering_with_notes.tex +2020/12/19 | 196014 | macros/latex/contrib/reledmac/examples/2-titles_not_in_line_numbering.pdf +2020/11/29 | 2006 | macros/latex/contrib/reledmac/examples/2-titles_not_in_line_numbering.tex +2020/12/19 | 23269 | macros/latex/contrib/reledmac/examples/3-reledpar_columns_different_languages.pdf 2020/11/24 | 2388 | macros/latex/contrib/reledmac/examples/3-reledpar_columns_different_languages.tex -2020/11/29 | 172561 | macros/latex/contrib/reledmac/examples/3-reledpar_mwe.pdf -2020/11/24 | 2912 | macros/latex/contrib/reledmac/examples/3-reledpar_mwe.tex -2020/11/29 | 32053 | macros/latex/contrib/reledmac/examples/3-reledpar_pages_different_languages_lualatex.pdf +2020/12/19 | 172561 | macros/latex/contrib/reledmac/examples/3-reledpar_mwe.pdf +2020/11/29 | 2912 | macros/latex/contrib/reledmac/examples/3-reledpar_mwe.tex +2020/12/19 | 32053 | macros/latex/contrib/reledmac/examples/3-reledpar_pages_different_languages_lualatex.pdf 2020/11/24 | 2027 | macros/latex/contrib/reledmac/examples/3-reledpar_pages_different_languages_lualatex.tex -2020/11/29 | 284700 | macros/latex/contrib/reledmac/examples/3-reledpar_same_page_number_in_both_side.pdf -2020/11/24 | 20137 | macros/latex/contrib/reledmac/examples/3-reledpar_same_page_number_in_both_side.tex -2020/11/29 | 190058 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_advancedshifted-nomax.pdf -2020/11/24 | 1665 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_advancedshifted-nomax.tex -2020/11/29 | 189290 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_advancedshifted.pdf -2020/11/24 | 1627 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_advancedshifted.tex -2020/11/29 | 168066 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_default.pdf -2020/11/24 | 1553 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_default.tex -2020/11/29 | 188622 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nomax.pdf -2020/11/29 | 189692 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nomax-shifted.pdf -2020/11/24 | 1644 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nomax-shifted.tex -2020/11/24 | 1603 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nomax.tex -2020/11/29 | 188675 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nosync.pdf -2020/11/24 | 1609 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nosync.tex -2020/11/29 | 188809 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_shifted.pdf -2020/11/24 | 1611 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_shifted.tex -2020/11/29 | 209918 | macros/latex/contrib/reledmac/examples/4-reledpar_column_mix_with_not_column-continuous-numbering.pdf -2020/11/24 | 13642 | macros/latex/contrib/reledmac/examples/4-reledpar_column_mix_with_not_column-continuous-numbering.tex -2020/11/29 | 208856 | macros/latex/contrib/reledmac/examples/4-reledpar_column_mix_with_not_column.pdf -2020/11/24 | 12681 | macros/latex/contrib/reledmac/examples/4-reledpar_column_mix_with_not_column.tex -2020/11/29 | 201188 | macros/latex/contrib/reledmac/examples/4-reledpar_columns_alignment.pdf -2020/11/24 | 3005 | macros/latex/contrib/reledmac/examples/4-reledpar_columns_alignment.tex -2020/11/29 | 292929 | macros/latex/contrib/reledmac/examples/4-reledpar_columns_titles_in_line_numbering_with_notes.pdf -2020/11/24 | 5587 | macros/latex/contrib/reledmac/examples/4-reledpar_columns_titles_in_line_numbering_with_notes.tex -2020/11/29 | 200260 | macros/latex/contrib/reledmac/examples/4-reledpar_inside-outside-columns.pdf -2020/11/24 | 11558 | macros/latex/contrib/reledmac/examples/4-reledpar_inside-outside-columns.tex -2020/11/29 | 221533 | macros/latex/contrib/reledmac/examples/4-reledpar_one_series_per_pstart.pdf -2020/11/24 | 10033 | macros/latex/contrib/reledmac/examples/4-reledpar_one_series_per_pstart.tex -2020/11/29 | 246187 | macros/latex/contrib/reledmac/examples/4-reledpar_pages_long_notes.pdf -2020/11/24 | 43045 | macros/latex/contrib/reledmac/examples/4-reledpar_pages_long_notes.tex -2020/11/29 | 200801 | macros/latex/contrib/reledmac/examples/4-reledpar_pages_notes_leftpage.pdf -2020/11/24 | 6540 | macros/latex/contrib/reledmac/examples/4-reledpar_pages_notes_leftpage.tex -2020/11/29 | 196882 | macros/latex/contrib/reledmac/examples/4-reledpar_pages_paragraph_separator_between.pdf -2020/11/24 | 4504 | macros/latex/contrib/reledmac/examples/4-reledpar_pages_paragraph_separator_between.tex -2020/11/29 | 297242 | macros/latex/contrib/reledmac/examples/4-reledpar_pages_titles_in_line_numbering_with_notes.pdf -2020/11/24 | 9314 | macros/latex/contrib/reledmac/examples/4-reledpar_pages_titles_in_line_numbering_with_notes.tex -2020/11/29 | 203241 | macros/latex/contrib/reledmac/examples/4-reledpar_titles_not_in_line_numbering.pdf -2020/11/24 | 8510 | macros/latex/contrib/reledmac/examples/4-reledpar_titles_not_in_line_numbering.tex -2020/11/29 | 192355 | macros/latex/contrib/reledmac/examples/4-reledpar_verse_text_between.pdf -2020/11/24 | 2157 | macros/latex/contrib/reledmac/examples/4-reledpar_verse_text_between.tex +2020/12/19 | 284700 | macros/latex/contrib/reledmac/examples/3-reledpar_same_page_number_in_both_side.pdf +2020/11/29 | 20137 | macros/latex/contrib/reledmac/examples/3-reledpar_same_page_number_in_both_side.tex +2020/12/19 | 190058 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_advancedshifted-nomax.pdf +2020/11/29 | 1665 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_advancedshifted-nomax.tex +2020/12/19 | 189290 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_advancedshifted.pdf +2020/11/29 | 1627 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_advancedshifted.tex +2020/12/19 | 168066 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_default.pdf +2020/11/29 | 1553 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_default.tex +2020/12/19 | 188622 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nomax.pdf +2020/12/19 | 189692 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nomax-shifted.pdf +2020/11/29 | 1644 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nomax-shifted.tex +2020/11/29 | 1603 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nomax.tex +2020/12/19 | 188675 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nosync.pdf +2020/11/29 | 1609 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nosync.tex +2020/12/19 | 188809 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_shifted.pdf +2020/11/29 | 1611 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_shifted.tex +2020/12/19 | 209918 | macros/latex/contrib/reledmac/examples/4-reledpar_column_mix_with_not_column-continuous-numbering.pdf +2020/11/29 | 13642 | macros/latex/contrib/reledmac/examples/4-reledpar_column_mix_with_not_column-continuous-numbering.tex +2020/12/19 | 208856 | macros/latex/contrib/reledmac/examples/4-reledpar_column_mix_with_not_column.pdf +2020/11/29 | 12681 | macros/latex/contrib/reledmac/examples/4-reledpar_column_mix_with_not_column.tex +2020/12/19 | 201188 | macros/latex/contrib/reledmac/examples/4-reledpar_columns_alignment.pdf +2020/11/29 | 3005 | macros/latex/contrib/reledmac/examples/4-reledpar_columns_alignment.tex +2020/12/19 | 292929 | macros/latex/contrib/reledmac/examples/4-reledpar_columns_titles_in_line_numbering_with_notes.pdf +2020/11/29 | 5587 | macros/latex/contrib/reledmac/examples/4-reledpar_columns_titles_in_line_numbering_with_notes.tex +2020/12/19 | 200260 | macros/latex/contrib/reledmac/examples/4-reledpar_inside-outside-columns.pdf +2020/11/29 | 11558 | macros/latex/contrib/reledmac/examples/4-reledpar_inside-outside-columns.tex +2020/12/19 | 221533 | macros/latex/contrib/reledmac/examples/4-reledpar_one_series_per_pstart.pdf +2020/11/29 | 10033 | macros/latex/contrib/reledmac/examples/4-reledpar_one_series_per_pstart.tex +2020/12/19 | 246187 | macros/latex/contrib/reledmac/examples/4-reledpar_pages_long_notes.pdf +2020/11/29 | 43045 | macros/latex/contrib/reledmac/examples/4-reledpar_pages_long_notes.tex +2020/12/19 | 200801 | macros/latex/contrib/reledmac/examples/4-reledpar_pages_notes_leftpage.pdf +2020/11/29 | 6540 | macros/latex/contrib/reledmac/examples/4-reledpar_pages_notes_leftpage.tex +2020/12/19 | 196882 | macros/latex/contrib/reledmac/examples/4-reledpar_pages_paragraph_separator_between.pdf +2020/11/29 | 4504 | macros/latex/contrib/reledmac/examples/4-reledpar_pages_paragraph_separator_between.tex +2020/12/19 | 297242 | macros/latex/contrib/reledmac/examples/4-reledpar_pages_titles_in_line_numbering_with_notes.pdf +2020/11/29 | 9314 | macros/latex/contrib/reledmac/examples/4-reledpar_pages_titles_in_line_numbering_with_notes.tex +2020/12/19 | 203241 | macros/latex/contrib/reledmac/examples/4-reledpar_titles_not_in_line_numbering.pdf +2020/11/29 | 8510 | macros/latex/contrib/reledmac/examples/4-reledpar_titles_not_in_line_numbering.tex +2020/12/19 | 192355 | macros/latex/contrib/reledmac/examples/4-reledpar_verse_text_between.pdf +2020/11/29 | 2157 | macros/latex/contrib/reledmac/examples/4-reledpar_verse_text_between.tex 2020/11/24 | 49 | macros/latex/contrib/reledmac/examples/latexmkrc -2020/11/24 | 816 | macros/latex/contrib/reledmac/examples/makefile +2020/11/29 | 816 | macros/latex/contrib/reledmac/examples/makefile 2020/11/24 | 2269 | macros/latex/contrib/reledmac/examples/reledmac.xdy 2020/11/24 | 16 | macros/latex/contrib/reledmac/latexmkrc 2020/11/29 | 1718 | macros/latex/contrib/reledmac/makefile 2020/11/24 | 3495 | macros/latex/contrib/reledmac/migration.dtx 2020/11/29 | 357849 | macros/latex/contrib/reledmac/migration.pdf 2020/11/29 | 3962 | macros/latex/contrib/reledmac/README.md -2020/11/29 | 888580 | macros/latex/contrib/reledmac/reledmac.dtx +2020/12/19 | 888720 | macros/latex/contrib/reledmac/reledmac.dtx 2020/11/24 | 2691 | macros/latex/contrib/reledmac/reledmac.ins -2020/11/29 | 2021684 | macros/latex/contrib/reledmac/reledmac.pdf +2020/12/19 | 2021691 | macros/latex/contrib/reledmac/reledmac.pdf 2020/11/29 | 306011 | macros/latex/contrib/reledmac/reledpar.dtx 2020/11/24 | 2638 | macros/latex/contrib/reledmac/reledpar.ins -2020/11/29 | 986955 | macros/latex/contrib/reledmac/reledpar.pdf -2020/11/29 | 13285125 | macros/latex/contrib/reledmac.zip +2020/12/19 | 986981 | macros/latex/contrib/reledmac/reledpar.pdf +2020/12/20 | 13285013 | macros/latex/contrib/reledmac.zip 1999/02/05 | 10370 | macros/latex/contrib/relenc/2sidedoc.sty 2011/04/06 | 6770 | macros/latex/contrib/relenc/README 1999/02/05 | 13969 | macros/latex/contrib/relenc/reldemo.tex @@ -214482,20 +214540,21 @@ 2020/06/02 | 3788 | macros/luatex/generic/luavlna/luavlna.tex 2020/06/02 | 3321 | macros/luatex/generic/luavlna/README.md 2020/06/02 | 103067 | macros/luatex/generic/luavlna.zip -2020/07/20 | 8816 | macros/luatex/generic/luaxml/luaxml-cssquery.lua -2020/07/20 | 15874 | macros/luatex/generic/luaxml/luaxml-domobject.lua -2020/07/20 | 1352 | macros/luatex/generic/luaxml/luaxml-entities.lua -2020/07/20 | 11332 | macros/luatex/generic/luaxml/luaxml-mod-handler.lua -2020/07/20 | 20712 | macros/luatex/generic/luaxml/luaxml-mod-xml.lua -2020/07/20 | 41070 | macros/luatex/generic/luaxml/luaxml-namedentities.lua -2020/07/20 | 1484 | macros/luatex/generic/luaxml/luaxml-parse-query.lua -2020/07/20 | 99665 | macros/luatex/generic/luaxml/luaxml.pdf -2020/07/20 | 2265 | macros/luatex/generic/luaxml/luaxml-pretty.lua -2020/07/20 | 1230 | macros/luatex/generic/luaxml/luaxml-stack.lua -2020/07/20 | 3239 | macros/luatex/generic/luaxml/luaxml-testxml.lua -2020/07/20 | 21581 | macros/luatex/generic/luaxml/luaxml.tex -2020/07/20 | 1155 | macros/luatex/generic/luaxml/README -2020/07/20 | 136891 | macros/luatex/generic/luaxml.zip +2020/12/20 | 14954 | macros/luatex/generic/luaxml/luaxml-cssquery.lua +2020/12/20 | 15891 | macros/luatex/generic/luaxml/luaxml-domobject.lua +2020/12/20 | 1357 | macros/luatex/generic/luaxml/luaxml-entities.lua +2020/12/20 | 11332 | macros/luatex/generic/luaxml/luaxml-mod-handler.lua +2020/12/20 | 20712 | macros/luatex/generic/luaxml/luaxml-mod-xml.lua +2020/12/20 | 41032 | macros/luatex/generic/luaxml/luaxml-namedentities.lua +2020/12/20 | 2109 | macros/luatex/generic/luaxml/luaxml-parse-query.lua +2020/12/20 | 107935 | macros/luatex/generic/luaxml/luaxml.pdf +2020/12/20 | 2265 | macros/luatex/generic/luaxml/luaxml-pretty.lua +2020/12/20 | 1230 | macros/luatex/generic/luaxml/luaxml-stack.lua +2020/12/20 | 3239 | macros/luatex/generic/luaxml/luaxml-testxml.lua +2020/12/20 | 24614 | macros/luatex/generic/luaxml/luaxml.tex +2020/12/20 | 4233 | macros/luatex/generic/luaxml/luaxml-transform.lua +2020/12/20 | 1155 | macros/luatex/generic/luaxml/README +2020/12/20 | 149137 | macros/luatex/generic/luaxml.zip 2020/10/23 | 12610 | macros/luatex/generic/nodetree/nodetree.dtx 2020/10/23 | 2250 | macros/luatex/generic/nodetree/nodetree.ins 2020/10/23 | 43720 | macros/luatex/generic/nodetree/nodetree.lua @@ -260845,13 +260904,13 @@ 2019/02/28 | 388 | systems/texlive/tlnet/archive/fontools.amd64-freebsd.r25997.tar.xz 2019/02/28 | 388 | systems/texlive/tlnet/archive/fontools.amd64-netbsd.r30191.tar.xz 2019/02/28 | 384 | systems/texlive/tlnet/archive/fontools.armhf-linux.r30015.tar.xz -2020/07/31 | 125148 | systems/texlive/tlnet/archive/fontools.doc.r55997.tar.xz +2020/12/20 | 125544 | systems/texlive/tlnet/archive/fontools.doc.r57171.tar.xz 2019/02/28 | 384 | systems/texlive/tlnet/archive/fontools.i386-cygwin.r25997.tar.xz 2019/02/28 | 388 | systems/texlive/tlnet/archive/fontools.i386-freebsd.r25997.tar.xz 2019/02/28 | 384 | systems/texlive/tlnet/archive/fontools.i386-linux.r25997.tar.xz 2019/02/28 | 384 | systems/texlive/tlnet/archive/fontools.i386-netbsd.r30191.tar.xz 2019/02/28 | 384 | systems/texlive/tlnet/archive/fontools.i386-solaris.r25997.tar.xz -2020/07/31 | 50204 | systems/texlive/tlnet/archive/fontools.r55997.tar.xz +2020/12/20 | 50068 | systems/texlive/tlnet/archive/fontools.r57171.tar.xz 2019/02/28 | 728 | systems/texlive/tlnet/archive/fontools.win32.r25997.tar.xz 2019/02/28 | 388 | systems/texlive/tlnet/archive/fontools.x86_64-cygwin.r33557.tar.xz 2019/02/28 | 396 | systems/texlive/tlnet/archive/fontools.x86_64-darwinlegacy.r43871.tar.xz @@ -263593,9 +263652,9 @@ 2020/06/24 | 1348 | systems/texlive/tlnet/archive/menucard.r55643.tar.xz 2020/06/24 | 3764 | systems/texlive/tlnet/archive/menucard.source.r55643.tar.xz 2019/02/28 | 115344 | systems/texlive/tlnet/archive/menu.doc.r15878.tar.xz -2020/11/01 | 580224 | systems/texlive/tlnet/archive/menukeys.doc.r56822.tar.xz -2020/11/01 | 5988 | systems/texlive/tlnet/archive/menukeys.r56822.tar.xz -2020/11/01 | 18352 | systems/texlive/tlnet/archive/menukeys.source.r56822.tar.xz +2020/12/20 | 573880 | systems/texlive/tlnet/archive/menukeys.doc.r57172.tar.xz +2020/12/20 | 6072 | systems/texlive/tlnet/archive/menukeys.r57172.tar.xz +2020/12/20 | 18496 | systems/texlive/tlnet/archive/menukeys.source.r57172.tar.xz 2019/02/28 | 2132 | systems/texlive/tlnet/archive/menu.r15878.tar.xz 2019/02/28 | 5648 | systems/texlive/tlnet/archive/menu.source.r15878.tar.xz 2020/08/07 | 24311052 | systems/texlive/tlnet/archive/mercatormap.doc.r56060.tar.xz @@ -264262,8 +264321,8 @@ 2019/02/28 | 4000 | systems/texlive/tlnet/archive/nevelok.source.r39029.tar.xz 2019/02/28 | 407624 | systems/texlive/tlnet/archive/newcommand.doc.r18704.tar.xz 2019/02/28 | 496 | systems/texlive/tlnet/archive/newcommand.r18704.tar.xz -2020/12/15 | 1662560 | systems/texlive/tlnet/archive/newcomputermodern.doc.r57138.tar.xz -2020/12/15 | 4535036 | systems/texlive/tlnet/archive/newcomputermodern.r57138.tar.xz +2020/12/20 | 1662584 | systems/texlive/tlnet/archive/newcomputermodern.doc.r57170.tar.xz +2020/12/20 | 4539132 | systems/texlive/tlnet/archive/newcomputermodern.r57170.tar.xz 2019/02/28 | 1632 | systems/texlive/tlnet/archive/newenviron.doc.r29331.tar.xz 2019/02/28 | 2488 | systems/texlive/tlnet/archive/newenviron.r29331.tar.xz 2019/02/28 | 147644 | systems/texlive/tlnet/archive/newfile.doc.r15878.tar.xz @@ -266129,9 +266188,9 @@ 2019/02/28 | 7580 | systems/texlive/tlnet/archive/rjlparshap.source.r15878.tar.xz 2019/02/28 | 59272 | systems/texlive/tlnet/archive/rlepsf.doc.r19082.tar.xz 2019/02/28 | 3012 | systems/texlive/tlnet/archive/rlepsf.r19082.tar.xz -2020/12/12 | 248896 | systems/texlive/tlnet/archive/rmathbr.doc.r57114.tar.xz -2020/12/12 | 8364 | systems/texlive/tlnet/archive/rmathbr.r57114.tar.xz -2020/12/12 | 13896 | systems/texlive/tlnet/archive/rmathbr.source.r57114.tar.xz +2020/12/20 | 252508 | systems/texlive/tlnet/archive/rmathbr.doc.r57173.tar.xz +2020/12/20 | 8656 | systems/texlive/tlnet/archive/rmathbr.r57173.tar.xz +2020/12/20 | 14392 | systems/texlive/tlnet/archive/rmathbr.source.r57173.tar.xz 2020/03/04 | 553688 | systems/texlive/tlnet/archive/rmpage.doc.r54080.tar.xz 2020/03/04 | 61812 | systems/texlive/tlnet/archive/rmpage.r54080.tar.xz 2020/03/24 | 394584 | systems/texlive/tlnet/archive/roboto.doc.r54512.tar.xz @@ -266298,8 +266357,8 @@ 2020/03/09 | 424 | systems/texlive/tlnet/archive/scheme-minimal.r54191.tar.xz 2020/03/09 | 636 | systems/texlive/tlnet/archive/scheme-small.r54191.tar.xz 2020/03/04 | 736 | systems/texlive/tlnet/archive/scheme-tetex.r54074.tar.xz -2020/12/02 | 201472 | systems/texlive/tlnet/archive/scholax.doc.r57042.tar.xz -2020/12/02 | 1883144 | systems/texlive/tlnet/archive/scholax.r57042.tar.xz +2020/12/20 | 201476 | systems/texlive/tlnet/archive/scholax.doc.r57169.tar.xz +2020/12/20 | 1883320 | systems/texlive/tlnet/archive/scholax.r57169.tar.xz 2020/07/15 | 904720 | systems/texlive/tlnet/archive/schooldocs.doc.r55838.tar.xz 2020/07/15 | 3028 | systems/texlive/tlnet/archive/schooldocs.r55838.tar.xz 2020/07/15 | 10336 | systems/texlive/tlnet/archive/schooldocs.source.r55838.tar.xz @@ -267409,7 +267468,7 @@ 2020/05/17 | 592 | systems/texlive/tlnet/archive/texlive-scripts.amd64-freebsd.r55172.tar.xz 2020/05/17 | 588 | systems/texlive/tlnet/archive/texlive-scripts.amd64-netbsd.r55172.tar.xz 2020/05/17 | 592 | systems/texlive/tlnet/archive/texlive-scripts.armhf-linux.r55172.tar.xz -2020/12/19 | 218656 | systems/texlive/tlnet/archive/texlive-scripts.doc.r57164.tar.xz +2020/12/20 | 218656 | systems/texlive/tlnet/archive/texlive-scripts.doc.r57168.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 @@ -267433,7 +267492,7 @@ 2020/05/17 | 588 | systems/texlive/tlnet/archive/texlive-scripts.i386-linux.r55172.tar.xz 2020/05/17 | 592 | systems/texlive/tlnet/archive/texlive-scripts.i386-netbsd.r55172.tar.xz 2020/05/17 | 588 | systems/texlive/tlnet/archive/texlive-scripts.i386-solaris.r55172.tar.xz -2020/12/19 | 132144 | systems/texlive/tlnet/archive/texlive-scripts.r57164.tar.xz +2020/12/20 | 132124 | systems/texlive/tlnet/archive/texlive-scripts.r57168.tar.xz 2020/08/24 | 36336 | systems/texlive/tlnet/archive/texlive-scripts.win32.r56157.tar.xz 2020/05/17 | 588 | systems/texlive/tlnet/archive/texlive-scripts.x86_64-cygwin.r55172.tar.xz 2020/05/12 | 592 | systems/texlive/tlnet/archive/texlive-scripts.x86_64-darwinlegacy.r55117.tar.xz @@ -269093,16 +269152,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 2020/12/03 | 105972 | systems/texlive/tlnet/install-tl -2020/12/19 | 5501026 | systems/texlive/tlnet/install-tl-unx.tar.gz -2020/12/19 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512 -2020/12/19 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc +2020/12/20 | 5500900 | systems/texlive/tlnet/install-tl-unx.tar.gz +2020/12/20 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512 +2020/12/20 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc 2020/08/23 | 4889 | systems/texlive/tlnet/install-tl-windows.bat -2020/12/19 | 19383285 | systems/texlive/tlnet/install-tl-windows.exe -2020/12/19 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512 -2020/12/19 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc -2020/12/19 | 24270384 | systems/texlive/tlnet/install-tl.zip -2020/12/19 | 145 | systems/texlive/tlnet/install-tl.zip.sha512 -2020/12/19 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc +2020/12/20 | 19386273 | systems/texlive/tlnet/install-tl-windows.exe +2020/12/20 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512 +2020/12/20 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc +2020/12/20 | 24270379 | systems/texlive/tlnet/install-tl.zip +2020/12/20 | 145 | systems/texlive/tlnet/install-tl.zip.sha512 +2020/12/20 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc 2020/03/05 | 1215 | systems/texlive/tlnet/README.md 2020/04/06 | 5961 | systems/texlive/tlnet/tlpkg/gpg/pubring.gpg 2016/04/12 | 600 | systems/texlive/tlnet/tlpkg/gpg/random_seed @@ -269111,7 +269170,7 @@ 2020/04/06 | 1280 | systems/texlive/tlnet/tlpkg/gpg/trustdb.gpg 2020/11/22 | 49274 | systems/texlive/tlnet/tlpkg/installer/config.guess 2010/11/11 | 11651 | systems/texlive/tlnet/tlpkg/installer/COPYING.MinGW-runtime.txt -2020/12/17 | 6660 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl +2020/12/19 | 6612 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl 2020/04/15 | 223687 | systems/texlive/tlnet/tlpkg/installer/curl/curl-ca-bundle.crt 2020/04/15 | 2606592 | systems/texlive/tlnet/tlpkg/installer/curl/curl.exe 2018/04/29 | 13647 | systems/texlive/tlnet/tlpkg/installer/DirSelect.pm @@ -269158,12 +269217,12 @@ 2020/05/17 | 20322 | systems/texlive/tlnet/tlpkg/TeXLive/TLCrypto.pm 2020/05/03 | 4786 | systems/texlive/tlnet/tlpkg/TeXLive/TLDownload.pm 2020/09/22 | 27563 | systems/texlive/tlnet/tlpkg/TeXLive/TLPaper.pm -2020/12/19 | 16752034 | systems/texlive/tlnet/tlpkg/texlive.tlpdb -2020/12/19 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 +2020/12/20 | 16752038 | systems/texlive/tlnet/tlpkg/texlive.tlpdb +2020/12/20 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 2020/05/13 | 86417 | systems/texlive/tlnet/tlpkg/TeXLive/TLPDB.pm -2020/12/19 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 -2020/12/19 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc -2020/12/19 | 2254556 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz +2020/12/20 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 +2020/12/20 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc +2020/12/20 | 2255136 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz 2020/04/15 | 58761 | systems/texlive/tlnet/tlpkg/TeXLive/TLPOBJ.pm 2020/03/20 | 41736 | systems/texlive/tlnet/tlpkg/TeXLive/TLPSRC.pm 2020/05/11 | 15010 | systems/texlive/tlnet/tlpkg/TeXLive/TLTREE.pm @@ -273729,7 +273788,7 @@ 2020/10/03 | 318630 | systems/win32/miktex/tm/packages/filehook.tar.lzma 2012/12/04 | 924573 | systems/win32/miktex/tm/packages/fileinfo.tar.lzma 2011/09/21 | 281409 | systems/win32/miktex/tm/packages/filemod.tar.lzma -2020/12/19 | 551128 | systems/win32/miktex/tm/packages/files.csv.lzma +2020/12/20 | 551128 | systems/win32/miktex/tm/packages/files.csv.lzma 2001/05/14 | 5617 | systems/win32/miktex/tm/packages/finbib.tar.lzma 2015/10/20 | 44379 | systems/win32/miktex/tm/packages/findhyph.tar.lzma 2011/10/21 | 89323 | systems/win32/miktex/tm/packages/fink.tar.lzma @@ -274907,9 +274966,9 @@ 2018/01/12 | 157226 | systems/win32/miktex/tm/packages/miktex-zip-bin-x64.tar.lzma 2020/12/14 | 39268 | systems/win32/miktex/tm/packages/miktex-zlib-bin-2.9.tar.lzma 2020/12/14 | 43043 | systems/win32/miktex/tm/packages/miktex-zlib-bin-x64-2.9.tar.lzma -2020/12/19 | 205133 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma -2020/12/19 | 1230532 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma -2020/12/19 | 1148115 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma +2020/12/20 | 205128 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma +2020/12/20 | 1230582 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma +2020/12/20 | 1148353 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma 2020/12/14 | 13302 | systems/win32/miktex/tm/packages/miktex-zzip-bin-2.9.tar.lzma 2020/12/14 | 14143 | systems/win32/miktex/tm/packages/miktex-zzip-bin-x64-2.9.tar.lzma 2016/07/15 | 35914 | systems/win32/miktex/tm/packages/mil3.tar.lzma @@ -275066,187 +275125,187 @@ 2018/04/09 | 400132 | systems/win32/miktex/tm/packages/newunicodechar.tar.lzma 2011/09/19 | 101312 | systems/win32/miktex/tm/packages/newvbtm.tar.lzma 2020/09/06 | 231669 | systems/win32/miktex/tm/packages/newverbs.tar.lzma -2020/12/19 | 551121 | systems/win32/miktex/tm/packages/next/files.csv.lzma -2020/12/19 | 50441 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-2.9.tar.lzma -2020/12/19 | 55998 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma -2020/12/19 | 964964 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-2.9.tar.lzma -2020/12/19 | 1077044 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma -2020/12/19 | 28621 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-2.9.tar.lzma -2020/12/19 | 30932 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma -2020/12/19 | 28905 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-2.9.tar.lzma -2020/12/19 | 33978 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma -2020/12/19 | 49795 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-2.9.tar.lzma -2020/12/19 | 57298 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma -2020/12/19 | 84960 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-2.9.tar.lzma -2020/12/19 | 93682 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma -2020/12/19 | 65713 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-2.9.tar.lzma -2020/12/19 | 73391 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma -2020/12/19 | 27017 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-2.9.tar.lzma -2020/12/19 | 30690 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma -2020/12/19 | 329592 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-2.9.tar.lzma -2020/12/19 | 392059 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma -2020/12/19 | 32345 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-2.9.tar.lzma -2020/12/19 | 36313 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma -2020/12/19 | 50545 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-2.9.tar.lzma -2020/12/19 | 55631 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma -2020/12/19 | 204127 | systems/win32/miktex/tm/packages/next/miktex-console-bin-2.9.tar.lzma -2020/12/19 | 224200 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma -2020/12/19 | 179448 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-2.9.tar.lzma -2020/12/19 | 195372 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma -2020/12/19 | 51924 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-2.9.tar.lzma -2020/12/19 | 58634 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma -2020/12/19 | 20845 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-2.9.tar.lzma -2020/12/19 | 23022 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma -2020/12/19 | 460648 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma -2020/12/19 | 45331 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-2.9.tar.lzma -2020/12/19 | 51137 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma -2020/12/19 | 279853 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-2.9.tar.lzma -2020/12/19 | 318324 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma -2020/12/19 | 40888 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-2.9.tar.lzma -2020/12/19 | 45013 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma -2020/12/19 | 115932 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-2.9.tar.lzma -2020/12/19 | 130506 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma -2020/12/19 | 1278048 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-2.9.tar.lzma -2020/12/19 | 1413906 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma -2020/12/19 | 86648 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-2.9.tar.lzma -2020/12/19 | 98562 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma -2020/12/19 | 42928 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-2.9.tar.lzma -2020/12/19 | 47700 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma -2020/12/19 | 24884 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-2.9.tar.lzma -2020/12/19 | 27768 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma -2020/12/19 | 55873 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-2.9.tar.lzma -2020/12/19 | 62919 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma -2020/12/19 | 133575 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-2.9.tar.lzma -2020/12/19 | 151973 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma -2020/12/19 | 72875 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-2.9.tar.lzma -2020/12/19 | 77282 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma -2020/12/19 | 71733 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-2.9.tar.lzma -2020/12/19 | 80732 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma -2020/12/19 | 258255 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-2.9.tar.lzma -2020/12/19 | 295208 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma -2020/12/19 | 21866 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-2.9.tar.lzma -2020/12/19 | 24806 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma -2020/12/19 | 99310 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-2.9.tar.lzma -2020/12/19 | 114670 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma -2020/12/19 | 63595 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-2.9.tar.lzma -2020/12/19 | 72730 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma -2020/12/19 | 94465 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-2.9.tar.lzma -2020/12/19 | 113608 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma -2020/12/19 | 37705 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-2.9.tar.lzma -2020/12/19 | 42249 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma -2020/12/19 | 482442 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-2.9.tar.lzma -2020/12/19 | 567636 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma -2020/12/19 | 147018 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-2.9.tar.lzma -2020/12/19 | 159541 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma -2020/12/19 | 94621 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-2.9.tar.lzma -2020/12/19 | 108924 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma -2020/12/19 | 16000 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-2.9.tar.lzma -2020/12/19 | 17644 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma -2020/12/19 | 27992 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-2.9.tar.lzma -2020/12/19 | 29686 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma -2020/12/19 | 623280 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-2.9.tar.lzma -2020/12/19 | 677613 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma -2020/12/19 | 531319 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-2.9.tar.lzma -2020/12/19 | 596933 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma -2020/12/19 | 557616 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-2.9.tar.lzma -2020/12/19 | 599538 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma -2020/12/19 | 93713 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-2.9.tar.lzma -2020/12/19 | 102826 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma -2020/12/19 | 1713628 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-2.9.tar.lzma -2020/12/19 | 1951868 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma -2020/12/19 | 67420 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-2.9.tar.lzma -2020/12/19 | 74034 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma -2020/12/19 | 27083 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-2.9.tar.lzma -2020/12/19 | 31183 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma -2020/12/19 | 7573 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-2.9.tar.lzma -2020/12/19 | 8573 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma -2020/12/19 | 194229 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-2.9.tar.lzma -2020/12/19 | 212191 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma -2020/12/19 | 248675 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-2.9.tar.lzma -2020/12/19 | 282456 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma -2020/12/19 | 96476 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-2.9.tar.lzma -2020/12/19 | 101471 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma -2020/12/19 | 58523 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-2.9.tar.lzma -2020/12/19 | 65910 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-x64-2.9.tar.lzma -2020/12/19 | 119080 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-2.9.tar.lzma -2020/12/19 | 130466 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma -2020/12/19 | 144033 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-2.9.tar.lzma -2020/12/19 | 160025 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma -2020/12/19 | 199323 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-2.9.tar.lzma -2020/12/19 | 179942 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma -2020/12/19 | 64501 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-2.9.tar.lzma -2020/12/19 | 74263 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma -2020/12/19 | 31026 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-2.9.tar.lzma -2020/12/19 | 34792 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma -2020/12/19 | 36669 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-2.9.tar.lzma -2020/12/19 | 41056 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma -2020/12/19 | 42636 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-2.9.tar.lzma -2020/12/19 | 46544 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma -2020/12/19 | 45802 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-2.9.tar.lzma -2020/12/19 | 52181 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma -2020/12/19 | 192728 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-2.9.tar.lzma -2020/12/19 | 210492 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma -2020/12/19 | 35171 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin.tar.lzma -2020/12/19 | 39361 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin-x64.tar.lzma -2020/12/19 | 736572 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-2.9.tar.lzma -2020/12/19 | 809954 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma -2020/12/19 | 197792 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-2.9.tar.lzma -2020/12/19 | 202700 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma -2020/12/19 | 207337 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-2.9.tar.lzma -2020/12/19 | 243096 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma -2020/12/19 | 78398 | systems/win32/miktex/tm/packages/next/miktex-png-bin-2.9.tar.lzma -2020/12/19 | 87420 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma -2020/12/19 | 1168654 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-2.9.tar.lzma -2020/12/19 | 1302917 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma -2020/12/19 | 19948 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-2.9.tar.lzma -2020/12/19 | 23640 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma -2020/12/19 | 31242 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-2.9.tar.lzma -2020/12/19 | 36959 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma -2020/12/19 | 63284 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-2.9.tar.lzma -2020/12/19 | 71551 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma -2020/12/19 | 42668 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-2.9.tar.lzma -2020/12/19 | 50932 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma -2020/12/19 | 1127660 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-2.9.tar.lzma -2020/12/19 | 1246215 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma -2020/12/19 | 42082 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-2.9.tar.lzma -2020/12/19 | 51471 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma -2020/12/19 | 56005 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin.tar.lzma -2020/12/19 | 59589 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma -2020/12/19 | 26916 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-2.9.tar.lzma -2020/12/19 | 29220 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma -2020/12/19 | 16001 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-2.9.tar.lzma -2020/12/19 | 17764 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma -2020/12/19 | 63093 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-2.9.tar.lzma -2020/12/19 | 69679 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma -2020/12/19 | 151768 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-2.9.tar.lzma -2020/12/19 | 165644 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma -2020/12/19 | 56643 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-2.9.tar.lzma -2020/12/19 | 65233 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma -2020/12/19 | 97461 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-2.9.tar.lzma -2020/12/19 | 104553 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma -2020/12/19 | 2513005 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-2.9.tar.lzma -2020/12/19 | 2634436 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma -2020/12/19 | 54739 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-2.9.tar.lzma -2020/12/19 | 61949 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma -2020/12/19 | 33113 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin.tar.lzma -2020/12/19 | 36955 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma -2020/12/19 | 27056 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-2.9.tar.lzma -2020/12/19 | 32914 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma -2020/12/19 | 65951 | systems/win32/miktex/tm/packages/next/miktex-web-bin-2.9.tar.lzma -2020/12/19 | 70043 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma -2020/12/19 | 250951 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-2.9.tar.lzma -2020/12/19 | 280509 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma -2020/12/19 | 581013 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-2.9.tar.lzma -2020/12/19 | 617334 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma -2020/12/19 | 38952 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-2.9.tar.lzma -2020/12/19 | 43103 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma -2020/12/19 | 205061 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma -2020/12/19 | 1230955 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma -2020/12/19 | 1148904 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma -2020/12/19 | 13305 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-2.9.tar.lzma -2020/12/19 | 14165 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma +2020/12/20 | 551121 | systems/win32/miktex/tm/packages/next/files.csv.lzma +2020/12/20 | 50443 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-2.9.tar.lzma +2020/12/20 | 55998 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma +2020/12/20 | 964963 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-2.9.tar.lzma +2020/12/20 | 1077045 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma +2020/12/20 | 28621 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-2.9.tar.lzma +2020/12/20 | 30933 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma +2020/12/20 | 28905 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-2.9.tar.lzma +2020/12/20 | 33980 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma +2020/12/20 | 49797 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-2.9.tar.lzma +2020/12/20 | 57299 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma +2020/12/20 | 84961 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-2.9.tar.lzma +2020/12/20 | 93681 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma +2020/12/20 | 65714 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-2.9.tar.lzma +2020/12/20 | 73390 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma +2020/12/20 | 27016 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-2.9.tar.lzma +2020/12/20 | 30688 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma +2020/12/20 | 329591 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-2.9.tar.lzma +2020/12/20 | 392057 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma +2020/12/20 | 32344 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-2.9.tar.lzma +2020/12/20 | 36313 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma +2020/12/20 | 50545 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-2.9.tar.lzma +2020/12/20 | 55631 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma +2020/12/20 | 204128 | systems/win32/miktex/tm/packages/next/miktex-console-bin-2.9.tar.lzma +2020/12/20 | 224201 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma +2020/12/20 | 179447 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-2.9.tar.lzma +2020/12/20 | 195373 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma +2020/12/20 | 51924 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-2.9.tar.lzma +2020/12/20 | 58634 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma +2020/12/20 | 20845 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-2.9.tar.lzma +2020/12/20 | 23021 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma +2020/12/20 | 460648 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma +2020/12/20 | 45330 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-2.9.tar.lzma +2020/12/20 | 51137 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma +2020/12/20 | 279851 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-2.9.tar.lzma +2020/12/20 | 318325 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma +2020/12/20 | 40889 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-2.9.tar.lzma +2020/12/20 | 45013 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma +2020/12/20 | 115931 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-2.9.tar.lzma +2020/12/20 | 130507 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma +2020/12/20 | 1278050 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-2.9.tar.lzma +2020/12/20 | 1413906 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma +2020/12/20 | 86649 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-2.9.tar.lzma +2020/12/20 | 98562 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma +2020/12/20 | 42928 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-2.9.tar.lzma +2020/12/20 | 47701 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma +2020/12/20 | 24884 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-2.9.tar.lzma +2020/12/20 | 27768 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma +2020/12/20 | 55873 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-2.9.tar.lzma +2020/12/20 | 62919 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma +2020/12/20 | 133576 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-2.9.tar.lzma +2020/12/20 | 151973 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma +2020/12/20 | 72874 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-2.9.tar.lzma +2020/12/20 | 77283 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma +2020/12/20 | 71734 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-2.9.tar.lzma +2020/12/20 | 80731 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma +2020/12/20 | 258254 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-2.9.tar.lzma +2020/12/20 | 295211 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma +2020/12/20 | 21867 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-2.9.tar.lzma +2020/12/20 | 24806 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma +2020/12/20 | 99309 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-2.9.tar.lzma +2020/12/20 | 114671 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma +2020/12/20 | 63593 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-2.9.tar.lzma +2020/12/20 | 72731 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma +2020/12/20 | 94466 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-2.9.tar.lzma +2020/12/20 | 113608 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma +2020/12/20 | 37704 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-2.9.tar.lzma +2020/12/20 | 42249 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma +2020/12/20 | 482442 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-2.9.tar.lzma +2020/12/20 | 567637 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma +2020/12/20 | 147021 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-2.9.tar.lzma +2020/12/20 | 159542 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma +2020/12/20 | 94620 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-2.9.tar.lzma +2020/12/20 | 108925 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma +2020/12/20 | 16001 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-2.9.tar.lzma +2020/12/20 | 17644 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma +2020/12/20 | 27991 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-2.9.tar.lzma +2020/12/20 | 29686 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma +2020/12/20 | 623280 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-2.9.tar.lzma +2020/12/20 | 677615 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma +2020/12/20 | 531319 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-2.9.tar.lzma +2020/12/20 | 596934 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma +2020/12/20 | 557620 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-2.9.tar.lzma +2020/12/20 | 599538 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma +2020/12/20 | 93712 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-2.9.tar.lzma +2020/12/20 | 102827 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma +2020/12/20 | 1713628 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-2.9.tar.lzma +2020/12/20 | 1951869 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma +2020/12/20 | 67422 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-2.9.tar.lzma +2020/12/20 | 74034 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma +2020/12/20 | 27083 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-2.9.tar.lzma +2020/12/20 | 31182 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma +2020/12/20 | 7573 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-2.9.tar.lzma +2020/12/20 | 8572 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma +2020/12/20 | 194227 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-2.9.tar.lzma +2020/12/20 | 212192 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma +2020/12/20 | 248675 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-2.9.tar.lzma +2020/12/20 | 282457 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma +2020/12/20 | 96477 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-2.9.tar.lzma +2020/12/20 | 101471 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma +2020/12/20 | 58523 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-2.9.tar.lzma +2020/12/20 | 65911 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-x64-2.9.tar.lzma +2020/12/20 | 119079 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-2.9.tar.lzma +2020/12/20 | 130467 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma +2020/12/20 | 144034 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-2.9.tar.lzma +2020/12/20 | 160026 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma +2020/12/20 | 199323 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-2.9.tar.lzma +2020/12/20 | 179943 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma +2020/12/20 | 64501 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-2.9.tar.lzma +2020/12/20 | 74264 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma +2020/12/20 | 31026 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-2.9.tar.lzma +2020/12/20 | 34792 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma +2020/12/20 | 36669 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-2.9.tar.lzma +2020/12/20 | 41057 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma +2020/12/20 | 42637 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-2.9.tar.lzma +2020/12/20 | 46545 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma +2020/12/20 | 45802 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-2.9.tar.lzma +2020/12/20 | 52182 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma +2020/12/20 | 192726 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-2.9.tar.lzma +2020/12/20 | 210493 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma +2020/12/20 | 35171 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin.tar.lzma +2020/12/20 | 39362 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin-x64.tar.lzma +2020/12/20 | 736572 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-2.9.tar.lzma +2020/12/20 | 809955 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma +2020/12/20 | 197794 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-2.9.tar.lzma +2020/12/20 | 202700 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma +2020/12/20 | 207337 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-2.9.tar.lzma +2020/12/20 | 243096 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma +2020/12/20 | 78401 | systems/win32/miktex/tm/packages/next/miktex-png-bin-2.9.tar.lzma +2020/12/20 | 87422 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma +2020/12/20 | 1168653 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-2.9.tar.lzma +2020/12/20 | 1302916 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma +2020/12/20 | 19948 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-2.9.tar.lzma +2020/12/20 | 23639 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma +2020/12/20 | 31242 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-2.9.tar.lzma +2020/12/20 | 36958 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma +2020/12/20 | 63285 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-2.9.tar.lzma +2020/12/20 | 71550 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma +2020/12/20 | 42666 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-2.9.tar.lzma +2020/12/20 | 50934 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma +2020/12/20 | 1127660 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-2.9.tar.lzma +2020/12/20 | 1246215 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma +2020/12/20 | 42082 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-2.9.tar.lzma +2020/12/20 | 51471 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma +2020/12/20 | 56005 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin.tar.lzma +2020/12/20 | 59590 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma +2020/12/20 | 26914 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-2.9.tar.lzma +2020/12/20 | 29218 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma +2020/12/20 | 16002 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-2.9.tar.lzma +2020/12/20 | 17763 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma +2020/12/20 | 63093 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-2.9.tar.lzma +2020/12/20 | 69678 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma +2020/12/20 | 151767 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-2.9.tar.lzma +2020/12/20 | 165643 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma +2020/12/20 | 56644 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-2.9.tar.lzma +2020/12/20 | 65235 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma +2020/12/20 | 97460 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-2.9.tar.lzma +2020/12/20 | 104553 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma +2020/12/20 | 2513009 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-2.9.tar.lzma +2020/12/20 | 2634437 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma +2020/12/20 | 54739 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-2.9.tar.lzma +2020/12/20 | 61947 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma +2020/12/20 | 33112 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin.tar.lzma +2020/12/20 | 36955 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma +2020/12/20 | 27056 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-2.9.tar.lzma +2020/12/20 | 32914 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma +2020/12/20 | 65951 | systems/win32/miktex/tm/packages/next/miktex-web-bin-2.9.tar.lzma +2020/12/20 | 70045 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma +2020/12/20 | 250952 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-2.9.tar.lzma +2020/12/20 | 280511 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma +2020/12/20 | 581008 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-2.9.tar.lzma +2020/12/20 | 617335 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma +2020/12/20 | 38950 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-2.9.tar.lzma +2020/12/20 | 43100 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma +2020/12/20 | 205175 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma +2020/12/20 | 1230287 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma +2020/12/20 | 1148368 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma +2020/12/20 | 13304 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-2.9.tar.lzma +2020/12/20 | 14164 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma 2019/03/12 | 1412 | systems/win32/miktex/tm/packages/nextpage.tar.lzma -2020/12/19 | 1153 | systems/win32/miktex/tm/packages/next/pr.ini +2020/12/20 | 1153 | systems/win32/miktex/tm/packages/next/pr.ini 2018/07/06 | 145915 | systems/win32/miktex/tm/packages/nexus-otf.tar.lzma 2017/03/30 | 191149 | systems/win32/miktex/tm/packages/nfssext-cfr.tar.lzma 2012/12/20 | 612251 | systems/win32/miktex/tm/packages/nicefilelist.tar.lzma @@ -275572,7 +275631,7 @@ 2020/10/20 | 342254 | systems/win32/miktex/tm/packages/preview.tar.lzma 2019/06/20 | 375963 | systems/win32/miktex/tm/packages/prftree.tar.lzma 2020/10/27 | 357822 | systems/win32/miktex/tm/packages/principia.tar.lzma -2020/12/19 | 1129 | systems/win32/miktex/tm/packages/pr.ini +2020/12/20 | 1129 | systems/win32/miktex/tm/packages/pr.ini 2010/09/27 | 248469 | systems/win32/miktex/tm/packages/printlen.tar.lzma 2008/06/17 | 77313 | systems/win32/miktex/tm/packages/proba.tar.lzma 2017/07/12 | 988486 | systems/win32/miktex/tm/packages/probsoln.tar.lzma @@ -276740,7 +276799,7 @@ 2020/12/17 | 5176928 | systems/win32/w32tex/aleph-w32.tar.xz 2020/11/16 | 65991060 | systems/win32/w32tex/biblatex-biber.tar.xz 2016/12/13 | 65971452 | systems/win32/w32tex/cbfonts.tar.xz -2020/12/18 | 754414 | systems/win32/w32tex/ChangeLog +2020/12/19 | 754488 | systems/win32/w32tex/ChangeLog 2009/08/03 | 141221 | systems/win32/w32tex/ChangeLog.0 2009/08/03 | 221890 | systems/win32/w32tex/ChangeLog.1 2009/08/03 | 116462 | systems/win32/w32tex/ChangeLog.2 @@ -276748,7 +276807,7 @@ 2017/06/24 | 644754 | systems/win32/w32tex/ChangeLog.4 2020/10/20 | 23448752 | systems/win32/w32tex/cjkzr.tar.xz 2013/04/27 | 15858676 | systems/win32/w32tex/context-doc.tar.xz -2020/12/17 | 141670032 | systems/win32/w32tex/context.tar.xz +2020/12/19 | 141663632 | systems/win32/w32tex/context.tar.xz 2020/12/05 | 911348 | systems/win32/w32tex/cweb-w32.tar.xz 2020/09/21 | 6434128 | systems/win32/w32tex/datetime2.tar.xz 2020/12/05 | 846308 | systems/win32/w32tex/dvi2ps-w32.tar.xz @@ -276960,7 +277019,7 @@ 2004/06/04 | 404 | tds/tds.sed 2004/06/23 | 65418 | tds/tds.tex 2019/05/29 | 304264 | tds.zip -2020/12/20 | 186 | timestamp +2020/12/21 | 186 | timestamp 2002/08/26 | 61898 | usergrps/dante/antrag.pdf 2002/08/26 | 118217 | usergrps/dante/antrag.ps 2017/06/30 | 917 | usergrps/dante/dtk/doc/beispiel.bib diff --git a/FILES.byname.gz b/FILES.byname.gz index b001405ec4..69e8a52c78 100644 Binary files a/FILES.byname.gz and b/FILES.byname.gz differ diff --git a/FILES.last07days b/FILES.last07days index 64663f5751..a766649aa2 100644 --- a/FILES.last07days +++ b/FILES.last07days @@ -1,10 +1,783 @@ -2020/12/19 | 99310 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-2.9.tar.lzma +2020/12/20 | 999 | graphics/circuit_macros/examples/Fuses.m4 +2020/12/20 | 999 | graphics/circuit_macros/doc/FusesMan.m4 +2020/12/20 | 993472 | info/apprendre-a-programmer-en-tex/source/mandelbrot.pdf +2020/12/20 | 99309 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-2.9.tar.lzma +2020/12/20 | 991 | graphics/circuit_macros/examples/Byte.m4 +2020/12/20 | 988 | graphics/circuit_macros/examples/svg/VariableSVG.m4 +2020/12/20 | 98562 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma +2020/12/20 | 9840 | graphics/circuit_macros/examples/tubedefs.m4 +2020/12/20 | 980 | graphics/circuit_macros/examples/Emarrows.m4 +2020/12/20 | 980 | graphics/circuit_macros/doc/EmarrowsMan.m4 +2020/12/20 | 9800 | graphics/circuit_macros/examples/Makefile +2020/12/20 | 9747 | graphics/circuit_macros/examples/svg/UNO.m4 +2020/12/20 | 97460 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-2.9.tar.lzma +2020/12/20 | 971 | macros/latex/contrib/easyfloats/doc/preamble/pdfstring.tex +2020/12/20 | 970 | graphics/circuit_macros/examples/svg/ex15SVG.m4 +2020/12/20 | 9686 | graphics/circuit_macros/examples/ics.m4 +2020/12/20 | 964963 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-2.9.tar.lzma +2020/12/20 | 96477 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-2.9.tar.lzma +2020/12/20 | 960 | graphics/circuit_macros/doc/Flowdiag.m4 +2020/12/20 | 959 | graphics/circuit_macros/examples/svg/FusesSVG.m4 +2020/12/20 | 950156 | graphics/circuit_macros/doc/Circuit_macros.pdf +2020/12/20 | 947 | graphics/circuit_macros/examples/svg/QuantumSVG.m4 +2020/12/20 | 947 | graphics/circuit_macros/examples/squiggle.m4 +2020/12/20 | 94620 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-2.9.tar.lzma +2020/12/20 | 94474 | graphics/circuit_macros/examples/mf/cct.mf +2020/12/20 | 94466 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-2.9.tar.lzma +2020/12/20 | 9425 | graphics/circuit_macros/doc/ShiftR.tex +2020/12/20 | 9380 | graphics/circuit_macros/examples/svg/tstSVG.htmx +2020/12/20 | 937 | graphics/circuit_macros/examples/svg/ByteSVG.m4 +2020/12/20 | 93712 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-2.9.tar.lzma +2020/12/20 | 93681 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma +2020/12/20 | 932 | graphics/circuit_macros/examples/Variable.m4 +2020/12/20 | 9276 | graphics/circuit_macros/examples/svg/icsSVG.m4 +2020/12/20 | 926 | graphics/circuit_macros/doc/VariableMan.m4 +2020/12/20 | 920 | macros/latex/contrib/easyfloats/doc/preamble/bibliography.tex +2020/12/20 | 918 | graphics/circuit_macros/examples/Quantum.m4 +2020/12/20 | 905 | graphics/circuit_macros/examples/birds.m4 +2020/12/20 | 897744 | graphics/circuit_macros/examples/nsvg/examples.pdf +2020/12/20 | 886 | graphics/circuit_macros/examples/svg/quickSVG.m4 +2020/12/20 | 876477 | graphics/circuit_macros/examples/examples.pdf +2020/12/20 | 87422 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma +2020/12/20 | 86649 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-2.9.tar.lzma +2020/12/20 | 865 | graphics/circuit_macros/examples/ex18.m4 +2020/12/20 | 8656 | systems/texlive/tlnet/archive/rmathbr.r57173.tar.xz +2020/12/20 | 8572 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma +2020/12/20 | 855 | graphics/circuit_macros/examples/svg/ex03SVG.m4 +2020/12/20 | 84961 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-2.9.tar.lzma +2020/12/20 | 83734 | info/apprendre-a-programmer-en-tex/source/pg0001.pdf +2020/12/20 | 8372 | graphics/circuit_macros/examples/exp.m4 +2020/12/20 | 835 | graphics/circuit_macros/doc/Opto.m4 +2020/12/20 | 83475 | info/apprendre-a-programmer-en-tex/source/pg0003.pdf +2020/12/20 | 83363 | info/apprendre-a-programmer-en-tex/source/pg0002.pdf +2020/12/20 | 831 | graphics/circuit_macros/doc/GroundsMan.m4 +2020/12/20 | 828 | graphics/circuit_macros/examples/Grounds.m4 +2020/12/20 | 81656 | graphics/circuit_macros/doc/defines.tex +2020/12/20 | 81505 | graphics/circuit_macros/libgen.m4 +2020/12/20 | 81497 | info/apprendre-a-programmer-en-tex/source/progtexmacro.tex +2020/12/20 | 810 | graphics/circuit_macros/examples/svg/GroundsSVG.m4 +2020/12/20 | 809955 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma +2020/12/20 | 80731 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma +2020/12/20 | 801 | graphics/circuit_macros/doc/Potentiometers.m4 +2020/12/20 | 793 | graphics/circuit_macros/examples/svg/CountingSVG.m4 +2020/12/20 | 790 | macros/latex/contrib/easyfloats/doc/content/license.tex +2020/12/20 | 78401 | systems/win32/miktex/tm/packages/next/miktex-png-bin-2.9.tar.lzma +2020/12/20 | 782 | graphics/circuit_macros/doc/Oblique.m4 +2020/12/20 | 777 | graphics/circuit_macros/examples/Arrester.m4 +2020/12/20 | 776 | graphics/circuit_macros/examples/mf/cct.tfm +2020/12/20 | 774 | graphics/circuit_macros/examples/quick.m4 +2020/12/20 | 774 | graphics/circuit_macros/doc/quick.m4 +2020/12/20 | 77283 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma +2020/12/20 | 7721 | graphics/circuit_macros/examples/shapes.m4 +2020/12/20 | 771 | graphics/circuit_macros/examples/Attention.m4 +2020/12/20 | 7673 | graphics/circuit_macros/examples/Chuck.m4 +2020/12/20 | 7573 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-2.9.tar.lzma +2020/12/20 | 7546 | graphics/circuit_macros/examples/svg/RectifiersSVG.m4 +2020/12/20 | 7533 | graphics/circuit_macros/doc/Logic.tex +2020/12/20 | 7526 | graphics/circuit_macros/examples/svg/shapesSVG.m4 +2020/12/20 | 7503 | graphics/circuit_macros/doc/Headers.tex +2020/12/20 | 748 | graphics/circuit_macros/examples/svg/Np.m4 +2020/12/20 | 746 | graphics/circuit_macros/examples/Connectors.m4 +2020/12/20 | 745 | graphics/circuit_macros/examples/svg/DecoderSVG.m4 +2020/12/20 | 74264 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma +2020/12/20 | 741 | graphics/circuit_macros/examples/Incleps.m4 +2020/12/20 | 7418 | graphics/circuit_macros/examples/svg/CsourceSVG.m4 +2020/12/20 | 740 | graphics/circuit_macros/examples/SampleFlow.m4 +2020/12/20 | 74034 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma +2020/12/20 | 736572 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-2.9.tar.lzma +2020/12/20 | 73390 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma +2020/12/20 | 7316 | graphics/circuit_macros/doc/Relay.tex +2020/12/20 | 72874 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-2.9.tar.lzma +2020/12/20 | 72731 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma +2020/12/20 | 7207 | macros/latex/contrib/easyfloats/doc/preamble/macros.tex +2020/12/20 | 7203 | graphics/circuit_macros/examples/svg/lcctSVG.m4 +2020/12/20 | 71734 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-2.9.tar.lzma +2020/12/20 | 715 | graphics/circuit_macros/examples/svg/ConnectorsSVG.m4 +2020/12/20 | 715 | graphics/circuit_macros/examples/psfrag/examplespsfrag.tex +2020/12/20 | 71550 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma +2020/12/20 | 713 | fonts/cochineal/tex/uzcochmia.fd +2020/12/20 | 7113 | graphics/circuit_macros/examples/lcct.m4 +2020/12/20 | 709 | graphics/circuit_macros/examples/Inclpdf.m4 +2020/12/20 | 709956 | fonts/notomath.zip +2020/12/20 | 706 | graphics/circuit_macros/psfrag.m4 +2020/12/20 | 703 | graphics/circuit_macros/examples/mpost/README-mpost +2020/12/20 | 7006 | graphics/circuit_macros/examples/Rectifiers.m4 +2020/12/20 | 70045 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma +2020/12/20 | 69678 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma +2020/12/20 | 6953 | fonts/cochineal/README +2020/12/20 | 685 | graphics/circuit_macros/examples/mpost/mptest +2020/12/20 | 6854 | graphics/circuit_macros/examples/svg/DiniSVG.m4 +2020/12/20 | 6854 | graphics/circuit_macros/examples/Dini.m4 +2020/12/20 | 682 | graphics/circuit_macros/examples/svg/ujtSVG.m4 +2020/12/20 | 677615 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma +2020/12/20 | 6764 | macros/latex/contrib/easyfloats/doc/preamble/description-links.tex +2020/12/20 | 67422 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-2.9.tar.lzma +2020/12/20 | 673 | graphics/circuit_macros/examples/ex03.m4 +2020/12/20 | 6640 | info/apprendre-a-programmer-en-tex/README +2020/12/20 | 660 | graphics/circuit_macros/examples/ujt.m4 +2020/12/20 | 660 | graphics/circuit_macros/doc/ujtMan.m4 +2020/12/20 | 65951 | systems/win32/miktex/tm/packages/next/miktex-web-bin-2.9.tar.lzma +2020/12/20 | 65911 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-x64-2.9.tar.lzma +2020/12/20 | 65714 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-2.9.tar.lzma +2020/12/20 | 656 | graphics/circuit_macros/examples/Zcos.m4 +2020/12/20 | 655 | graphics/circuit_macros/examples/Decoder.m4 +2020/12/20 | 6550 | graphics/circuit_macros/doc/Conn.tex +2020/12/20 | 654 | graphics/circuit_macros/examples/diamond.m4 +2020/12/20 | 654227 | macros/latex/contrib/curve2e/curve2e.pdf +2020/12/20 | 65235 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma +2020/12/20 | 645 | graphics/circuit_macros/examples/Floor.m4 +2020/12/20 | 64501 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-2.9.tar.lzma +2020/12/20 | 644 | fonts/notomath/README +2020/12/20 | 6413 | graphics/circuit_macros/examples/svg/CanLogicSVG.m4 +2020/12/20 | 63 | graphics/circuit_macros/examples/svg/local_init.m4 +2020/12/20 | 6371 | graphics/circuit_macros/examples/CanLogic.m4 +2020/12/20 | 63593 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-2.9.tar.lzma +2020/12/20 | 63285 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-2.9.tar.lzma +2020/12/20 | 63093 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-2.9.tar.lzma +2020/12/20 | 62919 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma +2020/12/20 | 6243 | graphics/circuit_macros/examples/ASME_Y14-5.m4 +2020/12/20 | 623280 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-2.9.tar.lzma +2020/12/20 | 6216 | graphics/circuit_macros/examples/svg/LgateSVG.m4 +2020/12/20 | 61947 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma +2020/12/20 | 617335 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma +2020/12/20 | 617115 | macros/latex/contrib/easyfloats.zip +2020/12/20 | 6150 | graphics/circuit_macros/examples/svg/Y14-5SVG.m4 +2020/12/20 | 614 | graphics/circuit_macros/doc/BigResistor.m4 +2020/12/20 | 613 | graphics/circuit_macros/examples/tst.tex +2020/12/20 | 609 | graphics/circuit_macros/examples/svg/diamondSVG.m4 +2020/12/20 | 6072 | systems/texlive/tlnet/archive/menukeys.r57172.tar.xz +2020/12/20 | 6067 | graphics/circuit_macros/doc/Contacts.tex +2020/12/20 | 60576 | macros/latex/contrib/easyfloats/easyfloats.dtx +2020/12/20 | 6003 | graphics/circuit_macros/examples/CSlight.m4 +2020/12/20 | 599538 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma +2020/12/20 | 5989 | macros/latex/contrib/curve2e/README.txt +2020/12/20 | 5969 | graphics/circuit_macros/examples/xfig/xfiglib.m4 +2020/12/20 | 596934 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma +2020/12/20 | 59590 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma +2020/12/20 | 591 | graphics/circuit_macros/examples/test.m4 +2020/12/20 | 5890 | graphics/circuit_macros/examples/Csource.m4 +2020/12/20 | 5874721 | fonts/cochineal.zip +2020/12/20 | 58634 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma +2020/12/20 | 58523 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-2.9.tar.lzma +2020/12/20 | 581008 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-2.9.tar.lzma +2020/12/20 | 573880 | systems/texlive/tlnet/archive/menukeys.doc.r57172.tar.xz +2020/12/20 | 57299 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma +2020/12/20 | 571391 | macros/latex/contrib/curve2e/curve2e-manual.pdf +2020/12/20 | 56881 | macros/latex/contrib/easyfloats/doc/content/documentation.tex +2020/12/20 | 567637 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma +2020/12/20 | 566 | macros/latex/contrib/easyfloats/doc/content/titlepage.tex +2020/12/20 | 56644 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-2.9.tar.lzma +2020/12/20 | 56005 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin.tar.lzma +2020/12/20 | 55998 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma +2020/12/20 | 55873 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-2.9.tar.lzma +2020/12/20 | 557620 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-2.9.tar.lzma +2020/12/20 | 55631 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma +2020/12/20 | 5545 | graphics/circuit_macros/doc/Bip.tex +2020/12/20 | 55406 | graphics/circuit_macros/examples/nsvg/dev/test.svg +2020/12/20 | 5521 | graphics/circuit_macros/examples/svg/graysurfSVG.m4 +2020/12/20 | 551 | graphics/circuit_macros/examples/Counting.m4 +2020/12/20 | 551128 | systems/win32/miktex/tm/packages/files.csv.lzma +2020/12/20 | 551121 | systems/win32/miktex/tm/packages/next/files.csv.lzma +2020/12/20 | 5502 | graphics/circuit_macros/doc/Emarrows.tex +2020/12/20 | 5500900 | systems/texlive/tlnet/install-tl-unx.tar.gz +2020/12/20 | 5478 | graphics/circuit_macros/examples/graysurf.m4 +2020/12/20 | 54739 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-2.9.tar.lzma +2020/12/20 | 546772 | macros/latex/contrib/easyfloats/doc/easyfloats.pdf +2020/12/20 | 545 | graphics/circuit_macros/examples/svg/RotboxSVG.m4 +2020/12/20 | 5424 | graphics/circuit_macros/examples/svg/Makefile +2020/12/20 | 538 | graphics/circuit_macros/examples/svg/FontsSVG.m4 +2020/12/20 | 538 | graphics/circuit_macros/examples/svg/AmpTableSVG.m4 +2020/12/20 | 536 | macros/latex/contrib/easyfloats/doc/lexer/latex_atletter.py +2020/12/20 | 535 | graphics/circuit_macros/doc/Tline.m4 +2020/12/20 | 532 | graphics/circuit_macros/examples/svg/NLGSVG.m4 +2020/12/20 | 531319 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-2.9.tar.lzma +2020/12/20 | 52182 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma +2020/12/20 | 51924 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-2.9.tar.lzma +2020/12/20 | 518 | graphics/circuit_macros/examples/Rotbox.m4 +2020/12/20 | 5171 | graphics/circuit_macros/examples/svg/FlowSVG.m4 +2020/12/20 | 51471 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma +2020/12/20 | 5137 | graphics/circuit_macros/doc/NPDT.tex +2020/12/20 | 51137 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma +2020/12/20 | 50 | graphics/circuit_macros/doc/bitr.m4 +2020/12/20 | 50934 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma +2020/12/20 | 5060 | macros/latex/contrib/pdfpc/pdfpc.sty +2020/12/20 | 5056 | macros/latex/contrib/easyfloats/doc/undescribed-keywords.tex +2020/12/20 | 50545 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-2.9.tar.lzma +2020/12/20 | 5044 | graphics/circuit_macros/examples/svg/AntiqueClockSVG.m4 +2020/12/20 | 50443 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-2.9.tar.lzma +2020/12/20 | 5042 | graphics/circuit_macros/examples/AntiqueClock.m4 +2020/12/20 | 5035 | macros/latex/contrib/pdfpc/pdfpc-doc.tex +2020/12/20 | 50068 | systems/texlive/tlnet/archive/fontools.r57171.tar.xz +2020/12/20 | 499 | graphics/circuit_macros/examples/NLG.m4 +2020/12/20 | 499 | graphics/circuit_macros/doc/NLGMan.m4 +2020/12/20 | 49797 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-2.9.tar.lzma +2020/12/20 | 4964 | graphics/circuit_macros/doc/Multiplexer.tex +2020/12/20 | 494 | graphics/circuit_macros/examples/AmpTable.m4 +2020/12/20 | 494 | graphics/circuit_macros/doc/AmpTableMan.m4 +2020/12/20 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 +2020/12/20 | 48 | graphics/circuit_macros/doc/oax.m4 +2020/12/20 | 489 | graphics/circuit_macros/examples/Koch.m4 +2020/12/20 | 483 | graphics/circuit_macros/doc/eboxdims.m4 +2020/12/20 | 482 | graphics/circuit_macros/examples/clock.m4 +2020/12/20 | 482442 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-2.9.tar.lzma +2020/12/20 | 4817 | graphics/circuit_macros/doc/Demultiplexer.tex +2020/12/20 | 4789 | graphics/circuit_macros/doc/Fuses.tex +2020/12/20 | 47768 | graphics/circuit_macros/liblog.m4 +2020/12/20 | 47701 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma +2020/12/20 | 4751 | graphics/circuit_macros/examples/Shaky.m4 +2020/12/20 | 4751 | graphics/circuit_macros/examples/Flow.m4 +2020/12/20 | 4735 | macros/latex/contrib/easyfloats/doc/preamble/markdown.tex +2020/12/20 | 4687 | graphics/circuit_macros/doc/Makefile +2020/12/20 | 4683 | graphics/circuit_macros/examples/psfrag/Makefile +2020/12/20 | 4666 | graphics/circuit_macros/doc/Nport.tex +2020/12/20 | 46545 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma +2020/12/20 | 4638 | graphics/circuit_macros/examples/Ball.m4 +2020/12/20 | 462 | graphics/circuit_macros/Copying +2020/12/20 | 4624 | graphics/circuit_macros/examples/svg/roseSVG.m4 +2020/12/20 | 4615 | graphics/circuit_macros/examples/mf/font.m4 +2020/12/20 | 460 | graphics/circuit_macros/examples/debug1.tex +2020/12/20 | 460648 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma +2020/12/20 | 45802 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-2.9.tar.lzma +2020/12/20 | 4569 | graphics/circuit_macros/examples/rose.m4 +2020/12/20 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc +2020/12/20 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc +2020/12/20 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc +2020/12/20 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc +2020/12/20 | 4539132 | systems/texlive/tlnet/archive/newcomputermodern.r57170.tar.xz +2020/12/20 | 45330 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-2.9.tar.lzma +2020/12/20 | 45323 | graphics/circuit_macros/examples/Incl.eps.gz +2020/12/20 | 4521 | graphics/circuit_macros/examples/svg/LyapSVG.m4 +2020/12/20 | 45013 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma +2020/12/20 | 449 | graphics/circuit_macros/doc/woodchips.m4 +2020/12/20 | 4489 | graphics/circuit_macros/examples/fet.m4 +2020/12/20 | 4489 | graphics/circuit_macros/doc/fetMan.m4 +2020/12/20 | 4459 | graphics/circuit_macros/examples/Lyap.m4 +2020/12/20 | 442 | graphics/circuit_macros/examples/Wheat.m4 +2020/12/20 | 4337 | graphics/circuit_macros/examples/svg/AlogixSVG.m4 +2020/12/20 | 4313 | graphics/circuit_macros/examples/ex09.m4 +2020/12/20 | 43100 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma +2020/12/20 | 4309 | graphics/circuit_macros/examples/svg/SwitchesSVG.m4 +2020/12/20 | 4305 | graphics/circuit_macros/examples/Euro.m4 +2020/12/20 | 42928 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-2.9.tar.lzma +2020/12/20 | 4288 | graphics/circuit_macros/examples/control.m4 +2020/12/20 | 42666 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-2.9.tar.lzma +2020/12/20 | 42637 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-2.9.tar.lzma +2020/12/20 | 4258 | graphics/circuit_macros/examples/svg/BtreeSVG.m4 +2020/12/20 | 4247 | graphics/circuit_macros/examples/mpost/Makefile +2020/12/20 | 4233 | macros/luatex/generic/luaxml/luaxml-transform.lua +2020/12/20 | 422 | graphics/circuit_macros/examples/svg/GrayCodeSVG.m4 +2020/12/20 | 42249 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma +2020/12/20 | 421 | graphics/circuit_macros/examples/GrayCode.m4 +2020/12/20 | 421 | graphics/circuit_macros/doc/Sinus.m4 +2020/12/20 | 42082 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-2.9.tar.lzma +2020/12/20 | 4205 | graphics/circuit_macros/examples/Alogix.m4 +2020/12/20 | 419 | graphics/circuit_macros/examples/svg/SixpoleSVG.m4 +2020/12/20 | 419 | graphics/circuit_macros/examples/Sixpole.m4 +2020/12/20 | 418 | graphics/circuit_macros/examples/mpost/tstmpost.tex +2020/12/20 | 417 | graphics/circuit_macros/examples/svg/SQUIDSVG.m4 +2020/12/20 | 4178 | graphics/circuit_macros/doc/Tgate.tex +2020/12/20 | 416 | graphics/circuit_macros/examples/testpdf.tex +2020/12/20 | 4119 | graphics/circuit_macros/examples/svg/ex09SVG.m4 +2020/12/20 | 41057 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma +2020/12/20 | 41032 | macros/luatex/generic/luaxml/luaxml-namedentities.lua +2020/12/20 | 409 | graphics/circuit_macros/examples/mpost/examplesmpost.tex +2020/12/20 | 40889 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-2.9.tar.lzma +2020/12/20 | 4079 | graphics/circuit_macros/INSTALL +2020/12/20 | 4073 | graphics/circuit_macros/doc/Circuit_macros.bib +2020/12/20 | 404 | graphics/circuit_macros/doc/Series.m4 +2020/12/20 | 4012401 | info/apprendre-a-programmer-en-tex/output/apprendre-a-programmer-en-tex.pdf +2020/12/20 | 4003 | graphics/circuit_macros/examples/svg/InclepsSVG.m4 +2020/12/20 | 39908 | graphics/circuit_macros/examples/nsvg/dev/test-1.svg +2020/12/20 | 3973 | graphics/circuit_macros/examples/Switches.m4 +2020/12/20 | 3973 | graphics/circuit_macros/doc/SwitchesMan.m4 +2020/12/20 | 3954 | graphics/circuit_macros/examples/PushPull.m4 +2020/12/20 | 39362 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin-x64.tar.lzma +2020/12/20 | 392057 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma +2020/12/20 | 3911 | graphics/circuit_macros/examples/oFlow.m4 +2020/12/20 | 39113 | info/apprendre-a-programmer-en-tex/source/vignette.png +2020/12/20 | 38950 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-2.9.tar.lzma +2020/12/20 | 387 | graphics/circuit_macros/doc/lrarrows.m4 +2020/12/20 | 3836 | graphics/circuit_macros/examples/svg/fetSVG.m4 +2020/12/20 | 382 | graphics/circuit_macros/examples/tikz.tex +2020/12/20 | 3825 | graphics/circuit_macros/examples/svg/recycleSVG.m4 +2020/12/20 | 3825 | graphics/circuit_macros/examples/recycle.m4 +2020/12/20 | 380 | graphics/circuit_macros/examples/SQUID.m4 +2020/12/20 | 3785 | graphics/circuit_macros/examples/Mixer.m4 +2020/12/20 | 3779 | graphics/circuit_macros/examples/svg/PushPullSVG.m4 +2020/12/20 | 37704 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-2.9.tar.lzma +2020/12/20 | 3756 | graphics/circuit_macros/examples/svg/randomSVG.m4 +2020/12/20 | 3727 | graphics/circuit_macros/examples/random.m4 +2020/12/20 | 371 | graphics/circuit_macros/examples/psfrag/tstpsfrag.tex +2020/12/20 | 370 | graphics/circuit_macros/examples/snake.m4 +2020/12/20 | 369 | graphics/circuit_macros/doc/sampleIC.m4 +2020/12/20 | 36958 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma +2020/12/20 | 36955 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma +2020/12/20 | 366 | macros/latex/contrib/easyfloats/DEPENDS.txt +2020/12/20 | 36669 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-2.9.tar.lzma +2020/12/20 | 365 | graphics/circuit_macros/examples/rotellipse.m4 +2020/12/20 | 36472 | graphics/circuit_macros/examples/nsvg/dev/test.tex +2020/12/20 | 3646 | graphics/circuit_macros/examples/svg/ContactSVG.m4 +2020/12/20 | 3631 | graphics/circuit_macros/examples/svg/wormSVG.m4 +2020/12/20 | 36313 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma +2020/12/20 | 3618 | macros/latex/contrib/easyfloats/doc/easyfloats.bib +2020/12/20 | 3567 | graphics/circuit_macros/examples/svg/ButtonsSVG.m4 +2020/12/20 | 353 | graphics/circuit_macros/examples/windows.m4 +2020/12/20 | 353 | graphics/circuit_macros/examples/svg/windows.m4 +2020/12/20 | 35308 | graphics/circuit_macros/examples/nsvg/dev/test.pdf +2020/12/20 | 3522 | graphics/circuit_macros/examples/svg/ex12SVG.m4 +2020/12/20 | 35171 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin.tar.lzma +2020/12/20 | 3508 | graphics/circuit_macros/examples/Buttons.m4 +2020/12/20 | 3489 | graphics/circuit_macros/examples/svg/MixerSVG.m4 +2020/12/20 | 34792 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma +2020/12/20 | 3473 | graphics/circuit_macros/examples/svg/MCSVG.m4 +2020/12/20 | 3426395 | fonts/scholax.zip +2020/12/20 | 34224145 | info/apprendre-a-programmer-en-tex.zip +2020/12/20 | 3404 | fonts/scholax/tfm/zncbmi.tfm +2020/12/20 | 3400 | fonts/scholax/tfm/zncfmi.tfm +2020/12/20 | 33980 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma +2020/12/20 | 3396 | fonts/scholax/tfm/zncmi.tfm +2020/12/20 | 3395920 | graphics/circuit_macros.zip +2020/12/20 | 3390 | graphics/circuit_macros/examples/svg/ex05SVG.m4 +2020/12/20 | 337 | graphics/circuit_macros/examples/xfig/Makefile +2020/12/20 | 3372 | fonts/scholax/tfm/zncfbmi.tfm +2020/12/20 | 335917 | info/apprendre-a-programmer-en-tex/output/progtexcode.txt +2020/12/20 | 3346 | graphics/circuit_macros/examples/Windings.m4 +2020/12/20 | 3346 | graphics/circuit_macros/doc/WindingsMan.m4 +2020/12/20 | 3339 | graphics/circuit_macros/examples/ex12.m4 +2020/12/20 | 3326 | graphics/circuit_macros/examples/Contact.m4 +2020/12/20 | 3326 | graphics/circuit_macros/doc/ContactMan.m4 +2020/12/20 | 3321 | graphics/circuit_macros/examples/thyristor.m4 +2020/12/20 | 3321 | graphics/circuit_macros/doc/thyristorMan.m4 +2020/12/20 | 33112 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin.tar.lzma +2020/12/20 | 3310 | graphics/circuit_macros/examples/svg/thyristorSVG.m4 +2020/12/20 | 32 | graphics/circuit_macros/examples/Incl.eps.bb +2020/12/20 | 329 | graphics/circuit_macros/doc/FF.m4 +2020/12/20 | 329591 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-2.9.tar.lzma +2020/12/20 | 32914 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma +2020/12/20 | 3290 | graphics/circuit_macros/examples/svg/sfgSVG.m4 +2020/12/20 | 3239 | macros/luatex/generic/luaxml/luaxml-testxml.lua +2020/12/20 | 32344 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-2.9.tar.lzma +2020/12/20 | 3206 | graphics/circuit_macros/examples/svg/controlSVG.m4 +2020/12/20 | 3183 | graphics/circuit_macros/doc/NLG.tex +2020/12/20 | 318325 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma +2020/12/20 | 317 | graphics/circuit_macros/examples/psfrag/README-psfrag.txt +2020/12/20 | 3175 | graphics/circuit_macros/examples/Blogix.m4 +2020/12/20 | 3133 | macros/latex/contrib/easyfloats/doc/content/other-packages.tex +2020/12/20 | 31242 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-2.9.tar.lzma +2020/12/20 | 31182 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma +2020/12/20 | 31026 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-2.9.tar.lzma +2020/12/20 | 3098 | macros/latex/contrib/easyfloats/easyfloats.ins +2020/12/20 | 30933 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma +2020/12/20 | 3091 | graphics/circuit_macros/examples/svg/TtreeSVG.m4 +2020/12/20 | 30688 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma +2020/12/20 | 306184 | info/apprendre-a-programmer-en-tex/fonts/GMC.zip +2020/12/20 | 2994 | graphics/circuit_macros/examples/svg/WindingsSVG.m4 +2020/12/20 | 2989 | graphics/circuit_macros/examples/svg/AutoencoderSVG.m4 +2020/12/20 | 2986 | graphics/circuit_macros/examples/MC.m4 +2020/12/20 | 29772 | graphics/circuit_macros/examples/Incl.pdf +2020/12/20 | 29686 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma +2020/12/20 | 295211 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma +2020/12/20 | 29218 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma +2020/12/20 | 2912 | graphics/circuit_macros/doc/Workflow.m4 +2020/12/20 | 29074 | graphics/circuit_macros/doc/CctTable.tex +2020/12/20 | 28905 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-2.9.tar.lzma +2020/12/20 | 28621 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-2.9.tar.lzma +2020/12/20 | 2854 | graphics/circuit_macros/examples/nsvg/dev/tikztosvg +2020/12/20 | 2834 | graphics/circuit_macros/postscript.m4 +2020/12/20 | 2828 | graphics/circuit_macros/examples/README-examples +2020/12/20 | 2824 | fonts/scholax/vf/zncbmi.vf +2020/12/20 | 282457 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma +2020/12/20 | 280511 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma +2020/12/20 | 2799 | graphics/circuit_macros/examples/worm.m4 +2020/12/20 | 27991 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-2.9.tar.lzma +2020/12/20 | 279851 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-2.9.tar.lzma +2020/12/20 | 2792 | graphics/circuit_macros/examples/OpAmpFilter.m4 +2020/12/20 | 2788 | fonts/scholax/vf/zncfbmi.vf +2020/12/20 | 27768 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma +2020/12/20 | 27712 | macros/latex/contrib/easyfloats/doc/preamble/examplecode.tex +2020/12/20 | 2761 | macros/latex/contrib/easyfloats/doc/links.tex +2020/12/20 | 2761 | graphics/circuit_macros/examples/sfg.m4 +2020/12/20 | 2743 | fonts/scholax/README +2020/12/20 | 2736 | graphics/circuit_macros/examples/CctTable.m4 +2020/12/20 | 2735 | graphics/circuit_macros/doc/CctTableMan.m4 +2020/12/20 | 2725 | graphics/circuit_macros/examples/nsvg/Makefile +2020/12/20 | 2720 | graphics/circuit_macros/examples/svg/AudioSVG.m4 +2020/12/20 | 27083 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-2.9.tar.lzma +2020/12/20 | 27056 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-2.9.tar.lzma +2020/12/20 | 27016 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-2.9.tar.lzma +2020/12/20 | 26 | graphics/circuit_macros/doc/DCsymbol.m4 +2020/12/20 | 26 | graphics/circuit_macros/doc/ACsymbol.m4 +2020/12/20 | 269 | graphics/circuit_macros/doc/Loop.m4 +2020/12/20 | 2696 | graphics/circuit_macros/examples/keyval.m4 +2020/12/20 | 26914 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-2.9.tar.lzma +2020/12/20 | 2685 | graphics/circuit_macros/examples/svg/ex11SVG.m4 +2020/12/20 | 2676 | fonts/scholax/vf/zncfmi.vf +2020/12/20 | 2674 | graphics/circuit_macros/examples/Planes.m4 +2020/12/20 | 2672 | fonts/scholax/vf/zncmi.vf +2020/12/20 | 26646490 | info/apprendre-a-programmer-en-tex/fonts/libertine-legacy.zip +2020/12/20 | 2661 | graphics/circuit_macros/examples/svg/CctTableSVG.m4 +2020/12/20 | 2661 | graphics/circuit_macros/doc/Grounds.tex +2020/12/20 | 2639 | graphics/circuit_macros/doc/Circuit_macros.tex +2020/12/20 | 2634 | graphics/circuit_macros/examples/Audio.m4 +2020/12/20 | 2634 | graphics/circuit_macros/doc/AudioMan.m4 +2020/12/20 | 2634437 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma +2020/12/20 | 2625 | graphics/circuit_macros/examples/svg/ex01SVG.m4 +2020/12/20 | 26125 | macros/latex/contrib/easyfloats/doc/preamble/keydoc.tex +2020/12/20 | 2584 | graphics/circuit_macros/examples/Escher.m4 +2020/12/20 | 25849 | graphics/circuit_macros/doc/Xform.tex +2020/12/20 | 258254 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-2.9.tar.lzma +2020/12/20 | 2559 | graphics/circuit_macros/examples/svg/ex08SVG.m4 +2020/12/20 | 2556 | graphics/circuit_macros/examples/ex08.m4 +2020/12/20 | 2551 | graphics/circuit_macros/examples/svg/OptoisoSVG.m4 +2020/12/20 | 25460 | graphics/circuit_macros/doc/Capture.JPG +2020/12/20 | 2542 | graphics/circuit_macros/examples/brace.m4 +2020/12/20 | 2528 | graphics/circuit_macros/examples/svg/AdderSVG.m4 +2020/12/20 | 2525 | graphics/circuit_macros/examples/svg/CrowSVG.m4 +2020/12/20 | 252508 | systems/texlive/tlnet/archive/rmathbr.doc.r57173.tar.xz +2020/12/20 | 2520 | graphics/circuit_macros/examples/Crow.m4 +2020/12/20 | 2517 | graphics/circuit_macros/examples/Autoencoder.m4 +2020/12/20 | 2513009 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-2.9.tar.lzma +2020/12/20 | 250952 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-2.9.tar.lzma +2020/12/20 | 24884 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-2.9.tar.lzma +2020/12/20 | 248675 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-2.9.tar.lzma +2020/12/20 | 24806 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma +2020/12/20 | 24614 | macros/luatex/generic/luaxml/luaxml.tex +2020/12/20 | 2453 | graphics/circuit_macros/examples/nsvg/dev/Makefile +2020/12/20 | 2443 | graphics/circuit_macros/examples/svg/ex00SVG.m4 +2020/12/20 | 2442 | graphics/circuit_macros/examples/Optoiso.m4 +2020/12/20 | 2441 | graphics/circuit_macros/doc/ujt.tex +2020/12/20 | 243096 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma +2020/12/20 | 24270379 | systems/texlive/tlnet/install-tl.zip +2020/12/20 | 241 | macros/latex/contrib/easyfloats/doc/content/installation.tex +2020/12/20 | 24133 | graphics/circuit_macros/examples/svg/UNOSVG.m4 +2020/12/20 | 2412 | graphics/circuit_macros/examples/ex00.m4 +2020/12/20 | 2402 | graphics/circuit_macros/examples/Adder.m4 +2020/12/20 | 2400 | fonts/notomath/tfm/notobmia.tfm +2020/12/20 | 23972 | graphics/circuit_macros/examples/svg/examplesSVG.htmx +2020/12/20 | 2389 | graphics/circuit_macros/doc/Dac.m4 +2020/12/20 | 2380 | fonts/notomath/tfm/notomia.tfm +2020/12/20 | 23639 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma +2020/12/20 | 2362 | graphics/circuit_macros/examples/Jack.m4 +2020/12/20 | 2362 | graphics/circuit_macros/doc/JackMan.m4 +2020/12/20 | 2361 | graphics/circuit_macros/examples/ex11.m4 +2020/12/20 | 233 | graphics/circuit_macros/examples/Ccurve.m4 +2020/12/20 | 2324 | graphics/circuit_macros/examples/svg/cscSVG.m4 +2020/12/20 | 2304 | graphics/circuit_macros/examples/Loglog.m4 +2020/12/20 | 23021 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma +2020/12/20 | 2295 | graphics/circuit_macros/examples/csc.m4 +2020/12/20 | 2279 | graphics/circuit_macros/examples/ex01.m4 +2020/12/20 | 2270333 | info/apprendre-a-programmer-en-tex/cover/couverture.pdf +2020/12/20 | 2265 | macros/luatex/generic/luaxml/luaxml-pretty.lua +2020/12/20 | 2255136 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz +2020/12/20 | 224201 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma +2020/12/20 | 2241 | graphics/circuit_macros/examples/svg/LoglogSVG.m4 +2020/12/20 | 221 | graphics/circuit_macros/examples/rotate.tex +2020/12/20 | 219 | graphics/circuit_macros/examples/tst1.tex +2020/12/20 | 21867 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-2.9.tar.lzma +2020/12/20 | 218656 | systems/texlive/tlnet/archive/texlive-scripts.doc.r57168.tar.xz +2020/12/20 | 217 | graphics/circuit_macros/doc/stringdims.m4 +2020/12/20 | 2179 | graphics/circuit_macros/examples/Conn.m4 +2020/12/20 | 2179 | graphics/circuit_macros/doc/ConnMan.m4 +2020/12/20 | 2177 | graphics/circuit_macros/examples/svg/ex21SVG.m4 +2020/12/20 | 2171 | graphics/circuit_macros/examples/svg/I2LSVG.m4 +2020/12/20 | 2170 | graphics/circuit_macros/examples/ex06.m4 +2020/12/20 | 2165 | graphics/circuit_macros/examples/Sources.m4 +2020/12/20 | 2165 | graphics/circuit_macros/doc/SourcesMan.m4 +2020/12/20 | 2144 | fonts/scholax/tfm/zncfbmia.tfm +2020/12/20 | 21384 | graphics/circuit_macros/examples/svg/Incl.jpg +2020/12/20 | 21230 | graphics/circuit_macros/examples/xfig/xfiglib.fig +2020/12/20 | 212192 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma +2020/12/20 | 2119 | graphics/circuit_macros/examples/Logic.m4 +2020/12/20 | 2119 | graphics/circuit_macros/doc/LogicMan.m4 +2020/12/20 | 2111 | graphics/circuit_macros/examples/svg/ConnSVG.m4 +2020/12/20 | 2109 | macros/luatex/generic/luaxml/luaxml-parse-query.lua +2020/12/20 | 2104 | fonts/scholax/tfm/zncfmia.tfm +2020/12/20 | 210493 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma +2020/12/20 | 2099 | graphics/circuit_macros/pstricks.m4 +2020/12/20 | 2097 | graphics/circuit_macros/examples/Ttree.m4 +2020/12/20 | 2092 | fonts/notomath/vf/notobmia.vf +2020/12/20 | 2085 | graphics/circuit_macros/pgf.m4 +2020/12/20 | 2084 | fonts/notomath/vf/notomia.vf +2020/12/20 | 20845 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-2.9.tar.lzma +2020/12/20 | 207337 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-2.9.tar.lzma +2020/12/20 | 20712 | macros/luatex/generic/luaxml/luaxml-mod-xml.lua +2020/12/20 | 2069 | graphics/circuit_macros/examples/svg/relaycoilSVG.m4 +2020/12/20 | 2068 | graphics/circuit_macros/examples/I2L.m4 +2020/12/20 | 2051 | graphics/circuit_macros/examples/svg/JackSVG.m4 +2020/12/20 | 205175 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma +2020/12/20 | 205128 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma +2020/12/20 | 20418 | graphics/circuit_macros/doc/thyristor.tex +2020/12/20 | 204128 | systems/win32/miktex/tm/packages/next/miktex-console-bin-2.9.tar.lzma +2020/12/20 | 2036 | macros/latex/contrib/easyfloats/doc/content/bug-reports-and-contributions.tex +2020/12/20 | 2027 | graphics/circuit_macros/examples/svg/pwrsupplySVG.m4 +2020/12/20 | 202700 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma +2020/12/20 | 2018 | graphics/circuit_macros/examples/svg/ex06SVG.m4 +2020/12/20 | 2014 | graphics/circuit_macros/examples/pwrsupply.m4 +2020/12/20 | 201476 | systems/texlive/tlnet/archive/scholax.doc.r57169.tar.xz +2020/12/20 | 2013 | graphics/circuit_macros/doc/HybridPi.m4 +2020/12/20 | 2000 | graphics/circuit_macros/examples/ex21.m4 +2020/12/20 | 1995 | graphics/circuit_macros/doc/Corners.m4 +2020/12/20 | 19948 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-2.9.tar.lzma +2020/12/20 | 199323 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-2.9.tar.lzma +2020/12/20 | 1992 | graphics/circuit_macros/examples/svg/FourbarSVG.m4 +2020/12/20 | 1985 | graphics/circuit_macros/examples/svg/XORSVG.m4 +2020/12/20 | 197794 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-2.9.tar.lzma +2020/12/20 | 1975 | graphics/circuit_macros/doc/FlipFlop.m4 +2020/12/20 | 1966 | graphics/circuit_macros/examples/svg/DriveSVG.m4 +2020/12/20 | 1966 | graphics/circuit_macros/examples/Drive.m4 +2020/12/20 | 1962 | graphics/circuit_macros/examples/Autologix.m4 +2020/12/20 | 1959 | graphics/circuit_macros/examples/debug2.m4 +2020/12/20 | 1955 | graphics/circuit_macros/examples/svg/ABlogixSVG.m4 +2020/12/20 | 1953 | graphics/circuit_macros/examples/svg/MotorControlSVG.m4 +2020/12/20 | 1953 | graphics/circuit_macros/doc/Buffer.m4 +2020/12/20 | 195373 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma +2020/12/20 | 1951869 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma +2020/12/20 | 194227 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-2.9.tar.lzma +2020/12/20 | 1940 | graphics/circuit_macros/doc/AmpTable.tex +2020/12/20 | 1940 | fonts/scholax/tfm/zncmia.tfm +2020/12/20 | 19386273 | systems/texlive/tlnet/install-tl-windows.exe +2020/12/20 | 1932 | fonts/scholax/tfm/zncbmia.tfm +2020/12/20 | 1931 | graphics/circuit_macros/examples/svg/LogicSVG.m4 +2020/12/20 | 192726 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-2.9.tar.lzma +2020/12/20 | 19250 | graphics/circuit_macros/dpictools.pic +2020/12/20 | 1924 | macros/latex/contrib/easyfloats/README.md +2020/12/20 | 1922 | graphics/circuit_macros/examples/MotorControl.m4 +2020/12/20 | 1921 | graphics/circuit_macros/examples/relaycoil.m4 +2020/12/20 | 1921 | graphics/circuit_macros/doc/relaycoilMan.m4 +2020/12/20 | 19176 | graphics/circuit_macros/Licence.txt +2020/12/20 | 19142 | graphics/circuit_macros/doc/Switches.tex +2020/12/20 | 1907 | graphics/circuit_macros/examples/svg/SourcesSVG.m4 +2020/12/20 | 1906 | graphics/circuit_macros/examples/SPM.m4 +2020/12/20 | 18958 | graphics/circuit_macros/examples/nsvg/dev/test.pic +2020/12/20 | 1893 | graphics/circuit_macros/examples/svg/ex16SVG.m4 +2020/12/20 | 1891 | graphics/circuit_macros/examples/svg/ex04SVG.m4 +2020/12/20 | 1883320 | systems/texlive/tlnet/archive/scholax.r57169.tar.xz +2020/12/20 | 1882 | graphics/circuit_macros/examples/svg/CrullerSVG.m4 +2020/12/20 | 1879 | graphics/circuit_macros/examples/Cruller.m4 +2020/12/20 | 1865 | graphics/circuit_macros/examples/ex16.m4 +2020/12/20 | 1860 | graphics/circuit_macros/doc/bi_trans.m4 +2020/12/20 | 1857 | graphics/circuit_macros/doc/Composite.m4 +2020/12/20 | 1852 | graphics/circuit_macros/examples/Orbits.m4 +2020/12/20 | 18496 | systems/texlive/tlnet/archive/menukeys.source.r57172.tar.xz +2020/12/20 | 183801 | macros/latex/contrib/curve2e/curve2e.dtx +2020/12/20 | 1837 | graphics/circuit_macros/examples/svg/SchottkySVG.m4 +2020/12/20 | 1823 | graphics/circuit_macros/examples/XOR.m4 +2020/12/20 | 1812 | graphics/circuit_macros/examples/svg/BipSVG.m4 +2020/12/20 | 1802 | graphics/circuit_macros/examples/Pconn.m4 +2020/12/20 | 1802 | graphics/circuit_macros/doc/PconnMan.m4 +2020/12/20 | 179943 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma +2020/12/20 | 179447 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-2.9.tar.lzma +2020/12/20 | 1778 | graphics/circuit_macros/examples/Schottky.m4 +2020/12/20 | 1776 | graphics/circuit_macros/examples/svg/PconnSVG.m4 +2020/12/20 | 17763 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma +2020/12/20 | 1765 | graphics/circuit_macros/examples/examples.tex +2020/12/20 | 17644 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma +2020/12/20 | 176362 | macros/latex/contrib/pdfpc.zip +2020/12/20 | 17611 | macros/latex/contrib/easyfloats/doc/content/motivation.tex +2020/12/20 | 1738 | macros/latex/contrib/easyfloats/doc/easyfloats.tex +2020/12/20 | 1737 | graphics/circuit_macros/examples/svg/ContactsSVG.m4 +2020/12/20 | 173201 | macros/latex/contrib/pdfpc/pdfpc-doc.pdf +2020/12/20 | 1730 | graphics/circuit_macros/examples/ABlogix.m4 +2020/12/20 | 1728 | fonts/scholax/vf/zncfbmia.vf +2020/12/20 | 1720 | fonts/scholax/vf/zncfmia.vf +2020/12/20 | 17196 | graphics/circuit_macros/examples/files.tex +2020/12/20 | 1713628 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-2.9.tar.lzma +2020/12/20 | 1699 | graphics/circuit_macros/examples/svg/ex10SVG.m4 +2020/12/20 | 1692 | graphics/circuit_macros/examples/nsvg/examplesSVG.htmx +2020/12/20 | 1675 | graphics/circuit_macros/examples/svg/TTLnandSVG.m4 +2020/12/20 | 16752038 | systems/texlive/tlnet/tlpkg/texlive.tlpdb +2020/12/20 | 1668 | graphics/circuit_macros/examples/svg/Banking.m4 +2020/12/20 | 1668 | graphics/circuit_macros/examples/IC10107.m4 +2020/12/20 | 1662584 | systems/texlive/tlnet/archive/newcomputermodern.doc.r57170.tar.xz +2020/12/20 | 165 | graphics/circuit_macros/doc/tranbody.m4 +2020/12/20 | 165643 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma +2020/12/20 | 1654 | graphics/circuit_macros/examples/ex04.m4 +2020/12/20 | 164867 | graphics/circuit_macros/libcct.m4 +2020/12/20 | 16420 | graphics/circuit_macros/doc/fet.tex +2020/12/20 | 1640 | graphics/circuit_macros/mpost.m4 +2020/12/20 | 1639 | graphics/circuit_macros/Makefile +2020/12/20 | 1624 | graphics/circuit_macros/doc/ParSeries.m4 +2020/12/20 | 16205 | graphics/circuit_macros/README +2020/12/20 | 1619 | graphics/circuit_macros/examples/Bip.m4 +2020/12/20 | 1619 | graphics/circuit_macros/doc/BipMan.m4 +2020/12/20 | 1618 | graphics/circuit_macros/doc/ArrestersMan.m4 +2020/12/20 | 1612 | graphics/circuit_macros/examples/svg/TimerSVG.m4 +2020/12/20 | 1608 | graphics/circuit_macros/examples/ex05.m4 +2020/12/20 | 16002 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-2.9.tar.lzma +2020/12/20 | 160026 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma +2020/12/20 | 16001 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-2.9.tar.lzma +2020/12/20 | 159542 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma +2020/12/20 | 15891 | macros/luatex/generic/luaxml/luaxml-domobject.lua +2020/12/20 | 1585 | graphics/circuit_macros/examples/Contacts.m4 +2020/12/20 | 1585 | graphics/circuit_macros/doc/ContactsMan.m4 +2020/12/20 | 1575 | graphics/circuit_macros/doc/mplex.m4 +2020/12/20 | 1559 | graphics/circuit_macros/examples/svg/XformSVG.m4 +2020/12/20 | 1558 | graphics/circuit_macros/examples/TTLnand.m4 +2020/12/20 | 1546 | graphics/circuit_macros/examples/svg/Xtest.m4 +2020/12/20 | 1544 | fonts/scholax/vf/zncbmia.vf +2020/12/20 | 1540 | fonts/scholax/vf/zncmia.vf +2020/12/20 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512 +2020/12/20 | 15388 | graphics/circuit_macros/doc/Sources.tex +2020/12/20 | 1530 | macros/latex/contrib/easyfloats/doc/preamble/link.tex +2020/12/20 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512 +2020/12/20 | 1529 | graphics/circuit_macros/examples/mf/Makefile +2020/12/20 | 1526 | graphics/circuit_macros/examples/Xform.m4 +2020/12/20 | 1526 | graphics/circuit_macros/doc/XformMan.m4 +2020/12/20 | 1525 | graphics/circuit_macros/examples/rotatetext.m4 +2020/12/20 | 1521 | graphics/circuit_macros/examples/Coxeter.m4 +2020/12/20 | 151973 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma +2020/12/20 | 151767 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-2.9.tar.lzma +2020/12/20 | 15033 | graphics/circuit_macros/doc/Pconn.tex +2020/12/20 | 14954 | macros/luatex/generic/luaxml/luaxml-cssquery.lua +2020/12/20 | 1492 | graphics/circuit_macros/examples/ex10.m4 +2020/12/20 | 149137 | macros/luatex/generic/luaxml.zip +2020/12/20 | 1485 | graphics/circuit_macros/examples/Demultiplexer.m4 +2020/12/20 | 1485 | graphics/circuit_macros/doc/DemultiplexerMan.m4 +2020/12/20 | 1484 | graphics/circuit_macros/examples/nsvg/dev/tstSVG.htmx +2020/12/20 | 147021 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-2.9.tar.lzma +2020/12/20 | 1467 | graphics/circuit_macros/examples/svg/MultiplexerSVG.m4 +2020/12/20 | 1467 | graphics/circuit_macros/examples/Diodes.m4 +2020/12/20 | 1467 | graphics/circuit_macros/doc/DiodesMan.m4 +2020/12/20 | 1464 | graphics/circuit_macros/doc/Taps.m4 +2020/12/20 | 145 | systems/texlive/tlnet/install-tl.zip.sha512 +2020/12/20 | 1458 | graphics/circuit_macros/examples/header.tex +2020/12/20 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 +2020/12/20 | 144 | graphics/circuit_macros/doc/Thermal.m4 +2020/12/20 | 1446 | graphics/circuit_macros/examples/svg/ShiftRSVG.m4 +2020/12/20 | 1444 | graphics/circuit_macros/examples/svg/ThreeSVG.m4 +2020/12/20 | 1443 | graphics/circuit_macros/examples/Resolver.m4 +2020/12/20 | 144034 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-2.9.tar.lzma +2020/12/20 | 14392 | systems/texlive/tlnet/archive/rmathbr.source.r57173.tar.xz +2020/12/20 | 1433 | graphics/circuit_macros/examples/Opamp.m4 +2020/12/20 | 1433 | graphics/circuit_macros/doc/OpampMan.m4 +2020/12/20 | 1431 | graphics/circuit_macros/examples/svg/RelaySVG.m4 +2020/12/20 | 1429 | graphics/circuit_macros/examples/svg/DiodesSVG.m4 +2020/12/20 | 14287 | graphics/circuit_macros/darrow.m4 +2020/12/20 | 14164 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma +2020/12/20 | 1413906 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma +2020/12/20 | 1406 | graphics/circuit_macros/examples/ShiftR.m4 +2020/12/20 | 1406 | graphics/circuit_macros/doc/ShiftRMan.m4 +2020/12/20 | 1400 | graphics/circuit_macros/examples/Multiplexer.m4 +2020/12/20 | 1400 | graphics/circuit_macros/doc/MultiplexerMan.m4 +2020/12/20 | 1387 | graphics/circuit_macros/examples/svg/CrossbarSVG.m4 +2020/12/20 | 13833 | graphics/circuit_macros/doc/Contact.tex +2020/12/20 | 137 | graphics/circuit_macros/doc/oaxbody.m4 +2020/12/20 | 1375 | graphics/circuit_macros/examples/person.m4 +2020/12/20 | 1373 | graphics/circuit_macros/examples/svg/DemultiplexerSVG.m4 +2020/12/20 | 137028 | graphics/circuit_macros/doc/body.tex +2020/12/20 | 135 | graphics/circuit_macros/examples/nsvg/dev/F_test.tex +2020/12/20 | 1358 | graphics/circuit_macros/examples/Crossbar.m4 +2020/12/20 | 1357 | macros/luatex/generic/luaxml/luaxml-entities.lua +2020/12/20 | 133576 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-2.9.tar.lzma +2020/12/20 | 13324 | graphics/circuit_macros/examples/Heathkit.m4 +2020/12/20 | 1331 | graphics/circuit_macros/examples/svg/SierpinskiSVG.m4 +2020/12/20 | 1331 | graphics/circuit_macros/examples/Sierpinski.m4 +2020/12/20 | 13304 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-2.9.tar.lzma +2020/12/20 | 1329 | graphics/circuit_macros/doc/currents.m4 +2020/12/20 | 13285013 | macros/latex/contrib/reledmac.zip +2020/12/20 | 13264 | graphics/circuit_macros/examples/Tubediags.m4 +2020/12/20 | 132124 | systems/texlive/tlnet/archive/texlive-scripts.r57168.tar.xz +2020/12/20 | 1320848 | info/apprendre-a-programmer-en-tex/source/apprendre-a-programmer-en-tex.tex +2020/12/20 | 131 | graphics/circuit_macros/doc/Axes.m4 +2020/12/20 | 130 | graphics/circuit_macros/doc/bitrbody.m4 +2020/12/20 | 1305 | macros/latex/contrib/easyfloats/doc/content/used-packages.tex +2020/12/20 | 130507 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma +2020/12/20 | 130467 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma +2020/12/20 | 1302916 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma +2020/12/20 | 12 | graphics/circuit_macros/doc/Version.tex +2020/12/20 | 1297880 | macros/latex/contrib/curve2e.zip +2020/12/20 | 1291 | graphics/circuit_macros/doc/ConfigC.m4 +2020/12/20 | 1287 | graphics/circuit_macros/examples/Three.m4 +2020/12/20 | 1278050 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-2.9.tar.lzma +2020/12/20 | 12711 | graphics/circuit_macros/examples/svg/HeathkitSVG.m4 +2020/12/20 | 1265 | graphics/circuit_macros/examples/svg/HeadersSVG.m4 +2020/12/20 | 1259 | graphics/circuit_macros/examples/Relay.m4 +2020/12/20 | 1259 | graphics/circuit_macros/doc/RelayMan.m4 +2020/12/20 | 1257 | graphics/circuit_macros/doc/ConfigB.m4 +2020/12/20 | 1255 | macros/latex/contrib/easyfloats/easyfloats-file-list.txt +2020/12/20 | 125544 | systems/texlive/tlnet/archive/fontools.doc.r57171.tar.xz +2020/12/20 | 1250 | graphics/circuit_macros/examples/svg/GeometrySVG.m4 +2020/12/20 | 1250 | graphics/circuit_macros/examples/Geometry.m4 +2020/12/20 | 12478 | graphics/circuit_macros/examples/svg/TubediagsSVG.m4 +2020/12/20 | 12472 | graphics/circuit_macros/CHANGES +2020/12/20 | 1246215 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma +2020/12/20 | 1238 | graphics/circuit_macros/examples/svg/NportSVG.m4 +2020/12/20 | 12318 | macros/latex/contrib/easyfloats/doc/content/examples.tex +2020/12/20 | 1230 | macros/luatex/generic/luaxml/luaxml-stack.lua +2020/12/20 | 1230 | graphics/circuit_macros/examples/Antennas.m4 +2020/12/20 | 1230 | graphics/circuit_macros/doc/AntennasMan.m4 +2020/12/20 | 1230582 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma +2020/12/20 | 1230287 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma +2020/12/20 | 1229 | graphics/circuit_macros/doc/fbfilter.m4 +2020/12/20 | 12050 | graphics/circuit_macros/doc/Diodes.tex +2020/12/20 | 1204 | graphics/circuit_macros/examples/svg/ex17SVG.m4 +2020/12/20 | 12006 | graphics/circuit_macros/doc/Jack.tex +2020/12/20 | 11 | graphics/circuit_macros/doc/test.tex +2020/12/20 | 119079 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-2.9.tar.lzma +2020/12/20 | 1185 | graphics/circuit_macros/boxdims.sty +2020/12/20 | 1174 | graphics/circuit_macros/examples/PPA.m4 +2020/12/20 | 1168653 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-2.9.tar.lzma +2020/12/20 | 115931 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-2.9.tar.lzma +2020/12/20 | 1157 | graphics/circuit_macros/examples/svg/NPDTSVG.m4 +2020/12/20 | 11566 | graphics/circuit_macros/lib3D.m4 +2020/12/20 | 1155 | macros/luatex/generic/luaxml/README +2020/12/20 | 1153 | systems/win32/miktex/tm/packages/next/pr.ini +2020/12/20 | 1151 | graphics/circuit_macros/doc/Darlington.m4 +2020/12/20 | 1148368 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma +2020/12/20 | 1148353 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma +2020/12/20 | 1147 | macros/latex/contrib/pdfpc/README.md +2020/12/20 | 114671 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma +2020/12/20 | 1142 | info/apprendre-a-programmer-en-tex/source/mandelbrot.tex +2020/12/20 | 113608 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma +2020/12/20 | 11332 | macros/luatex/generic/luaxml/luaxml-mod-handler.lua +2020/12/20 | 1132 | graphics/circuit_macros/examples/Headers.m4 +2020/12/20 | 1132 | graphics/circuit_macros/doc/HeadersMan.m4 +2020/12/20 | 1129 | systems/win32/miktex/tm/packages/pr.ini +2020/12/20 | 1128 | graphics/circuit_macros/examples/NPDT.m4 +2020/12/20 | 1128 | graphics/circuit_macros/doc/NPDTMan.m4 +2020/12/20 | 1127660 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-2.9.tar.lzma +2020/12/20 | 11270 | graphics/circuit_macros/examples/FlowchartDefs.m4 +2020/12/20 | 1126 | graphics/circuit_macros/examples/ex17.m4 +2020/12/20 | 1120 | graphics/circuit_macros/doc/ConfigA.m4 +2020/12/20 | 1114 | graphics/circuit_macros/mfpic.m4 +2020/12/20 | 1100 | graphics/circuit_macros/examples/ex02.m4 +2020/12/20 | 1093 | graphics/circuit_macros/examples/svg/ex02SVG.m4 +2020/12/20 | 1090 | graphics/circuit_macros/examples/svg/AntennasSVG.m4 +2020/12/20 | 108925 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma +2020/12/20 | 107935 | macros/luatex/generic/luaxml/luaxml.pdf +2020/12/20 | 1077045 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma +2020/12/20 | 1076 | graphics/circuit_macros/examples/mf/mftest +2020/12/20 | 1075 | macros/latex/contrib/easyfloats/doc/content/names.tex +2020/12/20 | 1075 | graphics/circuit_macros/examples/bistable.m4 +2020/12/20 | 1074 | graphics/circuit_macros/doc/bistableMan.m4 +2020/12/20 | 1070 | graphics/circuit_macros/examples/svg/EmarrowsSVG.m4 +2020/12/20 | 1065 | graphics/circuit_macros/examples/svg/ex18SVG.m4 +2020/12/20 | 10589 | graphics/circuit_macros/examples/svg/expSVG.m4 +2020/12/20 | 1055 | graphics/circuit_macros/examples/svg/TgateSVG.m4 +2020/12/20 | 1050 | graphics/circuit_macros/examples/svg/SVGconfig.m4 +2020/12/20 | 104553 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma +2020/12/20 | 10447 | graphics/circuit_macros/examples/svg/paletteSVG.m4 +2020/12/20 | 1040 | graphics/circuit_macros/examples/Nport.m4 +2020/12/20 | 1040 | graphics/circuit_macros/doc/NportMan.m4 +2020/12/20 | 10401 | graphics/circuit_macros/doc/Variable.tex +2020/12/20 | 1039 | graphics/circuit_macros/examples/chaos.m4 +2020/12/20 | 1034 | graphics/circuit_macros/examples/svg/OpampSVG.m4 +2020/12/20 | 1029 | graphics/circuit_macros/xfig.m4 +2020/12/20 | 102827 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma +2020/12/20 | 1024 | graphics/circuit_macros/examples/Btree.m4 +2020/12/20 | 1022 | graphics/circuit_macros/examples/Tgate.m4 +2020/12/20 | 1022 | graphics/circuit_macros/doc/TgateMan.m4 +2020/12/20 | 1019 | graphics/circuit_macros/gpic.m4 +2020/12/20 | 10164 | graphics/circuit_macros/doc/Audio.tex +2020/12/20 | 101471 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma +2020/12/20 | 10059 | graphics/circuit_macros/svg.m4 +2020/12/20 | 1003 | graphics/circuit_macros/examples/ex15.m4 2020/12/19 | 992 | fonts/scholax/vf/TeXGyreScholaX-BoldSlanted-tlf-ot1G.vf 2020/12/19 | 992 | fonts/scholax/vf/TeXGyreScholaX-BoldItalic-tlf-ot1G.vf 2020/12/19 | 988 | fonts/scholax/vf/TeXGyreScholaX-Slanted-tlf-ot1G.vf 2020/12/19 | 988 | fonts/scholax/vf/TeXGyreScholaX-Regular-tlf-ot1G.vf 2020/12/19 | 988 | fonts/scholax/vf/TeXGyreScholaX-Italic-tlf-ot1G.vf -2020/12/19 | 98562 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma +2020/12/19 | 986981 | macros/latex/contrib/reledmac/reledpar.pdf 2020/12/19 | 984 | fonts/scholax/vf/TeXGyreScholaX-Bold-tlf-ot1G.vf 2020/12/19 | 984 | fonts/scholax/vf/TeXGyreScholaX-BoldSlanted-tosf-ts1.vf 2020/12/19 | 984 | fonts/scholax/vf/TeXGyreScholaX-BoldSlanted-tlf-ts1.vf @@ -30,17 +803,10 @@ 2020/12/19 | 976 | fonts/scholax/vf/TeXGyreScholaX-Bold-tlf-ts1.vf 2020/12/19 | 976 | fonts/scholax/vf/TeXGyreScholaX-Bold-osf-ts1.vf 2020/12/19 | 976 | fonts/scholax/vf/TeXGyreScholaX-Bold-lf-ts1.vf -2020/12/19 | 97461 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-2.9.tar.lzma -2020/12/19 | 964964 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-2.9.tar.lzma -2020/12/19 | 96476 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-2.9.tar.lzma 2020/12/19 | 9548 | fonts/scholax/tfm/TeXGyreScholaX-Slanted-lf-sc-ly1.tfm 2020/12/19 | 9544 | fonts/scholax/tfm/TeXGyreScholaX-Slanted-tlf-sc-ly1.tfm 2020/12/19 | 9540 | fonts/scholax/tfm/TeXGyreScholaX-Slanted-osf-sc-ly1.tfm 2020/12/19 | 9512 | fonts/scholax/tfm/TeXGyreScholaX-Slanted-tosf-sc-ly1.tfm -2020/12/19 | 94621 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-2.9.tar.lzma -2020/12/19 | 94465 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-2.9.tar.lzma -2020/12/19 | 93713 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-2.9.tar.lzma -2020/12/19 | 93682 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma 2020/12/19 | 9324 | fonts/scholax/tfm/TeXGyreScholaX-Regular-lf-sc-ly1.tfm 2020/12/19 | 9320 | fonts/scholax/tfm/TeXGyreScholaX-Regular-tlf-sc-ly1.tfm 2020/12/19 | 9316 | fonts/scholax/tfm/TeXGyreScholaX-Regular-osf-sc-ly1.tfm @@ -61,18 +827,15 @@ 2020/12/19 | 8928 | fonts/scholax/tfm/TeXGyreScholaX-Bold-osf-sc-ly1.tfm 2020/12/19 | 8924 | fonts/scholax/tfm/TeXGyreScholaX-Bold-tlf-sc-ly1.tfm 2020/12/19 | 8900 | fonts/scholax/tfm/TeXGyreScholaX-Bold-tosf-sc-ly1.tfm -2020/12/19 | 87420 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma +2020/12/19 | 888720 | macros/latex/contrib/reledmac/reledmac.dtx 2020/12/19 | 8680 | fonts/scholax/tfm/TeXGyreScholaX-Slanted-lf-ly1.tfm 2020/12/19 | 8672 | fonts/scholax/tfm/TeXGyreScholaX-Slanted-tlf-ly1.tfm 2020/12/19 | 8672 | fonts/scholax/tfm/TeXGyreScholaX-Slanted-osf-ly1.tfm -2020/12/19 | 86648 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-2.9.tar.lzma 2020/12/19 | 8644 | fonts/scholax/tfm/TeXGyreScholaX-Slanted-tosf-ly1.tfm 2020/12/19 | 8612 | fonts/scholax/tfm/TeXGyreScholaX-BoldSlanted-lf-ly1.tfm 2020/12/19 | 8604 | fonts/scholax/tfm/TeXGyreScholaX-BoldSlanted-osf-ly1.tfm 2020/12/19 | 8600 | fonts/scholax/tfm/TeXGyreScholaX-BoldSlanted-tlf-ly1.tfm -2020/12/19 | 8573 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma 2020/12/19 | 8572 | fonts/scholax/tfm/TeXGyreScholaX-BoldSlanted-tosf-ly1.tfm -2020/12/19 | 84960 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-2.9.tar.lzma 2020/12/19 | 8448 | fonts/scholax/tfm/TeXGyreScholaX-BoldItalic-lf-ly1.tfm 2020/12/19 | 8444 | fonts/scholax/tfm/TeXGyreScholaX-Regular-lf-ly1.tfm 2020/12/19 | 8436 | fonts/scholax/tfm/TeXGyreScholaX-Regular-tlf-ly1.tfm @@ -113,89 +876,15 @@ 2020/12/19 | 820 | fonts/scholax/vf/TeXGyreScholaX-Bold-tlf-sc-ot1.vf 2020/12/19 | 820 | fonts/scholax/vf/TeXGyreScholaX-Bold-osf-sc-ot1.vf 2020/12/19 | 820 | fonts/scholax/vf/TeXGyreScholaX-Bold-lf-sc-ot1.vf -2020/12/19 | 809954 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma -2020/12/19 | 80732 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma 2020/12/19 | 8048 | fonts/scholax/tfm/zcs-Italic-osf-th-ly1.tfm 2020/12/19 | 8020 | fonts/scholax/tfm/zcs-Italic-tlf-th-ly1.tfm 2020/12/19 | 79470 | macros/latex/contrib/menukeys/menukeys.dtx -2020/12/19 | 78398 | systems/win32/miktex/tm/packages/next/miktex-png-bin-2.9.tar.lzma -2020/12/19 | 77282 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma -2020/12/19 | 7573 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-2.9.tar.lzma -2020/12/19 | 74263 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma -2020/12/19 | 74034 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma -2020/12/19 | 736572 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-2.9.tar.lzma -2020/12/19 | 73391 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma -2020/12/19 | 72875 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-2.9.tar.lzma -2020/12/19 | 72730 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma -2020/12/19 | 71733 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-2.9.tar.lzma -2020/12/19 | 71551 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma -2020/12/19 | 70043 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma -2020/12/19 | 69679 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma -2020/12/19 | 677613 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma -2020/12/19 | 67420 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-2.9.tar.lzma +2020/12/19 | 754488 | systems/win32/w32tex/ChangeLog 2020/12/19 | 6645 | fonts/scholax/tex/scholax.sty -2020/12/19 | 65951 | systems/win32/miktex/tm/packages/next/miktex-web-bin-2.9.tar.lzma -2020/12/19 | 65910 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-x64-2.9.tar.lzma -2020/12/19 | 65713 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-2.9.tar.lzma -2020/12/19 | 65233 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma -2020/12/19 | 64501 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-2.9.tar.lzma -2020/12/19 | 63595 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-2.9.tar.lzma -2020/12/19 | 63284 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-2.9.tar.lzma -2020/12/19 | 63093 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-2.9.tar.lzma -2020/12/19 | 62919 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma -2020/12/19 | 623280 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-2.9.tar.lzma -2020/12/19 | 61949 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma -2020/12/19 | 617334 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma -2020/12/19 | 599538 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma -2020/12/19 | 596933 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma -2020/12/19 | 59589 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma +2020/12/19 | 6612 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl 2020/12/19 | 591873 | macros/latex/contrib/menukeys.zip -2020/12/19 | 58634 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma -2020/12/19 | 58523 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-2.9.tar.lzma -2020/12/19 | 581013 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-2.9.tar.lzma 2020/12/19 | 579072 | macros/latex/contrib/menukeys/menukeys.pdf -2020/12/19 | 57298 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma -2020/12/19 | 567636 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma -2020/12/19 | 56643 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-2.9.tar.lzma -2020/12/19 | 56005 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin.tar.lzma -2020/12/19 | 55998 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma -2020/12/19 | 55873 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-2.9.tar.lzma -2020/12/19 | 557616 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-2.9.tar.lzma -2020/12/19 | 55631 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma -2020/12/19 | 551128 | systems/win32/miktex/tm/packages/files.csv.lzma -2020/12/19 | 551121 | systems/win32/miktex/tm/packages/next/files.csv.lzma -2020/12/19 | 5501026 | systems/texlive/tlnet/install-tl-unx.tar.gz -2020/12/19 | 54739 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-2.9.tar.lzma -2020/12/19 | 531319 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-2.9.tar.lzma -2020/12/19 | 52181 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma -2020/12/19 | 51924 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-2.9.tar.lzma -2020/12/19 | 51471 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma -2020/12/19 | 51137 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma -2020/12/19 | 50932 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma -2020/12/19 | 50545 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-2.9.tar.lzma -2020/12/19 | 50441 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-2.9.tar.lzma -2020/12/19 | 49795 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-2.9.tar.lzma -2020/12/19 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 -2020/12/19 | 482442 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-2.9.tar.lzma -2020/12/19 | 47700 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma -2020/12/19 | 46544 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma -2020/12/19 | 460648 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma -2020/12/19 | 45802 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-2.9.tar.lzma -2020/12/19 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc -2020/12/19 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc -2020/12/19 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc -2020/12/19 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc -2020/12/19 | 45331 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-2.9.tar.lzma -2020/12/19 | 45013 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma -2020/12/19 | 43103 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma -2020/12/19 | 42928 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-2.9.tar.lzma -2020/12/19 | 42668 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-2.9.tar.lzma -2020/12/19 | 42636 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-2.9.tar.lzma -2020/12/19 | 42249 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma -2020/12/19 | 42082 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-2.9.tar.lzma -2020/12/19 | 41056 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma 2020/12/19 | 4092 | fonts/scholax/tfm/TeXGyreScholaX-Slanted-lf-sc-ot1.tfm -2020/12/19 | 40888 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-2.9.tar.lzma 2020/12/19 | 4084 | fonts/scholax/tfm/TeXGyreScholaX-Slanted-tlf-sc-ot1.tfm 2020/12/19 | 4084 | fonts/scholax/tfm/TeXGyreScholaX-Slanted-osf-sc-ot1.tfm 2020/12/19 | 4056 | fonts/scholax/tfm/TeXGyreScholaX-Slanted-tosf-sc-ot1.tfm @@ -205,12 +894,9 @@ 2020/12/19 | 3960 | fonts/scholax/tfm/TeXGyreScholaX-BoldSlanted-tlf-sc-ot1.tfm 2020/12/19 | 3956 | fonts/scholax/tfm/TeXGyreScholaX-BoldSlanted-osf-sc-ot1.tfm 2020/12/19 | 3952 | fonts/scholax/tfm/TeXGyreScholaX-BoldItalic-tlf-sc-ot1.tfm -2020/12/19 | 39361 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin-x64.tar.lzma 2020/12/19 | 3928 | fonts/scholax/tfm/TeXGyreScholaX-BoldSlanted-tosf-sc-ot1.tfm -2020/12/19 | 392059 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma 2020/12/19 | 3919 | fonts/scholax/enc/zcs_y6waxr.enc 2020/12/19 | 3916 | fonts/scholax/tfm/TeXGyreScholaX-BoldItalic-tosf-sc-ot1.tfm -2020/12/19 | 38952 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-2.9.tar.lzma 2020/12/19 | 388 | systems/texlive/tlnet/archive/texlive-docindex.r57163.tar.xz 2020/12/19 | 3888 | fonts/scholax/tfm/TeXGyreScholaX-Italic-lf-sc-ot1.tfm 2020/12/19 | 3868 | fonts/scholax/tfm/TeXGyreScholaX-Italic-osf-sc-ot1.tfm @@ -225,7 +911,6 @@ 2020/12/19 | 3780 | fonts/scholax/tfm/TeXGyreScholaX-Slanted-lf-ot1.tfm 2020/12/19 | 3772 | fonts/scholax/tfm/TeXGyreScholaX-Slanted-tlf-ot1.tfm 2020/12/19 | 3772 | fonts/scholax/tfm/TeXGyreScholaX-Slanted-osf-ot1.tfm -2020/12/19 | 37705 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-2.9.tar.lzma 2020/12/19 | 3764 | fonts/scholax/tfm/TeXGyreScholaX-BoldSlanted-tlf-ot1G.tfm 2020/12/19 | 3760 | fonts/scholax/tfm/TeXGyreScholaX-Bold-lf-sc-ot1.tfm 2020/12/19 | 3756 | fonts/scholax/tfm/TeXGyreScholaX-BoldSlanted-lf-ot1.tfm @@ -236,16 +921,12 @@ 2020/12/19 | 3744 | fonts/scholax/tfm/TeXGyreScholaX-BoldSlanted-tlf-ot1.tfm 2020/12/19 | 3720 | fonts/scholax/tfm/TeXGyreScholaX-Bold-tosf-sc-ot1.tfm 2020/12/19 | 3716 | fonts/scholax/tfm/TeXGyreScholaX-BoldSlanted-tosf-ot1.tfm -2020/12/19 | 36959 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma -2020/12/19 | 36955 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma -2020/12/19 | 36669 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-2.9.tar.lzma 2020/12/19 | 3660 | fonts/scholax/tfm/TeXGyreScholaX-BoldItalic-lf-ot1.tfm 2020/12/19 | 3648 | fonts/scholax/tfm/TeXGyreScholaX-BoldItalic-osf-ot1.tfm 2020/12/19 | 3636 | fonts/scholax/tfm/TeXGyreScholaX-BoldItalic-tlf-ot1G.tfm 2020/12/19 | 363584 | fonts/scholax/afm/TeXGyreScholaX-Slanted.afm 2020/12/19 | 363400 | fonts/scholax/afm/TeXGyreScholaX-Regular.afm 2020/12/19 | 3631 | fonts/scholax/enc/zcs_xrqdd6.enc -2020/12/19 | 36313 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma 2020/12/19 | 3624 | fonts/scholax/tfm/TeXGyreScholaX-BoldItalic-tlf-ot1.tfm 2020/12/19 | 3602 | fonts/scholax/enc/zcs_wg6py3.enc 2020/12/19 | 3600 | fonts/scholax/tfm/TeXGyreScholaX-BoldItalic-tosf-ot1.tfm @@ -268,126 +949,108 @@ 2020/12/19 | 3528 | fonts/scholax/tfm/TeXGyreScholaX-Regular-osf-ot1.tfm 2020/12/19 | 3528 | fonts/scholax/tfm/TeXGyreScholaX-Bold-osf-ot1.tfm 2020/12/19 | 3524 | fonts/scholax/tfm/TeXGyreScholaX-Bold-tlf-ot1.tfm -2020/12/19 | 35171 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin.tar.lzma 2020/12/19 | 3500 | fonts/scholax/tfm/TeXGyreScholaX-Regular-tosf-ot1.tfm 2020/12/19 | 3500 | fonts/scholax/tfm/TeXGyreScholaX-Italic-tosf-ot1.tfm 2020/12/19 | 3496 | fonts/scholax/tfm/TeXGyreScholaX-Bold-tosf-ot1.tfm -2020/12/19 | 34792 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma 2020/12/19 | 3452 | fonts/scholax/tfm/zcs-Italic-osf-th-ot1.tfm 2020/12/19 | 3433 | fonts/scholax/enc/zcs_litts3.enc -2020/12/19 | 3426213 | fonts/scholax.zip 2020/12/19 | 3424 | fonts/scholax/tfm/zcs-Italic-tlf-th-ot1.tfm 2020/12/19 | 3412 | fonts/scholax/enc/zcs_c3rnvk.enc 2020/12/19 | 3402 | fonts/scholax/enc/zcs_jkq3qs.enc -2020/12/19 | 33978 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma 2020/12/19 | 3381 | fonts/scholax/enc/zcs_ioc2dx.enc 2020/12/19 | 3352 | fonts/scholax/enc/zcs_x5uxyb.enc 2020/12/19 | 3322 | fonts/scholax/enc/zcs_dodlyj.enc -2020/12/19 | 33113 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin.tar.lzma 2020/12/19 | 3303 | fonts/scholax/enc/zcs_c5ugpk.enc -2020/12/19 | 329592 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-2.9.tar.lzma -2020/12/19 | 32914 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma 2020/12/19 | 32805 | fonts/scholax/map/ScholaX.map 2020/12/19 | 3273 | fonts/scholax/enc/zcs_wlo5nq.enc -2020/12/19 | 32345 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-2.9.tar.lzma -2020/12/19 | 318324 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma +2020/12/19 | 32053 | macros/latex/contrib/reledmac/examples/3-reledpar_pages_different_languages_lualatex.pdf 2020/12/19 | 31788 | systems/texlive/tlnet/archive/jadetex.doc.r57165.tar.xz 2020/12/19 | 3159 | fonts/scholax/enc/zcs_zgzte3.enc 2020/12/19 | 3151 | fonts/scholax/enc/zcs_2p3dps.enc 2020/12/19 | 3128 | fonts/scholax/enc/zcs_wylu46.enc -2020/12/19 | 31242 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-2.9.tar.lzma 2020/12/19 | 3120 | fonts/scholax/enc/zcs_2zpiql.enc -2020/12/19 | 31183 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma 2020/12/19 | 3108 | fonts/scholax/enc/zcs_mnnbkz.enc -2020/12/19 | 31026 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-2.9.tar.lzma +2020/12/19 | 31052 | macros/latex/contrib/reledmac/examples/2-reledmac-right-to-left.pdf 2020/12/19 | 3100 | fonts/scholax/enc/zcs_heobe3.enc -2020/12/19 | 30932 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma 2020/12/19 | 3077 | fonts/scholax/enc/zcs_2ulndi.enc 2020/12/19 | 3070 | fonts/scholax/enc/zcs_lewktp.enc 2020/12/19 | 3069 | fonts/scholax/enc/zcs_mett7y.enc -2020/12/19 | 30690 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma 2020/12/19 | 3058 | fonts/scholax/enc/zcs_7xuij4.enc +2020/12/19 | 304585 | macros/latex/contrib/reledmac/examples/2-subdivision-number-in-header.pdf 2020/12/19 | 3027 | fonts/scholax/enc/zcs_ra2vxf.enc 2020/12/19 | 3021 | fonts/scholax/enc/zcs_ujimmk.enc 2020/12/19 | 3020 | fonts/scholax/enc/zcs_qfh2v7.enc 2020/12/19 | 2997 | fonts/scholax/enc/zcs_3uk2yo.enc 2020/12/19 | 29896 | systems/texlive/tlnet/archive/jadetex.r57165.tar.xz 2020/12/19 | 2978 | fonts/scholax/enc/zcs_aisocu.enc -2020/12/19 | 29686 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma +2020/12/19 | 297242 | macros/latex/contrib/reledmac/examples/4-reledpar_pages_titles_in_line_numbering_with_notes.pdf 2020/12/19 | 2966 | fonts/scholax/enc/zcs_xzuu25.enc -2020/12/19 | 295208 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma 2020/12/19 | 2947 | fonts/scholax/enc/zcs_k56gxg.enc -2020/12/19 | 29220 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma +2020/12/19 | 292929 | macros/latex/contrib/reledmac/examples/4-reledpar_columns_titles_in_line_numbering_with_notes.pdf 2020/12/19 | 2916 | fonts/scholax/enc/zcs_t6txtr.enc -2020/12/19 | 28905 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-2.9.tar.lzma +2020/12/19 | 291128 | macros/latex/contrib/reledmac/examples/1-sidenotes.pdf +2020/12/19 | 289371 | macros/latex/contrib/reledmac/examples/2-line_numbers_in_header.pdf 2020/12/19 | 2867 | fonts/scholax/enc/zcs_fn6vum.enc -2020/12/19 | 28621 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-2.9.tar.lzma -2020/12/19 | 282456 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma -2020/12/19 | 280509 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma -2020/12/19 | 27992 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-2.9.tar.lzma -2020/12/19 | 279853 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-2.9.tar.lzma -2020/12/19 | 27768 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma -2020/12/19 | 27083 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-2.9.tar.lzma -2020/12/19 | 27056 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-2.9.tar.lzma -2020/12/19 | 27017 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-2.9.tar.lzma -2020/12/19 | 26916 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-2.9.tar.lzma -2020/12/19 | 2645 | fonts/scholax/README -2020/12/19 | 2634436 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma -2020/12/19 | 258255 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-2.9.tar.lzma -2020/12/19 | 2513005 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-2.9.tar.lzma -2020/12/19 | 250951 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-2.9.tar.lzma -2020/12/19 | 24884 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-2.9.tar.lzma -2020/12/19 | 248675 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-2.9.tar.lzma -2020/12/19 | 24806 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma -2020/12/19 | 243096 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma -2020/12/19 | 24270384 | systems/texlive/tlnet/install-tl.zip +2020/12/19 | 285213 | macros/latex/contrib/reledmac/examples/2-manuscript-apparatus.pdf +2020/12/19 | 284700 | macros/latex/contrib/reledmac/examples/3-reledpar_same_page_number_in_both_side.pdf +2020/12/19 | 284597 | macros/latex/contrib/reledmac/examples/2-linespacing.pdf +2020/12/19 | 283465 | macros/latex/contrib/reledmac/examples/2-titles_in_line_numbering_with_notes.pdf +2020/12/19 | 281520 | macros/latex/contrib/reledmac/examples/2-performances.pdf +2020/12/19 | 280887 | macros/latex/contrib/reledmac/examples/1-tabular.pdf +2020/12/19 | 280642 | macros/latex/contrib/reledmac/examples/2-glossaries.pdf +2020/12/19 | 279716 | macros/latex/contrib/reledmac/examples/2-indexing.pdf +2020/12/19 | 273887 | macros/latex/contrib/reledmac/examples/2-lemma_disambigution.pdf +2020/12/19 | 246187 | macros/latex/contrib/reledmac/examples/4-reledpar_pages_long_notes.pdf 2020/12/19 | 2395 | fonts/scholax/tex/OT1TeXGyreScholaX-Sup.fd 2020/12/19 | 2395 | fonts/scholax/tex/OT1TeXGyreScholaX-Inf.fd 2020/12/19 | 2395 | fonts/scholax/tex/LY1TeXGyreScholaX-Sup.fd 2020/12/19 | 2395 | fonts/scholax/tex/LY1TeXGyreScholaX-Inf.fd 2020/12/19 | 2371 | fonts/scholax/tex/T1TeXGyreScholaX-Sup.fd 2020/12/19 | 2371 | fonts/scholax/tex/T1TeXGyreScholaX-Inf.fd -2020/12/19 | 23640 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma -2020/12/19 | 23022 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma -2020/12/19 | 2254556 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz -2020/12/19 | 224200 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma -2020/12/19 | 21866 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-2.9.tar.lzma -2020/12/19 | 218656 | systems/texlive/tlnet/archive/texlive-scripts.doc.r57164.tar.xz +2020/12/19 | 23269 | macros/latex/contrib/reledmac/examples/3-reledpar_columns_different_languages.pdf +2020/12/19 | 221533 | macros/latex/contrib/reledmac/examples/4-reledpar_one_series_per_pstart.pdf 2020/12/19 | 213025 | fonts/scholax/type1/TeXGyreScholaX-BoldItalic.pfb -2020/12/19 | 212191 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma 2020/12/19 | 210961 | fonts/scholax/type1/TeXGyreScholaX-BoldSlanted.pfb -2020/12/19 | 210492 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma -2020/12/19 | 20845 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-2.9.tar.lzma -2020/12/19 | 207337 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-2.9.tar.lzma +2020/12/19 | 209918 | macros/latex/contrib/reledmac/examples/4-reledpar_column_mix_with_not_column-continuous-numbering.pdf +2020/12/19 | 208856 | macros/latex/contrib/reledmac/examples/4-reledpar_column_mix_with_not_column.pdf +2020/12/19 | 208585 | macros/latex/contrib/reledmac/examples/2-one_series_per_pstart.pdf 2020/12/19 | 207312 | fonts/scholax/type1/TeXGyreScholaX-Slanted.pfb -2020/12/19 | 205133 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma -2020/12/19 | 205061 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma -2020/12/19 | 204127 | systems/win32/miktex/tm/packages/next/miktex-console-bin-2.9.tar.lzma +2020/12/19 | 205371 | macros/latex/contrib/reledmac/examples/2-antilabe.pdf +2020/12/19 | 203241 | macros/latex/contrib/reledmac/examples/4-reledpar_titles_not_in_line_numbering.pdf +2020/12/19 | 202991 | macros/latex/contrib/reledmac/examples/2-notes-width.pdf 2020/12/19 | 202887 | fonts/utilities/fontools.zip -2020/12/19 | 202700 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma -2020/12/19 | 19948 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-2.9.tar.lzma -2020/12/19 | 199323 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-2.9.tar.lzma -2020/12/19 | 197792 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-2.9.tar.lzma +2020/12/19 | 2021691 | macros/latex/contrib/reledmac/reledmac.pdf +2020/12/19 | 201188 | macros/latex/contrib/reledmac/examples/4-reledpar_columns_alignment.pdf +2020/12/19 | 200801 | macros/latex/contrib/reledmac/examples/4-reledpar_pages_notes_leftpage.pdf +2020/12/19 | 200260 | macros/latex/contrib/reledmac/examples/4-reledpar_inside-outside-columns.pdf +2020/12/19 | 199696 | macros/latex/contrib/reledmac/examples/2-footnote_spacing.pdf 2020/12/19 | 1976 | fonts/scholax/tfm/TeXGyreScholaX-BoldSlanted-sup-t1.tfm 2020/12/19 | 1976 | fonts/scholax/tfm/TeXGyreScholaX-BoldSlanted-sup-ly1.tfm +2020/12/19 | 197414 | macros/latex/contrib/reledmac/examples/1-verses-doublenumbering.pdf +2020/12/19 | 197373 | macros/latex/contrib/reledmac/examples/1-criticalendnotes.pdf +2020/12/19 | 197363 | macros/latex/contrib/reledmac/examples/1-verses.pdf 2020/12/19 | 1972 | fonts/scholax/tfm/TeXGyreScholaX-BoldSlanted-sup-t1--base.tfm +2020/12/19 | 196882 | macros/latex/contrib/reledmac/examples/4-reledpar_pages_paragraph_separator_between.pdf +2020/12/19 | 196250 | macros/latex/contrib/reledmac/examples/2-cross_referencing.pdf 2020/12/19 | 1960 | fonts/scholax/tfm/TeXGyreScholaX-Slanted-sup-ly1.tfm -2020/12/19 | 195372 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma +2020/12/19 | 196014 | macros/latex/contrib/reledmac/examples/2-titles_not_in_line_numbering.pdf +2020/12/19 | 195586 | macros/latex/contrib/reledmac/examples/1-criticalnotes.pdf 2020/12/19 | 1952 | fonts/scholax/tfm/TeXGyreScholaX-Slanted-sup-t1.tfm -2020/12/19 | 1951868 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma 2020/12/19 | 1948 | fonts/scholax/tfm/TeXGyreScholaX-Slanted-sup-t1--base.tfm -2020/12/19 | 194229 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-2.9.tar.lzma -2020/12/19 | 19383285 | systems/texlive/tlnet/install-tl-windows.exe 2020/12/19 | 19312 | systems/texlive/tlnet/archive/jadetex.source.r57165.tar.xz -2020/12/19 | 192728 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-2.9.tar.lzma +2020/12/19 | 192355 | macros/latex/contrib/reledmac/examples/4-reledpar_verse_text_between.pdf 2020/12/19 | 1916 | fonts/scholax/tfm/TeXGyreScholaX-BoldItalic-sup-t1.tfm 2020/12/19 | 1912 | fonts/scholax/tfm/TeXGyreScholaX-BoldItalic-sup-t1--base.tfm 2020/12/19 | 1904 | fonts/scholax/tfm/TeXGyreScholaX-BoldItalic-sup-ly1.tfm +2020/12/19 | 190058 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_advancedshifted-nomax.pdf +2020/12/19 | 189692 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nomax-shifted.pdf 2020/12/19 | 1892 | fonts/scholax/tfm/TeXGyreScholaX-Italic-sup-ly1.tfm +2020/12/19 | 189290 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_advancedshifted.pdf 2020/12/19 | 1888 | fonts/scholax/tfm/TeXGyreScholaX-Italic-sup-t1.tfm +2020/12/19 | 188809 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_shifted.pdf +2020/12/19 | 188675 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nosync.pdf +2020/12/19 | 188622 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nomax.pdf 2020/12/19 | 1884 | fonts/scholax/tfm/TeXGyreScholaX-Italic-sup-t1--base.tfm -2020/12/19 | 179942 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma -2020/12/19 | 179448 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-2.9.tar.lzma 2020/12/19 | 1788 | fonts/scholax/tfm/TeXGyreScholaX-Slanted-osf-sc-ly1--base.tfm 2020/12/19 | 1788 | fonts/scholax/tfm/TeXGyreScholaX-Slanted-lf-sc-ly1--base.tfm 2020/12/19 | 1784 | fonts/scholax/tfm/TeXGyreScholaX-BoldSlanted-osf-sc-ly1--base.tfm @@ -398,12 +1061,10 @@ 2020/12/19 | 1780 | fonts/scholax/tfm/TeXGyreScholaX-BoldSlanted-osf-ts1.tfm 2020/12/19 | 1780 | fonts/scholax/tfm/TeXGyreScholaX-BoldSlanted-lf-ts1.tfm 2020/12/19 | 1780 | fonts/scholax/tfm/TeXGyreScholaX-BoldSlanted-lf-sc-ly1--base.tfm -2020/12/19 | 17764 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma 2020/12/19 | 1772 | macros/latex/contrib/menukeys/menukeys.ins 2020/12/19 | 1764 | fonts/scholax/tfm/TeXGyreScholaX-Slanted-osf-sc-t1--base.tfm 2020/12/19 | 1764 | fonts/scholax/tfm/TeXGyreScholaX-Slanted-lf-sc-t1--base.tfm 2020/12/19 | 1764 | fonts/scholax/tfm/TeXGyreScholaX-Italic-lf-sc-ly1--base.tfm -2020/12/19 | 17644 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma 2020/12/19 | 1760 | fonts/scholax/tfm/TeXGyreScholaX-Slanted-tosf-sc-ly1--base.tfm 2020/12/19 | 1760 | fonts/scholax/tfm/TeXGyreScholaX-Slanted-tlf-sc-ly1--base.tfm 2020/12/19 | 1760 | fonts/scholax/tfm/TeXGyreScholaX-Italic-osf-sc-ly1--base.tfm @@ -459,6 +1120,7 @@ 2020/12/19 | 1728 | fonts/scholax/vf/TeXGyreScholaX-Italic-lf-t1.vf 2020/12/19 | 1728 | fonts/scholax/vf/TeXGyreScholaX-Bold-tosf-t1.vf 2020/12/19 | 172866 | fonts/scholax/type1/TeXGyreScholaX-Italic.pfb +2020/12/19 | 172561 | macros/latex/contrib/reledmac/examples/3-reledpar_mwe.pdf 2020/12/19 | 1724 | fonts/scholax/vf/TeXGyreScholaX-Bold-tlf-t1.vf 2020/12/19 | 1724 | fonts/scholax/vf/TeXGyreScholaX-Bold-osf-t1.vf 2020/12/19 | 1724 | fonts/scholax/vf/TeXGyreScholaX-Bold-lf-t1.vf @@ -476,7 +1138,6 @@ 2020/12/19 | 1720 | fonts/scholax/tfm/TeXGyreScholaX-BoldSlanted-inf-t1.tfm 2020/12/19 | 1716 | fonts/scholax/tfm/TeXGyreScholaX-BoldSlanted-inf-t1--base.tfm 2020/12/19 | 1716 | fonts/scholax/tfm/TeXGyreScholaX-BoldSlanted-inf-ly1.tfm -2020/12/19 | 1713628 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-2.9.tar.lzma 2020/12/19 | 1712 | fonts/scholax/tfm/TeXGyreScholaX-Italic-lf-sc-t1--base.tfm 2020/12/19 | 1708 | fonts/scholax/vf/TeXGyreScholaX-BoldSlanted-tosf-sc-t1.vf 2020/12/19 | 1708 | fonts/scholax/tfm/TeXGyreScholaX-Italic-osf-sc-t1--base.tfm @@ -534,6 +1195,7 @@ 2020/12/19 | 1696 | fonts/scholax/tfm/TeXGyreScholaX-BoldItalic-tlf-ts1.tfm 2020/12/19 | 1680 | fonts/scholax/vf/TeXGyreScholaX-BoldSlanted-tosf-sc-ly1.vf 2020/12/19 | 1680 | fonts/scholax/tfm/TeXGyreScholaX-BoldItalic-inf-t1.tfm +2020/12/19 | 168066 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_default.pdf 2020/12/19 | 1676 | fonts/scholax/vf/TeXGyreScholaX-Slanted-tosf-sc-ly1.vf 2020/12/19 | 1676 | fonts/scholax/vf/TeXGyreScholaX-Regular-tosf-sc-ly1.vf 2020/12/19 | 1676 | fonts/scholax/vf/TeXGyreScholaX-BoldSlanted-tlf-sc-ly1.vf @@ -546,7 +1208,6 @@ 2020/12/19 | 1676 | fonts/scholax/tfm/TeXGyreScholaX-Italic-lf-t1--base.tfm 2020/12/19 | 1676 | fonts/scholax/tfm/TeXGyreScholaX-BoldItalic-inf-t1--base.tfm 2020/12/19 | 1676 | fonts/scholax/tfm/TeXGyreScholaX-BoldItalic-inf-ly1.tfm -2020/12/19 | 16752034 | systems/texlive/tlnet/tlpkg/texlive.tlpdb 2020/12/19 | 1672 | fonts/scholax/vf/TeXGyreScholaX-Slanted-tlf-sc-ly1.vf 2020/12/19 | 1672 | fonts/scholax/vf/TeXGyreScholaX-Slanted-osf-sc-ly1.vf 2020/12/19 | 1672 | fonts/scholax/vf/TeXGyreScholaX-Slanted-lf-sc-ly1.vf @@ -568,7 +1229,6 @@ 2020/12/19 | 1664 | fonts/scholax/tfm/TeXGyreScholaX-BoldItalic-tosf-ts1--base.tfm 2020/12/19 | 1664 | fonts/scholax/tfm/TeXGyreScholaX-BoldItalic-tlf-ts1--base.tfm 2020/12/19 | 1656 | fonts/scholax/tfm/TeXGyreScholaX-BoldItalic-tosf-t1--base.tfm -2020/12/19 | 165644 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma 2020/12/19 | 1652 | fonts/scholax/tfm/TeXGyreScholaX-BoldItalic-tlf-t1--base.tfm 2020/12/19 | 165164 | fonts/scholax/opentype/TeXGyreScholaX-BoldSlanted.otf 2020/12/19 | 1648 | fonts/scholax/tfm/TeXGyreScholaX-Italic-tlf-sc-t1--base.tfm @@ -581,10 +1241,6 @@ 2020/12/19 | 1636 | fonts/scholax/tfm/TeXGyreScholaX-Italic-inf-ly1.tfm 2020/12/19 | 1612 | fonts/scholax/tfm/TeXGyreScholaX-Italic-tlf-t1--base.tfm 2020/12/19 | 1608 | fonts/scholax/tfm/TeXGyreScholaX-Italic-tosf-t1--base.tfm -2020/12/19 | 160025 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma -2020/12/19 | 16001 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-2.9.tar.lzma -2020/12/19 | 16000 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-2.9.tar.lzma -2020/12/19 | 159541 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma 2020/12/19 | 1592 | fonts/scholax/tfm/TeXGyreScholaX-Bold-osf-ts1.tfm 2020/12/19 | 1592 | fonts/scholax/tfm/TeXGyreScholaX-Bold-lf-ts1.tfm 2020/12/19 | 158344 | fonts/scholax/type1/TeXGyreScholaX-Regular.pfb @@ -610,7 +1266,6 @@ 2020/12/19 | 1540 | fonts/scholax/tfm/TeXGyreScholaX-Regular-osf-ts1--base.tfm 2020/12/19 | 1540 | fonts/scholax/tfm/TeXGyreScholaX-Regular-lf-ts1--base.tfm 2020/12/19 | 1540 | fonts/scholax/tfm/TeXGyreScholaX-BoldSlanted-sup-ot1.tfm -2020/12/19 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512 2020/12/19 | 1536 | fonts/scholax/tfm/TeXGyreScholaX-Regular-tosf-ts1.tfm 2020/12/19 | 1536 | fonts/scholax/tfm/TeXGyreScholaX-Regular-tosf-sc-ly1--base.tfm 2020/12/19 | 1536 | fonts/scholax/tfm/TeXGyreScholaX-Regular-tlf-ts1.tfm @@ -619,13 +1274,10 @@ 2020/12/19 | 1532 | fonts/scholax/tfm/TeXGyreScholaX-Regular-lf-sc-t1--base.tfm 2020/12/19 | 1532 | fonts/scholax/tfm/TeXGyreScholaX-Bold-tosf-ts1--base.tfm 2020/12/19 | 1532 | fonts/scholax/tfm/TeXGyreScholaX-Bold-tlf-ts1--base.tfm -2020/12/19 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512 2020/12/19 | 1524 | fonts/scholax/tfm/TeXGyreScholaX-Bold-tosf-sc-t1--base.tfm 2020/12/19 | 1524 | fonts/scholax/tfm/TeXGyreScholaX-Bold-tlf-sc-t1--base.tfm 2020/12/19 | 1524 | fonts/scholax/tfm/TeXGyreScholaX-Bold-inf-t1.tfm 2020/12/19 | 1520 | fonts/scholax/tfm/TeXGyreScholaX-Bold-inf-t1--base.tfm -2020/12/19 | 151973 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma -2020/12/19 | 151768 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-2.9.tar.lzma 2020/12/19 | 1512 | fonts/scholax/tfm/TeXGyreScholaX-Slanted-sup-ot1.tfm 2020/12/19 | 1512 | fonts/scholax/tfm/TeXGyreScholaX-Bold-tosf-t1--base.tfm 2020/12/19 | 1512 | fonts/scholax/tfm/TeXGyreScholaX-Bold-tlf-t1--base.tfm @@ -642,19 +1294,14 @@ 2020/12/19 | 149416 | fonts/scholax/opentype/TeXGyreScholaX-Bold.otf 2020/12/19 | 1476 | fonts/scholax/tfm/TeXGyreScholaX-Regular-tosf-t1--base.tfm 2020/12/19 | 1476 | fonts/scholax/tfm/TeXGyreScholaX-Regular-tlf-t1--base.tfm -2020/12/19 | 147018 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-2.9.tar.lzma -2020/12/19 | 145 | systems/texlive/tlnet/install-tl.zip.sha512 2020/12/19 | 145912 | fonts/scholax/opentype/TeXGyreScholaX-Regular.otf -2020/12/19 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 -2020/12/19 | 144033 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-2.9.tar.lzma 2020/12/19 | 1436 | fonts/scholax/tfm/TeXGyreScholaX-Italic-sup-ot1.tfm 2020/12/19 | 1432 | fonts/scholax/tfm/TeXGyreScholaX-BoldItalic-sup-ot1.tfm 2020/12/19 | 1428 | fonts/scholax/tfm/TeXGyreScholaX-BoldSlanted-osf-sc-ot1--base.tfm 2020/12/19 | 1428 | fonts/scholax/tfm/TeXGyreScholaX-BoldSlanted-lf-sc-ot1--base.tfm 2020/12/19 | 1424 | fonts/scholax/tfm/TeXGyreScholaX-Slanted-osf-sc-ot1--base.tfm 2020/12/19 | 1424 | fonts/scholax/tfm/TeXGyreScholaX-Slanted-lf-sc-ot1--base.tfm -2020/12/19 | 14165 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma -2020/12/19 | 1413906 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma +2020/12/19 | 141663632 | systems/win32/w32tex/context.tar.xz 2020/12/19 | 1412 | macros/latex/contrib/menukeys/README 2020/12/19 | 1400 | fonts/scholax/tfm/TeXGyreScholaX-BoldSlanted-tosf-sc-ot1--base.tfm 2020/12/19 | 1400 | fonts/scholax/tfm/TeXGyreScholaX-BoldSlanted-tlf-sc-ot1--base.tfm @@ -685,26 +1332,19 @@ 2020/12/19 | 13472 | fonts/scholax/tfm/TeXGyreScholaX-BoldItalic-tosf-sc-t1.tfm 2020/12/19 | 13440 | fonts/scholax/tfm/TeXGyreScholaX-Italic-tlf-sc-t1.tfm 2020/12/19 | 13408 | fonts/scholax/tfm/TeXGyreScholaX-Italic-tosf-sc-t1.tfm -2020/12/19 | 133575 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-2.9.tar.lzma -2020/12/19 | 13305 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-2.9.tar.lzma 2020/12/19 | 13272 | fonts/scholax/tfm/TeXGyreScholaX-BoldSlanted-tlf-sc-t1.tfm 2020/12/19 | 13256 | fonts/scholax/tfm/TeXGyreScholaX-BoldSlanted-lf-sc-t1.tfm 2020/12/19 | 13248 | fonts/scholax/tfm/TeXGyreScholaX-BoldSlanted-osf-sc-t1.tfm 2020/12/19 | 13220 | fonts/scholax/tfm/TeXGyreScholaX-BoldSlanted-tosf-sc-t1.tfm -2020/12/19 | 132144 | systems/texlive/tlnet/archive/texlive-scripts.r57164.tar.xz 2020/12/19 | 1316 | fonts/scholax/tfm/TeXGyreScholaX-Bold-sup-ot1.tfm 2020/12/19 | 1312 | fonts/scholax/tfm/TeXGyreScholaX-Italic-tlf-sc-ot1--base.tfm 2020/12/19 | 1308 | fonts/scholax/tfm/TeXGyreScholaX-Italic-tosf-sc-ot1--base.tfm 2020/12/19 | 13064 | fonts/scholax/tfm/TeXGyreScholaX-Bold-tlf-sc-t1.tfm -2020/12/19 | 130506 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma 2020/12/19 | 1304 | fonts/scholax/tfm/TeXGyreScholaX-Regular-sup-ot1.tfm 2020/12/19 | 13048 | fonts/scholax/tfm/TeXGyreScholaX-Bold-lf-sc-t1.tfm -2020/12/19 | 130466 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma 2020/12/19 | 13040 | fonts/scholax/tfm/TeXGyreScholaX-Bold-osf-sc-t1.tfm -2020/12/19 | 1302917 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma 2020/12/19 | 13012 | fonts/scholax/tfm/TeXGyreScholaX-Bold-tosf-sc-t1.tfm 2020/12/19 | 1288 | fonts/scholax/tfm/TeXGyreScholaX-BoldItalic-inf-ot1.tfm -2020/12/19 | 1278048 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-2.9.tar.lzma 2020/12/19 | 1268 | fonts/scholax/tfm/TeXGyreScholaX-Italic-inf-ot1.tfm 2020/12/19 | 12656 | fonts/scholax/tfm/TeXGyreScholaX-Slanted-lf-t1.tfm 2020/12/19 | 12648 | fonts/scholax/tfm/TeXGyreScholaX-Slanted-tlf-t1.tfm @@ -713,7 +1353,6 @@ 2020/12/19 | 12488 | fonts/scholax/tfm/TeXGyreScholaX-BoldSlanted-lf-t1.tfm 2020/12/19 | 12480 | fonts/scholax/tfm/TeXGyreScholaX-BoldSlanted-osf-t1.tfm 2020/12/19 | 12476 | fonts/scholax/tfm/TeXGyreScholaX-BoldSlanted-tlf-t1.tfm -2020/12/19 | 1246215 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma 2020/12/19 | 12448 | fonts/scholax/tfm/TeXGyreScholaX-BoldSlanted-tosf-t1.tfm 2020/12/19 | 12420 | fonts/scholax/tfm/TeXGyreScholaX-Regular-lf-t1.tfm 2020/12/19 | 12412 | fonts/scholax/tfm/TeXGyreScholaX-Regular-tlf-t1.tfm @@ -723,8 +1362,6 @@ 2020/12/19 | 12384 | fonts/scholax/tfm/TeXGyreScholaX-Regular-tosf-t1.tfm 2020/12/19 | 12372 | fonts/scholax/tfm/TeXGyreScholaX-BoldItalic-tlf-t1.tfm 2020/12/19 | 12348 | fonts/scholax/tfm/TeXGyreScholaX-BoldItalic-tosf-t1.tfm -2020/12/19 | 1230955 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma -2020/12/19 | 1230532 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma 2020/12/19 | 12280 | fonts/scholax/tfm/TeXGyreScholaX-Bold-lf-t1.tfm 2020/12/19 | 12272 | fonts/scholax/tfm/TeXGyreScholaX-Bold-osf-t1.tfm 2020/12/19 | 12268 | fonts/scholax/tfm/TeXGyreScholaX-Bold-tlf-t1.tfm @@ -741,33 +1378,17 @@ 2020/12/19 | 1192 | fonts/scholax/tfm/TeXGyreScholaX-Regular-lf-sc-ot1--base.tfm 2020/12/19 | 1192 | fonts/scholax/tfm/TeXGyreScholaX-Bold-tosf-sc-ot1--base.tfm 2020/12/19 | 1192 | fonts/scholax/tfm/TeXGyreScholaX-Bold-tlf-sc-ot1--base.tfm -2020/12/19 | 119080 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-2.9.tar.lzma 2020/12/19 | 1168 | fonts/scholax/tfm/TeXGyreScholaX-Bold-inf-ot1.tfm -2020/12/19 | 1168654 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-2.9.tar.lzma 2020/12/19 | 1164 | fonts/scholax/tfm/TeXGyreScholaX-Regular-tosf-sc-ot1--base.tfm 2020/12/19 | 1164 | fonts/scholax/tfm/TeXGyreScholaX-Regular-tlf-sc-ot1--base.tfm -2020/12/19 | 115932 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-2.9.tar.lzma -2020/12/19 | 1153 | systems/win32/miktex/tm/packages/next/pr.ini 2020/12/19 | 115296 | systems/texlive/tlnet/archive/pdfxup.doc.r57166.tar.xz 2020/12/19 | 1148 | fonts/scholax/tfm/TeXGyreScholaX-Regular-inf-ot1.tfm -2020/12/19 | 1148904 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma -2020/12/19 | 1148115 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma -2020/12/19 | 114670 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma -2020/12/19 | 113608 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma -2020/12/19 | 1129 | systems/win32/miktex/tm/packages/pr.ini -2020/12/19 | 1127660 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-2.9.tar.lzma -2020/12/19 | 108924 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma -2020/12/19 | 1077044 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma -2020/12/19 | 104553 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma -2020/12/19 | 102826 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma -2020/12/19 | 101471 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma 2020/12/18 | 9473 | fonts/utilities/fontools/bin/splitttc 2020/12/18 | 8791728 | systems/texlive/tlnet/archive/libertinus-type1.r57159.tar.xz 2020/12/18 | 87036 | macros/latex/contrib/rmathbr/rmathbr.dtx 2020/12/18 | 8556551 | fonts/newcomputermodern.zip 2020/12/18 | 8032 | fonts/utilities/fontools/share/fontools_lgr.enc 2020/12/18 | 7878 | fonts/newcomputermodern/README -2020/12/18 | 754414 | systems/win32/w32tex/ChangeLog 2020/12/18 | 68663 | fonts/utilities/fontools/doc/autoinst.pdf 2020/12/18 | 6519264 | systems/texlive/tlnet/archive/inter.r57158.tar.xz 2020/12/18 | 5724 | systems/texlive/tlnet/archive/pbalance.r57161.tar.xz @@ -818,7 +1439,6 @@ 2020/12/17 | 7593 | support/pdfxup/pdfxup.1 2020/12/17 | 6766 | biblio/bibtex/contrib/gbt7714/README.md 2020/12/17 | 672412 | systems/texlive/tlnet/archive/babel.source.r57153.tar.xz -2020/12/17 | 6660 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl 2020/12/17 | 6608484 | systems/win32/w32tex/ptex-ng-w32.tar.xz 2020/12/17 | 58 | systems/mac/mactex/MacTeXtras-20201217.zip.md5 2020/12/17 | 58641849 | systems/win32/w32tex/TLARM64W/tl-arm64-windows.zip @@ -850,7 +1470,6 @@ 2020/12/17 | 173112 | systems/texlive/tlnet/archive/josefin.doc.r57152.tar.xz 2020/12/17 | 172732 | systems/texlive/tlnet/archive/babel.r57153.tar.xz 2020/12/17 | 1641 | support/pdfxup/RELEASES -2020/12/17 | 141670032 | systems/win32/w32tex/context.tar.xz 2020/12/17 | 1390 | support/pdfxup/README 2020/12/17 | 13340 | systems/texlive/tlnet/archive/bookcover.source.r57151.tar.xz 2020/12/17 | 115510 | biblio/bibtex/contrib/gbt7714/gbt7714.dtx @@ -2085,7 +2704,6 @@ 2020/12/15 | 785 | info/docsurvey/README.txt 2020/12/15 | 739868 | systems/texlive/tlnet/archive/fontsetup.doc.r57141.tar.xz 2020/12/15 | 5828 | systems/texlive/tlnet/archive/fontsetup.r57141.tar.xz -2020/12/15 | 4535036 | systems/texlive/tlnet/archive/newcomputermodern.r57138.tar.xz 2020/12/15 | 44738 | info/docsurvey/docsurvey.tex 2020/12/15 | 424340 | systems/texlive/tlnet/archive/causets.doc.r57139.tar.xz 2020/12/15 | 3672 | systems/texlive/tlnet/archive/causets.r57139.tar.xz @@ -2093,7 +2711,6 @@ 2020/12/15 | 304199 | info/docsurvey.zip 2020/12/15 | 292549 | info/docsurvey/docsurvey.pdf 2020/12/15 | 2907884 | systems/texlive/tlnet/archive/beamer.doc.r57140.tar.xz -2020/12/15 | 1662560 | systems/texlive/tlnet/archive/newcomputermodern.doc.r57138.tar.xz 2020/12/15 | 165744 | systems/texlive/tlnet/archive/beamer.r57140.tar.xz 2020/12/15 | 144152 | systems/texlive/tlnet/archive/bibtexperllibs.source.r57137.tar.xz 2020/12/15 | 12284 | systems/texlive/tlnet/archive/bibtexperllibs.r57137.tar.xz @@ -2416,79 +3033,3 @@ 2020/12/14 | 102808 | systems/win32/miktex/tm/packages/miktex-lua53-bin-x64-2.9.tar.lzma 2020/12/14 | 1016 | systems/win32/miktex/setup/rpm/fedora/32/repodata/12e0c759f2d453f16fa8fcf93b69160fe85d00c4d2bec19fbd6db493387b7e3b-other.sqlite.bz2 2020/12/14 | 101692 | systems/win32/miktex/tm/packages/miktex-mfware-bin-x64-2.9.tar.lzma -2020/12/13 | 9896 | systems/texlive/tlnet/archive/curve2e.r57117.tar.xz -2020/12/13 | 982 | macros/latex/contrib/babel-contrib/japanese/Makefile -2020/12/13 | 973272 | fonts/newcomputermodern/NewCMMath-Regular.otf -2020/12/13 | 95260 | info/ptex-manual/eptex_resume.tex -2020/12/13 | 940 | support/bibtexperllibs/LaTeX-ToUnicode/MYMETA.json -2020/12/13 | 76552 | info/ptex-manual/ptex-manual.tex -2020/12/13 | 694464 | info/ptex-manual/eptex_resume.pdf -2020/12/13 | 64126 | info/ptex-manual/eptexdoc.tex -2020/12/13 | 610 | support/bibtexperllibs/LaTeX-ToUnicode/MYMETA.yml -2020/12/13 | 5628 | support/bibtexperllibs/LaTeX-ToUnicode/lib/LaTeX/ToUnicode.pm -2020/12/13 | 521800 | macros/latex/contrib/babel-contrib/japanese.zip -2020/12/13 | 517 | support/bibtexperllibs/LaTeX-ToUnicode/META.yml -2020/12/13 | 508 | support/bibtexperllibs/Makefile -2020/12/13 | 483948 | systems/win32/w32tex/dvi2tty-w32.tar.xz -2020/12/13 | 470 | support/bibtexperllibs/LaTeX-ToUnicode/Changes -2020/12/13 | 466432 | macros/latex/contrib/enotez.zip -2020/12/13 | 46352 | systems/texlive/tlnet/archive/curve2e.source.r57117.tar.xz -2020/12/13 | 451515 | macros/latex/contrib/enotez/enotez_en.pdf -2020/12/13 | 448132 | systems/win32/w32tex/win64/dvi2tty-w64.tar.xz -2020/12/13 | 4282 | info/ptex-manual/ptex-manual.sty -2020/12/13 | 42357 | info/ptex-manual/ptexdoc_asciimw.tex -2020/12/13 | 414163 | graphics/pgf/contrib/causets/causets.pdf -2020/12/13 | 408 | support/bibtexperllibs/LaTeX-ToUnicode/dist.ini -2020/12/13 | 40042 | info/ptex-manual/ptex-guide-en.tex -2020/12/13 | 3977 | macros/unicodetex/latex/fontsetup/fontsetup.sty -2020/12/13 | 3842036 | systems/win32/w32tex/luajittex-w32.tar.xz -2020/12/13 | 3828220 | systems/win32/w32tex/luajittex-exp-w32.tar.xz -2020/12/13 | 37938 | macros/latex/contrib/babel-contrib/japanese/babel-japanese-sample.pdf -2020/12/13 | 37364 | macros/latex/contrib/enotez/enotez.sty -2020/12/13 | 35293 | info/ptex-manual/jtex_asciimw.tex -2020/12/13 | 348138 | info/ptex-manual/eptexdoc.pdf -2020/12/13 | 3446540 | systems/win32/w32tex/win64/luajittex-w64.tar.xz -2020/12/13 | 3443292 | systems/win32/w32tex/win64/luajittex-exp-w64.tar.xz -2020/12/13 | 339 | support/bibtexperllibs/LaTeX-ToUnicode/README -2020/12/13 | 338833 | macros/latex/contrib/babel-contrib/japanese/japanese.pdf -2020/12/13 | 3372 | info/ptex-manual/fam256p.tex -2020/12/13 | 33485 | macros/latex/contrib/babel-contrib/japanese/japanese.tex -2020/12/13 | 3263 | macros/latex/contrib/enotez/enotez_split_example.tex -2020/12/13 | 3173 | info/ptex-manual/fam256d.tex -2020/12/13 | 3124432 | systems/win32/w32tex/win64/luatex-exp-w64.tar.xz -2020/12/13 | 3120948 | systems/win32/w32tex/win64/luatex-w64.tar.xz -2020/12/13 | 29213 | support/bibtexperllibs/LaTeX-ToUnicode/Makefile -2020/12/13 | 284296 | info/ptex-manual/ptex-manual.pdf -2020/12/13 | 27232 | graphics/pgf/contrib/causets/causets.tex -2020/12/13 | 264764 | info/ptex-manual/ptexdoc_asciimw.pdf -2020/12/13 | 25964 | info/ptex-manual/jfm.tex -2020/12/13 | 2589792 | systems/win32/w32tex/tex4htk-w32.tar.xz -2020/12/13 | 251872 | info/ptex-manual/jtex_asciimw.pdf -2020/12/13 | 2465257 | info/ptex-manual.zip -2020/12/13 | 2447 | macros/latex/contrib/babel-contrib/japanese/README.md -2020/12/13 | 22314 | graphics/pgf/contrib/causets/causet_tikz_example2.pdf -2020/12/13 | 22193 | macros/latex/contrib/enotez/enotez_en.tex -2020/12/13 | 20940 | systems/texlive/tlnet/archive/mcf2graph.r57116.tar.xz -2020/12/13 | 2059 | graphics/pgf/contrib/causets/README.md -2020/12/13 | 20341 | info/ptex-manual/jtexdoc_asciimw.tex -2020/12/13 | 20295 | macros/latex/contrib/babel-contrib/japanese/babel-japanese.dtx -2020/12/13 | 19615 | info/ptex-manual/ptexskip_asciimw.tex -2020/12/13 | 1958 | support/bibtexperllibs/LaTeX-ToUnicode/t/convert.t -2020/12/13 | 17024 | graphics/pgf/contrib/causets/causet_tikz_example1.pdf -2020/12/13 | 164929 | info/ptex-manual/ptexskip_asciimw.pdf -2020/12/13 | 164504 | info/ptex-manual/jfm.pdf -2020/12/13 | 15915 | graphics/pgf/contrib/causets/causets.sty -2020/12/13 | 1516 | info/ptex-manual/LICENSE -2020/12/13 | 145704 | info/ptex-manual/jtexdoc_asciimw.pdf -2020/12/13 | 135234 | macros/latex/contrib/babel-contrib/japanese/babel-japanese.pdf -2020/12/13 | 1338 | macros/latex/contrib/babel-contrib/japanese/babel-japanese.ins -2020/12/13 | 1312 | macros/latex/contrib/enotez/README -2020/12/13 | 1287 | support/bibtexperllibs/README -2020/12/13 | 12817 | support/bibtexperllibs/LaTeX-ToUnicode/lib/LaTeX/ToUnicode/Tables.pm -2020/12/13 | 1226331 | systems/win32/miktex/tm/packages/curve2e.tar.lzma -2020/12/13 | 1206 | info/ptex-manual/README.md -2020/12/13 | 1170464 | systems/texlive/tlnet/archive/curve2e.doc.r57117.tar.xz -2020/12/13 | 1103059 | systems/win32/miktex/tm/packages/mcf2graph.tar.lzma -2020/12/13 | 1080348 | systems/texlive/tlnet/archive/mcf2graph.doc.r57116.tar.xz -2020/12/13 | 1043 | support/bibtexperllibs/LaTeX-ToUnicode/Makefile.PL -2020/12/13 | 104080 | info/ptex-manual/ptex-guide-en.pdf diff --git a/fonts/cochineal/README b/fonts/cochineal/README index 26ed1dfad9..46bd9939be 100644 --- a/fonts/cochineal/README +++ b/fonts/cochineal/README @@ -19,7 +19,10 @@ Files provided "as is", with no warranties. The support files are provided in encodings OT1, T1, TS1 and LY1 for users of Western scripts, LGR for Greek scripts and T2A and OT2 for Cyrillic scripts. -Current version: 1.064 (2020-09-23) +Current version: 1.065 (2020-12-19) + +Changes in version 1.065 +Modified uzcochmia.fd and related metric files to add proper scale factor. Changes in version 1.064 Corrected my generating script, which had overwritten the newest versions of zcoch[b]mia.{tfm,vf} with older versions made using encodings that are no longer supplied. diff --git a/fonts/cochineal/tex/uzcochmia.fd b/fonts/cochineal/tex/uzcochmia.fd index 53d51f503c..91eb72c8c7 100644 --- a/fonts/cochineal/tex/uzcochmia.fd +++ b/fonts/cochineal/tex/uzcochmia.fd @@ -10,11 +10,11 @@ \DeclareFontFamily{U}{zcochmia}{\skewchar \font =127} \DeclareFontShape{U}{zcochmia}{m}{it}{ - <-> zcochmia + <-> \ntxmath@scaled zcochmia }{} \DeclareFontShape{U}{zcochmia}{b}{it}{ - <-> zcochbmia + <-> \ntxmath@scaled zcochbmia }{} \DeclareFontShape{U}{zcochmia}{m}{sl}{<->ssub * zcochmia/m/it}{} diff --git a/fonts/notomath/README b/fonts/notomath/README index 81565d6468..fd5f32106c 100644 --- a/fonts/notomath/README +++ b/fonts/notomath/README @@ -1,8 +1,9 @@ This small package provides a math package that amounts to modifications of the NotoSerif and NotoSans Roman and Greek letters with most symbols taken from newtxmath which must of course be installed (version 1.629 or higher) and its map file enabled. The eight font files in this package are in pfb format, licensed under the SIL OFL, version 1.1. All other LaTeX support files are subject to the LaTeX Project Public License. See http://www.ctan.org/license/lppl1.3 for the details of that license. -Current version: 1.00 2020-08-04 - +Current version: 1.01 2020-12-19 +Changes in version 1.01 +Added some Greek Blackboard glyphs. Maintainer: Michael Sharpe, msharpe@ucsd.edu \ No newline at end of file diff --git a/fonts/notomath/tfm/notobmia.tfm b/fonts/notomath/tfm/notobmia.tfm index e2592a607e..9ee6be9989 100644 Binary files a/fonts/notomath/tfm/notobmia.tfm and b/fonts/notomath/tfm/notobmia.tfm differ diff --git a/fonts/notomath/tfm/notomia.tfm b/fonts/notomath/tfm/notomia.tfm index d978180c41..b830788372 100644 Binary files a/fonts/notomath/tfm/notomia.tfm and b/fonts/notomath/tfm/notomia.tfm differ diff --git a/fonts/notomath/vf/notobmia.vf b/fonts/notomath/vf/notobmia.vf index 447f9da4df..419def74aa 100644 Binary files a/fonts/notomath/vf/notobmia.vf and b/fonts/notomath/vf/notobmia.vf differ diff --git a/fonts/notomath/vf/notomia.vf b/fonts/notomath/vf/notomia.vf index 550f0233d9..2f5966ada6 100644 Binary files a/fonts/notomath/vf/notomia.vf and b/fonts/notomath/vf/notomia.vf differ diff --git a/fonts/scholax/README b/fonts/scholax/README index bee2c60537..a7d84694f7 100644 --- a/fonts/scholax/README +++ b/fonts/scholax/README @@ -8,7 +8,10 @@ The licence of fourier-GUTenberg is LPPL (Latex Public Project Licence) and the licence for TeXGyre fonts is equivalent to the LPPL, so this package is released under the LPPL. -Current version: 1.028 2020-12-18 +Current version: 1.029 2020-12-19 + +Changes in version 1.029 +Added a number of Blackboard Bold Greek glyphs to math family lettersA. Changes in version 1.028 Corrected ts1 encoding so that glyph coverage is complete. diff --git a/fonts/scholax/tfm/zncbmia.tfm b/fonts/scholax/tfm/zncbmia.tfm index 788b33e59f..720ac343f1 100644 Binary files a/fonts/scholax/tfm/zncbmia.tfm and b/fonts/scholax/tfm/zncbmia.tfm differ diff --git a/fonts/scholax/tfm/zncfbmia.tfm b/fonts/scholax/tfm/zncfbmia.tfm index e9982be5a7..1242666696 100644 Binary files a/fonts/scholax/tfm/zncfbmia.tfm and b/fonts/scholax/tfm/zncfbmia.tfm differ diff --git a/fonts/scholax/tfm/zncfmia.tfm b/fonts/scholax/tfm/zncfmia.tfm index 86cd4b2413..b2784f1671 100644 Binary files a/fonts/scholax/tfm/zncfmia.tfm and b/fonts/scholax/tfm/zncfmia.tfm differ diff --git a/fonts/scholax/tfm/zncmia.tfm b/fonts/scholax/tfm/zncmia.tfm index 63f686649a..5d4b5b037a 100644 Binary files a/fonts/scholax/tfm/zncmia.tfm and b/fonts/scholax/tfm/zncmia.tfm differ diff --git a/fonts/scholax/vf/zncbmia.vf b/fonts/scholax/vf/zncbmia.vf index c197a610a4..c0a5b4a442 100644 Binary files a/fonts/scholax/vf/zncbmia.vf and b/fonts/scholax/vf/zncbmia.vf differ diff --git a/fonts/scholax/vf/zncfbmia.vf b/fonts/scholax/vf/zncfbmia.vf index aa8db1cfd7..aa71009df5 100644 Binary files a/fonts/scholax/vf/zncfbmia.vf and b/fonts/scholax/vf/zncfbmia.vf differ diff --git a/fonts/scholax/vf/zncfmia.vf b/fonts/scholax/vf/zncfmia.vf index 67a11055e0..439f2b892e 100644 Binary files a/fonts/scholax/vf/zncfmia.vf and b/fonts/scholax/vf/zncfmia.vf differ diff --git a/fonts/scholax/vf/zncmia.vf b/fonts/scholax/vf/zncmia.vf index 35242d2295..25cb520046 100644 Binary files a/fonts/scholax/vf/zncmia.vf and b/fonts/scholax/vf/zncmia.vf differ diff --git a/graphics/circuit_macros/CHANGES b/graphics/circuit_macros/CHANGES index 5427774e17..1f84acc33b 100644 --- a/graphics/circuit_macros/CHANGES +++ b/graphics/circuit_macros/CHANGES @@ -1,6 +1,10 @@ CHANGES -Version 9.2.x: New macro ACsymbol, Proxim, Magn, options for mosfet, ground, +Version 9.4: Changes to examples and additional SVG examples. New + macros RightAngle, PerpTo, langle, ArcAngle, DCsymbol. Rewritten + arrester macro. Tweaked Equidist3, ground, antenna, NeedDpicTools. + Modified List of Macros. +Version 9.3: New macro ACsymbol, Proxim, Magn, options for mosfet, ground, microphone, consource. Bugfix for the source macro. Tweaked examples, macro svg_font. Added a short discussion of integrated circuits and connectors. Removed compression of the manual to restore broken diff --git a/graphics/circuit_macros/Copying b/graphics/circuit_macros/Copying index 30acd259ab..1c8e4d1950 100644 --- a/graphics/circuit_macros/Copying +++ b/graphics/circuit_macros/Copying @@ -1,4 +1,4 @@ -* Circuit_macros Version 9.3, copyright (c) 2020 J. D. Aplevich under * +* Circuit_macros Version 9.4, copyright (c) 2020 J. D. Aplevich under * * the LaTeX Project Public Licence in file Licence.txt. The files of * * this distribution may be redistributed or modified provided that this * * copyright notice is included and provided that modifications are clearly * diff --git a/graphics/circuit_macros/INSTALL b/graphics/circuit_macros/INSTALL index 73ccc6bd3e..5d841884b7 100644 --- a/graphics/circuit_macros/INSTALL +++ b/graphics/circuit_macros/INSTALL @@ -38,6 +38,10 @@ INSTALLATION: In case of difficulty, go to the examples directory, look at debug1.tex and debug2.m4, and follow instructions. +Installation on a Mac: + For a nice outline of how to install on a Mac, go to + https://www.hamish.science/2020/06/24/circuitmacros + TESTING: To test your installation, go to the examples directory (or copy the files Makefile, tst.tex, and any .m4 sources you might like to test diff --git a/graphics/circuit_macros/README b/graphics/circuit_macros/README index 982ea2a097..1ae81ea52e 100644 --- a/graphics/circuit_macros/README +++ b/graphics/circuit_macros/README @@ -1,5 +1,5 @@ -* Circuit_macros Version 9.3, copyright (c) 2020 J. D. Aplevich under * +* Circuit_macros Version 9.4, copyright (c) 2020 J. D. Aplevich under * * the LaTeX Project Public Licence in file Licence.txt. The files of * * this distribution may be redistributed or modified provided that this * * copyright notice is included and provided that modifications are clearly * @@ -166,7 +166,7 @@ DPIC: older versions, see https://repology.org/project/dpic/badges The best advice is to obtain the newest version. - The dpic distribution includes a manual dpic-doc.pdf containing a summary + The dpic distribution includes dpic-doc.pdf, a manual containing a summary of the pic language and of features unique to dpic. EXAMPLES @@ -182,7 +182,7 @@ EXAMPLES The examples directory Makefile automates the generation of .ps, .eps, .png, and .pdf files for individual diagrams. Subdirectories of the examples directory are for testing metafont, metapost, pgf, psfrag, - pdf, and xfig examples. + and xfig examples. INTEGRATION WITH OTHER TOOLS: Installation and usage of the macros have evolved smewhat since the @@ -191,7 +191,7 @@ INTEGRATION WITH OTHER TOOLS: I simply added commands to the appropriate Makefiles. However, others have developed tools that simplify workflow for their circumstances. The following are representative but keep in mind that systems and - installations evolve ovr time: + installations evolve over time: A Python-based GUI called PyCirkuit is at https://pypi.org/project/pycirkuit/ and @@ -216,15 +216,18 @@ INTEGRATION WITH OTHER TOOLS: A KDE interface created by Matteo Agostinelli can be found at http://wwwu.uni-klu.ac.at/magostin/cirkuit.html. A git - repository of a newer version of cirkuit by Andrew G. for Linux - is at https://github.com/ag-ckt/cirkuit/tree/V0.5.0. There is - uncertainty about installation possibilities because of changes in - library dependencies. + repository of a newer version by Andrew G. for Linux is at + https://github.com/ag-ckt/cirkuit/tree/V0.5.0. There is uncertainty + about installation possibilities because of evolving library dependencies. A wiki offering examples and tips is at http://swwiki.e-dschungel.de/circuit_macros It is in German but Google translate works well on the page. + Another recent introduction is at + https://www.root.cz/clanky/publikovanie-elektrickych-schem-a-diagramov-pomocou-circuit-macros/ + It is in Czech but, again, Google translate works well. + LaTeX automation tools are discussed at, for example, http://tex.stackexchange.com/questions/64/tools-for-automating-document-compilation @@ -240,10 +243,12 @@ VARIATIONS needs and taste. They continue to evolve in my own library as I use them and as others send comments. No such collection can hope to include all possible circuit-related symbols, so you will probably - find yourself writing your own macros or adapting some of these. Be - careful to rename modified macros to avoid confusion. The learning - curve compares well to other packages, but there is no trivially easy - way to produce high-quality graphics. + find yourself writing your own macros or adapting some of these. + Be careful to rename modified macros to avoid confusion. The learning + curve compares well to other packages, but there is no trivially + easy way to produce high-quality graphics. (If a picture is worth + a thousand words, ask yourself how long it would take to write and + revise a thousand words.) See eschpic on Github for IEC-style electrical drawings. @@ -282,28 +287,23 @@ Postscript, CorelDraw, Adobe Illustrator: SVG output, Inkscape: Dpic -v produces svg output. If the result is to be directly - inserted into html, then as for Postscript output, the diagram source - file has to be adapted to remove any LaTeX formatting. The configuration - file svg.m4 contains macros that can assist. - - If SVG is the ultimate goal, then it may be advisable to use the tool - dvisvgm to convert dvi to svg. An alternative on some systems is to - produce pdf and then use pdf2svg, since the font selection and formatting - problems associated with direct production of svg are eliminated. + inserted into html, then as for Postscript output, the diagram + source file has to be adapted to remove any LaTeX formatting. The + configuration file svg.m4 contains macros that can assist. To avoid + this problem at the expense of an extra postprocessing step, + sophisticated text formatting and font selection can be retained + by first producing pdf output and then converting to SVG using, + say, pdf2svg (https://github.com/dawbarton/pdf2svg) or dvisvgm + (https://www.ctan.org/pkg/dvisvgm). SVG is the native file format for the Inkscape graphics editor. - Therefore, elements defined by these macros can be output by dpic -v - in svg format for later manipulation by Inkscape. A basic palette - of circuit elements for importing into Inkscape is found in - examples/svg/paletteSVG.m4. In the svg subdirectory, type - "make paletteSVG.svg", read the resulting file into Inkscape, and then - ungroup the elements as desired. You would probably wish to add to or - customize these elements for extensive use. - - Recent Inkscape versions can export graphics to eps or pdf format - and text to tex format, so that labels can be formatted by LaTeX and - overlaid on the graphics file. This process allows the use of Inkscape - to place and embellish circuit elements. + Therefore, elements defined by these macros can be output by dpic + -v in svg format for later manipulation by Inkscape. A very basic + palette of circuit elements for importing into Inkscape is found + in examples/svg/paletteSVG.m4. In the svg subdirectory, type "make + paletteSVG.svg", read the resulting file into Inkscape, and then ungroup + the elements as desired. You would probably wish to add to or customize + these elements for extensive use. Metafont: The file examples/mf/cct.mf is a Metafont source for a few variants of diff --git a/graphics/circuit_macros/darrow.m4 b/graphics/circuit_macros/darrow.m4 index c2742857af..44da3b45da 100644 --- a/graphics/circuit_macros/darrow.m4 +++ b/graphics/circuit_macros/darrow.m4 @@ -1,7 +1,7 @@ divert(-1) darrow.m4 Macros for double lines and arrows -* Circuit_macros Version 9.3, copyright (c) 2020 J. D. Aplevich under * +* Circuit_macros Version 9.4, copyright (c) 2020 J. D. Aplevich under * * the LaTeX Project Public Licence in file Licence.txt. The files of * * this distribution may be redistributed or modified provided that this * * copyright notice is included and provided that modifications are clearly * @@ -276,7 +276,6 @@ define(`darc',`[ C: (0,0) line thick linethick/2 \ from C+(rect_(r+dlthick/2-lthick/4,ae))-(X.x,X.y) to \ C+(rect_(r-dlthick/2+lthick/4,ae))-(X.x,X.y)') -# { "S" at S; "E" at E; "C" at C; "TS" at TS; "TE" at TE } rp_ang := ae+pi__/2 ] with ifelse(`$1',,.S at Here,.C at `$1') move to last [].E diff --git a/graphics/circuit_macros/doc/ACsymbol.m4 b/graphics/circuit_macros/doc/ACsymbol.m4 new file mode 100644 index 0000000000..114a0f1879 --- /dev/null +++ b/graphics/circuit_macros/doc/ACsymbol.m4 @@ -0,0 +1,4 @@ +.PS +cct_init +ACsymbol +.PE diff --git a/graphics/circuit_macros/doc/AntennasMan.m4 b/graphics/circuit_macros/doc/AntennasMan.m4 index 6053cd2e3f..a2bb3be5f0 100644 --- a/graphics/circuit_macros/doc/AntennasMan.m4 +++ b/graphics/circuit_macros/doc/AntennasMan.m4 @@ -31,9 +31,9 @@ sinclude(Circuit_macros.dim) s_box(T1) below rjust at A.T1 s_box(T2) below ljust at A.T2 s_box(`\tt (,{,}D)') at A.n above - A: antenna(at A.T+(elen_,0),,P) + A: antenna(at A.T+(elen_,0),dimen_*3/4,P) s_box(T) below at A.T - s_box(`\tt (,{,}P)') at A.n above + s_box(`\tt (,dimen\_*3/4,P)') at A.n above A: antenna(at A.T+(elen_,0),,F) s_box(T) below at A.T s_box(`\tt (,{,}F)') at A.n above diff --git a/graphics/circuit_macros/doc/ArrestersMan.m4 b/graphics/circuit_macros/doc/ArrestersMan.m4 new file mode 100644 index 0000000000..dc08e40429 --- /dev/null +++ b/graphics/circuit_macros/doc/ArrestersMan.m4 @@ -0,0 +1,75 @@ +.PS +# ArrestersMan.m4 +cct_init + + sep = 0.2 + +R1: [ + arrester + {`"\tt arrester"' at last line.c+(0,-0.2)} + move sep + arrester(,G) + {`"\tt arrester(,G)"' at last line.c+(0,-0.2)} + move sep + arrester(,g) + {`"\tt ...(,g)"' at last line.c+(0,-0.2)} + move sep + arrester(,M) + {`"\tt \ldots(,M)"' at last line.c+(0,-0.2)} + move sep + arrester(,C) + {`"\tt \ldots(,C)"' at last line.c+(0,-0.2)} + move sep + arrester(,A) + {`"\tt \ldots(,A)"' at last line.c+(0,-0.2)} + ] + +R2: [ + arrester(,H) + {`"\tt \ldots(,H)"' at last line.c+(0,-0.2)} + move sep + arrester(,HR) + {`"\tt \ldots(,HR)"' at last line.c+(0,-0.2)} + move sep + arrester(,P) + {`"\tt \ldots(,P)"' at last line.c+(0,-0.2)} + move sep + arrester(,s) + {`"\tt \ldots(,s)"' at last line.c+(0,-0.2)} + move sep + arrester(,F) + {`"\tt \ldots(,F)"' at last line.c+(0,-0.2)} + move sep + arrester(,S) + {`"\tt \ldots(,S)"' at last line.c+(0,-0.2)} + + ] with .nw at R1.sw+(0,-0.2) + + define(`Dlabels', + `{ thinlines_ + arrow <- from A.A up 0.1 left 0.1; "\sl A" rjust + arrow <- from A.B up 0.1 right 0.1; "\sl B" ljust + arrow <- from A.G up 0.05 right 0.15; "\sl G" ljust + thicklines_ }') +[ + arrester(,E) + {`"\tt \ldots(,E)"' at last line.c+(0,-0.25)} + move sep + A: arrester(,DE) + {`"\tt \ldots(,DE)"' at last [].s+(0,-0.1)} + Dlabels + move sep*3 + A: arrester(,DS) + {`"\tt \ldots(,DS)"' at last [].s+(0,-0.1)} + Dlabels + move sep*3 + A: arrester(,DEL) + {`"\tt \ldots(,DEL)"' at last [].s+(0,-0.1)} + Dlabels + move sep*3 + A: arrester(,DSL) + {`"\tt \ldots(,DSL)"' at last [].s+(0,-0.1)} + Dlabels + ] with .nw at R2.sw+(0,-0.2) + +.PE diff --git a/graphics/circuit_macros/doc/CctTableMan.m4 b/graphics/circuit_macros/doc/CctTableMan.m4 index f7e47d0758..221c62b737 100644 --- a/graphics/circuit_macros/doc/CctTableMan.m4 +++ b/graphics/circuit_macros/doc/CctTableMan.m4 @@ -85,6 +85,8 @@ vm = 0.28 } move down 0.25; right_ { {pvcell ; move;"`{\tt pvcell}'" ljust} + move right_ hm + {arrester ; move ;"`{\tt arrester}'" ljust} } .PE diff --git a/graphics/circuit_macros/doc/Circuit_macros.pdf b/graphics/circuit_macros/doc/Circuit_macros.pdf index 78a14a9ca9..6e50fe8ba6 100644 Binary files a/graphics/circuit_macros/doc/Circuit_macros.pdf and b/graphics/circuit_macros/doc/Circuit_macros.pdf differ diff --git a/graphics/circuit_macros/doc/DCsymbol.m4 b/graphics/circuit_macros/doc/DCsymbol.m4 new file mode 100644 index 0000000000..5d66149410 --- /dev/null +++ b/graphics/circuit_macros/doc/DCsymbol.m4 @@ -0,0 +1,4 @@ +.PS +cct_init +DCsymbol +.PE diff --git a/graphics/circuit_macros/doc/GroundsMan.m4 b/graphics/circuit_macros/doc/GroundsMan.m4 index e93fadf33c..a2aeba6e7f 100644 --- a/graphics/circuit_macros/doc/GroundsMan.m4 +++ b/graphics/circuit_macros/doc/GroundsMan.m4 @@ -1,5 +1,5 @@ .PS -# `Grounds.m4' +# GroundsMan.m4 cct_init sep = 0.65 @@ -22,7 +22,7 @@ D: B+(0,11bp__) "{\tt (,{,}E)}" at (GE,D)} -GS: ground(,,S) +GS: ground(,dimen_/2,S) move right sep GS90: [ground(,,S,90) ] with .n at Here move right sep from GS90.n @@ -36,7 +36,7 @@ GPA: ground(,T,PA) C: Here+(0,-0.5) E: C+(0,11bp__) - "{\tt (,{,}S)}" at (GS,C) + "{\tt (,dimen\_/2,S)}" at (GS,C) "{\tt (,{,}S,90)}" at (GS90,E) "{\tt (,{,}Q)}" at (GQ,C) "{\tt (,{,}L)}" at (GL,E) diff --git a/graphics/circuit_macros/doc/Makefile b/graphics/circuit_macros/doc/Makefile index 9e27cc0b27..fb7ed9bc93 100644 --- a/graphics/circuit_macros/doc/Makefile +++ b/graphics/circuit_macros/doc/Makefile @@ -5,11 +5,12 @@ DOC = Circuit_macros DOCSRC = Circuit_macros.tex body.tex defines.tex PICTEX = \ - AmpTableMan.tex AntennasMan.tex AudioMan.tex Axes.tex \ + ACsymbol.tex \ + AmpTableMan.tex AntennasMan.tex ArrestersMan.tex AudioMan.tex Axes.tex \ Buffer.tex BigResistor.tex BipMan.tex \ CctTableMan.tex Composite.tex ConfigA.tex ConfigB.tex ConfigC.tex \ ConnMan.tex Corners.tex ContactMan.tex ContactsMan.tex \ - Dac.tex Darlington.tex DemultiplexerMan.tex DiodesMan.tex \ + Dac.tex Darlington.tex DCsymbol.tex DemultiplexerMan.tex DiodesMan.tex \ EmarrowsMan.tex FF.tex FlipFlop.tex Flowdiag.tex FusesMan.tex \ GroundsMan.tex HeadersMan.tex HybridPi.tex JackMan.tex LogicMan.tex \ Loop.tex MultiplexerMan.tex NPDTMan.tex NLGMan.tex NportMan.tex \ @@ -89,6 +90,11 @@ $(DOC).$(SFX): mode.tex citations $(PICTEX) @printf "\n No file $(DOC).$(SFX)\n\n" ; \ $(LATEX) $(DOC) ; bibtex $(DOC) ; fi +ACsymbol.tex DCsymbol.tex: + touch $(DOC).dim + $(M4) $(M4LIBS) $(DOC).dim $*.m4 > $*.pic + $(PRE) $(PIC) $*.pic | sed -e '/end{tikzpicture}/s/$$/%/' > $*.tex + citations: mode.tex $(DOC).bbl $(PICTEX) @printf "\n citations:\n\n" $(LATEX) $(DOC) ; bibtex $(DOC) diff --git a/graphics/circuit_macros/doc/Version.tex b/graphics/circuit_macros/doc/Version.tex index ca449b0a0b..9d14ec204e 100644 --- a/graphics/circuit_macros/doc/Version.tex +++ b/graphics/circuit_macros/doc/Version.tex @@ -1 +1 @@ -Version 9.3 +Version 9.4 diff --git a/graphics/circuit_macros/doc/body.tex b/graphics/circuit_macros/doc/body.tex index cbb2fdb058..ac8db93ef5 100644 --- a/graphics/circuit_macros/doc/body.tex +++ b/graphics/circuit_macros/doc/body.tex @@ -92,7 +92,7 @@ The result is passed through a \pic interpreter to produce {\tt .tex} output that can be inserted into a {\tt .tex} document using the \verb|\input| command. -\begin{figure}[hbt] +\begin{figure}[ht] \pdftooltip{\input Flowdiag }{Flow diagram for the inclusion of figures} \caption{Inclusion of figures and macros in the \latex document. \label{Flowdiag}} @@ -193,7 +193,7 @@ A configuration file ({\tt pstricks.m4} and {\tt pgf.m4} in the above examples) is {\em always} the first file to be given to \Mfour. Put the following or its equivalent in the document body: \begin{verbatim} -\begin{figure}[hbt] +\begin{figure}[ht] \centering \input quick \caption{Customized caption for the figure.} @@ -218,7 +218,7 @@ to be read, thereby defining the macro {\tt cct\_init}. The diagram source file is then read and the circuit-element macros in {\tt libcct.m4} are defined during expansion of {\tt cct\_init}. -\begin{figure}[hbt] +\begin{figure}[ht] \input ConfigA \caption{The command {\tt m4 pstricks.m4 quick.m4 > quick.pic}. @@ -239,7 +239,7 @@ the commands are \noindent and the figure inclusion statements are as shown: \begin{verbatim} -\begin{figure}[hbt] +\begin{figure}[ht] \input quick \centerline{\box\graph} \caption{Customized caption for the figure.} @@ -470,7 +470,7 @@ The construction \noindent truncates the line at each end by {\tt x} (which may be negative) or, if {\tt x} is omitted, by -the current circle radius, which is convenient when A and B are +the current circle radius, a convenience when A and B are circular graph nodes, for example. Otherwise {\tt line from A to B chop x chop y} @@ -728,7 +728,11 @@ operating-system commands, \pic macros, and external file inclusion. There is a fundamental difference between the two-terminal elements, each of which is drawn along an invisible straight-line segment, and other elements, which are compound objects mentioned -in \SR{Compoundobjects:}. The two-terminal element macros follow a +in \SR{Compoundobjects:}. +% Specifying the straight-line segment requires four numbers, the coordinates +% of the start and end, or equivalent, but default values are used if +% not specified. +The two-terminal element macros follow a set of conventions described in this section, and other elements will be described in \SR{Composite:}. @@ -745,7 +749,7 @@ The first part of the source file for this figure is %as follows: on the left: -\begin{figure}[hbt] +\begin{figure}[ht] \parbox{2in}{\tt .PS\\ \hbox{}\quad cct\_init\\ \hbox{}\quad linewid = 2.0\\ \hbox{}\quad linethick\_(2.0)\\ R1: resistor} \raisebox{-0.3in}{\hbox{\input{BigResistor.tex}}} @@ -829,7 +833,8 @@ were added after the previously shown source: \subsection{The two-terminal elements\label{Twoterminal:}} The two-terminal elements are shown in \FRS{CctTable} % to~\REF{Diodes} and \FRS{Fuses} -to~\REF{Switches}. +%to~\REF{Switches}. +to~\REF{Arresters}. Several elements are included more than once to illustrate some of their arguments, which are listed in \SR{defines}. \enlargethispage{\baselineskip} @@ -846,12 +851,13 @@ If the argument is blank, the element is drawn from the current position in the current drawing direction along a default length. The other arguments produce variants of the default elements. -\begin{figure}[hbt] +\begin{figure}[ht] \input AmpTableMan \caption{Amplifier, delay, and integrator.} \label{AmpTable} \end{figure} +\pagebreak Thus, for example, \par {\tt resistor(up\_ 1.25,7)} @@ -862,7 +868,7 @@ vertices per side. The macro {\tt up\_} evaluates to {\tt up} but also resets the current directional parameters to point up. -\begin{figure}[hbt] +\begin{figure}[ht] \input SourcesMan % \ifpdf\vspace*{-0.5\baselineskip}\fi% \caption{Sources and source-like elements.} @@ -875,11 +881,16 @@ to draw a single cycle of a sinusoid or approximate sinusoid. As a convenience, the macro {\tt ACsymbol(at {\sl position, length, height,} [A]U|D|L|R|{\sl degrees})} is included as an interface to -the {\tt sinusoid} macro. For example to add the sumbol to an ebox: +the {\tt sinusoid} macro. For example to add the sumbol +(\input{ACsymbol.tex}) to an ebox: \par {\tt ebox; $\lbrace$\ ACsymbol(at last [],{,},dimen\_/8) $\rbrace$} -\begin{figure}[hbt] +\noindent +For direct current (\input{DCsymbol.tex}), there is also +{\tt DCsymbol(at {\sl position, length, height,} U|D|L|R|{\sl degrees})}. + +\begin{figure}[ht] \input DiodesMan \caption{The macro {\tt diode(\linespec,B|CR|D|L|LE[R]|P[R]|S|T|V|v|w|Z|{\sl chars},[R][E])}. @@ -923,6 +934,8 @@ The first argument of the macro \noindent is the name of a two-terminal element in quotes, followed by the element arguments. The element is drawn with reversed direction. + +\pagebreak Thus, \par {\tt diode(right\_ 0.4); reversed(`diode',right\_ 0.4)} @@ -930,11 +943,6 @@ Thus, \noindent draws two diodes to the right, but the second one points left. -\begin{figure}[bt] - \input EmarrowsMan - \caption{Radiation arrows: {\tt em\_arrows({\sl type, angle, length})}} - \label{Emarrows} - \end{figure} Similarly, the macro \par {\tt resized(}{\sl factor},`{\sl macro name}',{\sl macro arguments}{\tt )} @@ -949,12 +957,31 @@ by 1.8, for example {\tt resized(1.8,`diode',right\_ 0.4);} {\tt resized(1.8,`reversed',`diode',right\_ 0.4)} +\pagebreak +\FR{Arresters} shows a collection of surge-protection devices, or arresters, +of which the {\tt E} and {\tt S} types may be either 2-terminal or as +3-terminal (composite) elements described in \SR{Composite:}. +\begin{figure}[ht] + \input ArrestersMan + \caption{Variations of the {\tt arrester({\sl linespec, chars,} + {\sl wid}[{\tt :}{\sl arrowhead ht}], {\sl ht}[{\tt :}{\sl arrowhead wid})} + macro. Putting {\tt D} in argument 2 for the {\tt S} or {\tt E} + configuration creates a 3-terminal composite element + with terminals {\sl A, B}, and {\sl G.}} + \label{Arresters} + \end{figure} + \FR{Emarrows} contains radiation-effect arrows for embellishing two-terminal and other macros. The arrow stems are named {\sl A1}, {\sl A2}, and each pair is drawn in a \verb|[]| block, with the names {\sl Head} and {\sl Tail} defined to aid placement near another device. The second argument specifies +\begin{figure}[ht] + \input EmarrowsMan + \caption{Radiation arrows: {\tt em\_arrows({\sl type, angle, length})}} + \label{Emarrows} + \end{figure} absolute angle in degrees (default 135 degrees). The arrows are drawn relative to the diode direction by the {\tt LE} option in \FR{Diodes}. For absolute arrow directions, one can @@ -979,7 +1006,7 @@ thus, the following line draws the resistor in \FR{Variable}: \par {\tt resistor(down\_ dimen\_); variable(,uN)} -\begin{figure}[h!t] +\begin{figure}[ht] \vspace*{-\baselineskip} \input VariableMan \caption{Illustrating @@ -1011,7 +1038,7 @@ The macro \noindent draws an arrow from the start of the last-drawn two-terminal element {\sl frac} of the way toward the body. -\begin{figure}[h!t] +\begin{figure}[ht] % \ifpdf\vspace*{-0.5\baselineskip}\fi% \input currents \caption{Illustrating {\tt b\_current, larrow,} and {\tt rarrow}. @@ -1153,7 +1180,7 @@ The macro {\tt eleminit\_} in the two-terminal elements invokes to establish element length and direction. As shown in \FR{Oblique}, -\begin{figure}[h!b] +\begin{figure}[ht] \vspace{-\baselineskip} \parbox{4.5in}{\small \verbatiminput{Oblique.m4}}% \hfill\raise-0.7in\llap{\hbox{\input Oblique }}% @@ -1196,7 +1223,7 @@ makes some geometries particularly simple. Thus, \noindent draws three elements in series as shown in the top line of \FR{Series}. -\begin{figure}[h!t] +\begin{figure}[ht] \vspace{-\baselineskip} \input Series \caption{Three ways of drawing basic elements in series.} @@ -1247,7 +1274,7 @@ producing the left circuit in \FR{ParSeries}: line from L.end to C.end \end{verbatim} -\begin{figure}[h!t] +\begin{figure}[ht] % \vspace*{-\baselineskip} \input ParSeries \vspace*{-\baselineskip} @@ -1305,7 +1332,7 @@ first draws a resistor along the specified line, then adds arrows for taps at fractional positions along the body, with default or specified length. A negative length draws the arrow from the right of the current drawing direction. -\begin{figure}[h!t] +\begin{figure}[ht!] \input Potentiometers \caption{Default and multiple-tap potentiometer.} \label{Potentiometers} @@ -1317,7 +1344,7 @@ The macro {\tt $\ldots$)}, shown in \FR{Taps}, will add taps to the immediately preceding two-terminal element. -\begin{figure}[h!t] +\begin{figure}[ht] \input Taps \caption{Macros for adding taps to two-terminal elements.} \label{Taps} @@ -1338,7 +1365,17 @@ drawn elements. A few composite symbols derived from two-terminal elements are shown in \FR{Composite}. +\begin{figure}[h!b] + \vspace*{-0.5ex} +% \vspace*{-\baselineskip} + \input Composite + \vspace*{-0.5ex} + \caption{Composite elements {\tt KelvinR({\sl cycles},[R],{\sl cycle wid})} + and {\tt FTcap({\sl chars})} .} + \label{Composite} + \end{figure} +\enlargethispage{\baselineskip} The ground symbol is shown in \FR{Grounds}. The first argument specifies position; for example, the two lines shown have identical effect: @@ -1347,15 +1384,6 @@ have identical effect: \par ground(at (1.5,2)) } -\begin{figure}[h!t] - \vspace*{-0.5ex} - \input Composite - \vspace*{-0.5ex} - \caption{Composite elements {\tt KelvinR({\sl cycles},[R],{\sl cycle wid})} - and {\tt FTcap({\sl chars})} .} - \label{Composite} - \end{figure} - %\noindent The second argument truncates the stem, and the third defines the symbol type. @@ -1369,26 +1397,27 @@ macro and reset at the end using {\tt resetdir\_}. \input GroundsMan \caption{The {\tt ground( at }{\sl position}{\tt, - T, N|F|S|L|P[A]|E, U|D|L|R|{\sl degrees} )} + T|{\sl stem length}, N|F|S|L|P[A]|E, U|D|L|R|{\sl degrees} )} macro.} \label{Grounds} \end{figure} -The arguments of the macro -{\tt antenna( at }{\sl position}{\tt, - T, A|L|T|S|D|P|F, U|D|L|R|{\sl degrees} )} +The arguments of +{\tt antenna(at }{\sl position}{\tt, + T|{\sl stem length}, A|L|T|S|D|P|F, U|D|L|R|{\sl degrees})} shown in \FR{Antennas} are similar to those of {\tt ground}. -\begin{figure}[h!t] +\begin{figure}[h!] \input AntennasMan \caption{Antenna symbols, with macro arguments shown above and terminal names below.} \label{Antennas} \end{figure} -\pagebreak \FR{Opamp} illustrates the macro {\tt opamp({\sl\linespec, - label, + label, size, chars})\label{OPAMP}}. -\begin{figure}[h!t] +The element is enclosed in a block +containing the predefined internal locations shown. +\begin{figure}[ht] % \ifpdf\vspace*{-0.5\baselineskip}\fi% \input OpampMan \caption{Operational amplifiers. The {\tt P} option adds @@ -1396,8 +1425,6 @@ shown in \FR{Antennas} are similar to those of {\tt ground}. to place and rotate arbitrary text at {\tt In1} and {\tt In2}.} \label{Opamp} \end{figure} -The element is enclosed in a block -containing the predefined internal locations shown. These locations can be referenced in later commands, for example as ``{\tt last [].Out}.'' The first argument defines the direction and length of the opamp, but the @@ -1418,7 +1445,7 @@ using postprocessor commands (for example \PSTricks \verb|\rput|) as second and third arguments. The code in \FR{oax} places an opamp with three connections. -\begin{figure}[h!t] +\begin{figure}[h!b] \parbox{4in}{\small \verbatiminput{oaxbody.m4}}% \quad\raise-0.2in\hbox{\input oax }% % \vspace{-\baselineskip} @@ -1430,6 +1457,14 @@ The code in \FR{oax} places an opamp with three connections. \FR{Xform} shows variants of the transformer macro, which has predefined internal locations {\sl P1,} {\sl P2,} {\sl S1,} {\sl S2,} {\sl TP,} and {\sl TS.} +\begin{figure}[h!t] + \input XformMan + \caption{The {\tt transformer(\linespec,L|R,{\sl np},% +[A|P][W|L][D1|D2|D12|D21],{\sl ns})} + macro (drawing direction {\tt down}), showing predefined terminal + and centre-tap points.} + \label{Xform} + \end{figure} The first argument specifies the direction and distance from {\sl P1} to {\sl P2}, with position determined by the enclosing block as for opamps. The second @@ -1442,21 +1477,18 @@ if a {\tt P}, the core is dashed (powder); and if it contains a {\tt W}, wide windings are drawn. A {\tt D1} puts phase dots at the {\sl P1, S1} end, {\tt D2} at the {\sl P2, S2} ends, and {\tt D12} or {\tt D21} puts dots at opposite ends. -\begin{figure}[h!t] -% \ifpdf\vspace*{-\baselineskip}\fi% - \input XformMan -% \vspace{-\baselineskip} - \caption{The {\tt transformer(\linespec,L|R,{\sl np},% -[A|P][W|L][D1|D2|D12|D21],{\sl ns})} - macro (drawing direction {\tt down}), showing predefined terminal - and centre-tap points.} - \label{Xform} - \end{figure} -\pagebreak \FR{Audio} shows some audio devices, defined in {\tt []} blocks, with predefined internal locations as shown. -\begin{figure}[h!t] +The first argument specifies the device orientation. +Thus, +\par +{\tt S: speaker(U) with .In2 at Here} + +\noindent +places an upward-facing speaker with input {\sl In2} at the +current location. +\begin{figure}[ht] % \ifpdf\vspace*{-\baselineskip}\fi% \input AudioMan % \ifpdf\vspace*{-\baselineskip}\fi% @@ -1466,20 +1498,11 @@ with predefined internal locations as shown. earphone}, with their internally named positions and components.} \label{Audio} \end{figure} -The first argument specifies the device orientation. - -Thus, - -{\tt S: speaker(U) with .In2 at Here} - -\noindent -places an upward-facing speaker with input {\sl In2} at the -current location. The {\tt nport({\sl box specs {\tt[;} other commands{\tt]}, nw, nn, ne, ns, space ratio, pin lgth, style})} macro is shown in \FR{Nport}. -\begin{figure}[h!t] +\begin{figure}[ht] % \ifpdf\vspace*{-\baselineskip}\fi \input NportMan % \ifpdf\vspace*{-\baselineskip}\fi @@ -1520,7 +1543,6 @@ immediately after drawing it but within the enclosing block: If this trick were to be used extensively, then the following custom wrapper would save typing, add the labels, and pass all arguments to {\tt nport}: -\pagebreak \begin{verbatim} define(`nullor',`nport(`$1' @@ -1529,33 +1551,21 @@ define(`nullor',`nport(`$1' \end{verbatim} The above example and the related gyrator macro are illustrated in -\FR{NLG}. -% \ifpdf\vspace*{\baselineskip}\fi% -\begin{figure}[h!t] +\FR{NLG}.\hfill\break + +\begin{figure}[ht] \input NLGMan \caption{The {\tt nullor} example and the {\tt gyrator} macro are customizations of the {\tt nport} macro.} \label{NLG} \end{figure} -The double-throw switches shown in \FR{NPDT} are drawn in the -current drawing direction like the two-terminal elements, but are -composite elements that must be placed accordingly. -\begin{figure}[h!t] -% \ifpdf\vspace*{-0.5\baselineskip}\fi% - \input NPDTMan -% \ifpdf\vspace*{-0.5\baselineskip}\fi% - \caption{Multipole double-throw switches drawn by - {\tt NPDT({\sl npoles}, [R])}.} - \label{NPDT} - \end{figure} - \FR{Contact} shows the macro {\tt contact({\sl chars})}, which contains predefined locations {\sl P, C, O} for the armature and normally closed and normally open terminals. An {\tt I} in the first argument draws open circles for contacts. -\begin{figure}[h!t] +\begin{figure}[ht] % \ifpdf\vspace*{-\baselineskip}\else\vspace*{-0.5\baselineskip}\fi% \input ContactMan \vspace{-1ex} @@ -1565,11 +1575,9 @@ An {\tt I} in the first argument draws open circles for contacts. \label{Contact} \end{figure} -\pagebreak The {\tt contacts({\sl poles, chars})} macro in \FR{Contacts} draws multiple contacts. -\begin{figure}[h!t] -% \ifpdf\vspace*{-\baselineskip}\else\vspace*{-0.5\baselineskip}\fi% +\begin{figure}[ht] \input ContactsMan \vspace{-1ex} \caption{The {\tt contacts({\sl poles, chars})} @@ -1581,7 +1589,9 @@ For drawing relays, the macro {\tt relaycoil({\sl chars, wid, ht,} {\tt U|D|L|R|}{\sl degrees})} shown in \FR{relaycoil} provides a choice of connection points and actuator types. -\begin{figure}[h!t] + +\pagebreak +\begin{figure}[ht] % \ifpdf\vspace*{-\baselineskip}\else\vspace*{-0.5\baselineskip}\fi% \input relaycoilMan \vspace{-1ex} @@ -1591,9 +1601,8 @@ actuator types. The {\tt relay({\sl poles, chars})} macro in \FR{Relay} defines coil terminals {\sl V1, V2} and contact -terminals {\sl P$_i$, C$_i$, O$_i$.} -\begin{figure}[h!t] -% \ifpdf\vspace*{-\baselineskip}\else\vspace*{-0.5\baselineskip}\fi% +terminals {\sl P$_i$, C$_i$, O$_i$.} +\begin{figure}[ht] \input RelayMan \vspace{-1ex} \caption{The {\tt relay({\sl poles, chars})} @@ -1602,14 +1611,14 @@ terminals {\sl P$_i$, C$_i$, O$_i$.} \end{figure} The {\tt jack} and {\tt plug} macros and their defined points are - illustrated in \FR{Jack}. - The first argument of both macros establishes the drawing direction. -\begin{figure}[h!t] +illustrated in \FR{Jack}. +The first argument of both macros establishes the drawing direction. +\begin{figure}[h!] \input JackMan \vspace{-1ex} \caption{The {\tt jack(U|D|L|R|{\sl degrees}, {\sl chars})} - and {\tt plug(U|D|L|R|{\sl degrees},[2|3][R])} components - and their defined points.} + and {\tt plug(U|D|L|R|{\sl degrees},[2|3][R])} components + and their defined points.} \label{Jack} \end{figure} The second argument is a string of characters defining drawn components. @@ -1628,14 +1637,14 @@ A macro for drawing headers is in \FR{Headers}, and some experimental connectors are shown in \FR{Conn} and \FR{Pconn}. The {\tt tstrip} macro allows ``{\sl key}{\tt =}{\sl value}{\tt ;}'' arguments for width and height. -\begin{figure}[h!t] +\begin{figure}[ht] % \ifpdf\vspace*{-0.5\baselineskip}\fi% \input HeadersMan % \ifpdf{\vspace*{-0.5ex}}\fi% \caption{Macro {\tt Header(1|2, {\sl rows, wid, ht, type})}.} \label{Headers} \end{figure} -\begin{figure}[h!t] +\begin{figure}[ht] \input ConnMan % \ifpdf{\vspace*{-0.5ex}}\fi% \caption{Macros {\tt tstrip(R|L|U|D|{\sl degrees}, {\sl chars})}, @@ -1645,7 +1654,7 @@ for width and height. \label{Conn} % \ifpdf{\vspace*{-1ex}}\fi% \end{figure} -\begin{figure}[h!t] +\begin{figure}[ht] % \ifpdf{\vspace*{-1ex}}\fi% \input PconnMan % \ifpdf{\vspace*{-0.5ex}}\fi% @@ -1655,13 +1664,23 @@ for width and height. \label{Pconn} \end{figure} -\pagebreak +The double-throw switches shown in \FR{NPDT} are drawn in the +current drawing direction like the two-terminal elements, but are +composite elements that must be placed accordingly. +\begin{figure}[h!b] + \ifpdf{\vspace*{-1ex}}\fi% + \input NPDTMan + \caption{Multipole double-throw switches drawn by + {\tt NPDT({\sl npoles}, [R])}.} + \label{NPDT} + \end{figure} + A basic winding macro for magnetic-circuit sketches and similar figures is shown in \FR{Windings}. For simplicity, the complete spline is first drawn and then blanked in appropriate places using the background (core) color (\verb!lightgray! for example, default \verb!white!). -\begin{figure}[h!t] +\begin{figure}[h!b] \vspace*{-\baselineskip}% % \ifpdf\vspace*{-2\baselineskip}\else \vspace{-\baselineskip}\fi \input WindingsMan @@ -1679,7 +1698,7 @@ is first drawn and then blanked in appropriate places using the background which contains predefined internal locations {\sl E}, {\sl B}, {\sl C}. The first argument defines the distance and direction from {\sl E} -\begin{figure}[h!t] +\begin{figure}[ht] % \ifpdf\vspace*{-0.5\baselineskip}\fi% \input BipMan % \ifpdf\vspace*{-0.5\baselineskip}\fi% @@ -1694,7 +1713,7 @@ current drawing direction according to the second argument. Setting the third argument to {\tt P} creates a PNP device instead of NPN, and setting the fourth to {\tt E} draws an envelope around the device. \FR{Darlington} shows a composite macro with several optional internal elements. -\begin{figure}[h!t] +\begin{figure}[ht] \input Darlington \caption{Macro {\tt Darlington(L|R,[E][P][B1][E1|R1][E2|R2][D][Z])}, drawing direction {\tt up\_}.} @@ -1703,8 +1722,8 @@ fourth to {\tt E} draws an envelope around the device. The code fragment example in \FR{bitr} places a bipolar transistor, connects a ground to the emitter, and connects a resistor to the collector. -\begin{figure}[h!t] -\vspace*{-\baselineskip} +\begin{figure}[ht] +%\vspace*{-\baselineskip} \quad\quad\parbox{4in}{\small \verbatiminput{bitrbody.m4}}% \quad\raise-0.4in\hbox{\input bitr }% \vspace{-\baselineskip} @@ -1717,8 +1736,8 @@ the macro {\tt bi\_trans(\linespec, L|R, {\sl chars}, E)}, which draws the components of the transistor according to the characters in its third argument. For example, multiple emitters and collectors can be specified as shown in \FR{bitrans}. -\begin{figure}[h!t] -\vspace*{-0.5\baselineskip} +\begin{figure}[ht] +%\vspace*{-0.5\baselineskip} \input bi_trans \caption{The {\tt bi\_trans(\linespec,L|R,{\sl chars},E)} macro. The sub-elements are specified by the third argument. The substring @@ -1734,7 +1753,7 @@ and a thyristor macro with predefined internal locations {\sl G} and {\sl T1,} {\sl T2,} or {\sl A,} {\sl K} is in \FR{thyristor}. Except for the {\sl G} terminal, a thyristor (the {\tt IEC} variant excluded) -\begin{figure}[h!t] +\begin{figure}[ht] % \ifpdf\vspace*{-\baselineskip}\else\vspace*{-0.5\baselineskip}\fi% \input ujtMan % \ifpdf\vspace*{-0.5\baselineskip}\fi% @@ -1768,7 +1787,7 @@ draws the element from position {\sl A} to position {\sl B} with label Some FETs with predefined internal locations {\sl S,} {\sl D,} and {\sl G} are also included, with similar arguments to those of {\tt bi\_tr,} as shown in \FR{fet}. -\begin{figure}[h!t] +\begin{figure}[ht] % \ifpdf\vspace*{-\baselineskip}\fi% \input fetMan % \ifpdf\vspace*{-\baselineskip}\fi% @@ -1806,7 +1825,7 @@ the {\tt thyristor(\linespec, {\sl chars})} macro illustrated in \FR{thyristor} is derived from the diode and bipolar transistor macros. Another example is the {\tt tgate} macro shown in \FR{Tgate}, which also shows a pass transistor. -\begin{figure}[h!t] +\begin{figure}[ht] % \ifpdf\vspace*{-\baselineskip}\fi% \input TgateMan \caption{The {\tt tgate({\sl linespec,} [B][R|L])} element, derived from @@ -1824,7 +1843,7 @@ optional argument ``{\tt at} {\sl location}'', the line-thickness macros, the {\tt fill\_} macro, and {\tt crossover}, which is a useful if archaic method to show non-touching conductor crossovers, as in \FR{bistable}. -\begin{figure}[h!t] +\begin{figure}[ht] \input bistableMan % \vspace{-1ex} \caption{Bipolar transistor circuit, illustrating {\tt crossover} @@ -1936,7 +1955,7 @@ two-terminal element. Input locations retain their positions relative to the gate body regardless of gate orientation, as in \FR{FF}. -\begin{figure}[h!t] +\begin{figure}[ht] \vspace*{-\baselineskip} \parbox{4.75in}{\small \verbatiminput{FF.m4}}% \input FF @@ -1944,7 +1963,7 @@ regardless of gate orientation, as in \FR{FF}. \caption{$SR$ flip-flop.} \label{FF} \end{figure} -\begin{figure}[h!t] +\begin{figure}[ht] \input mplex \caption{Eight-input multiplexer, showing a gate with wings.} \label{exVIII} @@ -2018,7 +2037,7 @@ If the first argument is non-blank however, then the buffer is drawn along an invisible line like a two-terminal element, which is convenient sometimes but requires internal locations of the block to be referenced using {\tt last []}, as shown in \FR{Buffer}. -\begin{figure}[h!t] +\begin{figure}[ht] \input Buffer \caption{The {\tt BUFFER\_gate} and {\tt BUFFER\_gen} macros. The bottom two examples show how the gate can be drawn as a two-terminal @@ -2027,28 +2046,12 @@ but requires internal locations of the block to be referenced using \label{Buffer} \end{figure} -\FR{Multiplexer} shows a multiplexer block with variations, and - \FR{Demultiplexer} shows -the very similar demultiplexer. -\begin{figure}[h!t] - \input MultiplexerMan - \caption{The {\tt Mux({\sl input count}, {\sl label}, - [L][B|H|X][N[$n$]|S[$n$]][[N]OE],{\sl wid},{\sl ht})} macro.} - \label{Multiplexer} - \end{figure} -\begin{figure}[h!t] - \input DemultiplexerMan - \caption{The {\tt Demux({\sl input count}, {\sl label}, - [L][B|H|X][N[$n$]|S[$n$]][[N]OE],{\sl wid},{\sl ht})} macro.} - \label{Demultiplexer} - \end{figure} - \FR{FlipFlops} shows the macro {\tt FlipFlop(D|T|RS|JK, {\sl label, boxspec, pinlength})}, which is a wrapper for the more general macro {\tt FlipFlopX(}{\sl boxspec, label, leftpins, toppins, rightpins, bottompins, pinlength}{\tt )}. -\begin{figure}[h!t] +\begin{figure}[ht] \input FlipFlop \caption{The {\tt FlipFlop} and {\tt FlipFlopX} macros, with variations.} \label{FlipFlops} @@ -2070,27 +2073,45 @@ a label, use {\tt lg\_bartxt(}{\sl label}{\tt)}. The {\sl pinopts} are {\tt [L|M|I|O][N][E]} as for the \verb|lg_pin| macro. Optional argument 7 is the pin length in drawing units. +\pagebreak +\FR{Multiplexer} shows a multiplexer block with variations, and + \FR{Demultiplexer} shows +the very similar demultiplexer. +\begin{figure}[h!t] + \input MultiplexerMan + \caption{The {\tt Mux({\sl input count}, {\sl label}, + [L][B|H|X][N[$n$]|S[$n$]][[N]OE],{\sl wid},{\sl ht})} macro.} + \label{Multiplexer} + \end{figure} +\begin{figure}[h!t] + \input DemultiplexerMan + \caption{The {\tt Demux({\sl input count}, {\sl label}, + [L][B|H|X][N[$n$]|S[$n$]][[N]OE],{\sl wid},{\sl ht})} macro.} + \label{Demultiplexer} + \end{figure} + Customized gates can be defined simply. For example, the following code defines the custom flipflops in \FR{ShiftR}. +\begin{verbatim} +define(`customFF',`FlipFlopX(wid 10*L_unit ht FF_ht*L_unit,, + :S;NE:CK;:R, N:PR, :Q;;ifelse(`$1',1,:lg_bartxt(Q)), N:CLR) ') +\end{verbatim} \begin{figure}[h!t] \input ShiftRMan \caption{A 5-bit shift register.} \label{ShiftR} \end{figure} -\begin{verbatim} -define(`customFF',`FlipFlopX(wid 10*L_unit ht FF_ht*L_unit,, - :S;NE:CK;:R, N:PR, :Q;;ifelse(`$1',1,:lg_bartxt(Q)), N:CLR) ') -\end{verbatim} This definition makes use of macros \verb|L_unit| and \verb|FF_ht| that predefine default dimensions. -There are three pins on the right side; the centre pin is null and +There are three pins on the right; the centre pin is null and the bottom is null if the first macro argument is 1. +\pagebreak For hybrid applications, the \verb|dac| and \verb|adc| macros are illustrated in \FR{Dac}. The figure shows the default and predefined internal locations, the number of which can be specified as macro arguments. -\begin{figure}[h!t] +\begin{figure}[ht] % \ifpdf\vspace*{-\baselineskip}\fi% \input Dac % \ifpdf\vspace*{-\baselineskip}\fi% @@ -2145,7 +2166,7 @@ can be given to the \char96{}{\sl actions}\char39, {\sl value1, value2, $\ldots$})} which executes the given actions successively with - {\sl variable} = {\sl value1}, {\sl value2} $ldots$ and the + {\sl variable} = {\sl value1}, {\sl value2} $\ldots$ and the counter {\tt m4Lx} set to 1, 2, $\ldots$ as in the diagram. \xection{Element and diagram scaling\label{Scaling:}} @@ -2291,7 +2312,7 @@ A few examples will be given. Custom two-terminal elements can often be defined by writing a wrapper for an existing element. For example, an enclosed thermal switch can be defined as shown in \FR{Thermal}. -\begin{figure}[h!t] +\begin{figure}[ht] \parbox{4.2in}{\tt define(`thermalsw',\hfill\break \hbox{}\space`dswitch(`\$1',`\$2',WDdBTh)\hfill\break \hbox{}\space\space circle rad distance(M4T,last line.c) @@ -2360,7 +2381,7 @@ define(`hybrid_PI_BJT', `"$\mathrm{r_o}$"' at Ro.c+vec_(hunit/4,0) `$2' ] ') \end{verbatim} -\begin{figure}[h!t] +\begin{figure}[ht] \vspace*{-0.5ex} \input HybridPi \vspace*{-0.5ex} @@ -2368,10 +2389,10 @@ define(`hybrid_PI_BJT', \label{HybridPi} \end{figure} +%\enlargethispage{\baselineskip} \Example{4} A number of elements have arguments meant explicitly for customization. -\FR{Sinus} customizes the {\tt source} macro to show a cycle of a horizontal -sinusoid with adjustable phase given by argument 2 in degrees, +\FR{Sinus} customizes the {\tt source} macro to show a cycle of a horizontal sinusoid with adjustable phase given by argument 2 in degrees, as might be wanted for a 3-phase circuit: \begin{figure}[ht] \hfill\input Sinus @@ -2391,14 +2412,13 @@ $3,$4,$5)') \end{figure} \Example{5} -Repeated subcircuits might have different orientations -that -include only the element and its mirror image, for example, so the +Repeated subcircuits might appear only +as the subcircuit and its mirror image, for example, so the power of the \verb|vec_()| and \verb|rvec_()| macros is not required. Suppose that an optoisolator is to be drawn with left-right or right-left orientation as shown in \FR{Opto}. %\vspace*{-0.5em} -\begin{figure}[h!t] +\begin{figure}[h!b] \input Opto \caption{Showing {\tt opto} and {\tt opto(BR)} with defined labels.} \label{Opto} @@ -2423,6 +2443,7 @@ for readability; this usage is made possible by testing the argument string using the {\tt ifinstr()} macro rather than requiring an exact match. A draft of the macro follows, and the file {\tt Optoiso.m4} in the examples directory adds a third type option. + \begin{verbatim} # `opto([R|L][A|B])' define(`opto',`[{u = dimen_/2 @@ -2470,7 +2491,7 @@ F2: fbfilter(L,R,K_2,C_{23},R_3) with .In at F1.In ground(at F2.G) \end{verbatim} \vspace*{-0.5em} -\begin{figure}[h!t] +\begin{figure}[ht] \input fbfilter \caption{Showing the result of two invocations of the {\tt fbfilter} macro, with labels.} @@ -2546,8 +2567,8 @@ main document source is \latex{}ed to input the diagram and format the text, and also to write the text dimensions into a supplementary file. Then the diagram source is processed again, reading the required dimensions from the supplementary file and producing a diagram ready -for final \latex{}ing. This hackery is summarized below, with an example -in \FR{stringdim}. +for final \latex{}ing. +This hackery is summarized below, with an example in \FR{stringdim}. \begin{itemize} \item Put \verb|\usepackage{boxdims}| into the document source. \item Insert the following at the beginning of the diagram source, @@ -2558,9 +2579,9 @@ in \FR{stringdim}. typeset text of known size, or alternatively, invoke the macros \verb|\boxdims| and \verb|boxdim| described later. The argument of {\tt s\_box} need not be text exclusively; it can - be anything that produces a \TeX\ box. + be anything that produces a \TeX\ box, for example, \verb|\includegraphics|. \end{itemize} -\begin{figure}[h!t] +\begin{figure}[ht] \parbox{3.5in}{\small\tt.PS\\ gen\_init\\ sinclude(Circuit\_macros.dim)\\ @@ -2649,6 +2670,8 @@ for the second time: Here is a second small example. Suppose that the file {\tt tsbox.m4} contains the following: + +\pagebreak \begin{verbatim} \documentclass{article} \usepackage{boxdims,ifpstricks(pstricks,tikz)} @@ -2682,7 +2705,7 @@ Objects can be taylored to their attached text by invoking The small source file in \FR{boxdims}, for example, produces the box in the figure. %\vspace*{-\baselineskip}% -\begin{figure}[h!t] +\begin{figure}[ht] \parbox{4.2in}{\small \input eboxdims.verb }% \hfill\llap{\raise-0.35in\hbox{\input eboxdims }}% \vspace{-\baselineskip} @@ -2736,13 +2759,12 @@ More tricks can be played. The example \noindent shows a nice way of including eps graphics in a diagram. The included picture (named {\tt Picture} in the example) has known position and dimensions, which can be used to add vector graphics or text to the -picture. To aid in overlaying objects, the macro {\tt boxcoord(}{\sl -object name, x-fraction, y-fraction}{\tt)} evaluates to a position, -with {\tt boxcoord(}{\sl object name}{\tt,0,0)} at the lower left -corner of the object, and {\tt boxcoord(}{\sl object name}{\tt,1,1)} at -its upper right. +picture. To aid in overlaying objects, the macro +{\tt boxcoord(}{\sl object name, x-fraction, y-fraction}{\tt)} +evaluates to a position, with {\tt boxcoord(}{\sl object name}{\tt,0,0)} +at the lower left corner of the object, and {\tt boxcoord(}{\sl object +name}{\tt,1,1)} at its upper right. -\pagebreak \xection{\PSTricks and other tricks\label{Pstricks:}} This section applies only to a \pic processor (\dpic) that is capable of producing output compatible with @@ -2764,7 +2786,7 @@ which contains both horizontal text and text rotated $90^\circ$ along the vertical line. This rotation of text is also implemented by the macro {\tt rs\_box}, which is similar -to {\tt s\_box} but rotates its text argument by $90^\circ,$ a default angle +to {\tt s\_box} but rotates its argument by~$90^\circ,$ a default angle that can be changed by preceding invocation with \verb|define(`text_ang',|{\sl degrees}{\tt )}. The {\tt rs\_box} macro requires either \PSTricks or \TPGF and, like {\tt s\_box}, it calculates the @@ -2814,15 +2836,6 @@ macros such as {\tt rs\_box}, {\tt shade}, and {\tt rgbfill} mentioned previously can be used to hide code differences. \subsection{\Tikz\ with pic}\label{Tikzwithpic:} -%The line -% -%\vspace{\parsep} -%\noindent{\tt command "}{\sl string}{\tt "} -%\vspace{\parsep} -% -%\noindent -%allows arbitrary postprocessor code to be embedded in \pic output. However, -%one can also embed Arbitrary \pic output can be inserted into a {\tt \bsl{}tikzpicture} environment. The trick is to keep the \pic and \Tikz coordinate systems the same. @@ -2830,14 +2843,14 @@ The lines \vspace{\parsep} \noindent\verb|\begin{tikzpicture}[scale=2.54]|\\ -\noindent\verb|\end{tikzpicture}| +\noindent\verb|\end{tikzpicture}%| \vspace{\parsep} \noindent in the {\tt dpic -g} output must be changed to \vspace{\parsep} \noindent\verb|\begin{scope}[scale=2.54]|\\ -\noindent\verb|\end{scope}| +\noindent\verb|\end{scope}%| \vspace{\parsep} This is accomplished, for example, by adapting the {\tt \bsl{}mtotex} @@ -3010,6 +3023,7 @@ With raw \Postscript, \PDF, and \SVG output, the user is responsible for ensuring that the correct fonts are provided and for formatting the text. +\pagebreak Many thanks to the people who continue to send comments, questions, and, occasionally, bug fixes. What began as a tool for my own use changed into a hobby that has persisted, thanks to your help and advice. @@ -3181,6 +3195,8 @@ repaired by using an \Mfour loop: {\tt for\_(1,5,1,`s\_box(A[m4x]); move')} +Note that the loop index variable {\tt m4x} is automatically defined. + \item \bflistitem{Quotes}{quotes} Single quote characters are stripped in pairs by \Mfour, so the string @@ -3201,6 +3217,11 @@ repaired by using an \Mfour loop: not optimal or where the quotes could be omitted, and there are rare exceptions such as the {\tt parallel\_} macro. + To keep track of paired single quotes, parentheses ``{\tt (}, {\tt)},'' + braces ``\lbr, \rbr,'' and brackets ``{\tt [}, {\tt ]},'' use an editor + that highlights these pairs. For example, the vim editor highlights + single quotes with the command \verb|:set mps+=`:'|. + \item \bflistitem{Dollar signs}{dollarsigns} The $i$-th argument of an \Mfour macro is {\tt \$}$i,$ where $i$ is diff --git a/graphics/circuit_macros/doc/defines.tex b/graphics/circuit_macros/doc/defines.tex index cb3a1a5dae..fdc1f85c35 100644 --- a/graphics/circuit_macros/doc/defines.tex +++ b/graphics/circuit_macros/doc/defines.tex @@ -8,11 +8,11 @@ % \newbox\Defbox -\newcommand{\macx}[2]{% - \phantomsection\pdfbookmark[subsection]{#1}{#2}#1} +%\newcommand{\macx}[2]{% +% \phantomsection\pdfbookmark[subsection]{#1}{#2}#1} \newcommand{\macrodef}[5]{%\begin{samepage}% -\phantomsection\pdfbookmark[subsection]{#1}{#2}% +\phantomsection\pdfbookmark[subsubsection]{#1}{#2}% \setbox\Defbox=\hbox{\tt #1#3}% \ifdim\wd\Defbox>\textwidth% \setbox\Defbox=\hbox{\parbox{\textwidth}{\tt #1#3}}\fi @@ -22,12 +22,26 @@ \hbox to \libwid{#4\hfill}\parbox[t]{\rightwid}% {\raggedright #5}% % \end{samepage}% - \vspace{\parsep}\\} + \vspace{\parsep}\\}% \newcommand{\seesect}[1]{ (\SR{#1})} +\newcommand{\Letter}[1]{\noindent% + \pdfbookmark[subsection]{#1}{#1}% + \hskip-2em\hbox to 2em{#1\label{#1}\hfill}\relax}% + +\newcommand{\LR}[1]{\hyperref[#1]{{#1}}\hskip1em} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + \vspace{\abovedisplayskip} \noindent +\LR{A} \LR{B} \LR{C} \LR{D} \LR{E} \LR{F} \LR{G} \LR{H} \LR{I} \LR{J} +\LR{K} \LR{L} \LR{M} \LR{N} \LR{O} \LR{P} +\LR{R} \LR{S} \LR{T} \LR{U} \LR{V} \LR{W} \LR{X} +\\ + +\Letter{A}% \macrodef{above\_}{above_}{} {gen} {string position above relative to current direction} @@ -39,8 +53,8 @@ {cct} {draw an AC symbol ( 1-cycle sine wave); If arg 4 contains A, two arcs are drawn. The current drawing direction is default, otherwise Up, Down, - Left, Right, or at {\sl degrees} slant; e.g., - {\tt ebox; $\lbrace$ ACsymbol(at last [],{,}dimen\_/8) $\rbrace$} } + Left, Right, or at {\sl degrees} slant; \seesect{Twoterminal:} e.g.,\\ + {\tt ebox; $\lbrace$ACsymbol(at last [],{,}dimen\_/8)$\rbrace$}} \macrodef{adc}{adc}{({\sl width,height,nIn,nN,nOut,nS})} {cct} {ADC with defined width, height, and number of inputs {\tt In$i$}, @@ -107,6 +121,12 @@ {\sl modifiers}) } {gen} {arc with acute angle (obtuse if radius is negative), drawn in a [ ] block} +\macrodef{ArcAngle}{ArcAngle}{({\sl position, position, position, radius, + modifiers}) } + {gen} + {Arc angle symbol drawn ccw at arg2. Arg4 is the radius from arg2; + arg5 contains line attributes, e.g., {\tt thick linethick/2}} + \macrodef{arcd}{arcd}{({\sl center}, {\sl radius},{\sl start degrees},{\sl end degrees}) } {gen} @@ -139,6 +159,29 @@ radius},[dashed|dotted])} {gen} {line toward position 1 with rounded corner toward position 2} +\macrodef{arrester}{arrester}{(\linespec,{\sl chars}, + {\sl len}[:arrowhead ht], + {\sl ht}[:arrowhead wid] )} + {cct} +{ + {\sl Arg2 chars:} + {\tt G=} spark gap (default), + {\tt g=} general (dots), + {\tt E=} gas discharge, + {\tt S=} box enclosure, + {\tt C=} carbon block, + {\tt A=} electrolytic cell, + {\tt H=} horn gap, + {\tt P=} protective gap, + {\tt s=} sphere gap, + {\tt F=} film element, + {\tt M=} multigap. + {\sl Modifiers in arg2:} + {\tt R=} right orientation, + {\tt L=} left orientation, + {\tt D=} 3-terminal element for {\tt S, E} + only, with terminals {\sl A, B, G} + \seesect{Twoterminal:}} \macrodef{arrowline}{arrowline}{(\linespec)} {cct} {line (dotted, dashed permissible) with centred arrowhead @@ -176,6 +219,7 @@ Setting {\tt offset=}{\sl value} displaces the drawn input list in order to disambiguate the input connections when {\tt L} is used} +\Letter{B}% \macrodef{b\_}{b_}{} {gen} {blue color value} @@ -276,6 +320,7 @@ {cct} {buzzer, {\sl In1} to {\sl In3} defined, C=curved \seesect{Composite:}} +\Letter{C}% \macrodef{c\_fet}{c_fet}{(\linespec,L|R,P)} {cct} {left or right, plain or negated pin simplified MOSFET} @@ -387,6 +432,7 @@ \macrodef{csdim\_}{csdim_}{} {cct} {controlled-source width} +\Letter{D}% \macrodef{d\_fet}{d_fet}{(\linespec,L|R,P,S,E|S)} {cct} {left or right, N or P depletion MOSFET, normal or simplified, @@ -473,6 +519,14 @@ \macrodef{dcosine3D}{dcosine3D}{({\sl i,x,y,z})} {3D} {extract i-th entry of triple x,y,z} +\macrodef{DCsymbol}{DCsymbol}{(at {\sl position, len, ht,} + U|D|L|R|{\sl degrees}) } + {cct} + {A DC symbol (a dashed line below a solid line). + The current drawing direction is default, otherwise Up, Down, + Left, Right, or at {\sl degrees} slant; e.g., + {\tt source(up\_ dimen\_); $\lbrace$ DCsymbol(at last [],,,R) $\rbrace$} + \seesect{Twoterminal:} } \macrodef{delay\_rad\_}{delay_rad_}{} {cct} {delay radius} @@ -510,7 +564,7 @@ {difference of two triples} \macrodef{dimen\_}{dimen_}{} {cct} - {size parameter for circuit elements \seesect{Circuitscaling:}} + {size parameter for scaling circuit element bodies \seesect{Circuitscaling:}} \macrodef{dimension\_}{dimension_}{(\linespec,{\sl offset},{\sl label}, D|H|W|{\sl blank width},{\sl tic offset},{\sl arrowhead })} {gen} @@ -653,6 +707,7 @@ B|CR|D|G|L|LE[R]|P[R]|S|Sh|T|V|v|w|Z|chars,% \macrodef{dturn}{dturn}{({\sl degrees ccw})} {darrow} {turn dline arg1 degrees left (ccw)} +\Letter{E}% \macrodef{E\_\_}{E__}{} {gen} {the constant $e$} @@ -692,14 +747,15 @@ B|CR|D|G|L|LE[R]|P[R]|S|Sh|T|V|v|w|Z|chars,% \macrodef{endshade}{endshade}{} {gen} {end gray shading, see {\tt beginshade}} -\macrodef{Equidist3}{Equidist3}{({\sl Pos1, Pos2, Pos3, Result})} +\macrodef{Equidist3}{Equidist3}{({\sl Pos1, Pos2, Pos3, Result, distance})} {gen} {Calculates location named {\sl Result} equidistant from the first three positions, i.e.\ the centre of the circle passing through the three - positions} + positions. If arg5 is nonblank, it is equated to the radius.} \macrodef{expe}{expe}{} {gen} {exponential, base $e$} +\Letter{F}% \macrodef{f\_box}{f_box}{({\sl boxspecs},{\sl text},{\sl expr1},$\cdots$)} {gen} {like {\tt s\_box} but the text is overlaid on a box of identical size. @@ -778,6 +834,7 @@ B|CR|D|G|L|LE[R]|P[R]|S|Sh|T|V|v|w|Z|chars,% {cct} {fuse symbol, type$=$ {\tt A|B|C|D|S|HB|HC|SB} or {\tt dA=D}\seesect{Twoterminal:}} +\Letter{G}% \macrodef{g\_}{g_}{} {gen} {green color value} @@ -809,10 +866,10 @@ B|CR|D|G|L|LE[R]|P[R]|S|Sh|T|V|v|w|Z|chars,% \macrodef{grid\_}{grid_}{({\sl x},{\sl y})} {log} {absolute grid location} -\macrodef{ground}{ground}{(at {\sl location}, T, N|F|S|L|P[A]|E, U|D|L|R|{\sl - degrees})} +\macrodef{ground}{ground}{(at {\sl location}, T|{\sl stem length}, + N|F|S|L|P[A]|E, U|D|L|R|{\sl degrees})} {cct} - { ground, without stem for nonblank 2nd arg; + { ground, without stem for 2nd arg = T; {\tt N}=normal, {\tt F}=frame, {\tt S}=signal, {\tt L}=low-noise, {\tt P}=protective, {\tt PA}=protective alternate, @@ -828,6 +885,7 @@ B|CR|D|G|L|LE[R]|P[R]|S|Sh|T|V|v|w|Z|chars,% {Gyrator two-port wrapper for {\tt nport}, {\tt N} omits pin dots; {\tt V} gives a vertical orientation \seesect{Composite:}} +\Letter{H}% \macrodef{H\_ht}{H_ht}{} {log} {hysteresis symbol dimension in {\tt L\_unit}s} @@ -867,6 +925,7 @@ n|e|s|w,{\sl length})} \macrodef{ht\_}{ht_}{} {gen} {height relative to current direction} +\Letter{I}% \macrodef{ifdpic}{ifdpic}{({\sl if true},{\sl if false})} {gen} {test if dpic has been specified as pic processor} @@ -942,6 +1001,7 @@ n|e|s|w,{\sl length})} along the line; {\tt P}= label only; {\tt N}=with {\tt NOT\_circle}; {\tt R}=circle to right of current direction } +\Letter{J}% \macrodef{j\_fet}{j_fet}{(\linespec,L|R,P,E)} {cct} {left or right, N or P JFET, without or with envelope @@ -952,10 +1012,12 @@ n|e|s|w,{\sl length})} one or more {\tt L[M][B]} for L and auxiliary contacts with make or break points; {\tt S[M][B]} for S and auxiliary contacts \seesect{Composite:}} +\Letter{K}% \macrodef{KelvinR}{KelvinR}{({\sl cycles},[R],{\sl cycle wid})} {cct} {IEEE resistor in a {\tt [ ]} block with Kelvin taps {\sl T1} and {\sl T2} \seesect{Composite:}} +\Letter{L}% \macrodef{L\_unit}{L_unit}{} {log} {logic-element grid size} @@ -1073,6 +1135,7 @@ n|e|s|w,{\sl length})} \macrodef{lthick}{lthick}{} {gen} {current line thickness in drawing units} +\Letter{M}% \macrodef{m4\_arrow}{m4_arrow}{(\linespec,{\sl ht},{\sl wid})} {gen} {arrow with adjustable head, filled when possible} @@ -1169,6 +1232,7 @@ n|e|s|w,{\sl length})} \macrodef{Mx\_pins}{Mx_pins}{} {log} {max number of gate inputs without wings} +\Letter{N}% \macrodef{n\_}{n_}{} {gen} {.n with respect to current direction} @@ -1254,6 +1318,7 @@ nw,nn,ne,ns,pin lgth,style, other commands})} Otherwise, arg1 can be a sequence of letters {\tt P|N} to define normal or negated inputs. \seesect{Logicgates:}} +\Letter{O}% \macrodef{opamp}{opamp}{(\linespec,{\sl label},{\sl label},{\sl size},{\sl chars}, other commands)} {cct} @@ -1283,6 +1348,7 @@ nw,nn,ne,ns,pin lgth,style, other commands})} \macrodef{OR\_rad}{OR_rad}{} {log} {radius of OR input face in {\tt L\_unit}s} +\Letter{P}% \macrodef{parallel\_}{parallel_}{(\char96{\sl elementspec}\char39,% \char96{\sl elementspec}\char39 $\ldots$)} {cct} @@ -1339,12 +1405,19 @@ nw,nn,ne,ns,pin lgth,style, other commands})} \macrodef{point\_}{point_}{({\sl angle})} {gen} {(radians) set direction cosines} +\macrodef{PerpTo}{PerpTo}{({\sl Pos1, Line, Point})} + {gen} + {{\sl Point} is the label for the point on {\sl Line} of the perpendicular + from {\sl Point} to {\sl Line}.} \macrodef{Point\_}{Point_}{({\sl integer})} {gen} {sets direction cosines in degrees \seesect{Placing:}} \macrodef{polar\_}{polar_}{({\sl x},{\sl y})} {gen} {rectangular-to polar conversion} +\macrodef{langle}{langle}{({\sl Start, End})} + {gen} + {Angle in radians from horizontal of the line from {\sl Start} to {\sl End}.} \macrodef{potentiometer}{potentiometer}{(\linespec,% {\sl cycles},{\sl fractional pos},{\sl length},$\cdots$)} {cct} @@ -1371,6 +1444,7 @@ nw,nn,ne,ns,pin lgth,style, other commands})} {cct} {pass transistor; {\tt L=} left orientation \seesect{Semiconductors:}} +\Letter{R}% \macrodef{r\_}{r_}{} {gen} {red color value} @@ -1450,9 +1524,12 @@ nw,nn,ne,ns,pin lgth,style, other commands})} {reverse polarity of 2-terminal element} \macrodef{rgbdraw}{rgbdraw}{({\sl color triple}, {\sl drawing commands})} {gen} - {color drawing for PSTricks, pgf, MetaPost, svg postprocessors; + {color drawing for PSTricks, pgf, MetaPost, SVG postprocessors; (color entries are 0 to 1 except for SVG entries which are 0 to 255), - see {\tt setrgb} \seesect{Semiconductors:}} + see {\tt setrgb} \seesect{Semiconductors:}. + Exceptionally, the color of + SVG arrows other than the default black has to be defined using + the {\tt outlined }{\sl string} and {\tt shaded }{\sl string} constructs.} \macrodef{rgbfill}{rgbfill}{({\sl color triple}, {\sl closed path})} {gen} {fill with arbitrary color (color entries are 0 to 1 except @@ -1470,6 +1547,11 @@ nw,nn,ne,ns,pin lgth,style, other commands})} \macrodef{right\_}{right_}{} {gen} {set current direction right \seesect{Placing:}} +\macrodef{RightAngle}{RightAngle}{({\sl Pos1, Pos2, Pos3, line len, + attributes})} + {gen} + {Draw a right-angle symbol at {\sl Pos2}, of size given by arg4. Arg5 = + line attributes, e.g., {\tt outlined "gray"}} \macrodef{rjust\_}{rjust_}{} {gen} {right justify with respect to current direction} @@ -1538,6 +1620,7 @@ nw,nn,ne,ns,pin lgth,style, other commands})} \macrodef{rvec\_}{rvec_}{({\sl x},{\sl y})} {gen} {location relative to current direction} +\Letter{S}% \macrodef{s\_}{s_}{} {gen} {.s with respect to current direction} @@ -1611,6 +1694,12 @@ nw,nn,ne,ns,pin lgth,style, other commands})} {gen} {define colour for lines and text, optionally named (default {\tt lcspec}); svg values are integers from 0 to 255\seesect{Semiconductors:}} +\macrodef{setkey\_}{setkey_}{({\sl string, key, default,}[N])} + {gen} + {Key-value definition. The string contains semicolon-separated terms + of the form {\sl key}{\tt =}{\sl value}. Then macro {\tt m4{\sl key}} + is defined using {\tt pushdef} to be {\tt ({\sl value})} but if arg4 is + nonbland, the parentheses are omitted.} \macrodef{setview}{setview}{({\sl azimuth degrees},{\sl elevation degrees})} {3D} {set projection viewpoint} @@ -1784,6 +1873,7 @@ nw,nn,ne,ns,pin lgth,style, other commands})} if arg4=B (button switch): arg3 = O{\tt|}C O=normally open, C=normally closed, if arg4=D: arg3 = same as for dswitch \seesect{Twoterminal:}} +\Letter{T}% \macrodef{ta\_xy}{ta_xy}{({\sl x, y})} {cct} {macro-internal coordinates adjusted for {\tt L|R}} @@ -1901,6 +1991,7 @@ nw,nn,ne,ns,pin lgth,style, other commands})} \macrodef{twopi\_}{twopi_}{} {gen} {$2\pi$} +\Letter{U}% \macrodef{ujt}{ujt}{(\linespec,R,P,E)} {cct} {unijunction transistor, right, P-channel, envelope @@ -1914,6 +2005,7 @@ nw,nn,ne,ns,pin lgth,style, other commands})} \macrodef{up\_}{up_}{} {gen} {set current direction up \seesect{Placing:}} +\Letter{V}% \macrodef{variable}{variable}{(`{\sl element}', {\tt [A|P|L|[u]N|[u]NN][C|S]},{\sl angle},{\sl length})} {cct} @@ -1961,6 +2053,7 @@ nw,nn,ne,ns,pin lgth,style, other commands})} {gen} {{\tt Vsum\_(A,B)} evaluates to {\tt A+B} with dpic, {\tt A+(B.x,B.y)} with gpic} +\Letter{W}% \macrodef{w\_}{w_}{} {gen} {.w with respect to current direction} @@ -1984,6 +2077,7 @@ nw,nn,ne,ns,pin lgth,style, other commands})} \macrodef{XOR\_off}{XOR_off}{} {log} {XOR and NXOR offset of input face} +\Letter{X}% \macrodef{xtal}{xtal}{(\linespec)} {cct} {quartz crystal\seesect{Twoterminal:}} diff --git a/graphics/circuit_macros/dpictools.pic b/graphics/circuit_macros/dpictools.pic index 8f39057417..008360f9a4 100644 --- a/graphics/circuit_macros/dpictools.pic +++ b/graphics/circuit_macros/dpictools.pic @@ -3,7 +3,7 @@ # m4 macro NeedDpicTools or the pic statement copy "HOMELIB_/dpictools.pic" # when HOMELIB_ is defined or, generically, copy "dpictools.pic" -# Circuit_macros Version 9.3, copyright (c) 2020 J. D. Aplevich under # +# Circuit_macros Version 9.4, copyright (c) 2020 J. D. Aplevich under # # the LaTeX Project Public Licence in file Licence.txt. The files of # # this distribution may be redistributed or modified provided that this # # copyright notice is included and provided that modifications are clearly # diff --git a/graphics/circuit_macros/examples/ASME_Y14-5.m4 b/graphics/circuit_macros/examples/ASME_Y14-5.m4 new file mode 100644 index 0000000000..fbcf8eb003 --- /dev/null +++ b/graphics/circuit_macros/examples/ASME_Y14-5.m4 @@ -0,0 +1,168 @@ +divert(-1) +# `datumarrow(linespec,wid,ht)' +define(`datumarrow',`line `$1' + M4_E: last line.end + datum_ht = ifelse(`$3',,`textht',`$3') + M4_P: vperp(last line,(datum_ht*2/sqrt(3))) + M4_X: datum_ht/lin_leng(last line) between M4_E and last line.start + {ifsvg(,`m4fshade(m4fill,')line from M4_E to M4_E+M4_P/2 dnl + then to M4_X then to M4_E-M4_P/2 then to M4_E ifsvg(`fill_(0)',`)')}') + +# `Y14_frame( arg1, arg2, ... ) + Each arg is a ;-separated sequence of 1 or more of + "string"[ wid val], + "(letter)", + or tolerance symbol. + The term "(letter)" expands to the circled letter. + The frame contains as many boxes as arguments.' + `Symbol definitions from ASME Y14.5 Appendix C' +define(`Y14_frameht',`textht*2') +define(`Y14_defaultwid',`textht*2') +# +define(`Y14_frame',`[ tmpthick = linethick; thicklines_ + right_; B:[ Y14_fram_($@) ] + box wid B.wid ht Y14_frameht at B + linethick = tmpthick ]') +define(`Y14_fram_',`ifelse(`$1',,, +`stacksplit_(`Y14',`$1',;) stackreverse_(`Y14') + Bx: [stackdo_(`Y14', + `[ifelse(index(Y14,`"('),0, + `circle diam textht*5/3 + patsubst(Y14,`"(\(.\))"',`"\1"') ht textht*0.8 at last circle', + index(Y14,`"'),0, + `Y14 ifinstr(Y14,`wid ',,`wid textht*2/3*(len(Y14)-2)')', + `Y14')] + move right max(last [].wid+textht/2,Y14_defaultwid) with .c at last []; ')] + ifelse(`$2',,,`{ line up Y14_frameht with .c at Here }') + Y14_fram_(shift($@))') ') + +# Each symbol definition has an abbreviated version +define(`Y14_straightness', +`line right textht*2 ') +define(`Y14_str_',`Y14_straightness($@)') + +define(`Y14_flatness', +`line right textht*3/4 then down textht left textht/2 \ + then left textht*3/2 then up textht right textht/2 \ + then right textht*3/4 ') +define(`Y14_fla_',`Y14_flatness($@)') + +define(`Y14_circularity',`circle diam textht*3/2 ') +define(`Y14_cir_',`Y14_circularity($@)') + +define(`Y14_cylindricity', +`circle diam textht + Y14_C: last circle + Y14_R: (Rect_(last circle.rad,-30)) + Y14_A: (Rect_(textht,60)) + line from Y14_C+Y14_R+Y14_A to Y14_C+Y14_R-Y14_A/2 + line from Y14_C-Y14_R-Y14_A to Y14_C-Y14_R+Y14_A/2 ') +define(`Y14_cyl_',`Y14_cylindricity($@)') + +define(`Y14_lineprofile',`arc from (textht,0) to (-textht,0) with .c at Here ') +define(`Y14_lin_',`Y14_lineprofile($@)') + +define(`Y14_surfaceprofile', +`arc from (textht,0) to (-textht,0) with .c at Here + line from last arc.start to last arc.end ') +define(`Y14_sur_',`Y14_surfaceprofile($@)') + +define(`Y14_perpendicularity', +`line from (-textht,0) to (textht,0) + line from (0,0) to (0,textht*3/2) ') +define(`Y14_per_',`Y14_perpendicularity($@)') + +define(`Y14_angularity', +`line from (textht*3/2,0) to (0,0) then to (textht*3/2,textht*sqrt(3)/2) ') +define(`Y14_ang_',`Y14_angularity($@)') + +define(`Y14_parallelism', +`line up textht*3/2*sqrt(3)/2 right textht*3/4 + move right textht*0.6 + line down textht*3/2*sqrt(3)/2 left textht*3/4 ') +define(`Y14_par_',`Y14_parallelism($@)') + +define(`Y14_symmetry', dnl obsolete! +`line from (-textht/2,0) to (textht/2,0) + line from (-textht/3,textht/4) to (textht/3,textht/4) + line from (-textht/3,-textht/4) to (textht/3,-textht/4) ') +define(`Y14_sym_',`Y14_symmetry($@)') + +define(`Y14_position', +`circle diam textht + line up textht*3/2 with .c at last circle + line right textht*3/2 with .c at last circle ') +define(`Y14_pos_',`Y14_position($@)') + +define(`Y14_concentricity', dnl obsolete! +`circle diam textht + circle diam textht/2 at last circle ') +define(`Y14_con_',`Y14_concentricity($@)') + +define(`Y14_circularrunout', +`arrow ht textht*0.8 wid textht*0.6 up textht*3/2 right textht*3/2 ') +define(`Y14_cir_',`Y14_circularrunout($@)') + +define(`Y14_totalrunout', +`arrow <-> ht textht*0.8 wid textht*0.6 \ + down textht*3/2 left textht*3/2 then right textht*1.1 \ + then up textht*3/2 right textht*3/2 ') +define(`Y14_tot_',`Y14_totalrunout($@)') + +define(`Y14_diameter', +`circle diam textht + line up textht*3/2 right textht*3/4 with .c at last circle') +define(`Y14_dia_',`Y14_diameter($@)') + +# The following are not Y14.5 but go well with them: + + `r_box(angle,pos,string) + Rotated text on a white background + (requires pstricks)' +define(`r_box', + `ifpstricks(`M4tmp: ifelse(`$2',,Here,`$2') + command sprintf("\rput{%g}(%g,%g){",`$1',crl(M4tmp.x),crl(M4tmp.y)) + f_box(`$3') at Orig + command "}%"')') +define(`crl',`int(`($1)'/scale*1000000)/1000000') + + `r_dimen(linespec,offset,label,tic offset,<->,pos) + dimension_ with rotated text on white background' +define(`r_dimen', + `M4tmp: dimension_(`$1',`$2',,,`$4',`$5') + r_box(rp_ang*rtod_,ifelse(`$6',,M4tmp+vec_(0,`$2'),`$6'),`$3')') + + `ctrline(linespec,cycle len) + Centerline' +define(`cdashl',0.1*scale) +define(`cgapl',0.03*scale) +define(`ctrline',`rpoint_(ifelse(`$1',,`to rvec_(linewid,0)',`$1')) + define(`m4h',ifelse(`$2',,1*scale,`$2'))dnl + m4n = int(rp_len/2/(m4h))*2+1 + for i=1 to m4n do { + line to rvec_(rp_len/m4n/2-cdashl/2-cgapl,0) + move to rvec_(cgapl,0); line to rvec_(cdashl,0); move to rvec_(cgapl,0) + line to rvec_(rp_len/m4n/2-cdashl/2-cgapl,0) } ') + + `ctrarcr(pos,radius,startang,endang,len) + Arc cr centerline' +define(`ctrarcr',`dnl + define(`m5h',ifelse(`$5',,1*scale,`$5'))dnl + rp_len = abs((`$2')*(`$4'-(`$3'))) + m5n = int(rp_len/2/(m5h))*2+1 + m5a = (rp_len/m5n/2-cdashl/2-cgapl)/(`$2') + m5s = cdashl/(`$2') + m5sa = `$3' + for m4irr=1 to m5n do { + arc from `$1'+(rect_(`$2',m5sa)) to `$1'+(rect_(`$2',m5sa+m5a)) \ + with .c at `$1' + m5sa = m5sa+m5a+cgapl/(`$2') + arc from `$1'+(rect_(`$2',m5sa)) to `$1'+(rect_(`$2',m5sa+m5s)) \ + with .c at `$1' + m5sa = m5sa+m5s+cgapl/(`$2') + arc from `$1'+(rect_(`$2',m5sa)) to `$1'+(rect_(`$2',m5sa+m5a)) \ + with .c at `$1' + m5sa = m5sa+m5a + } ') + +divert(0)dnl diff --git a/graphics/circuit_macros/examples/Antennas.m4 b/graphics/circuit_macros/examples/Antennas.m4 index 6053cd2e3f..a2bb3be5f0 100644 --- a/graphics/circuit_macros/examples/Antennas.m4 +++ b/graphics/circuit_macros/examples/Antennas.m4 @@ -31,9 +31,9 @@ sinclude(Circuit_macros.dim) s_box(T1) below rjust at A.T1 s_box(T2) below ljust at A.T2 s_box(`\tt (,{,}D)') at A.n above - A: antenna(at A.T+(elen_,0),,P) + A: antenna(at A.T+(elen_,0),dimen_*3/4,P) s_box(T) below at A.T - s_box(`\tt (,{,}P)') at A.n above + s_box(`\tt (,dimen\_*3/4,P)') at A.n above A: antenna(at A.T+(elen_,0),,F) s_box(T) below at A.T s_box(`\tt (,{,}F)') at A.n above diff --git a/graphics/circuit_macros/examples/Attention.m4 b/graphics/circuit_macros/examples/Attention.m4 new file mode 100644 index 0000000000..7f0b7127c7 --- /dev/null +++ b/graphics/circuit_macros/examples/Attention.m4 @@ -0,0 +1,41 @@ +.PS +# Attention.m4 +gen_init +scale = 2.54 +linethick = 0.2 + +define dot2 { (($1).x*($2).x + ($1).y*($2).y) } + + nlines = 128 + nr = 50 + innerrad = 1 + outerrad = 8 + diff = outerrad - innerrad +B: box wid outerrad*2 ht outerrad*2 outline "red" shaded "red" +C: circle rad outerrad at B + circle rad innerrad at C shaded "black" + P[0]: C+(innerrad,0) + t = 0 + for i=1 to nr do { + r = innerrad+i/nr*diff + t = t + i/nr*(-pi_/2)/nr + P[i]: C+(rect_(r,t)) + } + dth = twopi_/nlines + R: (cos(dth),-sin(dth)) + S: (sin(dth),cos(dth)) + for j = 0 to nlines-1 do { + for i=0 to nr do { + X: P[i]-C + Q[nr-i]: (dot2(R,X),dot2(S,X)) + C + } + shade(j%2, + fitcurve(P,nr) + line from P[nr] to Q[0] + fitcurve(Q,nr) + line from Q[nr] to P[0] + ) + for i=0 to nr do { P[i]: Q[nr-i] } + } + +.PE diff --git a/graphics/circuit_macros/examples/Autoencoder.m4 b/graphics/circuit_macros/examples/Autoencoder.m4 new file mode 100644 index 0000000000..92a81ac950 --- /dev/null +++ b/graphics/circuit_macros/examples/Autoencoder.m4 @@ -0,0 +1,82 @@ +.PS +# Masked_Autoencoder.m4 +gen_init +NeedDpicTools + + circlerad = 0.2 + circlesep = 0.5 + rowsep = 0.9 + arrowht = arrowht*0.8 + arrowwid = arrowwid*1.4 + linethick = 1 + +define plan { + m = 0 + for i=1 to 4 do { + for j=1 to ncircles[i] do { + exec sprintf("C[i,j]: circle thick 1.6 at Here \"\large\sf $%g\"",m+j) + if i>1 then { + if "$1"=="" then { + for k=1 to ncircles[i-1] do { arrow from C[i,j] to C[i-1,k] chop } } + } + if j!=ncircles[i] then { move right_ circlesep from C[i,j] } + } + m += ncircles[i] + case(i, + move to C[1,1]+(-circlesep/2,-rowsep), + move to C[2,1]+(0,-rowsep), + move to C[3,1]+(circlesep/2,-rowsep), ) + } + } + gridsiz = 0.78/4 +define grid { [ SW: 0,0 + for i=1 to $1 do { + move to (0,(0.5-i)*gridsiz) + exec sprintf("fv = $%g",2+i) + for j=1 to $2 do { fl = 1-(int(fv / 2^(j-1)) % 2) + box wid gridsiz ht gridsiz outlined "gray" shaded rgbstring(fl,fl,fl) } + } ]} +define cxt { + m = 1 + for i=2 to 4 do { + for j=1 to ncircles[i] do { + exec sprintf("narrows = $%g",m) + for k=1 to narrows do { + exec sprintf("cnum = $%g",m+k) + arrow from C[i,j] to C[i-1,cnum] chop + } + m += narrows+1 + } } } + + array(ncircles,3,4,4,3) + plan() + for j=1 to 3 do { + sprintf("$\hat{x}_%g$",j) at C[1,j].n above + sprintf("$x_%g$",j) at C[4,j].s+(0,-2bp__) below + } + "V" at 0.5 between C[2,1].w and C[1,1].w + "W$^2$" at 0.5 between C[3,1].w and C[2,1].w + "W$^1$" at 0.5 between C[3,1].w and C[4,1].w + +GV: grid(3,4,0,15,6) with .w at C[2,4]+(circlerad*2,rowsep/2) + "$=\hbox{M}^{\hbox{V}}$" at GV.e ljust +G2: grid(4,4,13,0,0,13) with .w at (GV.w,C[3,4]+(circlerad*2,rowsep/2)) + "$=\hbox{M}^{\hbox{V}^2}$" at G2.e ljust +G1: grid(4,3,1,5,1,1) with .w at (GV.w,C[4,3]+(circlerad*2,rowsep/2)) + "$=\hbox{M}^{\hbox{V}^1}$" at G1.e ljust + + move to (GV.x+3*circlesep,C[1,1].y) + plan(3,1,2,1,2,2,1,2,1,2,2,3,1,2) + for i=2 to 4 do { + rgbdraw(0.5,0.5,0.5, + cxt(2,1,3,0,0,2,1,3, 0,4,1,2,3,4,0,0, 0,4,1,2,3,4,0) ) + cxt(0,1,1,1,1,0, 2,2,3,0,2,2,3,2,2,3, 0,0,3,1,3,4) + } + for j=1 to 3 do { sprintf("$x_%g$",j) at C[4,j].s+(0,-2bp__) below } + arrow dotted from C[1,2].n up circlesep/2; "$p(x_2)$" above + "$p(x_3|x_2)$" at (C[1,3]+(circlesep/2,0),last "") above + arrow dotted from C[1,3] to last "".s chop circlerad chop textoffset + "$p(x_1|x_2,x_3)$" at (C[1,1]+(-circlesep/2,0),last "") above + arrow dotted from C[1,1] to last "".s chop circlerad chop textoffset + +.PE diff --git a/graphics/circuit_macros/examples/CctTable.m4 b/graphics/circuit_macros/examples/CctTable.m4 index f7e47d0758..443c398b46 100644 --- a/graphics/circuit_macros/examples/CctTable.m4 +++ b/graphics/circuit_macros/examples/CctTable.m4 @@ -85,6 +85,9 @@ vm = 0.28 } move down 0.25; right_ { {pvcell ; move;"`{\tt pvcell}'" ljust} + move right_ hm + {arrester ; move ;"`{\tt arrester}'" ljust} } + .PE diff --git a/graphics/circuit_macros/examples/Chuck.m4 b/graphics/circuit_macros/examples/Chuck.m4 index 152d4b87db..2e36626c5b 100644 --- a/graphics/circuit_macros/examples/Chuck.m4 +++ b/graphics/circuit_macros/examples/Chuck.m4 @@ -1,53 +1,28 @@ .PS -threeD_init s_init(Views) sinclude(tst.dim) -# # Chuck.m4 +threeD_init s_init(Views) sinclude(tst.dim) # +################################################################# divert(-1) - `Dimensioning for diagrams - dimension_(linespec,vert offset, - label,blank width,tic offset,<-|->,R)' -define(`dimension_',`rpoint_(`$1') ; { - define(`m4h',`(rp_len ifelse((`$4'),(),,`-($4)'))')dnl - ifelse((`$2'),(),,`if (`$2') != 0 then { - {move to rvec_(0, ifelse(`$5',,`sign($2)*3.6bp__',`$5')) - line to rvec_(0,`$2')} - {move to rvec_(rp_len,ifelse(`$5',,`sign($2)*3.6bp__',`$5')) - line to rvec_(0,`$2')} - move to rvec_(0,`$2') }') - if m4h > 2*arrowht then { - { line ifelse(`$6',,<-,index($6,<),0,<-) to rvec_(m4h/2,0) - ifelse((`$4'),(),,`move to rvec_(($4),0)') - line ifelse(`$6',,->,eval(index($6,>)>0),1,->) to rvec_(m4h/2,0) } - } else { - { arrow from rvec_(-arrowht*1.5,0) to Here - arrow from rvec_(rp_len+arrowht*1.5,0) to rvec_(rp_len,0) } - } - define(`m4txt',`ifelse(`$7',, - `ifelse(index(`$3',"),0,`$3',"`$3'")', - `ifdef(`pstricks_',`sprintf("\rput{%g}(0,0){`$3'}",rp_ang*rtod_)',`"$3"')')') - ifelse(`$3',,,`m4txt at rvec_(rp_len/2,0)') - }') -define(`rottxt', - `ifdef(`pstricks_',`sprintf("\rput{%g}(0,0){`$2'}",`$1')')') - `rotate(angle,at pos, objects at origin)' -define(`rotate', - `ifdef(`pstricks_',`M4tmp: "" ifelse(`$2',,Here,`$2') - sprintf("\rput{%g}(%g,%g){`$3'}",`$1',M4tmp.x/scale,M4tmp.y/scale)')') - `r_box(angle,pos,string)' -define(`crl',`int(`($1)'/scale*1000000)/1000000') + `r_box(angle,pos,string) + Rotated text on a white background + (requires pstricks)' define(`r_box', - `ifdef(`pstricks_',`M4tmp: ifelse(`$2',,Here,`$2') + `ifpstricks(`M4tmp: ifelse(`$2',,Here,`$2') command sprintf("\rput{%g}(%g,%g){",`$1',crl(M4tmp.x),crl(M4tmp.y)) - w_box(`$3') at Orig + f_box(`$3') at Orig command "}%"')') - `r_dimen(linespec,offset,label,tic offset,<->,pos)' +define(`crl',`int(`($1)'/scale*1000000)/1000000') + + `r_dimen(linespec,offset,label,tic offset,<->,pos) + dimension_ with rotated text on white background' define(`r_dimen', `M4tmp: dimension_(`$1',`$2',,,`$4',`$5') r_box(rp_ang*rtod_,ifelse(`$6',,M4tmp+vec_(0,`$2'),`$6'),`$3')') - `ctrline(linespec,len)' + `ctrline(linespec,len) + Centerline' define(`cdashl',0.1*scale) define(`cgapl',0.03*scale) define(`ctrline',`rpoint_(ifelse(`$1',,`to rvec_(linewid,0)',`$1')) @@ -58,7 +33,8 @@ define(`ctrline',`rpoint_(ifelse(`$1',,`to rvec_(linewid,0)',`$1')) move to rvec_(cgapl,0); line to rvec_(cdashl,0); move to rvec_(cgapl,0) line thick dimensionth to rvec_(rp_len/m4n/2-cdashl/2-cgapl,0) } ') - `ctrarcr(pos,radius,startang,endang,len)' + `ctrarcr(pos,radius,startang,endang,len) + Arc cr centerline' define(`ctrarcr',`dnl define(`m5h',ifelse(`$5',,1*scale,`$5'))dnl rp_len = abs((`$2')*(`$4'-(`$3'))) @@ -79,6 +55,7 @@ define(`ctrarcr',`dnl } ') divert(0)dnl +################################################################# scale = 25.4*2 tic = 3.6bp__ @@ -90,9 +67,9 @@ command "{\sf" #include(Lettering.m4) #Letter_init -define(`visible',`linethick_(visibleth)') -define(`hidden',`linethick_(hiddenth)') -define(`dimension',`linethick_(dimensionth) +define(`visible_thick',`linethick_(visibleth)') +define(`hidden_thick',`linethick_(hiddenth)') +define(`dimension_thick',`linethick_(dimensionth) arrowwid = 1.5*arrowwid; arrowht = 1.5*arrowht; ') d1 = 230 @@ -104,7 +81,7 @@ d3 = 140 hiddenth = dimensionth Orig: Here -visible +visible_thick D3: circle diam d3 at Orig D2: circle diam d2 at Orig @@ -115,42 +92,32 @@ visible X1: rect_(rr,thet) P1: rect_(rr+r,thet) -dimension +dimension_thick cross(at (P1.x,-P1.y)) cross(at (-P1.x,P1.y)) # Top outer visible line -visible -# arc ccw from (-P1.x,h) to (-X1.x,X1.y) rad r with .c at (-P1.x,P1.y) - arcs = atan2(P1.x-X1.x,P1.y-X1.y) - n = 0 - nn = 8 - for i = 0 to nn do {P[n]:(-P1.x,P1.y)+(rect_(r,-twopi_/4+i/nn*arcs)); n=n+1} - for i = 1 to nn do {P[n]:Orig+(rect_(rr,pi_-thet-i/nn/2*(pi_-2*thet))); n=n+1} - n = n-1 - for i = 1 to n do { P[n+i]:(-P[n-i].x,P[n-i].y) } - fitcurve(P,2*n) -# top arc -# arc cw to X1 rad rr with .c at Orig -# arc ccw from X1 to (P1.x,h) rad 4 with .c at P1 +visible_thick +# top arcs + arc ccw from (-P1.x,h) to (-X1.x,X1.y) with .c at (-P1.x,P1.y) + arc cw to X1 with .c at Orig + arc ccw from X1 to (P1.x,h) with .c at P1 # right end line from (P1.x,h) to (305/2,h) then to (305/2,32/2) then left 40-3 arc ccw rad 3 line down 32-2*3 arc ccw rad 3 -dimension { +dimension_thick { r_dimen(up 32 with .c at (305/2-5,0),0,32) arrow <- up 8 right 8 then right 4 from last arc.sw "3$\,$R" ljust r_dimen(up h*2 at (305/2,0),-10,110) -}; visible +}; visible_thick line right 40-3 then to (305/2,-h) then to (P1.x,-h) -# arc ccw to (X1.x,-X1.y) rad r with .c at P1.x,-P1.y -# bottom arc - for i = 0 to 2*n do { P[i]: (-P[2*n-i].x,-P[i].y) } - fitcurve(P,2*n) -# arc cw to (-X1.x,-X1.y) rad rr with .c at Orig -# arc ccw to (-P1.x,-h) rad r with .c at (-P1.x,-P1.y) +# bottom arcs + arc ccw to (X1.x,-X1.y) with .c at P1.x,-P1.y + arc cw to (-X1.x,-X1.y) with .c at Orig + arc ccw to (-P1.x,-h) with .c at (-P1.x,-P1.y) # left end line from (-P1.x,-h) to (-305/2,-h) then to (-305/2,-25/2) then right 25 down; arc ccw rad 3 @@ -163,7 +130,7 @@ dimension { arc ccw rad 3 line to (-305/2,25/2) then to (-305/2,h) then to (-P1.x,h) -dimension +dimension_thick # centre ctrline(right 305-30 with .c at Orig,60) ctrline(up d1+10 with .c at Orig,) @@ -172,7 +139,7 @@ dimension Q: line invis from BX.n to BX.s; R: line invis from BX.se up 10 left 10 X: Intersect_(Q,R) line <-> from BX.se to X then to (X.x,-X.y) then to BX.nw - r_box(90,BX,`3$\,$R') + r_box(90,BX,```3$\,$R''') # Drill centres D[1]: 35,sqrt(85^2-35^2) @@ -185,41 +152,42 @@ dimension ctrline(from D[2] to D[4] chop 15) ctrline(to rvec_(2*15,0)) ctrline(from D[2]+vec_(-15,0) to D[2]+vec_(15,0)) -visible +visible_thick for i=1 to 4 do { circle diam 16 at D[i] for j = 0 to 7 do { arcr(D[i],23/2,j/8*twopi_,(j+3/4)/8*twopi_) ccw } } -hidden +hidden_thick for s=-1 to 1 by 2 do { - line dashed from (-305/2,s*h) to (305/2,s*h) - line dashed from (-305/2,s*30.6) to (305/2,s*30.6) - line dashed from (-305/2,s*21.1) to (305/2,s*21.1) - line dashed from (-305/2+25+2,s*21.1) to (305/2,s*21.1) - line dashed dashwid/2 from (-305/2+25,s*25/2) down -s*(40/2-25/2-2); - if s<0 then { arc dashed dashwid/4 ccw rad 2 } else { up; arc dashed dashwid/4 cw rad 2 } - line dashed to ((305/2,0),Here) - for k = -1 to 1 by 2 do { - move to (k*305/2,s*(30.6+10)) - { dashline(from Here+(0,s*9.5/2) right -k*16,,dashwid/2) - dashline(right -k*9.5/2/2 up -s*9.5/2,,dashwid/3) - dashline(left -k*9.5/2/2 up -s*9.5/2,,dashwid/3) - dashline(left -k*16,,dashwid/2) - dashline(from Here+(-k*16,0) up s*9.5,,dashwid/2.5) } - { dashline(from Here+(0,s*11/2) right -k*36.5,,dashwid/2) - dashline(right -k*11/2/2 up -s*11/2,,dashwid/3) - dashline(left -k*11/2/2 up -s*11/2,,dashwid/3) - dashline(left -k*36.5,,dashwid/2) - dashline(from Here+(-k*36.5,0) up s*11,,dashwid/2.5) } - { dashline(from Here+(0,s*13/2) right -k*32,,dashwid/2) - dashline(down s*13,,dashwid/2) - dashline(left -k*32,,dashwid/2) } - ctrline(right -k*20 chop -3 chop 0); ctrline(right -k*20 chop 0 chop -3) + line dashed from (-305/2,s*h) to (305/2,s*h) + line dashed from (-305/2,s*30.6) to (305/2,s*30.6) + line dashed from (-305/2,s*21.1) to (305/2,s*21.1) + line dashed from (-305/2+25+2,s*21.1) to (305/2,s*21.1) + line dashed dashwid/2 from (-305/2+25,s*25/2) down -s*(40/2-25/2-2); + if s<0 then { arc dashed dashwid/4 ccw rad 2 } \ + else { up; arc dashed dashwid/4 cw rad 2 } + line dashed to ((305/2,0),Here) + for k = -1 to 1 by 2 do { + move to (k*305/2,s*(30.6+10)) + { dashline(from Here+(0,s*9.5/2) right -k*16,,dashwid/2) + dashline(right -k*9.5/2/2 up -s*9.5/2,,dashwid/3) + dashline(left -k*9.5/2/2 up -s*9.5/2,,dashwid/3) + dashline(left -k*16,,dashwid/2) + dashline(from Here+(-k*16,0) up s*9.5,,dashwid/2.5) } + { dashline(from Here+(0,s*11/2) right -k*36.5,,dashwid/2) + dashline(right -k*11/2/2 up -s*11/2,,dashwid/3) + dashline(left -k*11/2/2 up -s*11/2,,dashwid/3) + dashline(left -k*36.5,,dashwid/2) + dashline(from Here+(-k*36.5,0) up s*11,,dashwid/2.5) } + { dashline(from Here+(0,s*13/2) right -k*32,,dashwid/2) + dashline(down s*13,,dashwid/2) + dashline(left -k*32,,dashwid/2) } + ctrline(right -k*20 chop -3 chop 0); ctrline(right -k*20 chop 0 chop -3) + } } - } -dimension +dimension_thick # bottom dimension_(from (-305/2,-h) to (305/2,-h),-(rr*1.1-h),"305",20pt__) # outer radii @@ -233,7 +201,7 @@ dimension r_dimen(from (Rect_(d3/2,180-12)) to (Rect_(d3/2,-12)),,140,,,(Rect_(25,-12))) # bolt hole placement diameter - r_dimen(from Orig to (Rect_(85,-43)),,`85$\,$R',,->,(Rect_(20,-43))) + r_dimen(from Orig to (Rect_(85,-43)),,``85$\,$R'',,->,(Rect_(20,-43))) # left slot r_dimen(from (-305/2+6,-25/2) up 25,0,25) r_dimen(from (-305/2,-26) right 40,0,40) @@ -256,8 +224,8 @@ dimension # arrow <- down 30 left 30 from D[3] chop 16/2 chop 0 then left 5 # "16 DRILL 23 CBORE" rjust "4 HOLES" rjust - arrow <- from (-305/2,30.6+10+2) up 5 left 5 then up 13 - s_box(SEE (A)) with .sw at Here+(-5pt__,2pt__) +# arrow <- from (-305/2,30.6+10+2) up 5 left 5 then up 13 +# s_box(SEE (A)) with .sw at Here+(-5pt__,2pt__) command "}%" .PE diff --git a/graphics/circuit_macros/examples/Conn.m4 b/graphics/circuit_macros/examples/Conn.m4 index 204ad5d96a..1e5fd5781a 100644 --- a/graphics/circuit_macros/examples/Conn.m4 +++ b/graphics/circuit_macros/examples/Conn.m4 @@ -59,9 +59,9 @@ Y: [ B: [ tbox(V_2) { `"\tt tbox(V\_2)"' at last [].sw below ljust } - tbox(V_1,,,<) with .sw at last [].se+(0.75,0) + tbox(V_1,,,<) with .sw at last [].se+(1.25,0) { `"\tt tbox(V\_1,{,},<)"' at last [].s below } - tbox(V_1,,,<>) with .sw at last [].se+(0.75,0) + tbox(V_1,,,<>) with .sw at last [].se+(1.25,0) { `"\tt tbox(V\_1,{,},<>)"' at last [].s below } ] with .nw at T.sw+(0,-0.2) diff --git a/graphics/circuit_macros/examples/Connectors.m4 b/graphics/circuit_macros/examples/Connectors.m4 index 5c3207c17d..64ed3e6854 100644 --- a/graphics/circuit_macros/examples/Connectors.m4 +++ b/graphics/circuit_macros/examples/Connectors.m4 @@ -3,22 +3,26 @@ log_init include(ics.m4) + ifelse(ifpgf(T)`'ifpstricks(T)`'ifpsfrag(T),T,`command "{\small\sf"') # ArduinoUno -# "{\sf Arduino Uno Rev 3}" at last [].Connector.s below Ar: ArduinoLeonardo #with .sw at last [].se+(0.25,0) - "{\sf Arduino Leonardo}" at last [].Connector.s below RPI: RPi with .sw at last [].se+(0.25,0) - "{\sf Raspberry Pi 4 GPIO}" at last [].GPIO.s below HD: HDMI_micro with .nw at last [].ne+(0.25,0.5) - "\sf Micro" rjust at HD.Base.sw+(-2bp__,10bp__) "\sf HDMI" rjust S: USB_C_Socket with .sw at (HD.e.x+0.25,RPI.s.y) - "\sf USB-C Socket" at S.Base.s below - "\sf B12" at S.B12.end above ljust - "\sf B1" at S.B1.end above ljust - "\sf A1" at S.A1.end above rjust - "\sf A12" at S.A12.end above rjust + + ifelse(ifpgf(T)`'ifpstricks(T)`'ifpsfrag(T),T,`command "}"') + + "{\sf Arduino Leonardo}" at Ar.Connector.s below + "{\sf Raspberry Pi 4 GPIO}" at RPI.GPIO.s below + "\sf Micro" rjust at HD.Base.sw+(-2bp__,0) "\sf HDMI" rjust + + "\sf USB-C Socket" at S.Base.s below + "\sf B12" at S.B12.end above ljust + "\sf B1" at S.B1.end above ljust + "\sf A1" at S.A1.end above rjust + "\sf A12" at S.A12.end above rjust .PE diff --git a/graphics/circuit_macros/examples/Coxeter.m4 b/graphics/circuit_macros/examples/Coxeter.m4 new file mode 100644 index 0000000000..4d186f9dbe --- /dev/null +++ b/graphics/circuit_macros/examples/Coxeter.m4 @@ -0,0 +1,38 @@ +.PS +# Coxeter.m4 +darrow_init + + customlinethick = 1.5 + + linethick = customlinethick + define(`dotrad_',`(3/2*linethick pt__)') + + Orig: (0,0) + for i=0 to 4 do { P[i]: dot(at (i*linewid,0)) } + line from Orig to P[4] + P[-1]: dot(at (Rect_(linewid, 120))); line to Orig + P[-2]: dot(at (Rect_(linewid,-120))); line to Orig + + Pa: dot(at P[4]+(linewid,0)); "$a$" at last [].n above + arrow from P[4] to Pa chop linewid/4 + Pd: dot(at Pa+(linewid,0)); "$d$" at last [].w rjust + Pe: dot(at Pd+(linewid,0)); "$e$" at last [].n above + Pf: dot(at Pe+(linewid,0)); "$f$" at last [].n above + Pb: dot(at Pd+(Rect_(linewid,120))); "$b$" at last [].w rjust + Pc: dot(at Pd+(Rect_(linewid,-120))); "$c$" at last [].w rjust + line from Pb to Pd then to Pc + line from Pd to Pf + + define(`customarc', + `pushdef(`dfillcolor',`0.7,0.7,0.7') linethick_(0.4); dnl + Darc(`$1',linewid, (`$2')*dtor_, (`$3')*dtor_, + thick=linewid/6; wid=linewid*0.3; ht=linewid/6; ends=<->)dnl + linethick_(customlinethick); popdef(`dfillcolor')') + + customarc((linewid,-linewid/3), 25,155); "$d$" at (linewid,linewid*2/3) + customarc((2*linewid,-linewid/3), 25,155); "$e$" at (2*linewid,linewid*2/3) + customarc((3*linewid,-linewid/3), 25,155); "$f$" at (3*linewid,linewid*2/3) + customarc(Orig,130,230); "$a$" at (Rect_(linewid,180)) + customarc(Orig, 10,110); "$b$" at (Rect_(linewid, 60)) + customarc(Orig,-110,-10); "$c$" at (Rect_(linewid,-60)) +.PE diff --git a/graphics/circuit_macros/examples/Flow.m4 b/graphics/circuit_macros/examples/Flow.m4 index f4fa766f1a..f0f8a842f0 100644 --- a/graphics/circuit_macros/examples/Flow.m4 +++ b/graphics/circuit_macros/examples/Flow.m4 @@ -3,19 +3,41 @@ gen_init ifdef(`FlowchartDefs_',,`include(FlowchartDefs.m4)') -# Could use xcolor with option dvipsnames but define color here for portability: define(`Thistle',`rgbstring(0.85,0.75,0.85)')dnl define(`RubineRed',`rgbstring(0.81,0,0.35)')dnl define(`YellowGreen',`rgbstring(0.68,1,0.18)')dnl define(`SeaGreen',`rgbstring(0.13,0.70,0.67)')dnl define(`Goldenrod',`rgbstring(0.85,0.65,0.13)')dnl +define(`Beaublue',`rgbstring(0.74,0.83,0.9)')dnl +define(`Celadon',`rgbstring(0.67,0.88,0.69)')dnl linethick_(1.0) arrowwid = 0.05 arrowht = 0.1 - fillval = 0.8 - down - + fillval = 0.9 + maxpsht = 20 + +define(`shad',`shaded rgbstring(0.9,0.8,0.7)') +define(`Below',`with .nw at last [].sw+(0,-0.25)') +TL: Here +Simple: [ + Fbox("\tt F{}box",,shad) + Ftest("\tt F{}test",,shad) Below + Fdata("\tt F{}data") Below + Fprep("\tt F{}prep",) Below + Fkeying("\tt F{}keying") Below + Fkeyboard("\tt F{}keyboard") Below + Fdocument("\tt F{}document",,shaded rgbstring(0.9,0.8,0.7)) Below + Fdelay("\tt F{}delay",,shaded Beaublue) Below + Fdisplay("\tt F{}display",,shaded Celadon) Below + Fstored("\tt F{}stored",,shaded Thistle) Below + Fconnect(,,shaded Thistle) Below + Fconnect("45",wid boxwid ht boxht:45,shaded Thistle) \ + with .w at last [].e+(boxht/8,0) + "\tt F{}connect" at last [].nw + (0,boxht/6) + ] with .nw at TL+(0.1,0); move from Simple.nw to TL +#showbox_ +Complex: [ Case: Fcase(, "Test 1",[Fbox("Task 1",, shaded Thistle); W:last [].W; N:last [].N arrow down linewid/3 from last [].S @@ -28,35 +50,32 @@ Case: Fcase(, "\sl .N" at Case.N rjust above; "\sl .S" at Case.S rjust below "\sl .E" at Case.E ljust; "\sl .W" at Case.W rjust - "\sl Case statement" below at Case.s+(0,-0.2) - move to Case.nw+(-12bp__,10bp__) + "\tt F{}case" below at Case.s #+(0,-0.1) Whiledo: Fwhiledo("$i < n$",,,Fbox("Task"),"T" above ljust at Test.E) \ with .nw at Case.ne+(0.25,0) "\sl .N" at Whiledo.N rjust; "\sl .S" at Whiledo.S rjust below "\sl .E" at Whiledo.E ljust; "\sl .W" at Whiledo.W rjust - "\sl While-do" below at Whiledo.s+(0,-0.2) + "\tt F{}whiledo" below at Whiledo.s Repeatuntil: Frepeatuntil("$n \geq 5$",,,Fbox("Task"), - "T" at Test.E above ljust) with .nw at Whiledo.sw + (0.25,-1) + "T" at Test.E above ljust) with .nw at Whiledo.sw + (0.25,-0.5) "\sl .N" at Repeatuntil.N rjust above; "\sl .S" at Repeatuntil.S rjust below "\sl .E" at Repeatuntil.E ljust; "\sl .W" at Repeatuntil.W rjust - "\sl Repeat-until" below at Repeatuntil.s+(0,-0.2) + "\tt F{}repeatuntil" below at Repeatuntil.se +(-0.0,0.2) Ifthenelse: Fifthenelse("$A 0 then { d = Box.wid/2-sqrt(hsq) } else { d = 0 } + W: Box.w; NW: Box.nw+(d,0); N: Box.n; NE: Box.ne-(d,0) + E: Box.e; SE: Box.se-(d,0); S: Box.s; SW: Box.sw+(d,0) + if hsq >= 0 then { x = 0 } else { x = sqrt(-hsq) } + box wid NE.x-NW.x ht N.y-S.y `$3' invis at Box + arc from SE to NE with .c at Box - (x,0) `$3'; round(,,`$3') + line to NW `$3'; round(,,`$3') + arc to SW with .c at Box + (x,0) `$3'; round(,,`$3') + line to SE `$3'; round(,,`$3') + ifelse(`$1',,,`$1' at Box) + `$4']') + + `If-then Ftest( "text", wid expr ht expr, attributes )' define(`Ftest',`[boxwid = fboxwid*0.8; boxht = fboxht*1.4 Box: box ifelse(`$2',,,`$2') invis N: Box.n; S: Box.s; E: Box.e; W: Box.w - line from 0.5 between last box.n and last box.e \ - to last box.e then to last box.s then to last box.w then to last box.n \ - then to 0.5 between last box.n and last box.e \ + line from 0.5 between last box.n and last box.e to last box.e to last box.s \ + to last box.w to last box.n to 0.5 between last box.n and last box.e \ ifelse(`$3',,`fill_(fillval)',`$3') ifelse(`$1',,,`$1' at Box) `$4']') - `case statement - Fcase(wid expr ht expr, - "Test string 1",task, ..., - "Test string n",task)' - `arg1 adjusts the size of the tests - A task is a flow subchart with internal names .E and .S defined - The test blocks are labeled Test1, Test2, ... and the tasks are - labeled Task1, Task2, ... ' + `Fcase: case statement + Fcase(wid expr ht expr, + "Test string 1"[:attributes],task, ..., + "Test string n"[:attributes],task )' + `arg1 adjusts the size of the tests + The optional attributes for each string apply + to the Ftest containing the string. + The Ftest blocks are labeled Test1, Test2, ... + A task is a flow subchart with internal + names .E and .S defined. The tasks are + labeled Task1, Task2, ... ' define(`Fcase',`[ down; S: Here; sx = S.x Fcaseloop_(1,$@) ifelse(`$2',,`E:S; W:S; N:S', @@ -66,7 +189,8 @@ define(`Fcase',`[ down; S: Here; sx = S.x arrow from E to (E,S) then to S ]') define(`Fcaseloop_',`ifelse(`$3',,, - `Test`$1': Ftest(`$3',`$2') with .N at S + `Test`$1': Ftest(patsubst(`$3',":.*,"),`$2', + ifinstr(`$3',":,`patsubst(`$3',.*":,)')) with .N at S Task`$1': `$4' with .nw at Test`$1'.E+(linewid/2,min(Test`$1'.ht,fboxht)/2) arrow right linewid/4 from Test`$1'.E \ then down Test`$1'.E.y-Task`$1'.W.y then to Task`$1'.W @@ -76,11 +200,12 @@ define(`Fcase',`[ down; S: Here; sx = S.x Fcaseloop_(incr($1),`$2',shift(shift(shift(shift($@)))))')') define(`Fcasearrow_',`ifelse(`$3',,, `arrow from Task`$1'.E to (E,Task`$1'.E) - Fcasearrow_(incr($1),`$2',shift(shift(shift(shift($@)))))')') + Fcasearrow_(incr($1),,shift(shift(shift(shift($@)))))')') - `while statement with explicit test - Fwhiledo("test text", wid x ht y, attributes, task spec ) - The task structure is given label Task ' + `while statement with explicit test + Fwhiledo("test text", wid x ht y, + attributes, task spec ) + The task structure is given label Task ' define(`Fwhiledo',`[ down Test: Ftest(`$1',`$2',`$3') arrow right linewid/2 from Test.E @@ -92,24 +217,26 @@ define(`Fwhiledo',`[ down arrow to Test.n `$5']') - `repeat statement with explicit test - Frepeatuntil("test",wid x ht y,attributes, task spec ) - The task structure is given label Task ' + `repeat statement with explicit test + Frepeatuntil("test",wid x ht y, + attributes, task spec ) + The task structure is given label Task ' define(`Frepeatuntil',`[ N: Here Task: ifelse(`$4',,Here,`$4' with .N at N) W: Task.W - arrow down linewid/3 + arrow from Task.S down linewid/3 Test: Ftest(`$1',`$2',`$3') E: Task.E+(linewid/2+max(0,Test.e.x-Task.e.x),0) arrow from Test.e to (E,Test) then to E then to Task.E S: Test.S `$5']') - `if-then-else - Fifthenelse( "test", wid x ht y, attributes, - left tasks, right tasks) - The left task structure is given label Ltask and the right - task structure is given label Rtask ' + `if-then-else + Fifthenelse( "test", wid x ht y, attributes, + left tasks, right tasks) + The left task structure is given label + Ltask and the right task structure is + given label Rtask ' define(`Fifthenelse',`[ Test: Ftest(`$1',`$2',`$3') N: Test.N Ltask: ifelse(`$4',,`Test.S; W:Test.W; LS:Ltask', diff --git a/graphics/circuit_macros/examples/Geometry.m4 b/graphics/circuit_macros/examples/Geometry.m4 new file mode 100644 index 0000000000..ae0a661012 --- /dev/null +++ b/graphics/circuit_macros/examples/Geometry.m4 @@ -0,0 +1,46 @@ +.PS +# Geometry.m4 +gen_init + scale = 5/4 + + A: Here; "A" at A above + B: A+(-1,-3.5); "B" at B below rjust + C: B+(4.6,0); "C" at C below ljust + AB: line from A to B + BC: line from B to C + CA: line from C to A + + PerpTo(A,BC,L); "L" at L below + AL: line from A to L; RightAngle(A,L,C) + + angleLAC = atan2(C.x-L.x,A.y-L.y) + S: move from A to (sin(angleLAC/2),-cos(angleLAC/2)) + AW: line from A to Intersect_(S,BC) + W: Here; "W" at W below rjust + + PerpTo(C,AB,N); "N" at N above rjust + CN: line from C to N; RightAngle(C,N,B) + + PerpTo(B,CA,M); "M" at M above + CM: line from B to M; RightAngle(B,M,C) + + H: Intersect_(CN,AL); "H" at H +(4bp__,10bp__) + + thinlines_ + Equidist3(B,L,N,CC1,c1rad); C1: circle rad c1rad at CC1 + Equidist3(B,W,N,CC2,c2rad); C2: circle rad c2rad at CC2 + Equidist3(B,C,N,CC3,c3rad); C3: circle rad c3rad at CC3 + Equidist3(W,C,M,CC4,c4rad); C4: circle rad c4rad at CC4 + thicklines_ + + Z: LCintersect(AW,CC2,C2.rad); "Z" at Z+(-5bp__,-5bp__) + HZ: move from H to Z + Y: LCintersect(HZ,CC4,C4.rad,R); "Y" at Y above + X: LCintersect(HZ,CC2,C2.rad); "X" at X above rjust + + Loopover_(`P',`dot(at P)',X,Y,Z) + + line dashed from X to Y chop -linewid/2 + RightAngle(A,Z,Y) + +.PE diff --git a/graphics/circuit_macros/examples/Grounds.m4 b/graphics/circuit_macros/examples/Grounds.m4 index e93fadf33c..84427ac8dc 100644 --- a/graphics/circuit_macros/examples/Grounds.m4 +++ b/graphics/circuit_macros/examples/Grounds.m4 @@ -1,5 +1,5 @@ .PS -# `Grounds.m4' +# Grounds.m4 cct_init sep = 0.65 @@ -22,7 +22,7 @@ D: B+(0,11bp__) "{\tt (,{,}E)}" at (GE,D)} -GS: ground(,,S) +GS: ground(,dimen_/2,S) move right sep GS90: [ground(,,S,90) ] with .n at Here move right sep from GS90.n @@ -36,7 +36,7 @@ GPA: ground(,T,PA) C: Here+(0,-0.5) E: C+(0,11bp__) - "{\tt (,{,}S)}" at (GS,C) + "{\tt (,dimen\_/2,S)}" at (GS,C) "{\tt (,{,}S,90)}" at (GS90,E) "{\tt (,{,}Q)}" at (GQ,C) "{\tt (,{,}L)}" at (GL,E) diff --git a/graphics/circuit_macros/examples/Heathkit.m4 b/graphics/circuit_macros/examples/Heathkit.m4 index 8d3ec5ad00..4127c8287e 100644 --- a/graphics/circuit_macros/examples/Heathkit.m4 +++ b/graphics/circuit_macros/examples/Heathkit.m4 @@ -5,9 +5,13 @@ cct_init maxpswid = 11 maxpsht = 8.5 -# Set small text size - iflatex(`ifpsfrag(`textht = 7.5bp__; textoffset = 0.5bp__', - `latexcommand({\tiny\sf)') ') +# Set small text size: tikz-pgf changes +# text offset for globally-defined tiny font +# so we define tsf() to set size locally + iflatex(`ifpsfrag(`define(`tsf',"`$1'") dnl + textht = 7.5bp__; textoffset = 0.5bp__', + `define(`tsf',`"\tiny\sf `$1'"')')', + `define(`tsf',"`$1'")') # Grid parameters picwid = 8.5 @@ -52,32 +56,32 @@ ifdpic(` # Circuit board Board: box dashed thick 2 wid 58*g ht 55*g with .se at L1.end+(-7*g,-2*g) P: box invis wid 12*g ht 4*g with .s at Board.sw+(26*g,0) - { "POWER SUPPLY" ljust "CIRCUIT BOARD" ljust at P.w+(g,0) } + { tsf(POWER SUPPLY) ljust tsf(CIRCUIT BOARD) ljust at P.w+(g,0) } line dashed thick 2 from P.sw to P.nw; line dashed thick 2 to P.ne line dashed thick 2 to P.se -define Pad { P`$1': box fill_(1) "$1" } +define Pad { P`$1': box fill_(1) tsf($1) } # Board connections on the right Pad(1) at (Board.e,L1.end) - line from P1.e to L1.end "RED" above + line from P1.e to L1.end tsf(RED) above Pad(2) at (Board.e,L1.start) - line from P2.e to L1.start "RED" above + line from P2.e to L1.start tsf(RED) above Pad(3) at (Board.e,L2.end) - GRN1: line left 4*g from L2.start "GRN" above ; ground - GRN2: line from P3.e to L2.end "GRN" above + GRN1: line left 4*g from L2.start tsf(GRN) above ; ground + GRN2: line from P3.e to L2.end tsf(GRN) above spline <-> from GRN2.end+(-g,0) up 2.5*g right 0.5*g then up 5*g left g \ then up 2.5*g right 0.5*g - box invis fill_(1) wid 3*g ht g "\SI{6}{VAC}" at L2.c-(2*g,0) + box invis fill_(1) wid 3*g ht g tsf(6 VAC) at L2.c-(2*g,0) Pad(4) at P3-(0,3*g) - line right_ 3*g from P4.e "BRN" above + line right_ 3*g from P4.e tsf(BRN) above arrow down_ 2*g ht arrowht*2/3 - "TO DIAL" "LAMPS" at Here+(0,-g)below + tsf(TO DIAL) tsf(LAMPS) at Here+(0,-g)below Pad(5) at (Board.e,L3.end) - line from P5.e to L3.end "BLU" above + line from P5.e to L3.end tsf(BLU) above Pad(7) at (Board.e,L3.start) - line from P7.e to L3.start "BLU" above + line from P7.e to L3.start tsf(BLU) above Pad(6) at 0.5 between P5 and P7 - line from P6.e to L3.c "BLU-YEL" above + line from P6.e to L3.c tsf(BLU-YEL) above # Power wiring, plug, switch define(`socket',`[ @@ -88,19 +92,19 @@ define(`socket',`[ line from Outer.e to R.e ] ') - BLK: line from L4.end to (int(L4.end.x/g+8)*g,L4.end.y) "BLK" below ; dot + BLK: line from L4.end to (int(L4.end.x/g+8)*g,L4.end.y) tsf(BLK) below ; dot b = lin_leng(BLK) - BLKYEL: line from L4.start right_ b "BLK-YEL" above ; dot - BLKGRN: line from L5.end right_ b "BLK-GRN" below ; dot - BLKRED: line from L5.start right_ b "BLK-RED" above ; dot + BLKYEL: line from L4.start right_ b tsf(BLK-YEL) above ; dot + BLKGRN: line from L5.end right_ b tsf(BLK-GRN) below ; dot + BLKRED: line from L5.start right_ b tsf(BLK-RED) above ; dot line right_ g; PL: dot line from BLKYEL.end right g then to Here+(0,-g) fuse(down_ 3*g,D) - rlabel(,"\SI{3}{\ampere} FUSE" rjust "SLOW BLOW") + rlabel(,tsf(3 A FUSE) rjust tsf(SLOW BLOW)) line to (Here.x,int(Here.y/g)*g-g); dot Sckt1: socket at Here+(5*g,0) - line from Sckt1.w to (PL,Sckt1); A: dot; "A" rjust - line from Sckt1.e right_ lin_leng(last line); B: dot; "B" ljust + line from Sckt1.w to (PL,Sckt1); A: dot; tsf(A) rjust + line from Sckt1.e right_ lin_leng(last line); B: dot; tsf(B) ljust Sckt2: socket at (Sckt1,P1+(0,6*g)) line from Sckt2.w to (A,Sckt2); dot line from Sckt2.e to (B,Sckt2); dot @@ -117,22 +121,22 @@ define(`plug',`[ w = dimen_*2/3; q = 0.25*w line from T2 to (T2,F.c)-(0,2*g) ]') PP: plug with .F.c at Sckt3+(0,-8*g) - "\SI{120}{VAC}" ljust "\SI{50/60}{\hertz}" ljust at PP.e + tsf(120 VAC) ljust tsf(50/60 Hz) ljust at PP.e define(`pwrswitch',`[ right; circlerad = 1.75*g/2 - C1: circle "1" - C4: circle "4" - C2: circle "2" with .n at C1.s+(0,-C1.rad) - C5: circle "5" - C3: circle "3" with .n at C2.s+(0,-C1.rad) - C6: circle "6" + C1: circle tsf(1) + C4: circle tsf(4) + C2: circle tsf(2) with .n at C1.s+(0,-C1.rad) + C5: circle tsf(5) + C3: circle tsf(3) with .n at C2.s+(0,-C1.rad) + C6: circle tsf(6) hatchbox(wid g ht C2.n.y-C3.s.y,0.05) with .w at 0.5 between C5.e and C6.e ]') Psw: pwrswitch with .C4.e at Sckt1+(0,-4*g) - "POWER" at Psw.w+(-2*g,0) rjust + tsf(POWER) at Psw.w+(-2*g,0) rjust arrow up Psw.ht/2 at Psw.e+(1.5*g,0) - "ON" above; "OFF" at last arrow.start below + tsf(ON) above; tsf(OFF) at last arrow.start below line from Psw.C1.w to (A,Psw.C1) then to A line from Psw.C2.w to (A,Psw.C2); contline to (Here,PP.T1) then to PP.T1 line from PP.T2 to (B,PP.T2) then to (B,L4.end) then to L4.end @@ -140,12 +144,12 @@ define(`pwrswitch',`[ right; circlerad = 1.75*g/2 # Bottom connections Pad(25) at Board.se+(-3*g,0) - R516: resistor(down_ 6*g from P25.s); rlabel(,"R516" rjust "22"); ground(,T) + R516: resistor(down_ 6*g from P25.s); rlabel(,tsf(R516) rjust tsf(22)); ground(,T) dot(at P25.s+(0,-g)); line right_ 5*g - reversed(`source',down_ 4*g,B); llabel(,"No 49" ljust "HI" ljust "TEMP") + reversed(`source',down_ 4*g,B); llabel(,tsf(No 49) ljust tsf(HI) ljust tsf(TEMP)) line to (P25,Here); dot t = linethick; linethick_(0.4) - arrow <- from P25.s+(0,-g/2) right_ 2*g up_ g/4; "BRN" ljust; linethick_(t) + arrow <- from P25.s+(0,-g/2) right_ 2*g up_ g/4; tsf(BRN) ljust; linethick_(t) Pad(24) at P25+(-4*g,0) line from P24.s to (P24,R516.end); ground(,T) @@ -153,28 +157,28 @@ define(`pwrswitch',`[ right; circlerad = 1.75*g/2 line from P23.s to (P23,R516.end); ground(,T) Pad(22) at Board.sw+(0,3*g) - R514: resistor(right_ 8*g from P22.e); llabel(,"R514") - rlabel(,"\SI{680}{\kilo{}}") + R514: resistor(right_ 8*g from P22.e); llabel(,tsf(R514)) + rlabel(,tsf(680 k)) dot; { ground } line to (P23,Here) then to P23.n # Diode bridge BE: dot(at (P24,L1.c)) d1h = lin_leng(L1)/2 - diode(left_ d1h up_ d1h); rlabel(,,"D508") + diode(left_ d1h up_ d1h); rlabel(,,tsf(D508)) BN: dot - diode(left_ d1h down_ d1h); rlabel("D506") + diode(left_ d1h down_ d1h); rlabel(tsf(D506)) BW: dot - diode(from BE left_ d1h down_ d1h); llabel(,,"D509") + diode(from BE left_ d1h down_ d1h); llabel(,,tsf(D509)) BS: dot - diode(left_ d1h up_ d1h); llabel(D507) - capacitor(down_ from BN to BS,C); llabel("C507",,\num{.22}) + diode(left_ d1h up_ d1h); llabel(tsf(D507)) + capacitor(down_ from BN to BS,C); llabel(tsf(C507),,tsf(.22)) line from BE to P24.n line from BN to P2.w line from BS to P1.w spline <-> from (BE.x+2*g,BS.y) \ up d1h/2 right g/2 then up d1h left g then up d1h/2 right g/2 - box invis fill_(1) ht 2*g wid 2*g "57" "VAC" at last spline.c + box invis fill_(1) ht 2*g wid 2*g tsf(57) tsf(VAC) at last spline.c # Left board connections Pad(21) at (Board.w,BW); line from P21.e to BW @@ -184,41 +188,40 @@ define(`pwrswitch',`[ right; circlerad = 1.75*g/2 # Transistor with circles define(`hbi_tr',`[ linewid = linewid*4/4.16 Q: bi_tr(`$1',`$2',`$3',E) - E: circle rad m4_xyU at 5/4 between Q.A1 and Q.E "E" - B: circle rad m4_xyU at 5/4 between Q.A1 and Q.B "B" - C: circle rad m4_xyU at 5/4 between Q.A1 and Q.C "C" + E: circle rad m4_xyU at 5/4 between Q.A1 and Q.E tsf(E) + B: circle rad m4_xyU at 5/4 between Q.A1 and Q.B tsf(B) + C: circle rad m4_xyU at 5/4 between Q.A1 and Q.C tsf(C) ]') # Interior circuits line from P6.w left 2*g; ground line from P5.w left 4*g; dot - { C504: capacitor(down_ 4*g,C); llabel("C504",,\num{.22}); ground(,T) } - D504: diode(left_ 5*g); rlabel(,"D504"); dot + { C504: capacitor(down_ 4*g,C); llabel(tsf(C504),,tsf(.22)); ground(,T) } + D504: diode(left_ 5*g); rlabel(,tsf(D504)); dot { C505: capacitor(down_ to (Here,C504.end),C+L) - rlabel("C505",\num{100},\SI{75}{\volt}); ground(,T) } + rlabel(tsf(C505),tsf(100),tsf(75 V)); ground(,T) } line right_ to (Here,P7); dot - { D503: reversed(`diode',to (D504.start,Here)); llabel(,"D503") + { D503: reversed(`diode',to (D504.start,Here)); llabel(,tsf(D503)) line to P7.w } d3 = lin_leng(L3) spline <-> from C504.start+(g/2,0) \ up d3/4 right g/4 then up d3*2/4 left g/2 then up d3/4 right g/4 - box invis fill_(1) ht g wid 4*g "\SI{100}{VAC}" \ - at last spline.c+(-g,0) + box invis fill_(1) ht g wid 4*g tsf(100 VAC) at last spline.c+(-g,0) down_ Q503: hbi_tr(,R,P) with .E at (C505,P3) line from Q503.C.e to (P25,Q503.C) then to P25.n line from Q503.B.s to (Q503.B.x,Q503.E.y-4*g) - R513: resistor(down_ 5*g); llabel(,"R513" ljust "1500"); ground(,T) + R513: resistor(down_ 5*g); llabel(,tsf(R513) ljust tsf(1500)); ground(,T) line from P19.e to (BW-(2*g,0),P19) then up Q503.E.y-P19.y+2*g - R511: resistor(right_ 5*g); llabel(,"R511"); rlabel(,\num{470}); + R511: resistor(right_ 5*g); llabel(,tsf(R511)); rlabel(,tsf(470)); line to (Q503.E,Here) then to Q503.E.n line from P20.e to (BW,P20) then up R513.end.y-P20.y resistor(up_ lin_leng(R513)) - rlabel(,"R512" ljust "5600" ljust "\SI{1}{\watt}") + rlabel(,tsf(R512) ljust tsf(5600) ljust tsf(1 W)) line to (Here,Q503.B) then to Q503.B.w - "Q503" "S2091 HI TEMP" "CONTROL" at Q503.E+(1.5*g,4*g) - D505: reversed(`diode',right_ from Q503.E.e to (C504,Q503.E)); llabel(,"D505") + tsf(Q503) tsf(S2091 HI TEMP) tsf(CONTROL) at Q503.E+(1.5*g,4*g) + D505: reversed(`diode',right_ from Q503.E.e to (C504,Q503.E)); llabel(,tsf(D505)) line to P3.w line from P4.w left_ 2*g then up P3.y-P4.y; dot @@ -226,23 +229,23 @@ define(`hbi_tr',`[ linewid = linewid*4/4.16 { Pad(8) at (Here,Board.n) } { line to P8.s } R505: resistor(down_ to (Here,P6)) - llabel(,"R505" ljust "\SI{12}{\kilo{}}"); dot + llabel(,tsf(R505) ljust tsf(12 k)); dot { C503: capacitor(down_ to (Here,C505.end),C+L) - rlabel(,"C503" rjust "100" rjust "\SI{70}{\volt}") + rlabel(,tsf(C503) rjust tsf(100) rjust tsf(70 V)) ground(,T) } right_ Q502: hbi_tr(,R) with .B at (R511.start,Here) line from Q502.C.e to R505.start line from Q502.B.e to R505.end R504: resistor(down_ from Q502.B.s to (Q502.B,C505.end)) - rlabel(,"R504" rjust "\SI{51}{\kilo{}}"); ground(,T) - "Q502" "TA7311" "REGULATOR" "CONTROL" at Q502.C+(-1*g,3.5*g) + rlabel(,tsf(R504) rjust tsf(51 k)); ground(,T) + tsf(Q502) tsf(TA7311) tsf(REGULATOR) tsf(CONTROL) at Q502.C+(-1*g,3.5*g) Pad(9) at (Q502.E,Board.n) line from Q502.E.n to P9.s Pad(10) at (Q502.B-(9*g,0),Board.n) R502: resistor(left_ from Q502.E.w to (P10,Q502.E)) - rlabel(,"R502"); llabel(,\num{150}); dot + rlabel(,tsf(R502)); llabel(,tsf(150)); dot Pad(11) at (Board.w,Q502.E) Pad(14) at P11+(0,2.5*g) @@ -257,7 +260,7 @@ define(`hbi_tr',`[ linewid = linewid*4/4.16 line from Q501.B.s to P9.n line from Q501.C.e to (P8,Q501.C) then to P8.n line from Q501.E.w to (P10,Q501.E) then to P10.n - "Q501" "2N3055" "REGULATOR" at Q501.n+(0,2*g) + tsf(Q501) tsf(2N3055) tsf(REGULATOR) at Q501.n+(0,2*g) line from P14.e to (P10,P14); dot Pad(17) at (Board.w,R511) @@ -270,84 +273,81 @@ define(`hbi_tr',`[ linewid = linewid*4/4.16 line from P17.e to Q504.E.w line from Q504.B.s to (Q504.B,R513.start) R508:resistor(down_ to (Here,R513.end)) - llabel(,"R508" ljust "680"); ground(,T) + llabel(,tsf(R508) ljust tsf(680)); ground(,T) dot(at (P10,P15)) { line to P10.s } { resistor(down_ 5*g) llabel(, - "R510" ljust "225" ljust "\SI{10}{\watt}" ljust "\SI{5}{\hbox{\%}}") + tsf(R510) ljust tsf(225) ljust tsf(10 W) ljust tsf(5 \%)) line to Q504.C.n } - R503:resistor(left_ 10*g); rlabel(,"R503") - { "290" "\SI{10}{\watt} \SI{5}{\hbox{\%}}" at last [].s+(0,-1.3*g) } + R503:resistor(left_ 10*g); rlabel(,tsf(R503)) + { tsf(290) tsf(10 W 5 \%) at last [].s+(0,-1.3*g) } dot line to (Here,Q504.B) - resistor(right_ to Q504.B.w); llabel(,"R507"); rlabel(,\num{100}) + resistor(right_ to Q504.B.w); llabel(,tsf(R507)); rlabel(,tsf(100)) line from P15.e to R503.end -# "Q504" "40409" "REGULATOR" at Q504.C+(3.5*g,3*g) - "Q504" "40409" "REGULATOR" at Q504.n+(-2*g,3*g) - resistor(left_ from R502.end to (R503.end,P11)); rlabel(,"R501") - {"390" "\SI{5}{\watt} \SI{5}{\hbox{\%}}" at last [].s+(0,-1.3*g)} + tsf(Q504) tsf(40409) tsf(REGULATOR) at Q504.n+(-2*g,3*g) + resistor(left_ from R502.end to (R503.end,P11)); rlabel(,tsf(R501)) + {tsf(390) tsf(5 W 5 \%) at last [].s+(0,-1.3*g)} line to P11.e - resistor(right_ from P16.e to (R514.end,P16)); llabel(,"R506") - rlabel(,\num{82}) + resistor(right_ from P16.e to (R514.end,P16)); llabel(,tsf(R506)) + rlabel(,tsf(82)) line down P16.y-P17.y; dot dot(at (R514.end,P11)) - C501: capacitor(down_ 6*g,C+); llabel("C501") - {"100" ljust "\SI{30}{\volt}" ljust at last [].s+(0,-g) below } + C501: capacitor(down_ 6*g,C+); llabel(tsf(C501)) + {tsf(100) ljust tsf(30 V) ljust at last [].s+(0,-g) below } ground(,T) dot(at (Here.x+4*g,P11.y)) - ZD501: reversed(`diode',down_ lin_leng(C501),Z); llabel("ZD501"); ground(,T) + ZD501: reversed(`diode',down_ lin_leng(C501),Z); llabel(tsf(ZD501)); ground(,T) dot(at (R514.end,P15)) - C502: capacitor(down_ 6*g,C+); llabel("C502") - {"100" ljust "\SI{30}{\volt}" ljust at last [].s+(0,-g) below } + C502: capacitor(down_ 6*g,C+); llabel(tsf(C502)) + {tsf(100) ljust tsf(30 V) ljust at last [].s+(0,-g) below } ground(,T) dot(at (Here.x+4*g,P15.y)) - ZD502: reversed(`diode',down_ lin_leng(C502),Z); llabel("ZD502"); ground(,T) + ZD502: reversed(`diode',down_ lin_leng(C502),Z); llabel(tsf(ZD502)); ground(,T) line from (C502,P17) to (C502,R508.start+(0,g)) - C506: capacitor(down_ to (Here,R508.end),C+); llabel("C506") - {"100" ljust "\SI{30}{\volt}" ljust at last [].s+(0,-g) below } + C506: capacitor(down_ to (Here,R508.end),C+); llabel(tsf(C506)) + {tsf(100) ljust tsf(30 V) ljust at last [].s+(0,-g) below } ground(,T) # Left-side boxes boxwid = 10*g boxht = 5*g - line left 3*g from P22.w "GRY" above - line left 3*g from P19.w "VIOL" above + line left 3*g from P22.w tsf(GRY) above + line left 3*g from P19.w tsf(VIOL) above box with .e at (Here,0.5 between P19 and P22) \ - "\shortstack[l]{TO SIGNAL\\ METER\\ CIRCUIT}" + tsf(\shortstack[l]{TO SIGNAL\\ METER\\ CIRCUIT}) - line left 8*g from P21.w "RED TO C508" above - line left 8*g from P20.w "VIOL" above + line left 8*g from P21.w tsf(RED TO C508) above + line left 8*g from P20.w tsf(VIOL) above - line left 3*g from P17.w "RED" above - line left 3*g from P18.w "WHT-" "RED" above + line left 3*g from P17.w tsf(RED) above + line left 3*g from P18.w tsf(WHT-) tsf(RED) above box with .e at (Here,0.5 between P17 and P18) \ - "\shortstack[l]{\SI{12.7}{\volt} SOURCE\\ TO MULTIPLEX}" + tsf(\shortstack[l]{12.7 V SOURCE\\ TO MULTIPLEX}) - line left 3*g from P16.w "WHT" above + line left 3*g from P16.w tsf(WHT) above box with .se at Here+(0,-g) \ - "\shortstack[l]{\SI{12}{\volt} SOURCE\\ TO FM TUNER\\ SOURCE SWITCH}" + tsf(\shortstack[l]{12 V SOURCE\\ TO FM TUNER\\ SOURCE SWITCH}) - line left 3*g from P15.w "ORG" above + line left 3*g from P15.w tsf(ORG) above box ht 3*g with .e at Here \ - "\shortstack[l]{\SI{15}{\volt} SOURCE\\ TO FM TUNER}" + tsf(\shortstack[l]{15 V SOURCE\\ TO FM TUNER}) - line left 3*g from P13.w "BLU" above - line left 3*g from P12.w " WHT-" "RED" - line left 3*g from P11.w "RED" above + line left 3*g from P13.w tsf(BLU) above + line left 3*g from P12.w tsf( WHT-) tsf(RED) + line left 3*g from P11.w tsf(RED) above box ht 6*g with .e at (Here,P12) \ - "\shortstack[l]{\SI{27}{\volt} SOURCE\\ TO CONTROL\\ PREAMP AND\\ PWR\ - AMPLIFIER}" + tsf(\shortstack[l]{27 V SOURCE\\ TO CONTROL\\ PREAMP AND\\ PWR\ + AMPLIFIER}) line left 3*g from P14.w - { "WHT-" "GRY-" "GRN" at last line.c+(0,2*g) } + { tsf(WHT-) tsf(GRY-) tsf(GRN) at last line.c+(0,2*g) } box with .se at Here+(0,-g) \ - "\shortstack[l]{\SI{50}{\volt} SOURCE\\ TO PHONO\\ PREAMP}" - - iflatex(`ifpsfrag(,`latexcommand(})')') + tsf(\shortstack[l]{50 V SOURCE\\ TO PHONO\\ PREAMP}) .PE diff --git a/graphics/circuit_macros/examples/Lyap.m4 b/graphics/circuit_macros/examples/Lyap.m4 new file mode 100644 index 0000000000..a1b40a8ad0 --- /dev/null +++ b/graphics/circuit_macros/examples/Lyap.m4 @@ -0,0 +1,159 @@ +.PS +# Lyap.m4 +threeD_init +scale = 1/1.2 + +viewaz = 30 +viewel = 18 +setview(viewaz,viewel) + +Origin: project(0,0,0) +# Components of view vector W +w1 = view3D1 +w2 = view3D2 +w3 = view3D3 +# Shape factor of the ellipse on the xy plane +q = Cos(40) + +# cost function +h = 0.5 +c = 1 +# The projected ellipse is (x/q)^2 + y^2 = c. +# The cost is v = c+h +define(`vs',``$2'*q*cos(`$1'),`$2'*sin(`$1')') +define(`vp',`vs(`$1',`$2'),0') +define(`vx',`sum3D(vp(`$1',`$2'),0,0,h+(`$2')^2)') + +# The gradient of v is (2x/q, 2y, -1) and the line +# separating front and back is W^T * grad(v) = 0 +# This line intersects the projected ellipse at +# x1,y1 and x2,y2 + ap = w2^2*q^2/w1^2+1 + bp = -w2*w3*q^2/w1^2 + cp = w3^2*q^2/4/w1^2-c + m = sqrt(bp^2-4*ap*cp) + y1 = (-bp+m)/ap/2 ; x1 = (w3-2*y1*w2)*q/2/w1 + y2 = (-bp-m)/ap/2 ; x2 = (w3-2*y2*w2)*q/2/w1 + t1 = atan2(y1,x1) + t2 = atan2(y2,x2) + theta1 = min(t1,t2) + theta2 = max(t1,t2) + +# tangent curve + nT = 11 + for i = 0 to nT do { + y = y1 + (y2-y1)/nT*i + theta = atan2(y,(w3-2*y*w2)*q/2/w1) + r = y/sin(theta) + T[i]: project(vx(theta,r)) + } + +# front and back parts of the top curve + n = 12 + for i = 0 to n do { + theta = theta1 + (theta2-theta1)/n*i + F[i]: project(vx(theta,c)) + Fp[i]: project(vp(theta,c)) + } + for i = 0 to n do { + theta = theta2 + (theta1+twopi_-theta2)/n*i + B[i]: project(vx(theta,c)) + Bp[i]: project(vp(theta,c)) + } + +# trajectory +rotations = 1.55 +nx = 7 +thetas = 75*dtor_ +thetaf = thetas - rotations*twopi_ +rx = c*0.9 +beta = exp(log(.5)/20) + +define(`defX',` rx = `$5' ; np = np-1 + ts = `$1' ; tf = `$2' + for i = 0 to `$3' do { + tha = ts + (tf-ts)*i/(`$3') + for thx = tha to -twopi_ by twopi_ do {} + `$4'[i]: project(vx(thx,rx)) + Xp[np]: project(vp(thx,rx)) + np = np+1 + rx = beta*rx + }') + +np = 1 +defX(thetas,theta1,nx,X1,rx) +defX(theta1,theta2-twopi_,nx,X2,rx/beta) +defX(theta2-twopi_,theta1-twopi_,nx,X3,rx/beta) +defX(theta1-twopi_,thetaf,5,X4,rx/beta) + +# First draw the inside back +# B is the back curve +# T is the outline +ifpstricks(` +\psset{gradbegin=lightgray,gradend=darkgray,gradlines=1000} +\pscustom[fillstyle=gradient,gradmidpoint=0.7]{ + fitcurve(B,n) + for i = 0 to nT do {TT[i]: T[nT-i] } + fitcurve(TT,nT) +\relax} ', +` fitcurve(B,n) + for i = 0 to nT do {TT[i]: T[nT-i] } + fitcurve(TT,nT) ') + +# Centre axis +thinlines_ +line from Origin to project(0,0,h) +# F[0] is the leftmost point of the front curve +line from F[0] to Fp[0] +# F[n] is the rightmost point of the front curve +line from F[n] to Fp[n] +thicklines_ + +# Now draw the outside front +ifpstricks(` +\newgray{gray1}{0.9}% +\newgray{gray2}{0.4}% +\psset{gradbegin=gray1,gradend=gray2,gradlines=1000} +\pscustom[linewidth=0pt,fillstyle=gradient,gradmidpoint=0.99]{ + fitcurve(F,n) + fitcurve(T,nT) +\relax} ', +` shade(1,fitcurve(F,n) + fitcurve(T,nT)) ') +# T is the limit curve of visibility + fitcurve(T,nT) +# F is the top front + fitcurve(F,n) +# Front and back projections of the top on xy + fitcurve(Fp,n) + fitcurve(Bp,n) + +# The trajectory in pieces, to allow dashed parts + fitcurve(X1,nx) + fitcurve(X2,nx,dotted 0.025) + fitcurve(X3,nx) + fitcurve(X4,3,dotted 0.015) + arca(from X4[4] to X4[2],ccw,0.3,<-) + +# Projected trajectory + np = np-2 + fitcurve(Xp,np-1) + arca(from Xp[np] to Xp[np-2],ccw,0.18,<-) + "$X(t)$" at Xp[np]-(2bp__,0) ljust + +# Axes and vertical lines +thinlines_ + line from X1[0] to Xp[0] +arrow from Origin to project(1.5,0,0) +"$x_1$" rjust below +arrow from Origin to project(0,1.5,0) +"$x_2$" ljust +line dashed from project(0,0,h) to F[n/2] chop 0 chop arrowht/4 +arrow from F[n/2] to project(0,0,2) +"$v(X)$" ljust + +"`${0}$'" at Origin+(0,1 pt__) below +"$\Omega$" at project(0,0.9*c,0) above +"`$v(X) = c$'" at (project(vp(100*dtor_,c)))+(2bp__,0) above ljust + +.PE diff --git a/graphics/circuit_macros/examples/MC.m4 b/graphics/circuit_macros/examples/MC.m4 index d76016c6e4..260a567aad 100644 --- a/graphics/circuit_macros/examples/MC.m4 +++ b/graphics/circuit_macros/examples/MC.m4 @@ -36,45 +36,46 @@ MC: [ ] Three: [ + gapht = 4*dimen_ dv = dimen_*0.6 - dh = dimen_ + dh = dimen_*5/6 define(`swfet',`mosfet(`$1',,dMEDSuBQPy)') define(`swpair',`[ up_ BS: swfet(up_ dimen_); { "`$1'" at BS.D-(0,2bp__) rjust } - L: line up_ 3*dimen_ from BS.D + L: line up_ gapht-2*dimen_ from BS.D TS: swfet(up_ dimen_) with .S at Here; { "`$2'" at TS.S+(0,2bp__) rjust } T: TS.D B: BS.S C: L.c ]') - V1: gap(up_ 5*dimen_,1,A); { "$V_1$" at last arrow.c rjust } - line right_ dh/2 + V1: gap(up_ gapht,1,A); { "$V_1$" at last arrow.c rjust } + line right_ dimen_/2 { C1: capacitor(down_ to (Here,V1.start)); llabel(C_1) } for_(1,3,1,` - line right_ dh ifelse(m4x,1,,*5/4) + line right_ dimen_ ifelse(m4x,1,,*5/4) {SP1`'m4x: swpair(S1`'eval(m4x+3),S1`'m4x) with .T at Here dot(at last [].C + (0,(2-m4x)*dh)) - line right_ (3-m4x)*dh*5/4 + line right_ (3-m4x)*dimen_*5/4 + dimen_/4 inductor(right_ dimen_,L); llabel(,L_{1\char`'eval(64+m4x)}) - line down_ (2-m4x)*dimen_*2/3 + line down_ (2-m4x)*dh*2/3 pushdef(`dimen_',dimen_*1.2) inductor(right_ dimen_*3/4) popdef(`dimen_') - line down_ (2-m4x)*dimen_/3 + line down_ (2-m4x)*dh/3 M: move right_ dimen_/8 - line up_ (2-m4x)*dimen_/3 + line up_ (2-m4x)*dh/3 pushdef(`dimen_',dimen_*1.2) inductor(right_ dimen_*3/4) popdef(`dimen_') - line up_ (2-m4x)*dimen_*2/3 + line up_ (2-m4x)*dh*2/3 inductor(right_ dimen_,L); llabel(,L_{2\char`'eval(64+m4x)}) - line right_ dimen_/8+(m4x-1)*dh*5/4 + line right_ dimen_/8+(m4x-1)*dh*5/4 + dimen_/4 dot SP2`'m4x: swpair(S2`'eval(m4x+3),S2`'m4x) with .C at Here+(0,(m4x-2)*dh) } ') - "$T_r$" at M.c+(0,dimen_/2) + "$T_r$" at M.c+(0,dimen_*2/3) line from V1.start to SP13.B line from SP21.B to SP23.B+(dh*3/4,0) { C2: capacitor(up_ to (Here,V1.end)); llabel(,,C_2) } - line right_ dh/2 - gap(up_ 5*dimen_,1,A); { "$V_2$" at last arrow.c ljust } + line right_ dimen_/2 + gap(up_ gapht,1,A); { "$V_2$" at last arrow.c ljust } line to SP21.T chop dotrad_ chop 0 ] with .nw at MC.sw+(0,-0.2) diff --git a/graphics/circuit_macros/examples/Makefile b/graphics/circuit_macros/examples/Makefile index d729596a17..cd0500c40c 100644 --- a/graphics/circuit_macros/examples/Makefile +++ b/graphics/circuit_macros/examples/Makefile @@ -5,10 +5,11 @@ # Type "make .ps" to make a postscript file from .m4 # It may be necessary to type "make clean" before this or any of the following: # Type "make .eps" to make an .eps file from .m4 +# Type "make .svg" to make an .svg file from .m4 using pdf2svg # The following require ImageMagick convert: # Type "make .png" to make a .png file from .m4 # Type "make .tif" to make a .tif file from .m4 -# Type "make .svg" to make a .svg file from .m4 +# # See also: the svg subdirectory for generating svg directly. # # To test the file test.m4, type "make tst" if boxdims is used, otherwise @@ -28,9 +29,9 @@ LIBDIR = .. # The dpic processor: PIC = dpic -p #PIC = $$HOME/dpic/build/p2c/ftp/dpic -p -#PIC = $$HOME/dpic/dev/p2c/ftp/dpic -p +#PIC = $$HOME/dpic/pa*dev/p2c/ftp/dpic -p #PIC = $$HOME/dpic/bison/dpic -p -#PIC = $$HOME/dpic/bdev/dpic -p +#PIC = $$HOME/dpic/bi*v/dpic -p CONFIGFILE = pstricks.m4 @@ -66,21 +67,21 @@ PICS = \ ex09.tex ex10.tex ex11.tex ex12.tex ex15.tex ex16.tex ex17.tex ex18.tex \ ex21.tex exp.tex fet.tex Flow.tex Fuses.tex GrayCode.tex graysurf.tex \ Grounds.tex Headers.tex Heathkit.tex I2L.tex Incleps.tex Jack.tex \ - lcct.tex Logic.tex Loglog.tex MC.tex Mixer.tex MotorControl.tex \ + lcct.tex Lyap.tex Logic.tex Loglog.tex MC.tex Mixer.tex MotorControl.tex \ Multiplexer.tex NLG.tex NPDT.tex Nport.tex Opamp.tex Optoiso.tex \ Pconn.tex PushPull.tex pwrsupply.tex Quantum.tex quick.tex random.tex \ Rectifiers.tex recycle.tex relaycoil.tex Relay.tex rose.tex Rotbox.tex \ Schottky.tex sfg.tex shapes.tex ShiftR.tex Sierpinski.tex Sixpole.tex \ Sources.tex SQUID.tex Switches.tex \ - Tgate.tex Three.tex thyristor.tex Timer.tex \ + Tgate.tex Three.tex thyristor.tex \ TTLnand.tex Ttree.tex Tubediags.tex ujt.tex Variable.tex Windings.tex \ worm.tex Xform.tex XOR.tex # Files that have to be processed twice: -BOXDIMS = ex09.tex Crow.tex Incleps.tex Loglog.tex Opamp.tex random.tex \ - Ttree.tex Windings.tex -BOXPICS = ex09.pic Crow.pic Incleps.pic Loglog.pic Opamp.pic random.pic \ - Ttree.pic Windings.pic +BOXDIMS = ex09.tex Crow.tex Incleps.tex Lyap.tex Loglog.tex Opamp.tex \ + random.tex Ttree.tex Windings.tex +BOXPICS = ex09.pic Crow.pic Incleps.pic Lyap.pic Loglog.pic Opamp.pic \ + random.pic Ttree.pic Windings.pic DVIPSOPTS = -Ppdf -G0 -t letter DVIPSOPTS = -G0 -t letter @@ -91,6 +92,18 @@ BS = tr '|' '\134' # Might be needed (change latex commands to $(LTX) ) # LTX = latex --shell-escape +LTXFILE=printf "|documentclass[11pt]{article}\n\ +|usepackage{times,pstricks,boxdims,graphicx,pst-grad,pst-slpe}\n\ +|usepackage{siunitx}\n\ +|setlength{|textwidth}{28cm}|setlength{|textheight}{28cm}\n\ +|setlength{|oddsidemargin}{0pt}|setlength{|evensidemargin}{0pt}\n\ +|setlength{|hoffset}{-1cm}\n\ +|pagestyle{empty}|thispagestyle{empty}\n\ +|newbox|graph\n\ +|begin{document}\n\ +|noindent|input{"$*".tex}\n\ +|end{document}\n" | $(BS) + .SUFFIXES: .ps .dvi .tex .m4 .pic .eps .png .pdf .svg .tif .gif .dvi.ps: dvips $(DVIPSOPTS) $* -o $*.ps @@ -106,25 +119,25 @@ BS = tr '|' '\134' @if test -n "$(DIMFILE)" ; then touch $(DIMFILE) ; fi $(M4) $(M4LIBS) $(DIMFILE) $*.m4 > $*.pic .m4.dvi: - make $*.tex - printf "|documentclass[11pt]{article}\n\ -|usepackage{times,pstricks,boxdims,graphicx,pst-grad,pst-slpe}\n\ -|usepackage{siunitx}\n\ -|setlength{|textwidth}{28cm}|setlength{|textheight}{28cm}\n\ -|setlength{|oddsidemargin}{0pt}|setlength{|evensidemargin}{0pt}\n\ -|setlength{|hoffset}{-1cm}\n\ -|pagestyle{empty}|thispagestyle{empty}\n\ -|newbox|graph\n\ -|begin{document}\n\ -|noindent|input{"$*".tex}\n\ -|end{document}\n" | $(BS) > F_$*.tex - latex F_$* + @if test -n "$(DIMFILE)" ; then touch $(DIMFILE) ; fi ; touch F_$*.dim + $(M4) $(M4LIBS) $(DIMFILE) F_$*.dim $*.m4 | sed -e '/^ *$$/d' \ + | $(PIC) > $*.tex + $(LTXFILE) > F_$*.tex + latex --quiet F_$* touch F_$*.dim $(DIMFILE) ; rm -f $*.tex $*.pic ; make $*.tex - latex F_$* + latex --quiet F_$* touch F_$*.dim $(DIMFILE) ; rm -f $*.tex $*.pic ; make $*.tex - latex F_$* + latex --quiet F_$* .m4.eps: - make $*.dvi + @if test -n "$(DIMFILE)" ; then touch $(DIMFILE) ; fi ; touch F_$*.dim + $(M4) $(M4LIBS) $(DIMFILE) F_$*.dim $*.m4 | sed -e '/^ *$$/d' \ + | $(PIC) > $*.tex + $(LTXFILE) > F_$*.tex + latex --quiet F_$* + touch F_$*.dim $(DIMFILE) ; rm -f $*.tex $*.pic ; make $*.tex + latex --quiet F_$* + touch F_$*.dim $(DIMFILE) ; rm -f $*.tex $*.pic ; make $*.tex + latex --quiet F_$* dvips F_$* -T128cm,28cm -o $*.ps # dvips -Ppdf F_$* -T128cm,28cm -o $*.ps # Recent changes to PSTricks(?) have clashed with the use of TeXtoEPS @@ -140,9 +153,9 @@ BS = tr '|' '\134' make $*.tex && mv $*.tex test.tex; latex tst dvips $(DVIPSOPTS) tst -o $*.ps chmod 644 $*.ps -.m4.svg: - make $*.eps - convert $(EPSOPTS) $*.eps $*.svg +#.m4.svg: +# make $*.eps +# convert $(EPSOPTS) $*.eps $*.svg .m4.png: make $*.eps convert $(PNGOPTS) $*.eps $*.png @@ -161,11 +174,24 @@ BS = tr '|' '\134' $(PIC) -g $*.pic > test.tex sed -e '/^\\usepackage.*graphicx/s/^.*$$/\\usepackage{tikz}/' \ -e '/pstricks/d' tst.tex > F_$*.tex - pdflatex F_$* + pdflatex --quiet F_$* + $(M4) pgf.m4 F_$*.dim $*.m4 > $*.pic + $(PIC) -g $*.pic > test.tex + pdflatex --quiet F_$* + mv F_$*.pdf $*.pdf +.m4.svg: + touch F_$*.dim + $(M4) pgf.m4 F_$*.dim $*.m4 > $*.pic + $(PIC) -g $*.pic > test.tex + sed -e '/^\\usepackage.*graphicx/s/^.*$$/\\usepackage{tikz}/' \ + -e '/pstricks/d' tst.tex > F_$*.tex + pdflatex --quiet F_$* $(M4) pgf.m4 F_$*.dim $*.m4 > $*.pic $(PIC) -g $*.pic > test.tex - pdflatex F_$* + pdflatex --quiet F_$* mv F_$*.pdf $*.pdf + pdf2svg $*.pdf $*.svg + rm -f $*.pdf $*.pic F_$** ######################################################################### @@ -237,7 +263,7 @@ clobber: clean do (if test -d $$dir ; then cd $$dir; make clobber; fi) ; done rm -f *.warn rm -f examples.pdf - rm -rf index.html html basenames *.png* dist zips htmlfiles svgfiles + rm -rf index.html html basenames *.png* dist zips htmlfiles rm -rf $(TMP)/Cir* $(ECETMP)/Cir* $(ECEDIR) if test -f Incl.pdf ; then \ mv Incl.pdf Incl.pdx; rm -f *.pdf; mv Incl.pdx Incl.pdf ; fi @@ -249,7 +275,7 @@ clobber: clean clean: @printf "\n examples clean:\n" rm -f core boxdims.tar.gz pics - rm -f *.dvi *.aux *.log *.toc *.blg *.eps *.tif *.epsi eps *-mfpic* + rm -f *.dvi *.aux *.log *.toc *.blg *.eps *.tif *.epsi eps *-mfpic* *.svg rm -f fig*.tex $(PICS) *.roff *.int *.pic gpic.m4 test.tex xxx* *.fig rm -f *.dim *.bak *.frs *.frp $(RPICS) rotate.ps tst.ps *.bbl *-pics.ps rm -f *.tfm *[0-9]pk *.png *.1 *.gif diff --git a/graphics/circuit_macros/examples/PushPull.m4 b/graphics/circuit_macros/examples/PushPull.m4 index 24669faf29..d9545616bf 100644 --- a/graphics/circuit_macros/examples/PushPull.m4 +++ b/graphics/circuit_macros/examples/PushPull.m4 @@ -21,13 +21,13 @@ define(`Xform21', T1: Xform21 line left_ del from T1.L3.end; corner; ground(,,F) line left_ 2*del from T1.L3.start - In: dot(,,1); { "RF" wid 12bp__ at In.n above } + In: dot(,,1); { "\small RF" wid 12bp__ at In.n above } up_ Q1: mosfet(,,dBSDFQM1,E) with .G0 at T1.T+(2*dimen_+del/2,dimen_) - { "3N200" at last [].n above } + { "\small 3N200" at last [].n above } line from T1.L2.end to (T1.L2.end,Q1.G0) then to Q1.G0 Q2: mosfet(,,dBSDFQM1,E) with .G0 at (Q1.G0.x,T1.T.y-dimen_) - { "3N200" at last [].n above } + { "\small 3N200" at last [].n above } line from T1.L1.start to (T1.L1.start,Q2.G0) then to Q2.G0 resistor(right_ dimen_ from T1.T); llabel(,\SI{330}{\Omega}); Tx:dot @@ -63,7 +63,7 @@ define(`Xform21', line right_ del from T2.L3.start; corner capacitor(down_ dimen_,C); llabel(\SI{1000}{pF}); ground(,T,F) line right_ 2*del from T2.L3.end - Out: dot(,,1); { "IF" wid 12bp__ at Out.n above }; move right_ 0.3 + Out: dot(,,1); { "\small IF" wid 12bp__ at Out.n above }; move right_ 0.3 line from T2.L1.start to (T2.L1,Q1.D) then to Q1.D line from T2.L2.end to (T2.L2.end,Q2.D) then to Q2.D @@ -83,7 +83,7 @@ define(`Xform21', dot(at Q3.B+(del,0)) line up_ (TL.y+Q3.C.y)/2 - Here.y+del/4 then left_ Here.x-TL.x reversed(`capacitor',left_ dimen_,C); llabel(,\SI{1500}{pF}) - Osc: dot(,,1); { "Osc" above at Osc.n } + Osc: dot(,,1); { "\small Osc" above at Osc.n } line from Q3.B to (Vc,Q3.B) line from Q3.C to (Q3.C,TL); dot diff --git a/graphics/circuit_macros/examples/Timer.m4 b/graphics/circuit_macros/examples/Timer.m4 deleted file mode 100644 index a5db32c800..0000000000 --- a/graphics/circuit_macros/examples/Timer.m4 +++ /dev/null @@ -1,52 +0,0 @@ -.PS -# Timer.m4 -cct_init -iflatex(`latexcommand({\small\sf)') - -define(`ic555',`[Chip: box ht boxwid wid boxwid "555" - P7: "7" ljust at 1/6 - P6: "6" ljust at 1/2 - P2: "2" ljust at 5/6 - P4: "4" below at 1/3 - P8: "8" below at 2/3 - P3: "3" rjust at Chip.e - P1: "1" above at Chip.s - ]') - - define(`elen_',`linewid') -Vs: dot - down_ - variable(`resistor(,E); llabel(,\SI{1}{M})') - resistor(,E); llabel(,\SI{100}{\kilo{}}) - capacitor(,E); llabel(\SI{220}{\micro{}}) -Zero: dot - - dot(at Vs+(elen_*4/3,0)) - resistor(,E); llabel(,\SI{33}{\kilo{}}) - line to (Here,Zero) chop 0 chop elen_ -C2: capacitor; llabel(\SI{0.1}{\micro{}}) - dot - -IC1: ic555 with .P7 at C2.start + (elen_,0) - line from IC1.P4 to (IC1.P4,Vs); dot - line from IC1.P8 to (IC1.P8,Vs); dot - line from IC1.P1 to (IC1.P1,Zero); dot - line from IC1.P2 to (C2,IC1.P2); dot - crossover(from IC1.P7 to (Zero,IC1.P7),R,C2); dot - line from IC1.P6 left elen_/2 then down IC1.P6.y-IC1.P7.y; dot - line from IC1.P3 right elen_*2/3 -R: dot - line right_ elen_/3 -B: buzzer(,,C) with .In3 at Here - line from B.In1 to (R,B.In1) - reversed(`diode',to (Here,Vs),LE); "red" at last line.c+(elen_/2,0) - resistor(down_ elen_ from R,E); llabel(,\num{470}) - diode(to (Here,Zero),LE); {"green" at last line.c+(elen_*2/3,0)} - line to Zero chop 0 chop -elen_ - line up_ (Vs.y-Here.y)/3 - battery(up_ (Vs.y-Here.y)/3); rlabel(,,\SI{9}{V}) - switch(to (Here,Vs),,D) - line to (R,Vs) - -iflatex(`latexcommand(})') -.PE diff --git a/graphics/circuit_macros/examples/Variable.m4 b/graphics/circuit_macros/examples/Variable.m4 index e52e30913d..72573f38cc 100644 --- a/graphics/circuit_macros/examples/Variable.m4 +++ b/graphics/circuit_macros/examples/Variable.m4 @@ -3,11 +3,11 @@ cct_init define(`elen_',dimen_); down_ -[ { variable(`resistor',A) }; {"A" at last line.end below}; move right - { variable(`resistor',N) }; {"N" at last line.end below}; move right - { variable(`resistor',uN) }; {"uN" at last line.end below}; move right - { variable(`resistor',NN) }; {"uN" at last line.end below}; move right - { variable(`resistor',uNN) }; {"uNN" at last line.end below}; #; move right +[ { variable(`resistor',A) }; {"\tt A" at last line.end below}; move right + { variable(`resistor',N) }; {"\tt N" at last line.end below}; move right + { variable(`resistor',uN) }; {"\tt uN" at last line.end below}; move right + { variable(`resistor',NN) }; {"\tt NN" at last line.end below}; move right + { variable(`resistor',uNN) }; {"\tt uNN" at last line.end below}; ] [ skp = 0.4 diff --git a/graphics/circuit_macros/examples/ex01.m4 b/graphics/circuit_macros/examples/ex01.m4 index a5bcef47ab..e672fccc36 100644 --- a/graphics/circuit_macros/examples/ex01.m4 +++ b/graphics/circuit_macros/examples/ex01.m4 @@ -1,6 +1,56 @@ .PS -# ex01.m4 +# Timer.m4 cct_init +iflatex(`latexcommand({\small\sf)') + +define(`ic555',`[Chip: box ht boxwid wid boxwid "555" + P7: "7" ljust at 1/6 + P6: "6" ljust at 1/2 + P2: "2" ljust at 5/6 + P4: "4" below at 1/3 + P8: "8" below at 2/3 + P3: "3" rjust at Chip.e + P1: "1" above at Chip.s + ]') + +Timer: [ + define(`elen_',`linewid') +Vs: dot + down_ + variable(`resistor(,E); llabel(,\SI{1}{M})') + resistor(,E); llabel(,\SI{100}{\kilo{}}) + capacitor(,E); llabel(\SI{220}{\micro{}}) +Zero: dot + + dot(at Vs+(elen_*4/3,0)) + resistor(,E); llabel(,\SI{33}{\kilo{}}) + line to (Here,Zero) chop 0 chop elen_ +C2: capacitor; llabel(\SI{0.1}{\micro{}}) + dot + +IC1: ic555 with .P7 at C2.start + (elen_,0) + line from IC1.P4 to (IC1.P4,Vs); dot + line from IC1.P8 to (IC1.P8,Vs); dot + line from IC1.P1 to (IC1.P1,Zero); dot + line from IC1.P2 to (C2,IC1.P2); dot + crossover(from IC1.P7 to (Zero,IC1.P7),R,C2); dot + line from IC1.P6 left elen_/2 then down IC1.P6.y-IC1.P7.y; dot + line from IC1.P3 right elen_*2/3 +R: dot + line right_ elen_/3 +B: buzzer(,,C) with .In3 at Here + line from B.In1 to (R,B.In1) + reversed(`diode',to (Here,Vs),LE); "red" at last line.c+(elen_/2,0) + resistor(down_ elen_ from R,E); llabel(,\num{470}) + diode(to (Here,Zero),LE); {"green" at last line.c+(elen_*2/3,0)} + line to Zero chop 0 chop -elen_ + line up_ (Vs.y-Here.y)/3 + battery(up_ (Vs.y-Here.y)/3); rlabel(,,\SI{9}{V}) + switch(to (Here,Vs),,D) + line to (R,Vs) +] +Ex01: [ +# ex01.m4 linewid = linewid*1.5 # let's make the circuit elements bigger than usual define(`elen_',linewid) # but not longer del = elen_/4 # a spacing parameter @@ -18,4 +68,7 @@ cct_init arcd(last []+(4pt__,0),del,30,330) <- ; "$i_2$" at last arc arcd(Vin.c+(4*del,0),2*del,30,330) <- ; "$i_1$" at last arc + ] with .sw at Timer.se+(0.5,0) + +iflatex(`latexcommand(}%)') .PE diff --git a/graphics/circuit_macros/examples/ex09.m4 b/graphics/circuit_macros/examples/ex09.m4 index a5ee6f1109..036ee00ccf 100644 --- a/graphics/circuit_macros/examples/ex09.m4 +++ b/graphics/circuit_macros/examples/ex09.m4 @@ -132,4 +132,5 @@ T: C+(-0.45*sk,-1.0*sk) ] with .nw at 1st [].ne+(0.8*sk,0) + .PE diff --git a/graphics/circuit_macros/examples/examples.pdf b/graphics/circuit_macros/examples/examples.pdf index d59436e0a3..a2f15a2c9a 100644 Binary files a/graphics/circuit_macros/examples/examples.pdf and b/graphics/circuit_macros/examples/examples.pdf differ diff --git a/graphics/circuit_macros/examples/examples.tex b/graphics/circuit_macros/examples/examples.tex index e2f90fc585..720e78861f 100644 --- a/graphics/circuit_macros/examples/examples.tex +++ b/graphics/circuit_macros/examples/examples.tex @@ -35,7 +35,7 @@ This document duplicates a few diagrams from the manual Circuit\_macros.pdf. There are also a few files in the examples directory that are not included in this document. To process - {\sl file}.m4, type, for example, "make {\sl file}.pdf." + {\sl file}.m4, for example, type "make {\sl file}.pdf." % Some of the boundaries of what macros and the pic language can do are % tested toward the end of the following examples. diff --git a/graphics/circuit_macros/examples/files.tex b/graphics/circuit_macros/examples/files.tex index 334c7657f6..f320c34f9c 100644 --- a/graphics/circuit_macros/examples/files.tex +++ b/graphics/circuit_macros/examples/files.tex @@ -195,11 +195,9 @@ } \bfig{ - \centerline{\getpic{ex01}\quad - \getpic{Timer}} + \centerline{\getpic{ex01}} \caption{Two simple labeled circuits - \src{ex01.m4}% - \src{Timer.m4}.} + \src{ex01.m4}.} } \bfig{ @@ -457,7 +455,7 @@ The function tree is drawn, then a row or column of inputs, then the connections. The default result is on the left, a custom element at the top, and a tree of gates only is shown - on the right. + on the right. THe lower examples illustrate the L, R, and V options.) \src{Alogix.m4}.} } @@ -554,7 +552,7 @@ \bfig{ \centerline{\getpic{random}} - \caption{Testing random numbers + \caption{Testing random number generation \src{random.m4}.} } @@ -585,6 +583,12 @@ \src{AntiqueClock.m4}.} } +\bfig{ + \centerline{\getpic{Lyap}} + \caption{Illustrating a Lyapunov function + \src{Lyap.m4}.} + } + \bfig{ \centerline{\getpic{csc}} \caption{Conestoga Sailing Club (illustrating the filling of arbitrary diff --git a/graphics/circuit_macros/examples/ics.m4 b/graphics/circuit_macros/examples/ics.m4 index 15e0f05bb8..c07cb61ea2 100644 --- a/graphics/circuit_macros/examples/ics.m4 +++ b/graphics/circuit_macros/examples/ics.m4 @@ -118,7 +118,6 @@ define(`ArduinoUno',`[ define(`m4bwid',`ifelse(`$1',,`24*L_unit',`$1')')dnl define(`m4bht',`ifelse(`$2',,`20*lg_pinsep',`$2')')dnl # - command "{\small\sf" Connector: box wid m4bwid ht m4bht # plen = ifelse(`$4',,`2*L_unit',`$4') @@ -135,7 +134,6 @@ Loopover_(`x',`ifelse(x,nul,, SCL, SDA, AREF, GND, D13, D12, \char126 D11, \char126 D10, \char126 D9, D8, nul, D7, \char126 D6, \char126 D5, D4, \char126 D3, D2, TX D1, RX D0) # - command "}" `$4'] ') `ArduinoLeonardo( wid,ht,pinlen )' @@ -143,7 +141,6 @@ define(`ArduinoLeonardo',`[ define(`m4bwid',`ifelse(`$1',,`24*L_unit',`$1')')dnl define(`m4bht',`ifelse(`$2',,`20*lg_pinsep',`$2')')dnl # - command "{\small\sf" Connector: box wid m4bwid ht m4bht # plen = ifelse(`$4',,`2*L_unit',`$4') @@ -161,7 +158,6 @@ Loopover_(`x',`ifelse(x,nul,, \char126 D13, D12, \char126 D11, \char126 D10, \char126 D9, D8, nul, D7, \char126 D6, \char126 D5, D4, \char126 D3, D2, TX D1, RX D0) # - command "}" `$4'] ') `RPi( wid,ht,pinlen )' @@ -169,7 +165,6 @@ define(`RPi',`[ define(`m4bwid',`ifelse(`$1',,`34*L_unit',`$1')')dnl define(`m4bht',`ifelse(`$2',,`21*lg_pinsep',`$2')')dnl # - command "{\small\sf" GPIO: box wid m4bwid ht m4bht plen = ifelse(`$4',,`6*L_unit',`$4') # @@ -212,14 +207,12 @@ Loopover_(`x',`ifelse(x,nul,,`A_RightGPIO(m4Lx,patsubst(x,;,`,'))')', ;GND, 16;, 20;, 21; ) # - command "}" `$4'] ') `USB_C_Socket( wid, ht, pinlen )' define(`USB_C_Socket',`[ define(`m4bwid',`ifelse(`$1',,`18*L_unit',`$1')')dnl define(`m4bht',`ifelse(`$2',,`14*lg_pinsep',`$2')')dnl - command "{\small\sf" # Base: box wid m4bwid ht m4bht rad 5/3*lg_pinsep plen = ifelse(`$4',,`6*L_unit',`$4') @@ -235,14 +228,12 @@ define(`USB_C_Socket',`[ {"x" rjust at last line.start}', GND, TX1$+$, TX1$-$, VBUS, CC1, D$+$, D$-$, SBU1, VBUS, RX2$-$, RX2$+$, GND) # - command "}" `$4']') `HDMI_micro( wid, ht, pinlen )' define(`HDMI_micro',`[ define(`m4bwid',`ifelse(`$1',,`16*L_unit',`$1')')dnl define(`m4bht',`ifelse(`$2',,`20*lg_pinsep+m4bwid*2/3',`$2')')dnl - command "{\small\sf" # Base:[line up m4bht/2 then right m4bwid*2/3 \ then right m4bwid/3 down m4bwid/3 \ @@ -269,7 +260,6 @@ define(`HDMI_micro',`[ r_text(22) at last line.c+(-5bp__,0) r_text(SH3) at last line.start + (0, 10bp__) # - command "}" `$4']') divert(0)dnl diff --git a/graphics/circuit_macros/examples/mf/cct.mf b/graphics/circuit_macros/examples/mf/cct.mf index 7134b617a0..e28b40c9f9 100644 --- a/graphics/circuit_macros/examples/mf/cct.mf +++ b/graphics/circuit_macros/examples/mf/cct.mf @@ -1,5 +1,5 @@ % cct.mf, generated by Mfpic, v1.10 2012/12/03, -% from TeX source "font" on 2020/05/01 at 17:17 +% from TeX source "font" on 2020/12/20 at 17:40 numeric mfpicversion; mfpicversion := 110; if unknown mode: mode := localfont; fi if unknown mag: mag := 1000/1000; fi diff --git a/graphics/circuit_macros/examples/mpost/Makefile b/graphics/circuit_macros/examples/mpost/Makefile index 2b8099c34d..18bb0ad576 100644 --- a/graphics/circuit_macros/examples/mpost/Makefile +++ b/graphics/circuit_macros/examples/mpost/Makefile @@ -27,7 +27,7 @@ FIGS = Adder.1 Alogix.1 ABlogix.1 Antennas.1 AmpTable.1 Audio.1 \ Decoder.1 Demultiplexer.1 Dini.1 Diodes.1 Drive.1 \ Emarrows.1 Flow.1 Fuses.1 \ GrayCode.1 Grounds.1 Headers.1 Heathkit.1 I2L.1 Inclpdf.1 Jack.1 \ - Logic.1 Loglog.1 MC.1 Mixer.1 MotorControl.1 Multiplexer.1 \ + Lyap.1 Logic.1 Loglog.1 MC.1 Mixer.1 MotorControl.1 Multiplexer.1 \ NLG.1 NPDT.1 Nport.1 \ Opamp.1 Optoiso.1 Pconn.1 PushPull.1 Quantum.1 \ Rectifiers.1 Relay.1 relaycoil.1 Rotbox.1 \ diff --git a/graphics/circuit_macros/examples/nsvg/Makefile b/graphics/circuit_macros/examples/nsvg/Makefile new file mode 100644 index 0000000000..b2132e1ee8 --- /dev/null +++ b/graphics/circuit_macros/examples/nsvg/Makefile @@ -0,0 +1,92 @@ +LIBDIR = $$HOME/lib +M4LIBS = svg.m4 SVGconfig.m4 +M4LIBS = svg.m4 + +# To process a single file, copy it to test.m4 and type "make tst" +# to produce tstSVG.html + +DPIC = dpic +#DPIC = $$HOME/dpic/build/p2c/ftp/dpic +#DPIC = ../../../dpic/build/p2c/ftp/dpic +#DPIC = ../../../dpic/bison/dpic +#DPIC = ../../../dpic/bdev/dpic + +# To test the Windows executable. Change these as needed for the operating +# system. NOTE: AntiqueClockSVG.m4 and Connectors.m4 use awk and sed which +# do not work at present with the Windows version. +# M4LIBS = svg.m4 windows.m4 +# DPIC = ../../../dpic/bison/distsrc/Windows/dpic + +.SUFFIXES: .pic .svg .m4 +.pic.svg: + $(DPIC) -v $*.pic > $*.svg + grep '<\!-- width' $*.svg | sed -e 's%<\!-- *%%' -e 's% *-->%%' > $*.siz +.m4.svg: + m4 $(M4LIBS) $*.m4 | sed -e '/^\%/d' > $*.pic + $(DPIC) -v $*.pic > $*.svg + grep '<\!-- width' $*.svg | sed -e 's%<\!-- *%%' -e 's% *-->%%' > $*.siz + +PAGES = examples_1.svg + +examplesSVG.html: examplesSVG.htmx pages + Version=`sed -e 's/Version //' $(LIBDIR)/doc/Version.tex` ; \ + sed -e 's/Version XXX/Version '$$Version'/' examplesSVG.htmx \ + | m4 > examplesSVG.html + +pages: + (cd .. ; make ) + cp ../examples.pdf . + pdf2svg examples.pdf + touch pages + +SED = sed -e '/^\%/d' +TEST = test +tst: + if test -f test.pic; then printf "\n\nUsage: make clean tst\n\n"; exit 1; fi + m4 $(M4LIBS) test.m4 | $(SED) > test.pic + $(DPIC) -v $(TEST).pic > $(TEST).svg + m4 $(M4LIBS) $(TEST).m4 | $(SED) > $(TEST).pic + $(DPIC) -v $(TEST).pic > $(TEST).svg + grep '<\!-- width' $(TEST).svg | sed -e 's%<\!-- *%%' -e 's% *-->%%' \ + > $(TEST).siz + make tstSVG.html + +test.pic: + if test -f test.pic ; then echo "Usage: make clean tst" ; fi + m4 $(M4LIBS) test.m4 | $(SED) > test.pic + m4 $(M4LIBS) test.m4 | $(SED) > test.pic + +tstSVG.html: tstSVG.htmx $(TEST).svg + Version=`sed -e 's/Version //' $(LIBDIR)/doc/Version.tex` ; \ + sed -e 's/Version XXX/Version '$$Version'/' \ + -e 's/XXXXX/'$(TEST)'/g' \ + tstSVG.htmx | m4 > tstSVG.html +# cp tstSVG.html $(TEST) $$HOME/public_html/svg + +xst: Incleps.png + +AntiqueClockSVG.svg ConnectorsSVG.svg: + m4 $(M4LIBS) $*.m4 | sed -e '/^\%/d' > $*.pic + $(DPIC) -v $*.pic > $*.svg + m4 $(M4LIBS) $*.m4 | sed -e '/^\%/d' > $*.pic + $(DPIC) -v $*.pic > $*.svg + grep '<\!-- width' $*.svg | sed -e 's%<\!-- *%%' -e 's% *-->%%' > $*.siz + +InclepsSVG.svg: InclepsSVG.m4 + m4 $(M4LIBS) $*.m4 | sed -e '/^\%/d' > $*.pic + $(DPIC) -v $*.pic > $*.svg + $(DPIC) -v $*.pic > $*.svg + +Incleps.png: + (cd ..; make Incleps.png); cp ../Incleps.png . + +clean: + @printf "\n svg clean:\n" + rm -f *.svg *.dim *.ps *log *.siz *.pic examplesSVG.html Incleps.png + rm -f tstSVG.html copy_tmp__ + rm -f pages + @printf "\n" + +clobber: clean + (cd dev; make clobber) + rm -f test.m4 diff --git a/graphics/circuit_macros/examples/nsvg/dev/F_test.tex b/graphics/circuit_macros/examples/nsvg/dev/F_test.tex new file mode 100644 index 0000000000..68098bbf3a --- /dev/null +++ b/graphics/circuit_macros/examples/nsvg/dev/F_test.tex @@ -0,0 +1,5 @@ +\documentclass[crop,tikz,multi=false]{standalone} +\usepackage{boxdims,siunitx,amssymb} +\begin{document} +\input test.tex +\end{document} diff --git a/graphics/circuit_macros/examples/nsvg/dev/Makefile b/graphics/circuit_macros/examples/nsvg/dev/Makefile new file mode 100644 index 0000000000..cdc126d8bd --- /dev/null +++ b/graphics/circuit_macros/examples/nsvg/dev/Makefile @@ -0,0 +1,81 @@ +LIBDIR = $$HOME/lib +M4LIBS = pgf.m4 +M4 = m4 + +# To process a single file, copy it to test.m4 and type "make tst" +# to produce tstSVG.html + +DPIC = dpic +#DPIC = $$HOME/dpic/build/p2c/ftp/dpic +#DPIC = $$HOME/dpic/build/p2c/ftp/dpic +#DPIC = $$HOME/dpic/bison/dpic +#DPIC = $$HOME/dpic/bdev/dpic + +.SUFFIXES: .pic .svg .m4 .pdf +.pic.svg: + $(DPIC) -v $*.pic > $*.svg + grep '<\!-- width' $*.svg | sed -e 's%<\!-- *%%' -e 's% *-->%%' > $*.siz +.m4.svg: + touch F_$*.dim + $(M4) pgf.m4 F_$*.dim $*.m4 > $*.pic + $(DPIC) -g $*.pic >> $*.tex + echo "\documentclass[crop,tikz,multi=false]{standalone}" > F_$*.tex + echo "\usepackage{boxdims,siunitx,amssymb}" >> F_$*.tex + echo "\begin{document}" >> F_$*.tex + echo "\input $*.tex" >> F_$*.tex + echo "\end{document}" >> F_$*.tex + pdflatex --quiet F_$* + $(M4) pgf.m4 F_$*.dim $*.m4 > $*.pic + $(DPIC) -g $*.pic >> $*.tex + pdflatex --quiet F_$* + pdf2svg F_$*.pdf $*.svg + rm -f F_$** +.m4.pdf: + touch F_$*.dim + $(M4) pgf.m4 F_$*.dim $*.m4 > $*.pic + $(DPIC) -g $*.pic >> $*.tex + echo "\documentclass[crop,tikz,multi=false]{standalone}" > F_$*.tex + echo "\usepackage{boxdims,siunitx,amssymb}" >> F_$*.tex + echo "\begin{document}" >> F_$*.tex + echo "\input $*.tex" >> F_$*.tex + echo "\end{document}" >> F_$*.tex + pdflatex --quiet F_$* + $(M4) pgf.m4 F_$*.dim $*.m4 > $*.pic + $(DPIC) -g $*.pic >> $*.tex + pdflatex --quiet F_$* + mv F_$*.pdf $*.pdf + +examplesSVG.html: examplesSVG.htmx pages + Version=`sed -e 's/Version //' $(LIBDIR)/doc/Version.tex` ; \ + sed -e 's/Version XXX/Version '$$Version'/' examplesSVG.htmx \ + | m4 > examplesSVG.html + +SED = sed -e '/^\%/d' +TEST = test +tst: + if test -f test.pic; then printf "\n\nUsage: make clean tst\n\n"; exit 1; fi + m4 $(M4LIBS) test.m4 | $(SED) > test.pic + $(DPIC) -v $(TEST).pic > $(TEST).svg + m4 $(M4LIBS) $(TEST).m4 | $(SED) > $(TEST).pic + $(DPIC) -v $(TEST).pic > $(TEST).svg + grep '<\!-- width' $(TEST).svg | sed -e 's%<\!-- *%%' -e 's% *-->%%' \ + > $(TEST).siz + make tstSVG.html + +tstSVG.html: tstSVG.htmx $(TEST).svg + Version=`sed -e 's/Version //' $(LIBDIR)/doc/Version.tex` ; \ + sed -e 's/Version XXX/Version '$$Version'/' \ + -e 's/XXXXX/'$(TEST)'/g' \ + tstSVG.htmx | m4 > tstSVG.html +# cp tstSVG.html $(TEST) $$HOME/public_html/svg + +clean: + @printf "\n svg clean:\n" + rm -f *.svg *.dim *.ps *log *.siz *.pic examplesSVG.html Incleps.png + rm -f tstSVG.html copy_tmp__ + rm -f pages + @printf "\n" + +clobber: clean + (cd dev; make clobber) + rm -f test.m4 diff --git a/graphics/circuit_macros/examples/nsvg/dev/test-1.svg b/graphics/circuit_macros/examples/nsvg/dev/test-1.svg new file mode 100644 index 0000000000..7c48b506b4 --- /dev/null +++ b/graphics/circuit_macros/examples/nsvg/dev/test-1.svg @@ -0,0 +1,162 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/graphics/circuit_macros/examples/nsvg/dev/test.pdf b/graphics/circuit_macros/examples/nsvg/dev/test.pdf new file mode 100644 index 0000000000..05af7c1263 Binary files /dev/null and b/graphics/circuit_macros/examples/nsvg/dev/test.pdf differ diff --git a/graphics/circuit_macros/examples/nsvg/dev/test.pic b/graphics/circuit_macros/examples/nsvg/dev/test.pic new file mode 100644 index 0000000000..d035baa113 --- /dev/null +++ b/graphics/circuit_macros/examples/nsvg/dev/test.pic @@ -0,0 +1,383 @@ +.PS +# ex08.m4 +# log_init Version 9.3: TikZ PGF m4 macro settings. + +# log_init begin + # gen_init Version 9.3: TikZ PGF m4 macro settings. + + + define rpoint__ { + rp_wid = last line.end.x-last line.start.x + rp_ht = last line.end.y-last line.start.y + rp_len = sqrt(abs((rp_wid)^2+(rp_ht)^2)); move to last line.start + rp_ang = atan2(rp_ht,rp_wid) } + + rtod_ = 57.295779513082323; dtor_ = 0.017453292519943295 + twopi_ = 6.2831853071795862; pi_ = (twopi_/2) + rp_ang = 0; right + + + linethick = 0.8 + arrowwid = 0.05*scale; arrowht = 0.1*scale + + + # gen_init end + + +# log_init end + + + + +# Input labels +C: (0,0); "\sf C " rjust at C +DE: C+(0,((linewid/10))*((2*3)*7/4)) +A0: DE+(0,((linewid/10))*(4*3/2)); "\sf A0 " rjust at A0 +A1: A0+(0,((linewid/10))*(4*3/2)); "\sf A1 " rjust at A1 +A2: A1+(0,((linewid/10))*(4*3/2)); "\sf A2 " rjust at A2 + move to (-0.2,0) # Lettering within the global object + +# Buffer strings + line right 3*(linewid/10)*5/2 from A2 + B1: [Tm: line from (((linewid/10))*(3.5),0) \ + to (0,((linewid/10))*(-4/2)) \ + then to (0,((linewid/10))*(4/2)) \ + then to (((linewid/10))*(3.5),0) + Tc: (((linewid/10))*(3.5/2),0) + NE: (((linewid/10))*(3.5/2),((linewid/10))*(4/4)) + SE: (((linewid/10))*(3.5/2),((linewid/10))*(-4/4)) + Out: (((linewid/10))*(3.5+(3/2)),0) + N_Out: circle diam (3/2)*(linewid/10) \ + at (((linewid/10))*(3.5+((3/2)/2)),0) + In1: (0,0) + C: (((linewid/10))*(3.5/3),0) + + + + ]; line right 2*(linewid/10)*5/2 + T1: last line.c + B2: [Tm: line from (((linewid/10))*(3.5),0) \ + to (0,((linewid/10))*(-4/2)) \ + then to (0,((linewid/10))*(4/2)) \ + then to (((linewid/10))*(3.5),0) + Tc: (((linewid/10))*(3.5/2),0) + In1: (((linewid/10))*(-(3/2)),0) + N_In1: circle diam (3/2)*(linewid/10) \ + at (((linewid/10))*(-((3/2)/2)),0) + NE: (((linewid/10))*(3.5/2),((linewid/10))*(4/4)) + SE: (((linewid/10))*(3.5/2),((linewid/10))*(-4/4)) + Out: (((linewid/10))*(3.5),0) + C: (((linewid/10))*(3.5/3),0) + + + + ] + line right 3*(linewid/10)*5/2 from A1 + B3: [Tm: line from (((linewid/10))*(3.5),0) \ + to (0,((linewid/10))*(-4/2)) \ + then to (0,((linewid/10))*(4/2)) \ + then to (((linewid/10))*(3.5),0) + Tc: (((linewid/10))*(3.5/2),0) + NE: (((linewid/10))*(3.5/2),((linewid/10))*(4/4)) + SE: (((linewid/10))*(3.5/2),((linewid/10))*(-4/4)) + Out: (((linewid/10))*(3.5+(3/2)),0) + N_Out: circle diam (3/2)*(linewid/10) \ + at (((linewid/10))*(3.5+((3/2)/2)),0) + In1: (0,0) + C: (((linewid/10))*(3.5/3),0) + + + + ]; line right 2*(linewid/10)*5/2 + T2: last line.c + B4: [Tm: line from (((linewid/10))*(3.5),0) \ + to (0,((linewid/10))*(-4/2)) \ + then to (0,((linewid/10))*(4/2)) \ + then to (((linewid/10))*(3.5),0) + Tc: (((linewid/10))*(3.5/2),0) + In1: (((linewid/10))*(-(3/2)),0) + N_In1: circle diam (3/2)*(linewid/10) \ + at (((linewid/10))*(-((3/2)/2)),0) + NE: (((linewid/10))*(3.5/2),((linewid/10))*(4/4)) + SE: (((linewid/10))*(3.5/2),((linewid/10))*(-4/4)) + Out: (((linewid/10))*(3.5),0) + C: (((linewid/10))*(3.5/3),0) + + + + ] + line right 3*(linewid/10)*5/2 from A0 + B5: [Tm: line from (((linewid/10))*(3.5),0) \ + to (0,((linewid/10))*(-4/2)) \ + then to (0,((linewid/10))*(4/2)) \ + then to (((linewid/10))*(3.5),0) + Tc: (((linewid/10))*(3.5/2),0) + NE: (((linewid/10))*(3.5/2),((linewid/10))*(4/4)) + SE: (((linewid/10))*(3.5/2),((linewid/10))*(-4/4)) + Out: (((linewid/10))*(3.5+(3/2)),0) + N_Out: circle diam (3/2)*(linewid/10) \ + at (((linewid/10))*(3.5+((3/2)/2)),0) + In1: (0,0) + C: (((linewid/10))*(3.5/3),0) + + + + ]; line right 2*(linewid/10)*5/2 + T3: last line.c + B6: [Tm: line from (((linewid/10))*(3.5),0) \ + to (0,((linewid/10))*(-4/2)) \ + then to (0,((linewid/10))*(4/2)) \ + then to (((linewid/10))*(3.5),0) + Tc: (((linewid/10))*(3.5/2),0) + In1: (((linewid/10))*(-(3/2)),0) + N_In1: circle diam (3/2)*(linewid/10) \ + at (((linewid/10))*(-((3/2)/2)),0) + NE: (((linewid/10))*(3.5/2),((linewid/10))*(4/4)) + SE: (((linewid/10))*(3.5/2),((linewid/10))*(-4/4)) + Out: (((linewid/10))*(3.5),0) + C: (((linewid/10))*(3.5/3),0) + + + + ] + + +B7: [Tm: line from (((linewid/10))*(3.5),0) \ + to (0,((linewid/10))*(-4/2)) \ + then to (0,((linewid/10))*(4/2)) \ + then to (((linewid/10))*(3.5),0) + Tc: (((linewid/10))*(3.5/2),0) + NE: (((linewid/10))*(3.5/2),((linewid/10))*(4/4)) + SE: (((linewid/10))*(3.5/2),((linewid/10))*(-4/4)) + Out: (((linewid/10))*(3.5),0) + In1: (0,0) + C: (((linewid/10))*(3.5/3),0) + + + + ] at (B1,C) + +G1: [ Bt: line from (((linewid/10))*(0+7/3),((linewid/10))*((2*3)/2)) \ + to (0,((linewid/10))*((2*3)/2)) chop 0 chop -(linethick *(scale/72)/2) + ArcB: arc cw to (0,((linewid/10))*(-(2*3)/2)) \ + with .c at (((linewid/10))*(0-sqrt((7*(2*3)/((2*3)))^2-((2*3)/2)^2)),0) + Bb: line to (((linewid/10))*(0+7/3),((linewid/10))*(-(2*3)/2)) chop -(linethick *(scale/72)/2) chop 0 + ArcN: arc cw from (((linewid/10))*(0+7/3),((linewid/10))*((2*3)/2)) \ + to (((linewid/10))*(0+7),0) \ + with .c at (((linewid/10))*(0+7/3),((linewid/10))*(-((7*2/3)^2-((2*3)/2)^2)/((2*3)))) + ArcS: arc ccw from (((linewid/10))*(0+7/3),((linewid/10))*(-(2*3)/2)) \ + to (((linewid/10))*(0+7),0) \ + with .c at (((linewid/10))*(0+7/3),((linewid/10))*(((7*2/3)^2-((2*3)/2)^2)/((2*3)))) + NE: (((linewid/10))*(0+7/3),((linewid/10))*(-((7*2/3)^2-((2*3)/2)^2)/((2*3))))+(((linewid/10))*(((2*3)/2+((7*2/3)^2-((2*3)/2)^2)/((2*3)))*(cos((60)*dtor_))),((linewid/10))*(((2*3)/2+((7*2/3)^2-((2*3)/2)^2)/((2*3)))*(sin((60)*dtor_)))) + SE: (((linewid/10))*(0+7/3),((linewid/10))*(((7*2/3)^2-((2*3)/2)^2)/((2*3))))+(((linewid/10))*(((2*3)/2+((7*2/3)^2-((2*3)/2)^2)/((2*3)))*(cos((-60)*dtor_))),((linewid/10))*(((2*3)/2+((7*2/3)^2-((2*3)/2)^2)/((2*3)))*(sin((-60)*dtor_)))) + N_Out: circle diam (3/2)*(linewid/10) \ + at (((linewid/10))*(0+7+((3/2)/2)),0) + Out: (((linewid/10))*(0+7+(3/2)),0) + In1: (((linewid/10))*(-sqrt((7*(2*3)/((2*3)))^2-((2*3)/2)^2)+sqrt((7*(2*3)/((2*3)))^2-((2*3)/2/min(2,6-1)*(2+1-2*1))^2)),((linewid/10))*((2*3)/2/min(2,6-1)*(2+1-2*1))) + + In2: (((linewid/10))*(-sqrt((7*(2*3)/((2*3)))^2-((2*3)/2)^2)+sqrt((7*(2*3)/((2*3)))^2-((2*3)/2/min(2,6-1)*(2+1-2*2))^2)),((linewid/10))*((2*3)/2/min(2,6-1)*(2+1-2*2))) + + + + C: (((linewid/10))*(0+7/2),0) + ] with .Out at (B1.Out,DE) +G2: [ Bt: line from (((linewid/10))*(0+7/3),((linewid/10))*((2*3)/2)) \ + to (0,((linewid/10))*((2*3)/2)) chop 0 chop -(linethick *(scale/72)/2) + ArcB: arc cw to (0,((linewid/10))*(-(2*3)/2)) \ + with .c at (((linewid/10))*(0-sqrt((7*(2*3)/((2*3)))^2-((2*3)/2)^2)),0) + Bb: line to (((linewid/10))*(0+7/3),((linewid/10))*(-(2*3)/2)) chop -(linethick *(scale/72)/2) chop 0 + ArcN: arc cw from (((linewid/10))*(0+7/3),((linewid/10))*((2*3)/2)) \ + to (((linewid/10))*(0+7),0) \ + with .c at (((linewid/10))*(0+7/3),((linewid/10))*(-((7*2/3)^2-((2*3)/2)^2)/((2*3)))) + ArcS: arc ccw from (((linewid/10))*(0+7/3),((linewid/10))*(-(2*3)/2)) \ + to (((linewid/10))*(0+7),0) \ + with .c at (((linewid/10))*(0+7/3),((linewid/10))*(((7*2/3)^2-((2*3)/2)^2)/((2*3)))) + NE: (((linewid/10))*(0+7/3),((linewid/10))*(-((7*2/3)^2-((2*3)/2)^2)/((2*3))))+(((linewid/10))*(((2*3)/2+((7*2/3)^2-((2*3)/2)^2)/((2*3)))*(cos((60)*dtor_))),((linewid/10))*(((2*3)/2+((7*2/3)^2-((2*3)/2)^2)/((2*3)))*(sin((60)*dtor_)))) + SE: (((linewid/10))*(0+7/3),((linewid/10))*(((7*2/3)^2-((2*3)/2)^2)/((2*3))))+(((linewid/10))*(((2*3)/2+((7*2/3)^2-((2*3)/2)^2)/((2*3)))*(cos((-60)*dtor_))),((linewid/10))*(((2*3)/2+((7*2/3)^2-((2*3)/2)^2)/((2*3)))*(sin((-60)*dtor_)))) + N_Out: circle diam (3/2)*(linewid/10) \ + at (((linewid/10))*(0+7+((3/2)/2)),0) + Out: (((linewid/10))*(0+7+(3/2)),0) + In1: (((linewid/10))*(-sqrt((7*(2*3)/((2*3)))^2-((2*3)/2)^2)+sqrt((7*(2*3)/((2*3)))^2-((2*3)/2/min(2,6-1)*(2+1-2*1))^2)),((linewid/10))*((2*3)/2/min(2,6-1)*(2+1-2*1))) + + In2: (((linewid/10))*(-sqrt((7*(2*3)/((2*3)))^2-((2*3)/2)^2)+sqrt((7*(2*3)/((2*3)))^2-((2*3)/2/min(2,6-1)*(2+1-2*2))^2)),((linewid/10))*((2*3)/2/min(2,6-1)*(2+1-2*2))) + + + + C: (((linewid/10))*(0+7/2),0) + ] at (B2+(((linewid/10))*(((3/2)/2)),0),G1-(0,((linewid/10))*((2*3)))) +G3: [ Bm: line from (((linewid/10))*(7-(2*3)/2),((linewid/10))*(-(2*3)/2)) \ + to (0,((linewid/10))*(-(2*3)/2)) \ + then to (0,((linewid/10))*((2*3)/2)) then \ + to (((linewid/10))*(7-(2*3)/2),((linewid/10))*((2*3)/2)) + Arc: arc cw rad (2*3)/2 \ + to Here+(0,((linewid/10))*(-(2*3))) \ + with .c at Here+(0,((linewid/10))*(-(2*3)/2)) + NE: (((linewid/10))*(7-(2*3)/2),0)+(((linewid/10))*(((2*3)/2)*(cos((45)*dtor_))),((linewid/10))*(((2*3)/2)*(sin((45)*dtor_)))) + SE: (((linewid/10))*(7-(2*3)/2),0)+(((linewid/10))*(((2*3)/2)*(cos((-45)*dtor_))),((linewid/10))*(((2*3)/2)*(sin((-45)*dtor_)))) + Out: (((linewid/10))*(7),0) + + In1: (0,((linewid/10))*((2*3)/min(4,6-1)*((4+1)/2-1))) + In2: (0,((linewid/10))*((2*3)/min(4,6-1)*((4+1)/2-2))) + In3: (0,((linewid/10))*((2*3)/min(4,6-1)*((4+1)/2-3))) + In4: (0,((linewid/10))*((2*3)/min(4,6-1)*((4+1)/2-4))) + + C: (((linewid/10))*(7/2),0) + ] with .In1 at (G2.Out+(9*(linewid/10)*5/2,0),A2) +G5: [ Bm: line from (((linewid/10))*(7-(2*3)/2),((linewid/10))*(-(2*3)/2)) \ + to (0,((linewid/10))*(-(2*3)/2)) \ + then to (0,((linewid/10))*((2*3)/2)) then \ + to (((linewid/10))*(7-(2*3)/2),((linewid/10))*((2*3)/2)) + Arc: arc cw rad (2*3)/2 \ + to Here+(0,((linewid/10))*(-(2*3))) \ + with .c at Here+(0,((linewid/10))*(-(2*3)/2)) + NE: (((linewid/10))*(7-(2*3)/2),0)+(((linewid/10))*(((2*3)/2)*(cos((45)*dtor_))),((linewid/10))*(((2*3)/2)*(sin((45)*dtor_)))) + SE: (((linewid/10))*(7-(2*3)/2),0)+(((linewid/10))*(((2*3)/2)*(cos((-45)*dtor_))),((linewid/10))*(((2*3)/2)*(sin((-45)*dtor_)))) + Out: (((linewid/10))*(7),0) + + In1: (0,((linewid/10))*((2*3)/min(4,6-1)*((4+1)/2-1))) + In2: (0,((linewid/10))*((2*3)/min(4,6-1)*((4+1)/2-2))) + In3: (0,((linewid/10))*((2*3)/min(4,6-1)*((4+1)/2-3))) + In4: (0,((linewid/10))*((2*3)/min(4,6-1)*((4+1)/2-4))) + + C: (((linewid/10))*(7/2),0) + ] with .In4 at (G3.In1,G2.Out) +G6: [ Bm: line from (((linewid/10))*(7-(2*3)/2),((linewid/10))*(-(2*3)/2)) \ + to (0,((linewid/10))*(-(2*3)/2)) \ + then to (0,((linewid/10))*((2*3)/2)) then \ + to (((linewid/10))*(7-(2*3)/2),((linewid/10))*((2*3)/2)) + Arc: arc cw rad (2*3)/2 \ + to Here+(0,((linewid/10))*(-(2*3))) \ + with .c at Here+(0,((linewid/10))*(-(2*3)/2)) + NE: (((linewid/10))*(7-(2*3)/2),0)+(((linewid/10))*(((2*3)/2)*(cos((45)*dtor_))),((linewid/10))*(((2*3)/2)*(sin((45)*dtor_)))) + SE: (((linewid/10))*(7-(2*3)/2),0)+(((linewid/10))*(((2*3)/2)*(cos((-45)*dtor_))),((linewid/10))*(((2*3)/2)*(sin((-45)*dtor_)))) + Out: (((linewid/10))*(7),0) + + In1: (0,((linewid/10))*((2*3)/min(2,6-1)*((2+1)/2-1))) + In2: (0,((linewid/10))*((2*3)/min(2,6-1)*((2+1)/2-2))) + + C: (((linewid/10))*(7/2),0) + ] at G5+(((linewid/10))*(7),((linewid/10))*((2*3)*3/4))+((linewid/10)*5/2*2,0) +G4: [ Bt: line from (((linewid/10))*(0+7/3),((linewid/10))*((2*3)/2)) \ + to (0,((linewid/10))*((2*3)/2)) chop 0 chop -(linethick *(scale/72)/2) + ArcB: arc cw to (0,((linewid/10))*(-(2*3)/2)) \ + with .c at (((linewid/10))*(0-sqrt((7*(2*3)/((2*3)))^2-((2*3)/2)^2)),0) + Bb: line to (((linewid/10))*(0+7/3),((linewid/10))*(-(2*3)/2)) chop -(linethick *(scale/72)/2) chop 0 + ArcN: arc cw from (((linewid/10))*(0+7/3),((linewid/10))*((2*3)/2)) \ + to (((linewid/10))*(0+7),0) \ + with .c at (((linewid/10))*(0+7/3),((linewid/10))*(-((7*2/3)^2-((2*3)/2)^2)/((2*3)))) + ArcS: arc ccw from (((linewid/10))*(0+7/3),((linewid/10))*(-(2*3)/2)) \ + to (((linewid/10))*(0+7),0) \ + with .c at (((linewid/10))*(0+7/3),((linewid/10))*(((7*2/3)^2-((2*3)/2)^2)/((2*3)))) + NE: (((linewid/10))*(0+7/3),((linewid/10))*(-((7*2/3)^2-((2*3)/2)^2)/((2*3))))+(((linewid/10))*(((2*3)/2+((7*2/3)^2-((2*3)/2)^2)/((2*3)))*(cos((60)*dtor_))),((linewid/10))*(((2*3)/2+((7*2/3)^2-((2*3)/2)^2)/((2*3)))*(sin((60)*dtor_)))) + SE: (((linewid/10))*(0+7/3),((linewid/10))*(((7*2/3)^2-((2*3)/2)^2)/((2*3))))+(((linewid/10))*(((2*3)/2+((7*2/3)^2-((2*3)/2)^2)/((2*3)))*(cos((-60)*dtor_))),((linewid/10))*(((2*3)/2+((7*2/3)^2-((2*3)/2)^2)/((2*3)))*(sin((-60)*dtor_)))) + N_Out: circle diam (3/2)*(linewid/10) \ + at (((linewid/10))*(0+7+((3/2)/2)),0) + Out: (((linewid/10))*(0+7+(3/2)),0) + In1: (((linewid/10))*(-sqrt((7*(2*3)/((2*3)))^2-((2*3)/2)^2)+sqrt((7*(2*3)/((2*3)))^2-((2*3)/2/min(2,6-1)*(2+1-2*1))^2)),((linewid/10))*((2*3)/2/min(2,6-1)*(2+1-2*1))) + + In2: (((linewid/10))*(-sqrt((7*(2*3)/((2*3)))^2-((2*3)/2)^2)+sqrt((7*(2*3)/((2*3)))^2-((2*3)/2/min(2,6-1)*(2+1-2*2))^2)),((linewid/10))*((2*3)/2/min(2,6-1)*(2+1-2*2))) + + + + C: (((linewid/10))*(0+7/2),0) + ] with .In1 at (G6.Out,G3)+(2*(linewid/10)*5/2,0) +G7: [ Bt: line from (((linewid/10))*(0+7/3),((linewid/10))*((2*3)/2)) \ + to (0,((linewid/10))*((2*3)/2)) chop 0 chop -(linethick *(scale/72)/2) + ArcB: arc cw to (0,((linewid/10))*(-(2*3)/2)) \ + with .c at (((linewid/10))*(0-sqrt((7*(2*3)/((2*3)))^2-((2*3)/2)^2)),0) + Bb: line to (((linewid/10))*(0+7/3),((linewid/10))*(-(2*3)/2)) chop -(linethick *(scale/72)/2) chop 0 + ArcN: arc cw from (((linewid/10))*(0+7/3),((linewid/10))*((2*3)/2)) \ + to (((linewid/10))*(0+7),0) \ + with .c at (((linewid/10))*(0+7/3),((linewid/10))*(-((7*2/3)^2-((2*3)/2)^2)/((2*3)))) + ArcS: arc ccw from (((linewid/10))*(0+7/3),((linewid/10))*(-(2*3)/2)) \ + to (((linewid/10))*(0+7),0) \ + with .c at (((linewid/10))*(0+7/3),((linewid/10))*(((7*2/3)^2-((2*3)/2)^2)/((2*3)))) + NE: (((linewid/10))*(0+7/3),((linewid/10))*(-((7*2/3)^2-((2*3)/2)^2)/((2*3))))+(((linewid/10))*(((2*3)/2+((7*2/3)^2-((2*3)/2)^2)/((2*3)))*(cos((60)*dtor_))),((linewid/10))*(((2*3)/2+((7*2/3)^2-((2*3)/2)^2)/((2*3)))*(sin((60)*dtor_)))) + SE: (((linewid/10))*(0+7/3),((linewid/10))*(((7*2/3)^2-((2*3)/2)^2)/((2*3))))+(((linewid/10))*(((2*3)/2+((7*2/3)^2-((2*3)/2)^2)/((2*3)))*(cos((-60)*dtor_))),((linewid/10))*(((2*3)/2+((7*2/3)^2-((2*3)/2)^2)/((2*3)))*(sin((-60)*dtor_)))) + N_Out: circle diam (3/2)*(linewid/10) \ + at (((linewid/10))*(0+7+((3/2)/2)),0) + Out: (((linewid/10))*(0+7+(3/2)),0) + In1: (((linewid/10))*(-sqrt((7*(2*3)/((2*3)))^2-((2*3)/2)^2)+sqrt((7*(2*3)/((2*3)))^2-((2*3)/2/min(2,6-1)*(2+1-2*1))^2)),((linewid/10))*((2*3)/2/min(2,6-1)*(2+1-2*1))) + + In2: (((linewid/10))*(-sqrt((7*(2*3)/((2*3)))^2-((2*3)/2)^2)+sqrt((7*(2*3)/((2*3)))^2-((2*3)/2/min(2,6-1)*(2+1-2*2))^2)),((linewid/10))*((2*3)/2/min(2,6-1)*(2+1-2*2))) + + + + C: (((linewid/10))*(0+7/2),0) + ] with .In2 at (G4.In2,G5.Out) + +# Output to other latches +TOL: (G2.Out,C)+(4*(linewid/10)*5/2,-4*(linewid/10)) + move to TOL+(3*(linewid/10)*5/2,-(linewid/10)*5/2/3) ; {move down 0.15} + "\sf {\sl To other latches}" below + +# Remaining input lines + line from G1.In1 to (DE,G1.In1); "\sf D " rjust + line from G1.In2 to (DE,G1.In2); "\sf E " rjust + [ circle rad (0.04*linewid) fill 0 ] with .c at G1.In2-((linewid/10)*5/2,0) + move to last [].c; line to (Here,G2.In2) then to G2.In2 + line from C to B7.In1 + +# Connect Bi, and connect to output bus + [ circle rad (0.04*linewid) fill 0 ] with .c at T1.c + move to last [].c ; line down (A2.y-A1.y)/2 + line to (TOL-(1*(linewid/10)*5/2,0),Here) ; arrow to (Here,TOL) + [ circle rad (0.04*linewid) fill 0 ] with .c at T2.c + move to last [].c ; line down (A2.y-A1.y)/2 + line to (TOL-(2*(linewid/10)*5/2,0),Here) ; arrow to (Here,TOL) + [ circle rad (0.04*linewid) fill 0 ] with .c at T3.c + move to last [].c ; line down (A2.y-A1.y)/2 + line to (TOL-(3*(linewid/10)*5/2,0),Here) ; arrow to (Here,TOL) + + +# G1 to G2 + [ circle rad (0.04*linewid) fill 0 ] with .c at (T1.c,G1) + move to last [].c; line to (Here,G2.In1) then to G2.In1 + +# Upper And inputs to output bus + line left 4*(linewid/10)*5/2 from G3.In1 + arrow to (Here,TOL) + line left 3*(linewid/10)*5/2 from G3.In2 + arrow to (Here,TOL) + line left 2*(linewid/10)*5/2 from G3.In3 + arrow to (Here,TOL) + line left 1*(linewid/10)*5/2 from G3.In4 + arrow to (Here,TOL) + + + line from B2.Out to (G3.In1,B2)-(4*(linewid/10)*5/2,0) ; [ circle rad (0.04*linewid) fill 0 ] with .c at Here + move to last [].c + line from B4.Out to (G3.In2,B4)-(3*(linewid/10)*5/2,0) ; [ circle rad (0.04*linewid) fill 0 ] with .c at Here + move to last [].c + line from B6.Out to (G3.In3,B6)-(2*(linewid/10)*5/2,0) ; [ circle rad (0.04*linewid) fill 0 ] with .c at Here + move to last [].c + line from G1.Out to (G3.In4,G1)-((linewid/10)*5/2,0) ; [ circle rad (0.04*linewid) fill 0 ] with .c at Here + move to last [].c + +# Lower And inputs + line left 4*(linewid/10)*5/2 from G5.In1 ; [ circle rad (0.04*linewid) fill 0 ] with .c at Here + move to last [].c + line left 3*(linewid/10)*5/2 from G5.In2 ; [ circle rad (0.04*linewid) fill 0 ] with .c at Here + move to last [].c + line left 2*(linewid/10)*5/2 from G5.In3 ; [ circle rad (0.04*linewid) fill 0 ] with .c at Here + move to last [].c + line from G2.Out to G5.In4 ; [ circle rad (0.04*linewid) fill 0 ] with .c at (TOL,Here) + move to last [].c ; arrow to (Here,TOL) + +# Fix up G4, G6, G7 + line from G3.Out to G4.In1 + line right (linewid/10)*5/2 from G4.Out + {[ circle rad (0.04*linewid) fill 0 ] with .c at Here + move to last [].c; line right (linewid/10)*5/2 ; "\sf Q7" ljust; move right 0.2 } # letters in object + line down 2*(linewid/10)*5/2 then to G6.In1+(-(linewid/10)*5/2,(linewid/10)*5/2) + line to (Here,G6.In1) then to G6.In1 + line from G4.In2 to (G6.In1+(-(linewid/10)*5/2,0),G4.In2) + line down (linewid/10)*5/2 then to G7.Out+((linewid/10)*5/2,2*(linewid/10)*5/2) + line to (Here,G7) then to G7.Out + line from G6.Out right (linewid/10)*5/2 ; line to (Here,G7.In1) then to G7.In1 + line from G5.Out to G7.In2 + line left (linewid/10)*5/2 from G6.In2 ; arrow to (Here,TOL) + [ circle rad (0.04*linewid) fill 0 ] with .c at (Here,C) + move to last [].c ; line to B7.Out + +.PE diff --git a/graphics/circuit_macros/examples/nsvg/dev/test.svg b/graphics/circuit_macros/examples/nsvg/dev/test.svg new file mode 100644 index 0000000000..a9c554efdc --- /dev/null +++ b/graphics/circuit_macros/examples/nsvg/dev/test.svg @@ -0,0 +1,239 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/graphics/circuit_macros/examples/nsvg/dev/test.tex b/graphics/circuit_macros/examples/nsvg/dev/test.tex new file mode 100644 index 0000000000..e4361f7033 --- /dev/null +++ b/graphics/circuit_macros/examples/nsvg/dev/test.tex @@ -0,0 +1,1136 @@ +\begin{tikzpicture}[scale=2.54] +% dpic version 2020.06.01 option -g for TikZ and PGF 1.01 +\ifx\dpiclw\undefined\newdimen\dpiclw\fi +\global\def\dpicdraw{\draw[line width=\dpiclw]} +\global\def\dpicstop{;} +\dpiclw=0.8bp +\dpiclw=0.8bp +\draw (0,0) node[left=-2bp]{\sf C }; +\draw (0,0.825) node[left=-2bp]{\sf A0 }; +\draw (0,1.125) node[left=-2bp]{\sf A1 }; +\draw (0,1.425) node[left=-2bp]{\sf A2 }; +\dpicdraw (0,1.425) + --(0.375,1.425)\dpicstop +\dpicdraw (0.55,1.425) + --(0.375,1.325) + --(0.375,1.525) + --(0.55,1.425)\dpicstop +\dpicdraw (0.5875,1.425) circle (0.014764in)\dpicstop +\dpicdraw (0.625,1.425) + --(0.875,1.425)\dpicstop +\dpicdraw (1.125,1.425) + --(0.95,1.325) + --(0.95,1.525) + --(1.125,1.425)\dpicstop +\dpicdraw (0.9125,1.425) circle (0.014764in)\dpicstop +\dpicdraw (0,1.125) + --(0.375,1.125)\dpicstop +\dpicdraw (0.55,1.125) + --(0.375,1.025) + --(0.375,1.225) + --(0.55,1.125)\dpicstop +\dpicdraw (0.5875,1.125) circle (0.014764in)\dpicstop +\dpicdraw (0.625,1.125) + --(0.875,1.125)\dpicstop +\dpicdraw (1.125,1.125) + --(0.95,1.025) + --(0.95,1.225) + --(1.125,1.125)\dpicstop +\dpicdraw (0.9125,1.125) circle (0.014764in)\dpicstop +\dpicdraw (0,0.825) + --(0.375,0.825)\dpicstop +\dpicdraw (0.55,0.825) + --(0.375,0.725) + --(0.375,0.925) + --(0.55,0.825)\dpicstop +\dpicdraw (0.5875,0.825) circle (0.014764in)\dpicstop +\dpicdraw (0.625,0.825) + --(0.875,0.825)\dpicstop +\dpicdraw (1.125,0.825) + --(0.95,0.725) + --(0.95,0.925) + --(1.125,0.825)\dpicstop +\dpicdraw (0.9125,0.825) circle (0.014764in)\dpicstop +\dpicdraw (0.5875,0) + --(0.4125,-0.1) + --(0.4125,0.1) + --(0.5875,0)\dpicstop +\dpicdraw (0.316667,0.675) + --(0.194444,0.675)\dpicstop +\dpicdraw (0.198957,0.677179) + ..controls (0.245009,0.581799) and (0.245392,0.470695) + ..(0.2,0.375)\dpicstop +\dpicdraw (0.194444,0.375) + --(0.316667,0.375)\dpicstop +\dpicdraw (0.316667,0.675) + ..controls (0.417105,0.675) and (0.508302,0.616374) + ..(0.55,0.525)\dpicstop +\dpicdraw (0.316667,0.375) + ..controls (0.417105,0.375) and (0.508302,0.433626) + ..(0.55,0.525)\dpicstop +\dpicdraw (0.5875,0.525) circle (0.014764in)\dpicstop +\dpicdraw (0.944444,0.375) + --(0.822222,0.375)\dpicstop +\dpicdraw (0.826735,0.377179) + ..controls (0.872787,0.281799) and (0.87317,0.170695) + ..(0.827778,0.075)\dpicstop +\dpicdraw (0.822222,0.075) + --(0.944444,0.075)\dpicstop +\dpicdraw (0.944444,0.375) + ..controls (1.044883,0.375) and (1.136079,0.316374) + ..(1.177778,0.225)\dpicstop +\dpicdraw (0.944444,0.075) + ..controls (1.044883,0.075) and (1.136079,0.133626) + ..(1.177778,0.225)\dpicstop +\dpicdraw (1.215278,0.225) circle (0.014764in)\dpicstop +\dpicdraw (2.577778,1.1625) + --(2.377778,1.1625) + --(2.377778,1.4625) + --(2.577778,1.4625)\dpicstop +\dpicdraw (2.577778,1.4625) + ..controls (2.66062,1.4625) and (2.727778,1.395343) + ..(2.727778,1.3125) + ..controls (2.727778,1.229657) and (2.66062,1.1625) + ..(2.577778,1.1625)\dpicstop +\dpicdraw (2.577778,0.1875) + --(2.377778,0.1875) + --(2.377778,0.4875) + --(2.577778,0.4875)\dpicstop +\dpicdraw (2.577778,0.4875) + ..controls (2.66062,0.4875) and (2.727778,0.420343) + ..(2.727778,0.3375) + ..controls (2.727778,0.254657) and (2.66062,0.1875) + ..(2.577778,0.1875)\dpicstop +\dpicdraw (3.177778,0.4125) + --(2.977778,0.4125) + --(2.977778,0.7125) + --(3.177778,0.7125)\dpicstop +\dpicdraw (3.177778,0.7125) + ..controls (3.26062,0.7125) and (3.327778,0.645343) + ..(3.327778,0.5625) + ..controls (3.327778,0.479657) and (3.26062,0.4125) + ..(3.177778,0.4125)\dpicstop +\dpicdraw (3.668802,1.3875) + --(3.54658,1.3875)\dpicstop +\dpicdraw (3.551093,1.389679) + ..controls (3.597145,1.294299) and (3.597528,1.183195) + ..(3.552136,1.0875)\dpicstop +\dpicdraw (3.54658,1.0875) + --(3.668802,1.0875)\dpicstop +\dpicdraw (3.668802,1.3875) + ..controls (3.769241,1.3875) and (3.860437,1.328874) + ..(3.902136,1.2375)\dpicstop +\dpicdraw (3.668802,1.0875) + ..controls (3.769241,1.0875) and (3.860437,1.146126) + ..(3.902136,1.2375)\dpicstop +\dpicdraw (3.939636,1.2375) circle (0.014764in)\dpicstop +\dpicdraw (3.668802,0.5625) + --(3.54658,0.5625)\dpicstop +\dpicdraw (3.551093,0.564679) + ..controls (3.597145,0.469299) and (3.597528,0.358195) + ..(3.552136,0.2625)\dpicstop +\dpicdraw (3.54658,0.2625) + --(3.668802,0.2625)\dpicstop +\dpicdraw (3.668802,0.5625) + ..controls (3.769241,0.5625) and (3.860437,0.503874) + ..(3.902136,0.4125)\dpicstop +\dpicdraw (3.668802,0.2625) + ..controls (3.769241,0.2625) and (3.860437,0.321126) + ..(3.902136,0.4125)\dpicstop +\dpicdraw (3.939636,0.4125) circle (0.014764in)\dpicstop +\draw (2.127778,-0.241667) node[below=-2bp]{\sf {\sl To other latches}}; +\dpicdraw (0.225642,0.6) + --(0,0.6)\dpicstop +\draw (0,0.6) node[left=-2bp]{\sf D }; +\dpicdraw (0.225642,0.45) + --(0,0.45)\dpicstop +\draw (0,0.45) node[left=-2bp]{\sf E }; +\dpicdraw[fill=black](0.100642,0.45) circle (0.007874in)\dpicstop +\dpicdraw (0.100642,0.45) + --(0.100642,0.15) + --(0.85342,0.15)\dpicstop +\dpicdraw (0,0) + --(0.4125,0)\dpicstop +\dpicdraw[fill=black](0.75,1.425) circle (0.007874in)\dpicstop +\dpicdraw (0.75,1.425) + --(0.75,1.275)\dpicstop +\dpicdraw (0.75,1.275) + --(1.627778,1.275)\dpicstop +\filldraw[line width=0bp](1.602778,-0.1) + --(1.627778,-0.2) + --(1.652778,-0.1) --cycle\dpicstop +\dpicdraw (1.627778,1.275) + --(1.627778,-0.177094)\dpicstop +\dpicdraw[fill=black](0.75,1.125) circle (0.007874in)\dpicstop +\dpicdraw (0.75,1.125) + --(0.75,0.975)\dpicstop +\dpicdraw (0.75,0.975) + --(1.502778,0.975)\dpicstop +\filldraw[line width=0bp](1.477778,-0.1) + --(1.502778,-0.2) + --(1.527778,-0.1) --cycle\dpicstop +\dpicdraw (1.502778,0.975) + --(1.502778,-0.177094)\dpicstop +\dpicdraw[fill=black](0.75,0.825) circle (0.007874in)\dpicstop +\dpicdraw (0.75,0.825) + --(0.75,0.675)\dpicstop +\dpicdraw (0.75,0.675) + --(1.377778,0.675)\dpicstop +\filldraw[line width=0bp](1.352778,-0.1) + --(1.377778,-0.2) + --(1.402778,-0.1) --cycle\dpicstop +\dpicdraw (1.377778,0.675) + --(1.377778,-0.177094)\dpicstop +\dpicdraw[fill=black](0.75,0.526089) circle (0.007874in)\dpicstop +\dpicdraw (0.75,0.526089) + --(0.75,0.3) + --(0.85342,0.3)\dpicstop +\dpicdraw (2.377778,1.425) + --(1.877778,1.425)\dpicstop +\filldraw[line width=0bp](1.852778,-0.1) + --(1.877778,-0.2) + --(1.902778,-0.1) --cycle\dpicstop +\dpicdraw (1.877778,1.425) + --(1.877778,-0.177094)\dpicstop +\dpicdraw (2.377778,1.35) + --(2.002778,1.35)\dpicstop +\filldraw[line width=0bp](1.977778,-0.1) + --(2.002778,-0.2) + --(2.027778,-0.1) --cycle\dpicstop +\dpicdraw (2.002778,1.35) + --(2.002778,-0.177094)\dpicstop +\dpicdraw (2.377778,1.275) + --(2.127778,1.275)\dpicstop +\filldraw[line width=0bp](2.102778,-0.1) + --(2.127778,-0.2) + --(2.152778,-0.1) --cycle\dpicstop +\dpicdraw (2.127778,1.275) + --(2.127778,-0.177094)\dpicstop +\dpicdraw (2.377778,1.2) + --(2.252778,1.2)\dpicstop +\filldraw[line width=0bp](2.227778,-0.1) + --(2.252778,-0.2) + --(2.277778,-0.1) --cycle\dpicstop +\dpicdraw (2.252778,1.2) + --(2.252778,-0.177094)\dpicstop +\dpicdraw (1.125,1.425) + --(1.877778,1.425)\dpicstop +\dpicdraw[fill=black](1.877778,1.425) circle (0.007874in)\dpicstop +\dpicdraw (1.125,1.125) + --(2.002778,1.125)\dpicstop +\dpicdraw[fill=black](2.002778,1.125) circle (0.007874in)\dpicstop +\dpicdraw (1.125,0.825) + --(2.127778,0.825)\dpicstop +\dpicdraw[fill=black](2.127778,0.825) circle (0.007874in)\dpicstop +\dpicdraw (0.625,0.525) + --(2.252778,0.526089)\dpicstop +\dpicdraw[fill=black](2.252778,0.526089) circle (0.007874in)\dpicstop +\dpicdraw (2.377778,0.45) + --(1.877778,0.45)\dpicstop +\dpicdraw[fill=black](1.877778,0.45) circle (0.007874in)\dpicstop +\dpicdraw (2.377778,0.375) + --(2.002778,0.375)\dpicstop +\dpicdraw[fill=black](2.002778,0.375) circle (0.007874in)\dpicstop +\dpicdraw (2.377778,0.3) + --(2.127778,0.3)\dpicstop +\dpicdraw[fill=black](2.127778,0.3) circle (0.007874in)\dpicstop +\dpicdraw (1.252778,0.225) + --(2.377778,0.225)\dpicstop +\dpicdraw[fill=black](1.752778,0.225) circle (0.007874in)\dpicstop +\filldraw[line width=0bp](1.727778,-0.1) + --(1.752778,-0.2) + --(1.777778,-0.1) --cycle\dpicstop +\dpicdraw (1.752778,0.225) + --(1.752778,-0.177094)\dpicstop +\dpicdraw (2.727778,1.3125) + --(3.577778,1.3125)\dpicstop +\dpicdraw (3.977136,1.2375) + --(4.102136,1.2375)\dpicstop +\dpicdraw[fill=black](4.102136,1.2375) circle (0.007874in)\dpicstop +\dpicdraw (4.102136,1.2375) + --(4.227136,1.2375)\dpicstop +\draw (4.227136,1.2375) node[right=-2bp]{\sf Q7}; +\dpicdraw (4.102136,1.2375) + --(4.102136,0.9875) + --(2.852778,0.7625)\dpicstop +\dpicdraw (2.852778,0.7625) + --(2.852778,0.6375) + --(2.977778,0.6375)\dpicstop +\dpicdraw (3.577778,1.1625) + --(2.852778,1.1625)\dpicstop +\dpicdraw (2.852778,1.1625) + --(2.852778,1.0375) + --(4.102136,0.6625)\dpicstop +\dpicdraw (4.102136,0.6625) + --(4.102136,0.413589) + --(3.977136,0.4125)\dpicstop +\dpicdraw (3.327778,0.5625) + --(3.452778,0.5625)\dpicstop +\dpicdraw (3.452778,0.5625) + --(3.452778,0.4875) + --(3.577778,0.4875)\dpicstop +\dpicdraw (2.727778,0.3375) + --(3.577778,0.3375)\dpicstop +\dpicdraw (2.977778,0.4875) + --(2.852778,0.4875)\dpicstop +\filldraw[line width=0bp](2.827778,-0.1) + --(2.852778,-0.2) + --(2.877778,-0.1) --cycle\dpicstop +\dpicdraw (2.852778,0.4875) + --(2.852778,-0.177094)\dpicstop +\dpicdraw[fill=black](2.852778,0) circle (0.007874in)\dpicstop +\dpicdraw (2.852778,0) + --(0.5875,0)\dpicstop +\end{tikzpicture} +\begin{tikzpicture}[scale=2.54] +% dpic version 2020.06.01 option -g for TikZ and PGF 1.01 +\ifx\dpiclw\undefined\newdimen\dpiclw\fi +\global\def\dpicdraw{\draw[line width=\dpiclw]} +\global\def\dpicstop{;} +\dpiclw=0.8bp +\dpiclw=0.8bp +\draw (0,0) node[left=-2bp]{\sf C }; +\draw (0,0.825) node[left=-2bp]{\sf A0 }; +\draw (0,1.125) node[left=-2bp]{\sf A1 }; +\draw (0,1.425) node[left=-2bp]{\sf A2 }; +\dpicdraw (0,1.425) + --(0.375,1.425)\dpicstop +\dpicdraw (0.55,1.425) + --(0.375,1.325) + --(0.375,1.525) + --(0.55,1.425)\dpicstop +\dpicdraw (0.5875,1.425) circle (0.014764in)\dpicstop +\dpicdraw (0.625,1.425) + --(0.875,1.425)\dpicstop +\dpicdraw (1.125,1.425) + --(0.95,1.325) + --(0.95,1.525) + --(1.125,1.425)\dpicstop +\dpicdraw (0.9125,1.425) circle (0.014764in)\dpicstop +\dpicdraw (0,1.125) + --(0.375,1.125)\dpicstop +\dpicdraw (0.55,1.125) + --(0.375,1.025) + --(0.375,1.225) + --(0.55,1.125)\dpicstop +\dpicdraw (0.5875,1.125) circle (0.014764in)\dpicstop +\dpicdraw (0.625,1.125) + --(0.875,1.125)\dpicstop +\dpicdraw (1.125,1.125) + --(0.95,1.025) + --(0.95,1.225) + --(1.125,1.125)\dpicstop +\dpicdraw (0.9125,1.125) circle (0.014764in)\dpicstop +\dpicdraw (0,0.825) + --(0.375,0.825)\dpicstop +\dpicdraw (0.55,0.825) + --(0.375,0.725) + --(0.375,0.925) + --(0.55,0.825)\dpicstop +\dpicdraw (0.5875,0.825) circle (0.014764in)\dpicstop +\dpicdraw (0.625,0.825) + --(0.875,0.825)\dpicstop +\dpicdraw (1.125,0.825) + --(0.95,0.725) + --(0.95,0.925) + --(1.125,0.825)\dpicstop +\dpicdraw (0.9125,0.825) circle (0.014764in)\dpicstop +\dpicdraw (0.5875,0) + --(0.4125,-0.1) + --(0.4125,0.1) + --(0.5875,0)\dpicstop +\dpicdraw (0.316667,0.675) + --(0.194444,0.675)\dpicstop +\dpicdraw (0.198957,0.677179) + ..controls (0.245009,0.581799) and (0.245392,0.470695) + ..(0.2,0.375)\dpicstop +\dpicdraw (0.194444,0.375) + --(0.316667,0.375)\dpicstop +\dpicdraw (0.316667,0.675) + ..controls (0.417105,0.675) and (0.508302,0.616374) + ..(0.55,0.525)\dpicstop +\dpicdraw (0.316667,0.375) + ..controls (0.417105,0.375) and (0.508302,0.433626) + ..(0.55,0.525)\dpicstop +\dpicdraw (0.5875,0.525) circle (0.014764in)\dpicstop +\dpicdraw (0.944444,0.375) + --(0.822222,0.375)\dpicstop +\dpicdraw (0.826735,0.377179) + ..controls (0.872787,0.281799) and (0.87317,0.170695) + ..(0.827778,0.075)\dpicstop +\dpicdraw (0.822222,0.075) + --(0.944444,0.075)\dpicstop +\dpicdraw (0.944444,0.375) + ..controls (1.044883,0.375) and (1.136079,0.316374) + ..(1.177778,0.225)\dpicstop +\dpicdraw (0.944444,0.075) + ..controls (1.044883,0.075) and (1.136079,0.133626) + ..(1.177778,0.225)\dpicstop +\dpicdraw (1.215278,0.225) circle (0.014764in)\dpicstop +\dpicdraw (2.577778,1.1625) + --(2.377778,1.1625) + --(2.377778,1.4625) + --(2.577778,1.4625)\dpicstop +\dpicdraw (2.577778,1.4625) + ..controls (2.66062,1.4625) and (2.727778,1.395343) + ..(2.727778,1.3125) + ..controls (2.727778,1.229657) and (2.66062,1.1625) + ..(2.577778,1.1625)\dpicstop +\dpicdraw (2.577778,0.1875) + --(2.377778,0.1875) + --(2.377778,0.4875) + --(2.577778,0.4875)\dpicstop +\dpicdraw (2.577778,0.4875) + ..controls (2.66062,0.4875) and (2.727778,0.420343) + ..(2.727778,0.3375) + ..controls (2.727778,0.254657) and (2.66062,0.1875) + ..(2.577778,0.1875)\dpicstop +\dpicdraw (3.177778,0.4125) + --(2.977778,0.4125) + --(2.977778,0.7125) + --(3.177778,0.7125)\dpicstop +\dpicdraw (3.177778,0.7125) + ..controls (3.26062,0.7125) and (3.327778,0.645343) + ..(3.327778,0.5625) + ..controls (3.327778,0.479657) and (3.26062,0.4125) + ..(3.177778,0.4125)\dpicstop +\dpicdraw (3.668802,1.3875) + --(3.54658,1.3875)\dpicstop +\dpicdraw (3.551093,1.389679) + ..controls (3.597145,1.294299) and (3.597528,1.183195) + ..(3.552136,1.0875)\dpicstop +\dpicdraw (3.54658,1.0875) + --(3.668802,1.0875)\dpicstop +\dpicdraw (3.668802,1.3875) + ..controls (3.769241,1.3875) and (3.860437,1.328874) + ..(3.902136,1.2375)\dpicstop +\dpicdraw (3.668802,1.0875) + ..controls (3.769241,1.0875) and (3.860437,1.146126) + ..(3.902136,1.2375)\dpicstop +\dpicdraw (3.939636,1.2375) circle (0.014764in)\dpicstop +\dpicdraw (3.668802,0.5625) + --(3.54658,0.5625)\dpicstop +\dpicdraw (3.551093,0.564679) + ..controls (3.597145,0.469299) and (3.597528,0.358195) + ..(3.552136,0.2625)\dpicstop +\dpicdraw (3.54658,0.2625) + --(3.668802,0.2625)\dpicstop +\dpicdraw (3.668802,0.5625) + ..controls (3.769241,0.5625) and (3.860437,0.503874) + ..(3.902136,0.4125)\dpicstop +\dpicdraw (3.668802,0.2625) + ..controls (3.769241,0.2625) and (3.860437,0.321126) + ..(3.902136,0.4125)\dpicstop +\dpicdraw (3.939636,0.4125) circle (0.014764in)\dpicstop +\draw (2.127778,-0.241667) node[below=-2bp]{\sf {\sl To other latches}}; +\dpicdraw (0.225642,0.6) + --(0,0.6)\dpicstop +\draw (0,0.6) node[left=-2bp]{\sf D }; +\dpicdraw (0.225642,0.45) + --(0,0.45)\dpicstop +\draw (0,0.45) node[left=-2bp]{\sf E }; +\dpicdraw[fill=black](0.100642,0.45) circle (0.007874in)\dpicstop +\dpicdraw (0.100642,0.45) + --(0.100642,0.15) + --(0.85342,0.15)\dpicstop +\dpicdraw (0,0) + --(0.4125,0)\dpicstop +\dpicdraw[fill=black](0.75,1.425) circle (0.007874in)\dpicstop +\dpicdraw (0.75,1.425) + --(0.75,1.275)\dpicstop +\dpicdraw (0.75,1.275) + --(1.627778,1.275)\dpicstop +\filldraw[line width=0bp](1.602778,-0.1) + --(1.627778,-0.2) + --(1.652778,-0.1) --cycle\dpicstop +\dpicdraw (1.627778,1.275) + --(1.627778,-0.177094)\dpicstop +\dpicdraw[fill=black](0.75,1.125) circle (0.007874in)\dpicstop +\dpicdraw (0.75,1.125) + --(0.75,0.975)\dpicstop +\dpicdraw (0.75,0.975) + --(1.502778,0.975)\dpicstop +\filldraw[line width=0bp](1.477778,-0.1) + --(1.502778,-0.2) + --(1.527778,-0.1) --cycle\dpicstop +\dpicdraw (1.502778,0.975) + --(1.502778,-0.177094)\dpicstop +\dpicdraw[fill=black](0.75,0.825) circle (0.007874in)\dpicstop +\dpicdraw (0.75,0.825) + --(0.75,0.675)\dpicstop +\dpicdraw (0.75,0.675) + --(1.377778,0.675)\dpicstop +\filldraw[line width=0bp](1.352778,-0.1) + --(1.377778,-0.2) + --(1.402778,-0.1) --cycle\dpicstop +\dpicdraw (1.377778,0.675) + --(1.377778,-0.177094)\dpicstop +\dpicdraw[fill=black](0.75,0.526089) circle (0.007874in)\dpicstop +\dpicdraw (0.75,0.526089) + --(0.75,0.3) + --(0.85342,0.3)\dpicstop +\dpicdraw (2.377778,1.425) + --(1.877778,1.425)\dpicstop +\filldraw[line width=0bp](1.852778,-0.1) + --(1.877778,-0.2) + --(1.902778,-0.1) --cycle\dpicstop +\dpicdraw (1.877778,1.425) + --(1.877778,-0.177094)\dpicstop +\dpicdraw (2.377778,1.35) + --(2.002778,1.35)\dpicstop +\filldraw[line width=0bp](1.977778,-0.1) + --(2.002778,-0.2) + --(2.027778,-0.1) --cycle\dpicstop +\dpicdraw (2.002778,1.35) + --(2.002778,-0.177094)\dpicstop +\dpicdraw (2.377778,1.275) + --(2.127778,1.275)\dpicstop +\filldraw[line width=0bp](2.102778,-0.1) + --(2.127778,-0.2) + --(2.152778,-0.1) --cycle\dpicstop +\dpicdraw (2.127778,1.275) + --(2.127778,-0.177094)\dpicstop +\dpicdraw (2.377778,1.2) + --(2.252778,1.2)\dpicstop +\filldraw[line width=0bp](2.227778,-0.1) + --(2.252778,-0.2) + --(2.277778,-0.1) --cycle\dpicstop +\dpicdraw (2.252778,1.2) + --(2.252778,-0.177094)\dpicstop +\dpicdraw (1.125,1.425) + --(1.877778,1.425)\dpicstop +\dpicdraw[fill=black](1.877778,1.425) circle (0.007874in)\dpicstop +\dpicdraw (1.125,1.125) + --(2.002778,1.125)\dpicstop +\dpicdraw[fill=black](2.002778,1.125) circle (0.007874in)\dpicstop +\dpicdraw (1.125,0.825) + --(2.127778,0.825)\dpicstop +\dpicdraw[fill=black](2.127778,0.825) circle (0.007874in)\dpicstop +\dpicdraw (0.625,0.525) + --(2.252778,0.526089)\dpicstop +\dpicdraw[fill=black](2.252778,0.526089) circle (0.007874in)\dpicstop +\dpicdraw (2.377778,0.45) + --(1.877778,0.45)\dpicstop +\dpicdraw[fill=black](1.877778,0.45) circle (0.007874in)\dpicstop +\dpicdraw (2.377778,0.375) + --(2.002778,0.375)\dpicstop +\dpicdraw[fill=black](2.002778,0.375) circle (0.007874in)\dpicstop +\dpicdraw (2.377778,0.3) + --(2.127778,0.3)\dpicstop +\dpicdraw[fill=black](2.127778,0.3) circle (0.007874in)\dpicstop +\dpicdraw (1.252778,0.225) + --(2.377778,0.225)\dpicstop +\dpicdraw[fill=black](1.752778,0.225) circle (0.007874in)\dpicstop +\filldraw[line width=0bp](1.727778,-0.1) + --(1.752778,-0.2) + --(1.777778,-0.1) --cycle\dpicstop +\dpicdraw (1.752778,0.225) + --(1.752778,-0.177094)\dpicstop +\dpicdraw (2.727778,1.3125) + --(3.577778,1.3125)\dpicstop +\dpicdraw (3.977136,1.2375) + --(4.102136,1.2375)\dpicstop +\dpicdraw[fill=black](4.102136,1.2375) circle (0.007874in)\dpicstop +\dpicdraw (4.102136,1.2375) + --(4.227136,1.2375)\dpicstop +\draw (4.227136,1.2375) node[right=-2bp]{\sf Q7}; +\dpicdraw (4.102136,1.2375) + --(4.102136,0.9875) + --(2.852778,0.7625)\dpicstop +\dpicdraw (2.852778,0.7625) + --(2.852778,0.6375) + --(2.977778,0.6375)\dpicstop +\dpicdraw (3.577778,1.1625) + --(2.852778,1.1625)\dpicstop +\dpicdraw (2.852778,1.1625) + --(2.852778,1.0375) + --(4.102136,0.6625)\dpicstop +\dpicdraw (4.102136,0.6625) + --(4.102136,0.413589) + --(3.977136,0.4125)\dpicstop +\dpicdraw (3.327778,0.5625) + --(3.452778,0.5625)\dpicstop +\dpicdraw (3.452778,0.5625) + --(3.452778,0.4875) + --(3.577778,0.4875)\dpicstop +\dpicdraw (2.727778,0.3375) + --(3.577778,0.3375)\dpicstop +\dpicdraw (2.977778,0.4875) + --(2.852778,0.4875)\dpicstop +\filldraw[line width=0bp](2.827778,-0.1) + --(2.852778,-0.2) + --(2.877778,-0.1) --cycle\dpicstop +\dpicdraw (2.852778,0.4875) + --(2.852778,-0.177094)\dpicstop +\dpicdraw[fill=black](2.852778,0) circle (0.007874in)\dpicstop +\dpicdraw (2.852778,0) + --(0.5875,0)\dpicstop +\end{tikzpicture} +\begin{tikzpicture}[scale=2.54] +% dpic version 2020.06.01 option -g for TikZ and PGF 1.01 +\ifx\dpiclw\undefined\newdimen\dpiclw\fi +\global\def\dpicdraw{\draw[line width=\dpiclw]} +\global\def\dpicstop{;} +\dpiclw=0.8bp +\dpiclw=0.8bp +\draw (0,0) node[left=-2bp]{\sf C }; +\draw (0,0.825) node[left=-2bp]{\sf A0 }; +\draw (0,1.125) node[left=-2bp]{\sf A1 }; +\draw (0,1.425) node[left=-2bp]{\sf A2 }; +\dpicdraw (0,1.425) + --(0.375,1.425)\dpicstop +\dpicdraw (0.55,1.425) + --(0.375,1.325) + --(0.375,1.525) + --(0.55,1.425)\dpicstop +\dpicdraw (0.5875,1.425) circle (0.014764in)\dpicstop +\dpicdraw (0.625,1.425) + --(0.875,1.425)\dpicstop +\dpicdraw (1.125,1.425) + --(0.95,1.325) + --(0.95,1.525) + --(1.125,1.425)\dpicstop +\dpicdraw (0.9125,1.425) circle (0.014764in)\dpicstop +\dpicdraw (0,1.125) + --(0.375,1.125)\dpicstop +\dpicdraw (0.55,1.125) + --(0.375,1.025) + --(0.375,1.225) + --(0.55,1.125)\dpicstop +\dpicdraw (0.5875,1.125) circle (0.014764in)\dpicstop +\dpicdraw (0.625,1.125) + --(0.875,1.125)\dpicstop +\dpicdraw (1.125,1.125) + --(0.95,1.025) + --(0.95,1.225) + --(1.125,1.125)\dpicstop +\dpicdraw (0.9125,1.125) circle (0.014764in)\dpicstop +\dpicdraw (0,0.825) + --(0.375,0.825)\dpicstop +\dpicdraw (0.55,0.825) + --(0.375,0.725) + --(0.375,0.925) + --(0.55,0.825)\dpicstop +\dpicdraw (0.5875,0.825) circle (0.014764in)\dpicstop +\dpicdraw (0.625,0.825) + --(0.875,0.825)\dpicstop +\dpicdraw (1.125,0.825) + --(0.95,0.725) + --(0.95,0.925) + --(1.125,0.825)\dpicstop +\dpicdraw (0.9125,0.825) circle (0.014764in)\dpicstop +\dpicdraw (0.5875,0) + --(0.4125,-0.1) + --(0.4125,0.1) + --(0.5875,0)\dpicstop +\dpicdraw (0.316667,0.675) + --(0.194444,0.675)\dpicstop +\dpicdraw (0.198957,0.677179) + ..controls (0.245009,0.581799) and (0.245392,0.470695) + ..(0.2,0.375)\dpicstop +\dpicdraw (0.194444,0.375) + --(0.316667,0.375)\dpicstop +\dpicdraw (0.316667,0.675) + ..controls (0.417105,0.675) and (0.508302,0.616374) + ..(0.55,0.525)\dpicstop +\dpicdraw (0.316667,0.375) + ..controls (0.417105,0.375) and (0.508302,0.433626) + ..(0.55,0.525)\dpicstop +\dpicdraw (0.5875,0.525) circle (0.014764in)\dpicstop +\dpicdraw (0.944444,0.375) + --(0.822222,0.375)\dpicstop +\dpicdraw (0.826735,0.377179) + ..controls (0.872787,0.281799) and (0.87317,0.170695) + ..(0.827778,0.075)\dpicstop +\dpicdraw (0.822222,0.075) + --(0.944444,0.075)\dpicstop +\dpicdraw (0.944444,0.375) + ..controls (1.044883,0.375) and (1.136079,0.316374) + ..(1.177778,0.225)\dpicstop +\dpicdraw (0.944444,0.075) + ..controls (1.044883,0.075) and (1.136079,0.133626) + ..(1.177778,0.225)\dpicstop +\dpicdraw (1.215278,0.225) circle (0.014764in)\dpicstop +\dpicdraw (2.577778,1.1625) + --(2.377778,1.1625) + --(2.377778,1.4625) + --(2.577778,1.4625)\dpicstop +\dpicdraw (2.577778,1.4625) + ..controls (2.66062,1.4625) and (2.727778,1.395343) + ..(2.727778,1.3125) + ..controls (2.727778,1.229657) and (2.66062,1.1625) + ..(2.577778,1.1625)\dpicstop +\dpicdraw (2.577778,0.1875) + --(2.377778,0.1875) + --(2.377778,0.4875) + --(2.577778,0.4875)\dpicstop +\dpicdraw (2.577778,0.4875) + ..controls (2.66062,0.4875) and (2.727778,0.420343) + ..(2.727778,0.3375) + ..controls (2.727778,0.254657) and (2.66062,0.1875) + ..(2.577778,0.1875)\dpicstop +\dpicdraw (3.177778,0.4125) + --(2.977778,0.4125) + --(2.977778,0.7125) + --(3.177778,0.7125)\dpicstop +\dpicdraw (3.177778,0.7125) + ..controls (3.26062,0.7125) and (3.327778,0.645343) + ..(3.327778,0.5625) + ..controls (3.327778,0.479657) and (3.26062,0.4125) + ..(3.177778,0.4125)\dpicstop +\dpicdraw (3.668802,1.3875) + --(3.54658,1.3875)\dpicstop +\dpicdraw (3.551093,1.389679) + ..controls (3.597145,1.294299) and (3.597528,1.183195) + ..(3.552136,1.0875)\dpicstop +\dpicdraw (3.54658,1.0875) + --(3.668802,1.0875)\dpicstop +\dpicdraw (3.668802,1.3875) + ..controls (3.769241,1.3875) and (3.860437,1.328874) + ..(3.902136,1.2375)\dpicstop +\dpicdraw (3.668802,1.0875) + ..controls (3.769241,1.0875) and (3.860437,1.146126) + ..(3.902136,1.2375)\dpicstop +\dpicdraw (3.939636,1.2375) circle (0.014764in)\dpicstop +\dpicdraw (3.668802,0.5625) + --(3.54658,0.5625)\dpicstop +\dpicdraw (3.551093,0.564679) + ..controls (3.597145,0.469299) and (3.597528,0.358195) + ..(3.552136,0.2625)\dpicstop +\dpicdraw (3.54658,0.2625) + --(3.668802,0.2625)\dpicstop +\dpicdraw (3.668802,0.5625) + ..controls (3.769241,0.5625) and (3.860437,0.503874) + ..(3.902136,0.4125)\dpicstop +\dpicdraw (3.668802,0.2625) + ..controls (3.769241,0.2625) and (3.860437,0.321126) + ..(3.902136,0.4125)\dpicstop +\dpicdraw (3.939636,0.4125) circle (0.014764in)\dpicstop +\draw (2.127778,-0.241667) node[below=-2bp]{\sf {\sl To other latches}}; +\dpicdraw (0.225642,0.6) + --(0,0.6)\dpicstop +\draw (0,0.6) node[left=-2bp]{\sf D }; +\dpicdraw (0.225642,0.45) + --(0,0.45)\dpicstop +\draw (0,0.45) node[left=-2bp]{\sf E }; +\dpicdraw[fill=black](0.100642,0.45) circle (0.007874in)\dpicstop +\dpicdraw (0.100642,0.45) + --(0.100642,0.15) + --(0.85342,0.15)\dpicstop +\dpicdraw (0,0) + --(0.4125,0)\dpicstop +\dpicdraw[fill=black](0.75,1.425) circle (0.007874in)\dpicstop +\dpicdraw (0.75,1.425) + --(0.75,1.275)\dpicstop +\dpicdraw (0.75,1.275) + --(1.627778,1.275)\dpicstop +\filldraw[line width=0bp](1.602778,-0.1) + --(1.627778,-0.2) + --(1.652778,-0.1) --cycle\dpicstop +\dpicdraw (1.627778,1.275) + --(1.627778,-0.177094)\dpicstop +\dpicdraw[fill=black](0.75,1.125) circle (0.007874in)\dpicstop +\dpicdraw (0.75,1.125) + --(0.75,0.975)\dpicstop +\dpicdraw (0.75,0.975) + --(1.502778,0.975)\dpicstop +\filldraw[line width=0bp](1.477778,-0.1) + --(1.502778,-0.2) + --(1.527778,-0.1) --cycle\dpicstop +\dpicdraw (1.502778,0.975) + --(1.502778,-0.177094)\dpicstop +\dpicdraw[fill=black](0.75,0.825) circle (0.007874in)\dpicstop +\dpicdraw (0.75,0.825) + --(0.75,0.675)\dpicstop +\dpicdraw (0.75,0.675) + --(1.377778,0.675)\dpicstop +\filldraw[line width=0bp](1.352778,-0.1) + --(1.377778,-0.2) + --(1.402778,-0.1) --cycle\dpicstop +\dpicdraw (1.377778,0.675) + --(1.377778,-0.177094)\dpicstop +\dpicdraw[fill=black](0.75,0.526089) circle (0.007874in)\dpicstop +\dpicdraw (0.75,0.526089) + --(0.75,0.3) + --(0.85342,0.3)\dpicstop +\dpicdraw (2.377778,1.425) + --(1.877778,1.425)\dpicstop +\filldraw[line width=0bp](1.852778,-0.1) + --(1.877778,-0.2) + --(1.902778,-0.1) --cycle\dpicstop +\dpicdraw (1.877778,1.425) + --(1.877778,-0.177094)\dpicstop +\dpicdraw (2.377778,1.35) + --(2.002778,1.35)\dpicstop +\filldraw[line width=0bp](1.977778,-0.1) + --(2.002778,-0.2) + --(2.027778,-0.1) --cycle\dpicstop +\dpicdraw (2.002778,1.35) + --(2.002778,-0.177094)\dpicstop +\dpicdraw (2.377778,1.275) + --(2.127778,1.275)\dpicstop +\filldraw[line width=0bp](2.102778,-0.1) + --(2.127778,-0.2) + --(2.152778,-0.1) --cycle\dpicstop +\dpicdraw (2.127778,1.275) + --(2.127778,-0.177094)\dpicstop +\dpicdraw (2.377778,1.2) + --(2.252778,1.2)\dpicstop +\filldraw[line width=0bp](2.227778,-0.1) + --(2.252778,-0.2) + --(2.277778,-0.1) --cycle\dpicstop +\dpicdraw (2.252778,1.2) + --(2.252778,-0.177094)\dpicstop +\dpicdraw (1.125,1.425) + --(1.877778,1.425)\dpicstop +\dpicdraw[fill=black](1.877778,1.425) circle (0.007874in)\dpicstop +\dpicdraw (1.125,1.125) + --(2.002778,1.125)\dpicstop +\dpicdraw[fill=black](2.002778,1.125) circle (0.007874in)\dpicstop +\dpicdraw (1.125,0.825) + --(2.127778,0.825)\dpicstop +\dpicdraw[fill=black](2.127778,0.825) circle (0.007874in)\dpicstop +\dpicdraw (0.625,0.525) + --(2.252778,0.526089)\dpicstop +\dpicdraw[fill=black](2.252778,0.526089) circle (0.007874in)\dpicstop +\dpicdraw (2.377778,0.45) + --(1.877778,0.45)\dpicstop +\dpicdraw[fill=black](1.877778,0.45) circle (0.007874in)\dpicstop +\dpicdraw (2.377778,0.375) + --(2.002778,0.375)\dpicstop +\dpicdraw[fill=black](2.002778,0.375) circle (0.007874in)\dpicstop +\dpicdraw (2.377778,0.3) + --(2.127778,0.3)\dpicstop +\dpicdraw[fill=black](2.127778,0.3) circle (0.007874in)\dpicstop +\dpicdraw (1.252778,0.225) + --(2.377778,0.225)\dpicstop +\dpicdraw[fill=black](1.752778,0.225) circle (0.007874in)\dpicstop +\filldraw[line width=0bp](1.727778,-0.1) + --(1.752778,-0.2) + --(1.777778,-0.1) --cycle\dpicstop +\dpicdraw (1.752778,0.225) + --(1.752778,-0.177094)\dpicstop +\dpicdraw (2.727778,1.3125) + --(3.577778,1.3125)\dpicstop +\dpicdraw (3.977136,1.2375) + --(4.102136,1.2375)\dpicstop +\dpicdraw[fill=black](4.102136,1.2375) circle (0.007874in)\dpicstop +\dpicdraw (4.102136,1.2375) + --(4.227136,1.2375)\dpicstop +\draw (4.227136,1.2375) node[right=-2bp]{\sf Q7}; +\dpicdraw (4.102136,1.2375) + --(4.102136,0.9875) + --(2.852778,0.7625)\dpicstop +\dpicdraw (2.852778,0.7625) + --(2.852778,0.6375) + --(2.977778,0.6375)\dpicstop +\dpicdraw (3.577778,1.1625) + --(2.852778,1.1625)\dpicstop +\dpicdraw (2.852778,1.1625) + --(2.852778,1.0375) + --(4.102136,0.6625)\dpicstop +\dpicdraw (4.102136,0.6625) + --(4.102136,0.413589) + --(3.977136,0.4125)\dpicstop +\dpicdraw (3.327778,0.5625) + --(3.452778,0.5625)\dpicstop +\dpicdraw (3.452778,0.5625) + --(3.452778,0.4875) + --(3.577778,0.4875)\dpicstop +\dpicdraw (2.727778,0.3375) + --(3.577778,0.3375)\dpicstop +\dpicdraw (2.977778,0.4875) + --(2.852778,0.4875)\dpicstop +\filldraw[line width=0bp](2.827778,-0.1) + --(2.852778,-0.2) + --(2.877778,-0.1) --cycle\dpicstop +\dpicdraw (2.852778,0.4875) + --(2.852778,-0.177094)\dpicstop +\dpicdraw[fill=black](2.852778,0) circle (0.007874in)\dpicstop +\dpicdraw (2.852778,0) + --(0.5875,0)\dpicstop +\end{tikzpicture} +\begin{tikzpicture}[scale=2.54] +% dpic version 2020.06.01 option -g for TikZ and PGF 1.01 +\ifx\dpiclw\undefined\newdimen\dpiclw\fi +\global\def\dpicdraw{\draw[line width=\dpiclw]} +\global\def\dpicstop{;} +\dpiclw=0.8bp +\dpiclw=0.8bp +\draw (0,0) node[left=-2bp]{\sf C }; +\draw (0,0.825) node[left=-2bp]{\sf A0 }; +\draw (0,1.125) node[left=-2bp]{\sf A1 }; +\draw (0,1.425) node[left=-2bp]{\sf A2 }; +\dpicdraw (0,1.425) + --(0.375,1.425)\dpicstop +\dpicdraw (0.55,1.425) + --(0.375,1.325) + --(0.375,1.525) + --(0.55,1.425)\dpicstop +\dpicdraw (0.5875,1.425) circle (0.014764in)\dpicstop +\dpicdraw (0.625,1.425) + --(0.875,1.425)\dpicstop +\dpicdraw (1.125,1.425) + --(0.95,1.325) + --(0.95,1.525) + --(1.125,1.425)\dpicstop +\dpicdraw (0.9125,1.425) circle (0.014764in)\dpicstop +\dpicdraw (0,1.125) + --(0.375,1.125)\dpicstop +\dpicdraw (0.55,1.125) + --(0.375,1.025) + --(0.375,1.225) + --(0.55,1.125)\dpicstop +\dpicdraw (0.5875,1.125) circle (0.014764in)\dpicstop +\dpicdraw (0.625,1.125) + --(0.875,1.125)\dpicstop +\dpicdraw (1.125,1.125) + --(0.95,1.025) + --(0.95,1.225) + --(1.125,1.125)\dpicstop +\dpicdraw (0.9125,1.125) circle (0.014764in)\dpicstop +\dpicdraw (0,0.825) + --(0.375,0.825)\dpicstop +\dpicdraw (0.55,0.825) + --(0.375,0.725) + --(0.375,0.925) + --(0.55,0.825)\dpicstop +\dpicdraw (0.5875,0.825) circle (0.014764in)\dpicstop +\dpicdraw (0.625,0.825) + --(0.875,0.825)\dpicstop +\dpicdraw (1.125,0.825) + --(0.95,0.725) + --(0.95,0.925) + --(1.125,0.825)\dpicstop +\dpicdraw (0.9125,0.825) circle (0.014764in)\dpicstop +\dpicdraw (0.5875,0) + --(0.4125,-0.1) + --(0.4125,0.1) + --(0.5875,0)\dpicstop +\dpicdraw (0.316667,0.675) + --(0.194444,0.675)\dpicstop +\dpicdraw (0.198957,0.677179) + ..controls (0.245009,0.581799) and (0.245392,0.470695) + ..(0.2,0.375)\dpicstop +\dpicdraw (0.194444,0.375) + --(0.316667,0.375)\dpicstop +\dpicdraw (0.316667,0.675) + ..controls (0.417105,0.675) and (0.508302,0.616374) + ..(0.55,0.525)\dpicstop +\dpicdraw (0.316667,0.375) + ..controls (0.417105,0.375) and (0.508302,0.433626) + ..(0.55,0.525)\dpicstop +\dpicdraw (0.5875,0.525) circle (0.014764in)\dpicstop +\dpicdraw (0.944444,0.375) + --(0.822222,0.375)\dpicstop +\dpicdraw (0.826735,0.377179) + ..controls (0.872787,0.281799) and (0.87317,0.170695) + ..(0.827778,0.075)\dpicstop +\dpicdraw (0.822222,0.075) + --(0.944444,0.075)\dpicstop +\dpicdraw (0.944444,0.375) + ..controls (1.044883,0.375) and (1.136079,0.316374) + ..(1.177778,0.225)\dpicstop +\dpicdraw (0.944444,0.075) + ..controls (1.044883,0.075) and (1.136079,0.133626) + ..(1.177778,0.225)\dpicstop +\dpicdraw (1.215278,0.225) circle (0.014764in)\dpicstop +\dpicdraw (2.577778,1.1625) + --(2.377778,1.1625) + --(2.377778,1.4625) + --(2.577778,1.4625)\dpicstop +\dpicdraw (2.577778,1.4625) + ..controls (2.66062,1.4625) and (2.727778,1.395343) + ..(2.727778,1.3125) + ..controls (2.727778,1.229657) and (2.66062,1.1625) + ..(2.577778,1.1625)\dpicstop +\dpicdraw (2.577778,0.1875) + --(2.377778,0.1875) + --(2.377778,0.4875) + --(2.577778,0.4875)\dpicstop +\dpicdraw (2.577778,0.4875) + ..controls (2.66062,0.4875) and (2.727778,0.420343) + ..(2.727778,0.3375) + ..controls (2.727778,0.254657) and (2.66062,0.1875) + ..(2.577778,0.1875)\dpicstop +\dpicdraw (3.177778,0.4125) + --(2.977778,0.4125) + --(2.977778,0.7125) + --(3.177778,0.7125)\dpicstop +\dpicdraw (3.177778,0.7125) + ..controls (3.26062,0.7125) and (3.327778,0.645343) + ..(3.327778,0.5625) + ..controls (3.327778,0.479657) and (3.26062,0.4125) + ..(3.177778,0.4125)\dpicstop +\dpicdraw (3.668802,1.3875) + --(3.54658,1.3875)\dpicstop +\dpicdraw (3.551093,1.389679) + ..controls (3.597145,1.294299) and (3.597528,1.183195) + ..(3.552136,1.0875)\dpicstop +\dpicdraw (3.54658,1.0875) + --(3.668802,1.0875)\dpicstop +\dpicdraw (3.668802,1.3875) + ..controls (3.769241,1.3875) and (3.860437,1.328874) + ..(3.902136,1.2375)\dpicstop +\dpicdraw (3.668802,1.0875) + ..controls (3.769241,1.0875) and (3.860437,1.146126) + ..(3.902136,1.2375)\dpicstop +\dpicdraw (3.939636,1.2375) circle (0.014764in)\dpicstop +\dpicdraw (3.668802,0.5625) + --(3.54658,0.5625)\dpicstop +\dpicdraw (3.551093,0.564679) + ..controls (3.597145,0.469299) and (3.597528,0.358195) + ..(3.552136,0.2625)\dpicstop +\dpicdraw (3.54658,0.2625) + --(3.668802,0.2625)\dpicstop +\dpicdraw (3.668802,0.5625) + ..controls (3.769241,0.5625) and (3.860437,0.503874) + ..(3.902136,0.4125)\dpicstop +\dpicdraw (3.668802,0.2625) + ..controls (3.769241,0.2625) and (3.860437,0.321126) + ..(3.902136,0.4125)\dpicstop +\dpicdraw (3.939636,0.4125) circle (0.014764in)\dpicstop +\draw (2.127778,-0.241667) node[below=-2bp]{\sf {\sl To other latches}}; +\dpicdraw (0.225642,0.6) + --(0,0.6)\dpicstop +\draw (0,0.6) node[left=-2bp]{\sf D }; +\dpicdraw (0.225642,0.45) + --(0,0.45)\dpicstop +\draw (0,0.45) node[left=-2bp]{\sf E }; +\dpicdraw[fill=black](0.100642,0.45) circle (0.007874in)\dpicstop +\dpicdraw (0.100642,0.45) + --(0.100642,0.15) + --(0.85342,0.15)\dpicstop +\dpicdraw (0,0) + --(0.4125,0)\dpicstop +\dpicdraw[fill=black](0.75,1.425) circle (0.007874in)\dpicstop +\dpicdraw (0.75,1.425) + --(0.75,1.275)\dpicstop +\dpicdraw (0.75,1.275) + --(1.627778,1.275)\dpicstop +\filldraw[line width=0bp](1.602778,-0.1) + --(1.627778,-0.2) + --(1.652778,-0.1) --cycle\dpicstop +\dpicdraw (1.627778,1.275) + --(1.627778,-0.177094)\dpicstop +\dpicdraw[fill=black](0.75,1.125) circle (0.007874in)\dpicstop +\dpicdraw (0.75,1.125) + --(0.75,0.975)\dpicstop +\dpicdraw (0.75,0.975) + --(1.502778,0.975)\dpicstop +\filldraw[line width=0bp](1.477778,-0.1) + --(1.502778,-0.2) + --(1.527778,-0.1) --cycle\dpicstop +\dpicdraw (1.502778,0.975) + --(1.502778,-0.177094)\dpicstop +\dpicdraw[fill=black](0.75,0.825) circle (0.007874in)\dpicstop +\dpicdraw (0.75,0.825) + --(0.75,0.675)\dpicstop +\dpicdraw (0.75,0.675) + --(1.377778,0.675)\dpicstop +\filldraw[line width=0bp](1.352778,-0.1) + --(1.377778,-0.2) + --(1.402778,-0.1) --cycle\dpicstop +\dpicdraw (1.377778,0.675) + --(1.377778,-0.177094)\dpicstop +\dpicdraw[fill=black](0.75,0.526089) circle (0.007874in)\dpicstop +\dpicdraw (0.75,0.526089) + --(0.75,0.3) + --(0.85342,0.3)\dpicstop +\dpicdraw (2.377778,1.425) + --(1.877778,1.425)\dpicstop +\filldraw[line width=0bp](1.852778,-0.1) + --(1.877778,-0.2) + --(1.902778,-0.1) --cycle\dpicstop +\dpicdraw (1.877778,1.425) + --(1.877778,-0.177094)\dpicstop +\dpicdraw (2.377778,1.35) + --(2.002778,1.35)\dpicstop +\filldraw[line width=0bp](1.977778,-0.1) + --(2.002778,-0.2) + --(2.027778,-0.1) --cycle\dpicstop +\dpicdraw (2.002778,1.35) + --(2.002778,-0.177094)\dpicstop +\dpicdraw (2.377778,1.275) + --(2.127778,1.275)\dpicstop +\filldraw[line width=0bp](2.102778,-0.1) + --(2.127778,-0.2) + --(2.152778,-0.1) --cycle\dpicstop +\dpicdraw (2.127778,1.275) + --(2.127778,-0.177094)\dpicstop +\dpicdraw (2.377778,1.2) + --(2.252778,1.2)\dpicstop +\filldraw[line width=0bp](2.227778,-0.1) + --(2.252778,-0.2) + --(2.277778,-0.1) --cycle\dpicstop +\dpicdraw (2.252778,1.2) + --(2.252778,-0.177094)\dpicstop +\dpicdraw (1.125,1.425) + --(1.877778,1.425)\dpicstop +\dpicdraw[fill=black](1.877778,1.425) circle (0.007874in)\dpicstop +\dpicdraw (1.125,1.125) + --(2.002778,1.125)\dpicstop +\dpicdraw[fill=black](2.002778,1.125) circle (0.007874in)\dpicstop +\dpicdraw (1.125,0.825) + --(2.127778,0.825)\dpicstop +\dpicdraw[fill=black](2.127778,0.825) circle (0.007874in)\dpicstop +\dpicdraw (0.625,0.525) + --(2.252778,0.526089)\dpicstop +\dpicdraw[fill=black](2.252778,0.526089) circle (0.007874in)\dpicstop +\dpicdraw (2.377778,0.45) + --(1.877778,0.45)\dpicstop +\dpicdraw[fill=black](1.877778,0.45) circle (0.007874in)\dpicstop +\dpicdraw (2.377778,0.375) + --(2.002778,0.375)\dpicstop +\dpicdraw[fill=black](2.002778,0.375) circle (0.007874in)\dpicstop +\dpicdraw (2.377778,0.3) + --(2.127778,0.3)\dpicstop +\dpicdraw[fill=black](2.127778,0.3) circle (0.007874in)\dpicstop +\dpicdraw (1.252778,0.225) + --(2.377778,0.225)\dpicstop +\dpicdraw[fill=black](1.752778,0.225) circle (0.007874in)\dpicstop +\filldraw[line width=0bp](1.727778,-0.1) + --(1.752778,-0.2) + --(1.777778,-0.1) --cycle\dpicstop +\dpicdraw (1.752778,0.225) + --(1.752778,-0.177094)\dpicstop +\dpicdraw (2.727778,1.3125) + --(3.577778,1.3125)\dpicstop +\dpicdraw (3.977136,1.2375) + --(4.102136,1.2375)\dpicstop +\dpicdraw[fill=black](4.102136,1.2375) circle (0.007874in)\dpicstop +\dpicdraw (4.102136,1.2375) + --(4.227136,1.2375)\dpicstop +\draw (4.227136,1.2375) node[right=-2bp]{\sf Q7}; +\dpicdraw (4.102136,1.2375) + --(4.102136,0.9875) + --(2.852778,0.7625)\dpicstop +\dpicdraw (2.852778,0.7625) + --(2.852778,0.6375) + --(2.977778,0.6375)\dpicstop +\dpicdraw (3.577778,1.1625) + --(2.852778,1.1625)\dpicstop +\dpicdraw (2.852778,1.1625) + --(2.852778,1.0375) + --(4.102136,0.6625)\dpicstop +\dpicdraw (4.102136,0.6625) + --(4.102136,0.413589) + --(3.977136,0.4125)\dpicstop +\dpicdraw (3.327778,0.5625) + --(3.452778,0.5625)\dpicstop +\dpicdraw (3.452778,0.5625) + --(3.452778,0.4875) + --(3.577778,0.4875)\dpicstop +\dpicdraw (2.727778,0.3375) + --(3.577778,0.3375)\dpicstop +\dpicdraw (2.977778,0.4875) + --(2.852778,0.4875)\dpicstop +\filldraw[line width=0bp](2.827778,-0.1) + --(2.852778,-0.2) + --(2.877778,-0.1) --cycle\dpicstop +\dpicdraw (2.852778,0.4875) + --(2.852778,-0.177094)\dpicstop +\dpicdraw[fill=black](2.852778,0) circle (0.007874in)\dpicstop +\dpicdraw (2.852778,0) + --(0.5875,0)\dpicstop +\end{tikzpicture} diff --git a/graphics/circuit_macros/examples/nsvg/dev/tikztosvg b/graphics/circuit_macros/examples/nsvg/dev/tikztosvg new file mode 100644 index 0000000000..8e9523347c --- /dev/null +++ b/graphics/circuit_macros/examples/nsvg/dev/tikztosvg @@ -0,0 +1,181 @@ +#!/bin/bash + +puts() +{ + echo "[$1] $2" +} + +error() +{ + puts "ERROR" "$1" r + + if [ -n "$2" ] + then + exit $2 + else + exit 1 + fi +} + +message() +{ + puts "TIKZTOSVG" "$1" g +} + +showHelp() +{ + man tikztosvg + exit 0 +} + +showVersion() +{ + echo 0.1.0 + exit 0 +} + +if [ -z "$(which xelatex)" ] +then + error "xelatex could not be found" +fi + +if [ -z "$(which pdf2svg)" ] +then + error "pdf2svg could not be found" +fi + +# Parsing the arguments +PACKAGES=() +while [ $# -gt 1 ] +do + case "$1" in + -h|--help) + showHelp + ;; + -v|--version) + showVersion + ;; + -p|--package) + if [ -z "$2" ] + then + error "Unnexpected EOF" + else + PACKAGES+=("$2") + shift + shift + fi + ;; + -o|--output) + if [ -n "$OUTPUT" ] + then + error "The output path was specified multiple times" + else if [ -z "$2" ] + then + error "Unexpected EOF" + exit 1 + else + OUTPUT="$2" + shift + shift + fi + fi + ;; + -q|--quit) + QUIET=1 + shift + ;; + *) + error "Unexpected token: \"$1\"" + ;; + esac +done + +case "$1" in + -h|--help) + showHelp + ;; + -v|--version) + showVersion + ;; + "") + error "No input path provided" + ;; + *) + INPUT="$1" +esac + +if [ -z "$OUTPUT" ] +then + OUTPUT="$(echo $(basename $INPUT) | cut -d "." -f1)" +fi + +TEMP_DIR="$(mktemp -d)" +TEX_FILE="$TEMP_DIR/tmp.tex" + +# Generate the LaTeX document +echo "\documentclass[crop,tikz,multi=false]{standalone}" > $TEX_FILE + +for PACKAGE in "${PACKAGES[@]}" +do + echo "\usepackage{$PACKAGE}" >> $TEX_FILE +done + +echo "\begin{document}" >> $TEX_FILE +echo "\huge" >> $TEX_FILE + +cat $INPUT >> $TEX_FILE + +if [ $? -ne 0 ] +then + rm $TEMP_DIR -r + error "File not found: $INPUT" +fi + +echo "\end{document}" >> $TEX_FILE + +if [ -z "$QUIET" ] +then + message "Rendering the LaTeX document. . ." + xelatex -output-directory=$TEMP_DIR $TEX_FILE +else + xelatex -halt-on-error -output-directory=$TEMP_DIR $TEX_FILE 1> /dev/null 2>&1 +fi + +S=$? +if [ $S -ne 0 ] +then + rm $TEMP_DIR -r + if [ -z "$QUIET" ] + then + error "xelatex exited with code $S" $S + else + exit $S + fi +fi + +if [ -z "$QUIET" ] +then + message "Converting the output to SVG. . ." +fi + +pdf2svg "$TEMP_DIR/tmp.pdf" $OUTPUT 1 + +S=$? +if [ $S -ne 0 ] +then + rm $TEMP_DIR -r + if [ -z "$QUIET" ] + then + error "pdf2svg exited with code $S" $S + else + exit $S + fi +fi + +if [ -z "$QUIET" ] +then + message "Done!" +fi + +rm "$TEMP_DIR" -r + diff --git a/graphics/circuit_macros/examples/nsvg/dev/tstSVG.htmx b/graphics/circuit_macros/examples/nsvg/dev/tstSVG.htmx new file mode 100644 index 0000000000..9e1884c146 --- /dev/null +++ b/graphics/circuit_macros/examples/nsvg/dev/tstSVG.htmx @@ -0,0 +1,62 @@ + + + + + + +SVG Examples: Circuit_macros Version XXX + + + + + +

SVG Circuit_macros examples, Version XXX

+
+ +

+These diagrams are the result of applying pdf2svg to examples.pdf. +

+ Click on the link to view the source of each diagram. +

+
+ +define(`for_',`ifelse(eval(`$1'!=(`$2'+(`$3'))),1,`pushdef(`m4x',`$1') $4 + popdef(`m4x')for_(eval(`$1'+(`$3')),`$2',`$3',`$4')')') + +define(`cfig',` +

+ + + + + + + + + +
+ + + +cfig(test) +#for_(1,46,1, +#cfig(examples_```'''m4x) +#) + + + diff --git a/graphics/circuit_macros/examples/nsvg/examples.pdf b/graphics/circuit_macros/examples/nsvg/examples.pdf new file mode 100644 index 0000000000..b52e15195e Binary files /dev/null and b/graphics/circuit_macros/examples/nsvg/examples.pdf differ diff --git a/graphics/circuit_macros/examples/nsvg/examplesSVG.htmx b/graphics/circuit_macros/examples/nsvg/examplesSVG.htmx new file mode 100644 index 0000000000..bb2265a90f --- /dev/null +++ b/graphics/circuit_macros/examples/nsvg/examplesSVG.htmx @@ -0,0 +1,70 @@ + + + + + + +SVG Examples: Circuit_macros Version XXX + + + + + +

SVG Circuit_macros examples, Version XXX

+
+ +

+ These diagrams are in .svg format. + Pdf + and + png + versions are also available. + The PDF equivalent can be found in examples.pdf of the distribution. +

+

+ Click on the link to view the source of each diagram. +

+
+ +define(`for_',`ifelse(eval(`$1'!=(`$2'+(`$3'))),1,`pushdef(`m4x',`$1') $4 + popdef(`m4x')for_(eval(`$1'+(`$3')),`$2',`$3',`$4')')') + +define(`cfig',` +

+ + + + + + + + + +
+ + +

+These diagrams are the result of applying pdf2svg to examples.pdf. + + +for_(1,46,1, +cfig(examples_```'''m4x) +) + + + diff --git a/graphics/circuit_macros/examples/oFlow.m4 b/graphics/circuit_macros/examples/oFlow.m4 new file mode 100644 index 0000000000..f4fa766f1a --- /dev/null +++ b/graphics/circuit_macros/examples/oFlow.m4 @@ -0,0 +1,108 @@ +.PS +# Flow.m4 +gen_init +ifdef(`FlowchartDefs_',,`include(FlowchartDefs.m4)') + +# Could use xcolor with option dvipsnames but define color here for portability: +define(`Thistle',`rgbstring(0.85,0.75,0.85)')dnl +define(`RubineRed',`rgbstring(0.81,0,0.35)')dnl +define(`YellowGreen',`rgbstring(0.68,1,0.18)')dnl +define(`SeaGreen',`rgbstring(0.13,0.70,0.67)')dnl +define(`Goldenrod',`rgbstring(0.85,0.65,0.13)')dnl + + linethick_(1.0) + arrowwid = 0.05 + arrowht = 0.1 + fillval = 0.8 + down + +Case: Fcase(, + "Test 1",[Fbox("Task 1",, shaded Thistle); W:last [].W; N:last [].N + arrow down linewid/3 from last [].S + Fbox("Task 1.5",, shaded Thistle) with .N at Here + E:last [].E; S:last [].S], + "Test 2",Fbox("Task 2" "is bigger", wid fboxwid*1.2 ht fboxht*3/2, \ + shaded SeaGreen), + "Test 3",Fbox("Task 3",, shaded RubineRed)dnl + ) + + "\sl .N" at Case.N rjust above; "\sl .S" at Case.S rjust below + "\sl .E" at Case.E ljust; "\sl .W" at Case.W rjust + "\sl Case statement" below at Case.s+(0,-0.2) + move to Case.nw+(-12bp__,10bp__) + +Whiledo: Fwhiledo("$i < n$",,,Fbox("Task"),"T" above ljust at Test.E) \ + with .nw at Case.ne+(0.25,0) + + "\sl .N" at Whiledo.N rjust; "\sl .S" at Whiledo.S rjust below + "\sl .E" at Whiledo.E ljust; "\sl .W" at Whiledo.W rjust + "\sl While-do" below at Whiledo.s+(0,-0.2) + +Repeatuntil: Frepeatuntil("$n \geq 5$",,,Fbox("Task"), + "T" at Test.E above ljust) with .nw at Whiledo.sw + (0.25,-1) + + "\sl .N" at Repeatuntil.N rjust above; "\sl .S" at Repeatuntil.S rjust below + "\sl .E" at Repeatuntil.E ljust; "\sl .W" at Repeatuntil.W rjust + "\sl Repeat-until" below at Repeatuntil.s+(0,-0.2) + +Ifthenelse: Fifthenelse("$A1 then { + if "$1"=="" then { + for k=1 to ncircles[i-1] do { arrow from C[i,j] to C[i-1,k] chop } } + } + if j!=ncircles[i] then { move right_ circlesep from C[i,j] } + } + m += ncircles[i] + case(i, + move to C[1,1]+(-circlesep/2,-rowsep), + move to C[2,1]+(0,-rowsep), + move to C[3,1]+(circlesep/2,-rowsep), ) + } + } + gridsiz = 0.78/4 +define grid { [ SW: 0,0 + for i=1 to $1 do { + move to (0,(0.5-i)*gridsiz) + exec sprintf("fv = $%g",2+i) + for j=1 to $2 do { fl = 1-(int(fv / 2^(j-1)) % 2) + box wid gridsiz ht gridsiz outlined "gray" shaded rgbstring(fl,fl,fl) } + } ]} + +define cxt { + m = 1 + for i=2 to 4 do { + for j=1 to ncircles[i] do { + exec sprintf("narrows = $%g",m) + for k=1 to narrows do { + exec sprintf("cnum = $%g",m+k) + exec sprintf("arrow from C[i,j] to C[i-1,cnum] $%g chop", $+) + } + m += narrows+1 + } } } + +B: box invis ht 8 wid 8 +[ + array(ncircles,3,4,4,3) + plan() + svg_font(Times,12bp__,textoffset) + for j=1 to 3 do { + sprintf("svg_it(x)`'svg_sub(%g,60%)",j) at C[1,j].n+(0,2bp__) above + "svg_circ" at last ""+(-1bp__,1bp__) + sprintf("svg_it(x)`'svg_sub(%g,60%)",j) at C[4,j].s+(0,-2bp__) below + } + + "V" at 0.5 between C[2,1].w and C[1,1].w + "W`'svg_sup(2)" at 0.5 between C[3,1].w and C[2,1].w + "W`'svg_sup(1)" at 0.5 between C[3,1].w and C[4,1].w + +GV: grid(3,4,0,15,6) with .w at C[2,4]+(circlerad*2,rowsep/2) + "=M`'svg_sup(V)" at GV.e ljust +G2: grid(4,4,13,0,0,13) with .w at (GV.w,C[3,4]+(circlerad*2,rowsep/2)) + "=M`'svg_sup(V`'svg_sup(2))" at G2.e ljust +G1: grid(4,3,1,5,1,1) with .w at (GV.w,C[4,3]+(circlerad*2,rowsep/2)) + "=M`'svg_sup(V`'svg_sup(1))" at G1.e ljust + command "" + + move to (GV.x+3*circlesep,C[1,1].y) + plan(3,1,2,1,2,2,1,2,1,2,2,3,1,2) + for i=2 to 4 do { + cxt(2,1,3,0,0,2,1,3, 0,4,1,2,3,4,0,0, 0,4,1,2,3,4,0, \ + outlined rgbstring(0.5,0.5,0.5) shaded rgbstring(0.5,0.5,0.5) ) + cxt(0,1,1,1,1,0, 2,2,3,0,2,2,3,2,2,3, 0,0,3,1,3,4,) + } + svg_font(Times,12bp__,textoffset) + for j=1 to 3 do { sprintf("svg_it(x)`'svg_sub(%g,60%)",j) \ + at C[4,j].s+(0,-2bp__) below } + arrow dotted from C[1,2].n up circlesep/2 + "svg_it(p(x`'svg_sub(2)))" at Here+(0,2bp__) above + "svg_it(p(x`'svg_sub(3)|x`'svg_sub(2)))" at (C[1,3]+(circlesep/2,0),last "") + arrow dotted from C[1,3] to last "".s chop circlerad chop textoffset + "svg_it(p(x`'svg_sub(1)|x`'svg_sub(2),x`'svg_sub(3)))" \ + at (C[1,1]+(-circlesep/2,0),last "") + arrow dotted from C[1,1] to last "".s chop circlerad chop textoffset + command "" + + ] at B + command "" +.PE diff --git a/graphics/circuit_macros/examples/svg/Banking.m4 b/graphics/circuit_macros/examples/svg/Banking.m4 new file mode 100644 index 0000000000..630326f867 --- /dev/null +++ b/graphics/circuit_macros/examples/svg/Banking.m4 @@ -0,0 +1,59 @@ +.PS +#Banking.m4 + +gen_init + + scale = 2.54 # use cm + svg_font(Arial Black,11 bp__,2 bp__) + boxwid = 6.8 + boxht = 4.5 + linethick_(1.5) + + define(`heading', + ``$1'') + define(`subheading', + `[`$1']') + define(`wtext',``$1'') + + C: circle diam 2.6 colored "mediumblue" + Person: box rad boxht/4 colored "mediumblue" with .n at C.s+(0,C.rad/8) \ + "heading(Personal Banking)" \ + "" \ + "heading(Customer)" \ + "subheading(Person)" \ + "" \ + "wtext(A customer of the bank`,' with)" \ + "wtext(personal bank accounts.)" + + A1: arrow thick 1.5 dashed down 3.5 from Person.s + svg_font(Arial,11 bp__,2 bp__) + { box invis fill 1 ht 0.4 wid 1.0 "Uses" at A1 } + command "" + Internet: box colored "steelblue" \ + "heading(Internet Banking System)" \ + "subheading(Software system)" \ + "" \ + "wtext(Allows customers to view)" \ + "wtext(information about their bank)" \ + "wtext(accounts`,' and make payments.)" + + svg_font(Arial,11 bp__,2 bp__) + A2: arrow thick 1.5 dashed right 5.4 from Internet.e \ + "Sends e-mail" above "using" below + command "" + Email: box colored "slategrey" \ + "heading(E-mail System)" \ + "subheading(Software system)" \ + "" \ + "wtext(Internal Microsoft Exchange)" \ + "wtext(e-mail system.)" + + A3:arrow thick 1.5 dashed from Email.nw+(0.4,0) to Person.se+(0.3,Person.ht/5) + svg_font(Arial,11 bp__,2 bp__) + { box invis fill 1 ht 0.4 wid 3.3 "Sends e-mails to" at A3 } + command "" + +# etc + + command "" # font +.PE diff --git a/graphics/circuit_macros/examples/svg/BtreeSVG.m4 b/graphics/circuit_macros/examples/svg/BtreeSVG.m4 index 312249605e..158b475b7b 100644 --- a/graphics/circuit_macros/examples/svg/BtreeSVG.m4 +++ b/graphics/circuit_macros/examples/svg/BtreeSVG.m4 @@ -2,7 +2,10 @@ # Btree.m4 # One way to draw a binary tree using pic macros gen_init(svg_font(sans-serif,11bp__)) -circlerad = 0.30 +sinclude(tst.dim) +s_init(Btree) +Btree: [ +circlerad = 0.45 define n { [C: circle fill_(0.9) $1 if "$2" != "" then { @@ -29,5 +32,76 @@ define Vega { n("Vega") } # Build the tree from the root S: Sirius + + command "" # end font +] +Ttree: [ +# TtreeSVG.m4 +svg_font(sans-serif,10bp__) + +# `Node(no in row, head [location], +# displacement of top of body (.n) wrt head, +# body Node 1, body Node 2, ...) ' +define(`Node',` + Head`$1': `$2' + ifelse(`$3',,,` Body`$1': [ + Loopover_(`v',`v; define(`m4ct',m4Lx)',shift(shift(shift($@)))) + ] with .n at Head`$1' + `$3' + connect(`$1',m4ct)')') + +define(`connect',`Bot: move from Head$1.sw-(0,5bp__) to Head$1.se-(0,5bp__) +for_(1,`$2',1, + `Top: move from Body$1.Head`'m4x.nw+(0,2bp__) \ + to Body$1.Head`'m4x.ne+(0,2bp__) + Mov: move from Head$1 to Body$1.Head`'m4x + if Bot.len*Top.len*Mov.len > 0 then { + line from Intersect_(Mov,Top) to Intersect_(Mov,Bot)}')') + + vsep = 0.75 +define(`txw',`wid `$1'mm__')dnl scaled by 14/12 for 14 pt type + + Node(1,"svg_it(h(h(h(x`'svg_sub(1),x`'svg_sub(2))," \ + + "h(x`'svg_sub(3),x`'svg_sub(4))),h(h(x`'svg_sub(5),x`'svg_sub(6))," \ + + "h(x`'svg_sub(7),x`'svg_sub(8)))))" txw(70) , + (0,-vsep), + Node(1,"svg_it(h(h(x`'svg_sub(1),x`'svg_sub(2)),h(x`'svg_sub(3)," \ + + "x`'svg_sub(4))))" txw(32) , + (0,-vsep), + Node(1,"svg_it(h(x`'svg_sub(1),x`'svg_sub(2)))" txw(14) , + (0,-vsep), + Node(1,"svg_it(x`'svg_sub(1):=((A,pk`'svg_sub(A)),h`'svg_sub(1)))" \ + txw(29) ), + Node(2,"svg_it(x`'svg_sub(2):=((B,pk`'svg_sub(B)),h`'svg_sub(2)))" \ + txw(29) with .n at last "".ne+(0.2,-vsep*2/3))), + Node(2,"svg_it(h(x`'svg_sub(3),x`'svg_sub(4)))" txw(14) \ + with .nw at Head1.ne+(Body1.wid/2+0.1,0), + (0,-vsep), + Node(1,"svg_it(x`'svg_sub(3):=" \ + + "((A,pk`'svg_prime`'svg_sub(A,,,-0.5ex)),h`'svg_sub(3)))" \ + txw(29)), + Node(2,"svg_it(x`'svg_sub(4):=((D,pk`'svg_sub(D)),h`'svg_sub(4)))" \ + txw(29) with .n at last "".ne+(0.2,-vsep*2/3)))), + Node(2,"svg_it(h(h(x`'svg_sub(5),x`'svg_sub(6)),h(x`'svg_sub(7)," \ + + "x`'svg_sub(8))))" txw(29) with .nw at Head1.ne+(Body1.wid/2,0), + (0,-vsep), + Node(1, "svg_it(h(x`'svg_sub(5),x`'svg_sub(6)))" txw(14) , + (0,-vsep*5/4), + Node(1,"svg_it(x`'svg_sub(5):=((E,pk`'svg_sub(E)),h`'svg_sub(5)))" \ + txw(29) ), + Node(2,"svg_it(x`'svg_sub(6):=((H,pk`'svg_sub(H)),h`'svg_sub(6)))" \ + txw(29) with .n at last "".ne+(0.2,-vsep*2/3))), + Node(2,"svg_it(h(x`'svg_sub(7),x`'svg_sub(8)))" txw(14) \ + with .nw at Head1.ne+(Body1.wid/2+0.1,0), + (0,-vsep*5/4), + Node(1,"svg_it(x`'svg_sub(7):=" \ + + "((D,pk`'svg_prime`'svg_sub(D,,,-0.5ex)),h`'svg_sub(7)))" \ + txw(29) ), + Node(2,"svg_it(x`'svg_sub(8):=((K,pk`'svg_sub(K)),h`'svg_sub(8)))" \ + txw(29) with .n at last "".ne+(0.2,-vsep*2/3); move right 0.2)), + Node(3,"svg_it(h(x`'svg_sub(9)))" txw(8) \ + at 0.5 between Head1 and Head2))) + +] with .w at last [].e+(-0.75,0) + command "" # end font .PE diff --git a/graphics/circuit_macros/examples/svg/CctTableSVG.m4 b/graphics/circuit_macros/examples/svg/CctTableSVG.m4 index 3c79a32d6b..e46bb97a76 100644 --- a/graphics/circuit_macros/examples/svg/CctTableSVG.m4 +++ b/graphics/circuit_macros/examples/svg/CctTableSVG.m4 @@ -5,74 +5,91 @@ textwid = 1.5 movewid = 2 pt__ hm = 2.1 vm = 0.28 + +hm = 2.05 +vm = 0.28 { {resistor ; move ; svgLink(NportSVG.svg,"`resistor'" ljust)} move right_ hm {resistor(,,Q) ; move ; "`resistor(,,Q) '" ljust} move right_ hm - {resistor(,,E) ; move ; "`resistor(,,E) = ebox'" ljust} + {resistor(,,E) ; move + "`resistor(,,E) = ebox'" ljust} } move down vm; right_ -{ {resistor(,,ES) ; move ;"`resistor(,,ES) '" ljust} +{ {resistor(,,ES) ; move ; "`resistor(,,ES) '" ljust} move right_ hm - {resistor(,4,QR) ; move ;"`resistor(,4,QR) '" ljust} + {resistor(,,H) ; move ; "`resistor(,,H) '" ljust} move right_ hm - {resistor(,,H) ; move ;"`resistor(,,H) '" ljust} + {ebox(,,,0.5) ; move ; "`ebox(,,,0.5) '" ljust} } move down vm; right_ -{ {resistor(,,V) ; move ;"`resistor(,,V)'" ljust} +{ {resistor(,,V) ; move ; "`resistor(,,V) '" ljust} move right_ hm - {ebox(,,,0.5) ; move ;"`ebox(,,,0.5)'" ljust} + {move down_ 0.05; right_ + thermocouple ; move; "`thermocouple '" ljust; move up_ 0.05} move right_ hm - {ebox(,0.5,0.3) ; move ;"`ebox(,0.5,0.3)'" ljust} + {ebox(,0.5,0.3) ; move ; "`ebox(,0.5,0.3) '" ljust} } move down vm; right_ -{ {inductor ; move ;"`inductor'" ljust} +{ {inductor ; move ; "`inductor '" ljust} move right_ hm - {inductor(,W); move ;"`inductor(,W)'" ljust} + {inductor(,W); move ; "`inductor(,W) '" ljust} move right_ hm - {inductor(,L); move ;"`inductor(,L)'" ljust} + {inductor(,L); move ; "`inductor(,L) '" ljust} } move down vm; right_ -{ {inductor(,,,M) ; move ;"`inductor(,,,M)'" ljust} +{ {inductor(,,,M) ; move ; "`inductor(,,,M) '" ljust} move right_ hm - {inductor(,W,6,P); move ;"`inductor(,W,6,P)'" ljust} + {inductor(,W,6,P); move ; "`inductor(,W,6,P) '" ljust} move right_ hm - {ttmotor(,G) ; move ;"`ttmotor(,G)'" ljust} + {move right_ 0.2; ttmotor(,G) ; move ; "`ttmotor(,G) '" ljust} } move down vm; right_ -{ {capacitor ; move ;"`capacitor'" ljust} +{ {capacitor ; move ; "`capacitor '" ljust} move right_ hm - {capacitor(,C); move ;"`capacitor(,C)'" ljust} + {capacitor(,C); move ; "`capacitor(,C) '" ljust} move right_ hm - {capacitor(,C+); move ;"`capacitor(,C+)'" ljust} + {capacitor(,C+); move ; "`capacitor(,C+) '" ljust} } move down vm; right_ -{ {capacitor(,P); move ;"`capacitor(,P)'" ljust} +{ {capacitor(,P); move ; "`capacitor(,P) '" ljust} move right_ hm - {capacitor(,E); move ;"`capacitor(,E)'" ljust} + {capacitor(,E); move ; "`capacitor(,E) '" ljust} move right_ hm - {capacitor(,K); move ;"`capacitor(,K)'" ljust} + {capacitor(,K); move ; "`capacitor(,K) '" ljust} } move down 0.25; right_ -{ {capacitor(,M); move ;"`capacitor(,M)'" ljust} +{ {capacitor(,M); move ; "`capacitor(,M) '" ljust} move right_ hm - {capacitor(,N); move ;"`capacitor(,N)'" ljust} + {capacitor(,N); move ; "`capacitor(,N) '" ljust} move right_ hm - {xtal ; move ;"`xtal'" ljust} + {xtal ; move ; "`xtal '" ljust} } move down 0.25; right_ -{ {memristor ; move;"`memristor'" ljust} +{ {memristor ; move; "`memristor '" ljust} move right_ hm - {heater; move;"`heater'" ljust} + {heater; move; "`heater '" ljust} move right_ hm - {tline ; move;"`tline'" ljust} + {tline ; move; "`tline '" ljust} } move down 0.25; right_ -{ {gap ; move ;"`gap'" ljust} +{ {move up_ 0.05; right_; gap ; move ; "`gap '" ljust} + move right_ hm + {gap(,,A) ; move ; "`gap(,,A) '" ljust} move right_ hm - {gap(,,A) ; move ;"`gap(,,A)'" ljust} + {arrowline ; move; "`arrowline '" ljust} +} + move down 0.25; right_ +{ {lamp ; move; "`lamp '" ljust} + move right_ hm + {reed ; move ; "`reed '" ljust} + move right_ hm + {reed(,,,fill_(0.9),CR) ; move ; "`reed(,,,fill_(0.9),CR) '" ljust} +} + move down 0.25; right_ +{ {pvcell ; move; "`pvcell '" ljust} move right_ hm - {arrowline ; move;"`arrowline'" ljust} + {arrester ; move ; "`arrester '" ljust} } command "" # end font diff --git a/graphics/circuit_macros/examples/svg/ConnectorsSVG.m4 b/graphics/circuit_macros/examples/svg/ConnectorsSVG.m4 index 59860a2d1e..67f89e5348 100644 --- a/graphics/circuit_macros/examples/svg/ConnectorsSVG.m4 +++ b/graphics/circuit_macros/examples/svg/ConnectorsSVG.m4 @@ -16,7 +16,7 @@ svg_rot_init(ConnectorsSVG) "Raspberry Pi 4 GPIO" at last [].GPIO.s below HD: HDMI_micro with .nw at last [].ne+(0.25,0.5) - "Micro" rjust at HD.Base.sw+(0,10bp__) "HDMI" rjust + "Micro" rjust at HD.Base.sw "HDMI" rjust S: USB_C_Socket with .sw at (HD.e.x+0.25,RPI.s.y) "USB-C Socket" at S.Base.s below diff --git a/graphics/circuit_macros/examples/svg/FlowSVG.m4 b/graphics/circuit_macros/examples/svg/FlowSVG.m4 index d0ba138493..f0f5b6df71 100644 --- a/graphics/circuit_macros/examples/svg/FlowSVG.m4 +++ b/graphics/circuit_macros/examples/svg/FlowSVG.m4 @@ -1,142 +1,15 @@ -divert(-1) - FlowchartDefs.m4 - `Some experimental flow-chart macros. - In the following, every subchart is in - [] brackets, with .N, .S, .E and .W - internally defined. Follow this convention - if you create compound constructs. - - Generally, the first argument is one - or more strings; the second adjusts - the size, and the third can be used - to add color, dashed lines, labels, - or other embellishements. Default is - grey fill if arg3 is blank. - - These macros have been renamed from earlier - versions because of slight differences of - arguments.' - -define(`FlowchartDefs_') - - `Default sizes:' -define(`fboxwid',linewid*2) -define(`fboxht',linewid*0.75) -define(`farrowht',linewid*0.5) - - `Fbox( "text", wid expr ht expr, - attributes ) The basic task box: arg1 may - be 1 or more label strings. Attributes - include box line and fill specs. - To adjust the box size to the size of - the typeset text, see the \boxdims macro - in the manual. Example: - Fbox("svg_it(x svg_symbol(&`#'60;) 1)",, - shaded rgbstring(0.46,0.53,0.63))' -define(`Fbox',`[ boxwid = fboxwid; boxht = fboxht - Box: box `$2' ifelse(`$3',,`fill_(fillval)',`$3') `$1' - N: Box.n; S:Box.s; E:Box.e; W: Box.w - `$4']') - - `If-then - Ftest( "text", wid expr ht expr, attributes )' -define(`Ftest',`[boxwid = fboxwid*0.8; boxht = fboxht*1.4 - Box: box ifelse(`$2',,,`$2') invis - N: Box.n; S: Box.s; E: Box.e; W: Box.w - line from 0.5 between last box.n and last box.e \ - to last box.e then to last box.s then to last box.w then to last box.n \ - then to 0.5 between last box.n and last box.e \ - ifelse(`$3',,`fill_(fillval)',`$3') - ifelse(`$1',,,`$1' at Box) - `$4']') - - `case statement - Fcase(wid expr ht expr, - "Test string 1",task, ..., - "Test string n",task)' - `arg1 adjusts the size of the tests - A task is a flow subchart with internal names .E and .S defined - The test blocks are labeled Test1, Test2, ... and the tasks are - labeled Task1, Task2, ... ' -define(`Fcase',`[ down; S: Here; sx = S.x - Fcaseloop_(1,$@) - ifelse(`$2',,`E:S; W:S; N:S', - `E:(sx+linewid/2,Task1.E.y); W:Test1.W; N:Test1.N') - Fcasearrow_(1,$@) - arrow from E to (E,S) then to S ]') - - define(`Fcaseloop_',`ifelse(`$3',,, - `Test`$1': Ftest(`$3',`$2') with .N at S - Task`$1': `$4' with .nw at Test`$1'.E+(linewid/2,min(Test`$1'.ht,fboxht)/2) - arrow right linewid/4 from Test`$1'.E \ - then down Test`$1'.E.y-Task`$1'.W.y then to Task`$1'.W - S: (Test`$1'.S.x,min(Test`$1'.S.y,Task`$1'.S.y)-linewid/3) - ifelse(`$5',,`line',`arrow') from Test`$1'.S to S - sx = max(sx,Task`$1'.E.x) - Fcaseloop_(incr($1),`$2',shift(shift(shift(shift($@)))))')') - define(`Fcasearrow_',`ifelse(`$3',,, - `arrow from Task`$1'.E to (E,Task`$1'.E) - Fcasearrow_(incr($1),`$2',shift(shift(shift(shift($@)))))')') - - `while statement with explicit test - Fwhiledo("test text", wid x ht y, attributes, task spec ) - The task structure is given label Task ' -define(`Fwhiledo',`[ down - Test: Ftest(`$1',`$2',`$3') - arrow right linewid/2 from Test.E - Task: `$4' with .W at Here - E: Task.E; W: Test.w; S: Test.S - arrow up max(linewid/4,Test.n.y-Task.n.y+arrowht*1.5) \ - from Task.N then left Task.x-Test.x - N: Here - arrow to Test.n - `$5']') - - `repeat statement with explicit test - Frepeatuntil("test",wid x ht y,attributes, task spec ) - The task structure is given label Task ' -define(`Frepeatuntil',`[ N: Here - Task: ifelse(`$4',,Here,`$4' with .N at N) - W: Task.W - arrow down linewid/3 - Test: Ftest(`$1',`$2',`$3') - E: Task.E+(linewid/2+max(0,Test.e.x-Task.e.x),0) - arrow from Test.e to (E,Test) then to E then to Task.E - S: Test.S - `$5']') - - `if-then-else - Fifthenelse( "test", wid x ht y, attributes, - left tasks, right tasks) - The left task structure is given label Ltask and the right - task structure is given label Rtask ' -define(`Fifthenelse',`[ Test: Ftest(`$1',`$2',`$3') - N: Test.N - Ltask: ifelse(`$4',,`Test.S; W:Test.W; LS:Ltask', - `$4 with .ne at ((Test.W.x+Test.x)/2,Test.S.y) - W: Ltask.W; LS:Ltask.S - arrow from Test.W to (Ltask.N,Test.W) then to Ltask.N') - Rtask: ifelse(`$5',,`Test.S; E:Test.E; RS:Rtask', - `$5 with .nw at ((Test.E.x+Test.x)/2,Test.S.y) - E: Rtask.E; RS: Rtask.S - arrow from Test.E to (Rtask.N,Test.E) then to Rtask.N') - S: (Test.x,min(LS.y,RS.y)-linewid/3) - arrow from LS to (LS,S) - arrow from RS to (RS,S) - line to (LS,Here) - `$6']') - -divert(0)dnl .PS -# Here is a test file exercising the above definitions +# FlowSVG.m4 gen_init(svg_font(sans-serif,11bp__,2.5bp__)) +ifdef(`FlowchartDefs_',,`include(../FlowchartDefs.m4)') -# Could use xcolor with option dvipsnames but define color here for portability define(`Thistle',`rgbstring(0.85,0.75,0.85)')dnl define(`RubineRed',`rgbstring(0.81,0,0.35)')dnl define(`YellowGreen',`rgbstring(0.68,1,0.18)')dnl define(`SeaGreen',`rgbstring(0.13,0.70,0.67)')dnl define(`Goldenrod',`rgbstring(0.85,0.65,0.13)')dnl +define(`Beaublue',`rgbstring(0.74,0.83,0.9)')dnl +define(`Celadon',`rgbstring(0.67,0.88,0.69)')dnl # Accented characters define(`svg_ccedilla',`svg_symbol(&`#'231;)')dnl @@ -145,9 +18,31 @@ define(`svg_atilde',`svg_symbol(&`#'227;)')dnl linethick_(1.0) arrowwid = 0.05 arrowht = 0.1 - fillval = 0.8 - down - + fillval = 0.9 + maxpsht = 20 + +define(`shad',`shaded rgbstring(0.9,0.8,0.7)') +define(`Below',`with .nw at last [].sw+(0,-0.25)') +TL: Here +Simple: [ + Fbox("svg_tt(`Fbox')",,shad) + Ftest("svg_tt(``Ftest'')",,shad) Below + Fdata("svg_tt(``Fdata'')",,,shad) Below + Fprep("svg_tt(``Fprep'')",) Below + Fkeying("svg_tt(``Fkeying'')") Below + Fkeyboard("svg_tt(``Fkeyboard'')") Below + Fdocument("svg_tt(``Fdocument'')",,shaded rgbstring(0.9,0.8,0.7)) Below + Fdelay("svg_tt(``Fdelay'')",,shaded Beaublue) Below + Fdisplay("svg_tt(``Fdisplay'')",,shaded Celadon) Below + Fstored("svg_tt(``Fstored'')",,shaded Thistle) Below + Fconnect(,,shaded Thistle) Below + Fconnect("45",wid boxwid ht boxht:45,shaded Thistle) \ + with .w at last [].e+(boxht/8,0) + "svg_tt(`Fconnect')" at last [].nw + (0,boxht/6) + ] with .nw at TL+(0.1,0); move from Simple.nw to TL + +#showbox_ +Complex: [ Case: Fcase(, "Test 1",[Fbox("Task 1",, shaded Thistle); W:last [].W; N:last [].N arrow down linewid/3 from last [].S @@ -158,46 +53,42 @@ Case: Fcase(, "Test 3",Fbox("Task 3",, shaded RubineRed)dnl ) - "svg_it(.N)" at Case.N rjust above - "svg_it(.S)" at Case.S rjust below - "svg_it(.E)" at Case.E ljust - "svg_it(.W)" at Case.W rjust - "svg_it(Case statement)" below at Case.s+(0,-0.2) - move to Case.nw+(-12bp__,10bp__) + "svg_it(.N)" at Case.N rjust above + "svg_it(.S)" at Case.S rjust below + "svg_it(.E)" at Case.E ljust + "svg_it(.W)" at Case.W rjust + "svg_tt(`Fcase')" below at Case.s #+(0,-0.1) -Whiledo: Fwhiledo("svg_it(i svg_lt n)",,,Fbox("Task"), - "T" above ljust at Test.E) \ +Whiledo: Fwhiledo("svg_it(i svg_lt n)",,,Fbox("Task"),"T" above ljust at Test.E) \ with .nw at Case.ne+(0.25,0) "svg_it(.N)" at Whiledo.N rjust "svg_it(.S)" at Whiledo.S rjust below "svg_it(.E)" at Whiledo.E ljust "svg_it(.W)" at Whiledo.W rjust - "svg_it(While-do)" below at Whiledo.s+(0,-0.2) + "svg_tt(`Fwhiledo')" below at Whiledo.s -Repeatuntil: Frepeatuntil("svg_it(n svg_geq 5)",,,Fbox("Task"), - "T" at Test.E above ljust) with .nw at Whiledo.sw + (0.25,-1) +Repeatuntil: Frepeatuntil("svg_it(n svg_gt 5)",,,Fbox("Task"), + "T" at Test.E above ljust) with .nw at Whiledo.sw + (0.25,-0.5) "svg_it(.N)" at Repeatuntil.N rjust above "svg_it(.S)" at Repeatuntil.S rjust below "svg_it(.E)" at Repeatuntil.E ljust "svg_it(.W)" at Repeatuntil.W rjust - "svg_it(Repeat-until)" below at Repeatuntil.s+(0,-0.2) + "svg_tt(`Frepeatuntil')" below at Repeatuntil.se +(-0.0,0.2) -Ifthenelse: Fifthenelse("svg_it(A`'svg_lt`'B)",,, +Ifthenelse: Fifthenelse("svg_it(A svg_lt B)",,, Fbox("False"), Fbox("True",ht fboxht*1.2 wid fboxwid)dnl - ) with .nw at Repeatuntil.sw +(0.5,-0.5) + ) with .nw at Repeatuntil.sw +(-0.5,-0.3) - "svg_it(.N)" at Ifthenelse.N rjust above; + "svg_it(.N)" at Ifthenelse.N rjust above "svg_it(.S)" at Ifthenelse.S below rjust - "svg_it(.E)" at Ifthenelse.E ljust + "svg_it(.E)" wid 12bp__ at Ifthenelse.E ljust "svg_it(.W)" at Ifthenelse.W rjust - "svg_it(If-then-else)" at Ifthenelse.s+(0,-0.3) \ - "svg_it((the True and False tasks are optional))" + "svg_tt(`Fifthenelse')" below at Ifthenelse.s+(0,-0.15) -# Compound statement: -[ right +Compound: [ right ellipse shaded YellowGreen "Start" arrow right linewid/2 @@ -212,18 +103,18 @@ Ifthenelse: Fifthenelse("svg_it(A`'svg_lt`'B)",,, "T" at Test.E above ljust), "T" at Test.E above ljust) with .N at Here - A: arrow down 0.25 from last [].S ] with .nw at Case.sw + (-12bp__,-0.7) + A: arrow down 0.25 from last [].S ] with .nw at Case.sw + (-12bp__,-0.3) + + "svg_it(Compound statements)" at last [].A.end+(0.1,0) ljust above - "svg_it(Compound statement)" below at last [].A.end + ] with .nw at Simple.ne+(0.1,0) Example: [ fillvalue = 0.8; awid = linewid/2; right_ Start: ellipse wid boxwid/2 ht boxwid/3 shaded "green" arrow right_ awid B1: Fbox("Planejamento") - B2: Fbox("Execu`'svg_ccedilla`'svg_atilde`'o") \ - with .W at B1.E+(awid*3,0) - B3: Fbox("Sele`'svg_ccedilla`'svg_atilde`'o") \ - with .W at B2.E+(awid*3,0) + B2: Fbox("Execu`'svg_ccedilla`'svg_atilde`'o") with .W at B1.E+(awid*3,0) + B3: Fbox("Sele`'svg_ccedilla`'svg_atilde`'o") with .W at B2.E+(awid*3,0) LT: Ftest("Avalia`'svg_ccedilla`'svg_atilde`'o do" "Planejamento", wid fboxwid*1.5 ht fboxht*2.0, shaded YellowGreen, @@ -241,14 +132,13 @@ Example: [ fillvalue = 0.8; awid = linewid/2; right_ arrow from B2.E to (RT.N,B2.E) then to RT.N arrow from RT.W to (B2.S,RT.W) then to B2.S arrow from RT.E to (B3.S,RT.E) then to B3.S - B4: Fbox("Extra`'svg_ccedilla`'svg_atilde`'o") \ - with .S at B3.N+(0,awid) + B4: Fbox("Extra`'svg_ccedilla`'svg_atilde`'o") with .S at B3.N+(0,awid) arrow from B3.N to B4.S - arrow right_ awid from B4.E + arrow up_ awid from B4.N B5: Fbox("Conclus`'svg_atilde`'o") - ellipse wid boxwid/2 ht boxwid/3 shaded "red" at (B5.S,Start) - arrow down_ awid from B5.S to last ellipse.n -] with .nw at last [].sw+(0,-fboxht) + arrow up_ awid from B5.N + ellipse wid boxwid/2 ht boxwid/3 shaded "red" +] with .nw at last [].Compound.sw+(0,2.5*fboxht) command "" # end font .PE diff --git a/graphics/circuit_macros/examples/svg/FourbarSVG.m4 b/graphics/circuit_macros/examples/svg/FourbarSVG.m4 new file mode 100644 index 0000000000..208e817822 --- /dev/null +++ b/graphics/circuit_macros/examples/svg/FourbarSVG.m4 @@ -0,0 +1,59 @@ +.PS +# FourbarSVG.m4 +# https://tex.stackexchange.com/questions/563831/how-to-draw-four-bar-linkage-with-center-of-mass +gen_init +scale = 25.4 + + a = 18 + b = 73 + c = 47 + d = 72 + A0: Here + B0: A0+(d,0) + circlerad = 1 + +define(`pivot',`[ + C: circle + line down_ 4 from C+(2,0) + arc from last line.start to C+(-2,0) with .c at C + line down_ 4 + B: line thick 1.6 right 7 with .c at (C,Here) + thinlines_ + sep = 0.9 + nhash = B.len/sep +#for i=0 to nhash do { line down sep left sep from B.start+(i/nhash*B.len,0) } + for i=0 to nhash do { line down sep left sep from B.end-(i/nhash*B.len,0) } + thicklines_ + ]') + + pivot with .C at A0; "svg_it(A`'svg_sub(0))" at A0-(5,0) + circle dashed rad a at A0 + pivot with .C at B0; "svg_it(B`'svg_sub(0))" at B0-(5,0) + "svg_it(d = A`'svg_sub(0)B`'svg_sub(0))" at 0.5 + + B1: Cintersect(A0,a+b,B0,c) + B2: Cintersect(A0,b-a,B0,c) + arc dashed from B1 to B2 with .c at B0 + + A0B1: line thick 1.6 from A0 to B1 chop 2 chop + line thick 1.6 from B0 to B1 chop 2 chop "svg_it(c)" ljust + circle fill_(1) at B1; "svg_it(B`'svg_sub(1))" wid 3 at B1+(5,0) + A1: circle fill_(1) at LCintersect(A0B1,A0,a,R) + "svg_it(A`'svg_sub(1))" at A1+(5,0) + + A2: b/(b-a) between B2 and A0; "svg_it(a)" at 0.4 above rjust + "svg_it(b)" at 0.4 above rjust + A2B2: line thick 1.6 from A2 to B2 + line thick 1.6 from B0 to B2 chop 2 chop 0 + circle fill_(1) at B2; "svg_it(B`'svg_sub(2))" at B2+(5,0) + circle fill_(1) at A2; "svg_it(A`'svg_sub(2))" at A2+(5,0) + + thinlines_ + line from B0+(3,0) right 4 + ArcAngle(Here,B0,B1,5) ->; "svg_psi`'svg_sub(0)" at last arc.ne above ljust + ArcAngle(B1,B0,B2,8) ->; "svg_psi" at last arc.n+(-3,0) above + ArcAngle(A1,A0,B2,b*0.45) ->; "svg_theta" at last arc.start+(0,4) + line from A0+(3,0) right 8 + ArcAngle(Here,A0,B1,9) -> ; "svg_theta`'svg_sub(0)" at last arc.start+(2,2) + +.PE diff --git a/graphics/circuit_macros/examples/svg/GeometrySVG.m4 b/graphics/circuit_macros/examples/svg/GeometrySVG.m4 new file mode 100644 index 0000000000..ae0a661012 --- /dev/null +++ b/graphics/circuit_macros/examples/svg/GeometrySVG.m4 @@ -0,0 +1,46 @@ +.PS +# Geometry.m4 +gen_init + scale = 5/4 + + A: Here; "A" at A above + B: A+(-1,-3.5); "B" at B below rjust + C: B+(4.6,0); "C" at C below ljust + AB: line from A to B + BC: line from B to C + CA: line from C to A + + PerpTo(A,BC,L); "L" at L below + AL: line from A to L; RightAngle(A,L,C) + + angleLAC = atan2(C.x-L.x,A.y-L.y) + S: move from A to (sin(angleLAC/2),-cos(angleLAC/2)) + AW: line from A to Intersect_(S,BC) + W: Here; "W" at W below rjust + + PerpTo(C,AB,N); "N" at N above rjust + CN: line from C to N; RightAngle(C,N,B) + + PerpTo(B,CA,M); "M" at M above + CM: line from B to M; RightAngle(B,M,C) + + H: Intersect_(CN,AL); "H" at H +(4bp__,10bp__) + + thinlines_ + Equidist3(B,L,N,CC1,c1rad); C1: circle rad c1rad at CC1 + Equidist3(B,W,N,CC2,c2rad); C2: circle rad c2rad at CC2 + Equidist3(B,C,N,CC3,c3rad); C3: circle rad c3rad at CC3 + Equidist3(W,C,M,CC4,c4rad); C4: circle rad c4rad at CC4 + thicklines_ + + Z: LCintersect(AW,CC2,C2.rad); "Z" at Z+(-5bp__,-5bp__) + HZ: move from H to Z + Y: LCintersect(HZ,CC4,C4.rad,R); "Y" at Y above + X: LCintersect(HZ,CC2,C2.rad); "X" at X above rjust + + Loopover_(`P',`dot(at P)',X,Y,Z) + + line dashed from X to Y chop -linewid/2 + RightAngle(A,Z,Y) + +.PE diff --git a/graphics/circuit_macros/examples/svg/JackSVG.m4 b/graphics/circuit_macros/examples/svg/JackSVG.m4 index ea14a04e59..6af8b6b301 100644 --- a/graphics/circuit_macros/examples/svg/JackSVG.m4 +++ b/graphics/circuit_macros/examples/svg/JackSVG.m4 @@ -1,6 +1,6 @@ .PS # `Jack.m4' -cct_init(svg_font(sans-serif,11bp__)) +cct_init(svg_font(sans-serif,10bp__)) P: [ P1: plug diff --git a/graphics/circuit_macros/examples/svg/LyapSVG.m4 b/graphics/circuit_macros/examples/svg/LyapSVG.m4 new file mode 100644 index 0000000000..6ed269a428 --- /dev/null +++ b/graphics/circuit_macros/examples/svg/LyapSVG.m4 @@ -0,0 +1,159 @@ +.PS +# Lyap.m4 +threeD_init +scale = 1/1.2 + +viewaz = 30 +viewel = 18 +setview(viewaz,viewel) + +Origin: project(0,0,0) +# Components of view vector W +w1 = view3D1 +w2 = view3D2 +w3 = view3D3 +# Shape factor of the ellipse on the xy plane +q = Cos(40) + +# cost function +h = 0.5 +c = 1 +# The projected ellipse is (x/q)^2 + y^2 = c. +# The cost is v = c+h +define(`vs',``$2'*q*cos(`$1'),`$2'*sin(`$1')') +define(`vp',`vs(`$1',`$2'),0') +define(`vx',`sum3D(vp(`$1',`$2'),0,0,h+(`$2')^2)') + +# The gradient of v is (2x/q, 2y, -1) and the line +# separating front and back is W^T * grad(v) = 0 +# This line intersects the projected ellipse at +# x1,y1 and x2,y2 + ap = w2^2*q^2/w1^2+1 + bp = -w2*w3*q^2/w1^2 + cp = w3^2*q^2/4/w1^2-c + m = sqrt(bp^2-4*ap*cp) + y1 = (-bp+m)/ap/2 ; x1 = (w3-2*y1*w2)*q/2/w1 + y2 = (-bp-m)/ap/2 ; x2 = (w3-2*y2*w2)*q/2/w1 + t1 = atan2(y1,x1) + t2 = atan2(y2,x2) + theta1 = min(t1,t2) + theta2 = max(t1,t2) + +# tangent curve + nT = 11 + for i = 0 to nT do { + y = y1 + (y2-y1)/nT*i + theta = atan2(y,(w3-2*y*w2)*q/2/w1) + r = y/sin(theta) + T[i]: project(vx(theta,r)) + } + +# front and back parts of the top curve + n = 12 + for i = 0 to n do { + theta = theta1 + (theta2-theta1)/n*i + F[i]: project(vx(theta,c)) + Fp[i]: project(vp(theta,c)) + } + for i = 0 to n do { + theta = theta2 + (theta1+twopi_-theta2)/n*i + B[i]: project(vx(theta,c)) + Bp[i]: project(vp(theta,c)) + } + +# trajectory +rotations = 1.55 +nx = 7 +thetas = 75*dtor_ +thetaf = thetas - rotations*twopi_ +rx = c*0.9 +beta = exp(log(.5)/20) + +define(`defX',` rx = `$5' ; np = np-1 + ts = `$1' ; tf = `$2' + for i = 0 to `$3' do { + tha = ts + (tf-ts)*i/(`$3') + for thx = tha to -twopi_ by twopi_ do {} + `$4'[i]: project(vx(thx,rx)) + Xp[np]: project(vp(thx,rx)) + np = np+1 + rx = beta*rx + }') + +np = 1 +defX(thetas,theta1,nx,X1,rx) +defX(theta1,theta2-twopi_,nx,X2,rx/beta) +defX(theta2-twopi_,theta1-twopi_,nx,X3,rx/beta) +defX(theta1-twopi_,thetaf,5,X4,rx/beta) + +# First draw the inside back +# B is the back curve +# T is the outline +ifpstricks(` +\psset{gradbegin=lightgray,gradend=darkgray,gradlines=1000} +\pscustom[fillstyle=gradient,gradmidpoint=0.7]{ + fitcurve(B,n) + for i = 0 to nT do {TT[i]: T[nT-i] } + fitcurve(TT,nT) +\relax} ', +` fitcurve(B,n) + for i = 0 to nT do {TT[i]: T[nT-i] } + fitcurve(TT,nT) ') + +# Centre axis +thinlines_ +line from Origin to project(0,0,h) +# F[0] is the leftmost point of the front curve +line from F[0] to Fp[0] +# F[n] is the rightmost point of the front curve +line from F[n] to Fp[n] +thicklines_ + +# Now draw the outside front +ifpstricks(` +\newgray{gray1}{0.9}% +\newgray{gray2}{0.4}% +\psset{gradbegin=gray1,gradend=gray2,gradlines=1000} +\pscustom[linewidth=0pt,fillstyle=gradient,gradmidpoint=0.99]{ + fitcurve(F,n) + fitcurve(T,nT) +\relax} ', +` shade(1,fitcurve(F,n) + fitcurve(T,nT)) ') +# T is the limit curve of visibility + fitcurve(T,nT) +# F is the top front + fitcurve(F,n) +# Front and back projections of the top on xy + fitcurve(Fp,n) + fitcurve(Bp,n) + +# The trajectory in pieces, to allow dashed parts + fitcurve(X1,nx) + fitcurve(X2,nx,dotted 0.025) + fitcurve(X3,nx) + fitcurve(X4,3,dotted 0.015) + arca(from X4[4] to X4[2],ccw,0.3,<-) + +# Projected trajectory + np = np-2 + fitcurve(Xp,np-1) + arca(from Xp[np] to Xp[np-2],ccw,0.18,<-) + "svg_it(X(t))" at Xp[np]-(2bp__,0) ljust + +# Axes and vertical lines +thinlines_ + line from X1[0] to Xp[0] +arrow from Origin to project(1.5,0,0) +"svg_it(x)`'svg_sub(1)" rjust below +arrow from Origin to project(0,1.5,0) +"svg_it(x)`'svg_sub(2)" wid 10bp__ ljust +line dashed from project(0,0,h) to F[n/2] chop 0 chop arrowht/4 +arrow from F[n/2] to project(0,0,2) +"svg_it(v(X))" ljust + +"svg_it(0)" at Origin+(0,1 pt__) below +"svg_Omega" at project(0,0.9*c,0) above +"svg_it(v(X) = c)" at (project(vp(100*dtor_,c)))+(2bp__,0) above ljust + +.PE diff --git a/graphics/circuit_macros/examples/svg/MCSVG.m4 b/graphics/circuit_macros/examples/svg/MCSVG.m4 index cececf42b5..8fcff10ea1 100644 --- a/graphics/circuit_macros/examples/svg/MCSVG.m4 +++ b/graphics/circuit_macros/examples/svg/MCSVG.m4 @@ -1,5 +1,5 @@ .PS -#MC.m4 +#MCSVG.m4 cct_init(svg_font(Times,11bp__)) textoffset = 3bp__ @@ -44,50 +44,52 @@ MC:[ ] Three: [ + gapht = 4*dimen_ dv = dimen_*0.6 - dh = dimen_ + dh = dimen_*5/6 define(`swfet',`mosfet(`$1',,dMEDSuBQPy)') define(`swpair',`[ up_ BS: swfet(up_ dimen_); { "`$1'" at BS.D-(0,2bp__) rjust } - L: line up_ 3*dimen_ from BS.D + L: line up_ gapht-2*dimen_ from BS.D TS: swfet(up_ dimen_) with .S at Here; { "`$2'" at TS.S+(0,2bp__) rjust } T: TS.D B: BS.S C: L.c ]') - V1: gap(up_ 5*dimen_,1,A) + V1: gap(up_ gapht,1,A) { "svg_it(V)svg_sub(1)" wid 12bp__ at last arrow.c rjust } - line right_ dh/2 + line right_ dimen_/2 { C1: capacitor(down_ to (Here,V1.start)); llabel(svg_it(C)svg_sub(1)) } for_(1,3,1,` - line right_ dh ifelse(m4x,1,,*5/4) + line right_ dimen_ ifelse(m4x,1,,*5/4) {SP1`'m4x: swpair(svg_it(S`'svg_sub(1`'eval(m4x+3))), svg_it(S`'svg_sub(1`'m4x))) with .T at Here - dot(at last [].C + (0,(2-m4x)*dh)) - line right_ (3-m4x)*dh*5/4 + dot(at last [].C + (0,(2-m4x)*dh)) + line right_ (3-m4x)*dimen_*5/4+dimen_/4 inductor(right_ dimen_,L) {sprintf("svg_it(L`'svg_sub(1&`#'%g;,70%))",64+m4x) at last [].n+(0,8bp__)} - line down_ (2-m4x)*dimen_*2/3 + line down_ (2-m4x)*dh*2/3 pushdef(`dimen_',dimen_*1.2) inductor(right_ dimen_*3/4) popdef(`dimen_') - line down_ (2-m4x)*dimen_/3 + line down_ (2-m4x)*dh/3 M: move right_ dimen_/8 - line up_ (2-m4x)*dimen_/3 + line up_ (2-m4x)*dh/3 pushdef(`dimen_',dimen_*1.2) inductor(right_ dimen_*3/4) popdef(`dimen_') - line up_ (2-m4x)*dimen_*2/3 + line up_ (2-m4x)*dh*2/3 inductor(right_ dimen_,L) {sprintf("svg_it(L`'svg_sub(2&`#'%g;,70%))",64+m4x) at last [].n+(0,8bp__)} - line right_ dimen_/8+(m4x-1)*dh*5/4 + line right_ dimen_/8+(m4x-1)*dh*5/4 + dimen_/4 dot SP2`'m4x: swpair(svg_it(S`'svg_sub(2`'eval(m4x+3))), - svg_it(S`'svg_sub(2`'m4x))) with .C at Here+(0,(m4x-2)*dh) } + svg_it(S`'svg_sub(2`'m4x))) \ + with .C at Here+(0,(m4x-2)*dh) } ') "svg_it(T)svg_sub(r)" at M.c+(0,dimen_*2/3) line from V1.start to SP13.B line from SP21.B to SP23.B+(dh*3/4,0) { C2: capacitor(up_ to (Here,V1.end)); llabel(,,svg_it(C`'svg_sub(2))) } - line right_ dh/2 - gap(up_ 5*dimen_,1,A) + line right_ dimen_/2 + gap(up_ gapht,1,A) { "svg_it(V`'svg_sub(2))" wid 12bp__ at last arrow.c ljust } line to SP21.T chop dotrad_ chop 0 diff --git a/graphics/circuit_macros/examples/svg/Makefile b/graphics/circuit_macros/examples/svg/Makefile index 4471d513f4..4436cd1aa5 100644 --- a/graphics/circuit_macros/examples/svg/Makefile +++ b/graphics/circuit_macros/examples/svg/Makefile @@ -1,15 +1,18 @@ LIBDIR = $$HOME/lib M4LIBS = svg.m4 SVGconfig.m4 M4LIBS = svg.m4 +M4 = m4 +# PDFCONVERT = pdf2svg +PDFCONVERT = dvisvgm # To process a single file, copy it to test.m4 and type "make tst" # to produce tstSVG.html DPIC = dpic -#DPIC = $$HOME/dpic/build/p2c/ftp/dpic -#DPIC = ../../../dpic/build/p2c/ftp/dpic +#DPIC = $$HOME/dpic/pascal/p2c/ftp/dpic +#DPIC = ../../../dpic/pascal/p2c/ftp/dpic #DPIC = ../../../dpic/bison/dpic -#DPIC = ../../../dpic/bdev/dpic +#DPIC = ../../../dpic/bi*dev/dpic # To test the Windows executable. Change these as needed for the operating # system. NOTE: AntiqueClockSVG.m4 and Connectors.m4 use awk and sed which @@ -17,7 +20,7 @@ DPIC = dpic # M4LIBS = svg.m4 windows.m4 # DPIC = ../../../dpic/bison/distsrc/Windows/dpic -.SUFFIXES: .pic .svg .m4 +.SUFFIXES: .pic .svg .m4 .xsvg .pic.svg: $(DPIC) -v $*.pic > $*.svg grep '<\!-- width' $*.svg | sed -e 's%<\!-- *%%' -e 's% *-->%%' > $*.siz @@ -25,6 +28,25 @@ DPIC = dpic m4 $(M4LIBS) $*.m4 | sed -e '/^\%/d' > $*.pic $(DPIC) -v $*.pic > $*.svg grep '<\!-- width' $*.svg | sed -e 's%<\!-- *%%' -e 's% *-->%%' > $*.siz +.m4.xsvg: + touch F_$*.dim + $(M4) pgf.m4 F_$*.dim $*.m4 > $*.pic + $(DPIC) -g $*.pic >> $*.tex + echo "\documentclass[crop,tikz,multi=false]{standalone}" > F_$*.tex + echo "\usepackage{boxdims,siunitx,amssymb}" >> F_$*.tex + echo "\begin{document}" >> F_$*.tex + echo "\input $*.tex" >> F_$*.tex + echo "\end{document}" >> F_$*.tex + pdflatex --quiet F_$* + $(M4) pgf.m4 F_$*.dim $*.m4 > $*.pic + $(DPIC) -g $*.pic >> $*.tex + pdflatex --quiet F_$* + if test "$(PDFCONVERT)" = "pdf2svg" ; then \ + pdf2svg F_$*.pdf $*.xsvg && cp $*.xsvg $*.svg ; \ + else \ + dvisvgm --pdf F_$*.pdf && mv F_$**.svg $*.svg ; cp $*.svg $*.xsvg ; \ + fi + rm -f F_$** CCTSVG = \ AdderSVG.svg AlogixSVG.svg ABlogixSVG.svg AmpTableSVG.svg AntennasSVG.svg \ @@ -35,16 +57,17 @@ CCTSVG = \ CountingSVG.svg CrossbarSVG.svg CrowSVG.svg CsourceSVG.svg \ DecoderSVG.svg DemultiplexerSVG.svg DiniSVG.svg DiodesSVG.svg DriveSVG.svg \ EmarrowsSVG.svg \ - FlowSVG.svg FontsSVG.svg FusesSVG.svg GrayCodeSVG.svg GroundsSVG.svg \ + FlowSVG.svg FontsSVG.svg FusesSVG.svg \ + GeometrySVG.svg GrayCodeSVG.svg GroundsSVG.svg \ HeadersSVG.svg HeathkitSVG.svg InclepsSVG.svg I2LSVG.svg JackSVG.svg \ - LogicSVG.svg LoglogSVG.svg \ + LyapSVG.svg LogicSVG.svg LoglogSVG.svg \ MCSVG.svg MixerSVG.svg MotorControlSVG.svg MultiplexerSVG.svg \ NLGSVG.svg NPDTSVG.svg NportSVG.svg OpampSVG.svg OptoisoSVG.svg \ PconnSVG.svg PushPullSVG.svg QuantumSVG.svg \ RectifiersSVG.svg RelaySVG.svg RotboxSVG.svg\ SchottkySVG.svg ShiftRSVG.svg SierpinskiSVG.svg \ SixpoleSVG.svg SourcesSVG.svg SQUIDSVG.svg SwitchesSVG.svg \ - TTLnandSVG.svg TgateSVG.svg TtreeSVG.svg ThreeSVG.svg TimerSVG.svg \ + TTLnandSVG.svg TgateSVG.svg ThreeSVG.svg \ TubediagsSVG.svg VariableSVG.svg WindingsSVG.svg XformSVG.svg \ controlSVG.svg cscSVG.svg diamondSVG.svg ex00SVG.svg \ ex01SVG.svg ex02SVG.svg ex03SVG.svg ex04SVG.svg ex05SVG.svg ex06SVG.svg \ @@ -53,10 +76,12 @@ CCTSVG = \ expSVG.svg fetSVG.svg graysurfSVG.svg lcctSVG.svg \ pwrsupplySVG.svg quickSVG.svg randomSVG.svg recycleSVG.svg relaycoilSVG.svg \ roseSVG.svg sfgSVG.svg shapesSVG.svg paletteSVG.svg \ - thyristorSVG.svg ujtSVG.svg wormSVG.svg XORSVG.svg Np.svg + thyristorSVG.svg ujtSVG.svg UNOSVG.svg wormSVG.svg XORSVG.svg Np.svg \ + Y14-5SVG.svg examplesSVG.html: examplesSVG.htmx - make $(CCTSVG) + cp ../quick.m4 . + make $(CCTSVG) quick.xsvg Version=`sed -e 's/Version //' $(LIBDIR)/doc/Version.tex` ; \ sed -e 's/Version XXX/Version '$$Version'/' examplesSVG.htmx \ | m4 > examplesSVG.html @@ -112,7 +137,8 @@ Incleps.png: clean: @printf "\n svg clean:\n" rm -f *.svg *.dim *.ps *log *.siz *.pic examplesSVG.html Incleps.png - rm -f tstSVG.html copy_tmp__ + rm -f tstSVG.html copy_tmp__ quick.m4 quick.xsvg + rm -f *.otf xx* *png *.pdf *.css *.xml quick.tex @printf "\n" clobber: clean diff --git a/graphics/circuit_macros/examples/svg/OpampSVG.m4 b/graphics/circuit_macros/examples/svg/OpampSVG.m4 index 65ea9233b0..7137e428ce 100644 --- a/graphics/circuit_macros/examples/svg/OpampSVG.m4 +++ b/graphics/circuit_macros/examples/svg/OpampSVG.m4 @@ -29,7 +29,7 @@ cct_init(svg_font(sans-serif,11bp__)) "`Point_(90); opamp'" at C.s-(0,0.25) right_ D: opamp(,,,,T) with .sw at C.se+(0.65,0) - "`opamp(,,,,T)'" wid 0.75 at D.s-(0,0.25) + "`opamp(,,,,T)'" wid 0.85 at D.s-(0,0.25) command "" # end font .PE diff --git a/graphics/circuit_macros/examples/svg/PconnSVG.m4 b/graphics/circuit_macros/examples/svg/PconnSVG.m4 index b0fdb65e80..43fb2d20eb 100644 --- a/graphics/circuit_macros/examples/svg/PconnSVG.m4 +++ b/graphics/circuit_macros/examples/svg/PconnSVG.m4 @@ -31,7 +31,7 @@ P1: [ C7: pconnex(U,J) with .w at last [].e+(0.25,0) `"(U,J)"' at last [].s below C8: pconnex(U,JF) with .w at last [].e+(0.25,0) - `"(U,JF)"' wid 21bp__ at last [].s below + `"(U,JF)"' wid 28bp__ at last [].s below ] P2: [ diff --git a/graphics/circuit_macros/examples/svg/UNO.m4 b/graphics/circuit_macros/examples/svg/UNO.m4 new file mode 100644 index 0000000000..60689f15ec --- /dev/null +++ b/graphics/circuit_macros/examples/svg/UNO.m4 @@ -0,0 +1,265 @@ +.PS +# UNOSVG.m4 +log_init +include(../ics.m4) +textoffset = 1.5bp__ +svg_font(sans-serif,9.0bp__,textoffset) + +divert(-1) + + `Header([1|2][A],rows,wid,ht,type) + arg1: number of columns; A= type A + arg2: pins per column + arg3,4: custom wid, ht + arg5: eg fill_(0.9)' +define(`Header', +`[ define(`m4tp',ifinstr(`$1',A,A))define(`m4Hq',patsubst(`$1',A))dnl + define(`m4Hn',`ifelse(m4Hq,,1,m4Hq)')dnl + define(`m4Hm',`ifelse(`$2',,2,`$2')')dnl + define(`m4Hw',`ifelse(`$3',,`m4Hn*L_unit*3',`($3)')')dnl + define(`m4Hh',`ifelse(`$4',,`m4Hm*L_unit*3',`($4)')')dnl + Block: rotbox(m4Hw,m4Hh,`$5') + ifelse(`m4tp',A,`pushdef(`L_unit',(linewid/6))') + define(`m4Hct',1)dnl + for_(1,m4Hm,1, + `HeaderPin(Block.NW+vec_(L_unit*3/2,-(m4x-1/2)*m4Hh/m4Hm), + eval(m4Hct-1), P`'m4Hct,w) define(`m4Hct',incr(m4Hct)) + ifelse(m4Hn,2,`HeaderPin(Block.NE+vec_(-L_unit*3/2,-(m4x-1/2)*m4Hh/m4Hm), + 1, P`'m4Hct,e) define(`m4Hct',incr(m4Hct))') ') + ifelse(`m4Hq',A,`popdef(`L_unit')') + `$6' ]') + `HeaderPin(location,type,Picname, + n|e|s|w,[length][;pinsize]) + arg2: 0= square' +define(`HeaderPin', + `ifinstr(`$5',;, + `stacksplit_(`m4Hdr',`$5',;)dnl + define(`m4Hps',ifelse(m4Hdr,,`L_unit',m4Hdr))popdef(`m4Hdr')dnl + define(`m4Hpl',ifelse(m4Hdr,,`lg_plen*L_unit',m4Hdr))popdef(`m4Hdr') ', + `define(`m4Hps',L_unit)dnl + define(`m4Hpl',`ifelse(`$5',,lg_plen*L_unit,`$5')')')dnl + ifelse(`$1',,,`move to `$1';') + ifelse(`$3',,,`$3':) line to ifelse( + `$4',n,`rvec_(0,m4Hpl)', `$4',e,`rvec_(m4Hpl,0)', + `$4',s,`rvec_(0,-m4Hpl)', `rvec_(-m4Hpl,0)') + ifelse(`$3',,,Pin`$3':) ifelse(ifelse(`$2',,0,`$2'),0, + `rotbox(m4Hps,m4Hps,fill_(1))', + `circle diam m4Hps fill_(1)') at last line.start ') + +define(`brdge',`eleminit_(`$1') + define(`m4h',ifelse(`$2',,`sourcerad_',`($2)/2'))dnl + { line to rvec_(rp_len/2-m4h/2,0) + move to rvec_(m4h/2,0) + for m4ng=75 to 255 by 180 do {{ + m4fshade(0, arc cw from rvec_(Rect_(m4h/2,m4ng)) \ + to rvec_(Rect_(m4h/2,-m4ng)) \ + with .c at Here ) }} + line from rvec_(m4h/2,0) to rvec_(rp_len/2,0) } + { [box invis ht_ m4h wid_ m4h] at rvec_(rp_len/2,0) } + line to rvec_(rp_len,0) invis ') + +define(`ATMEGA16U2',`[ + Chip: box wid 10*lg_pinsep ht 25*lg_pinsep + Loopover_(`x', + `Arightpin(patsubst(x,;,`,'))', + 6;PD0, 7;PD1, 8;PD2, 9;PD3, 10;PD4, 11;PD5, 12;PD6, 13;PD7, + 131;nul, + 5;PC2, 26;PC4, 25;PC5, 23;PC6, 22;PC7, + 132;nul, + 133;nul, + 14;PB0, 15;PB1, 16;PB2, 17;PB3, 18;PB4, 19;PB5, 20;PB6, 21;PB7) + Loopover_(`x', + `Aleftpin(patsubst(x,;,`,'))', + 33;PAD, + 100;nul, + 28;UGND, 29;D`'svg_it(+), 30;D`'svg_it(-), 31;UVCC, 27;UCAP, + 101;nul, 102;nul, + 3;GND, 4;VCC, 103;nul, + 104;nul, + 32;AVCC, + 105;nul, 106;nul, + 1;XTAL1, + 107;nul, + 2;XTAL2(PC0), + 108;nul, 109;nul) + lg_pin(Pin109+(0,lg_pinsep),RESET,Pin24,wN,24,pinlen) + ]') +define(`Aleftpin',`move to Chip.sw+(0,m4Lx*lg_pinsep) + Pin`$1': ifelse(`$2',nul,Here,dnl + `line left pinlen "`$1'" above + "`$2'" ljust at last line.start')') +define(`Arightpin',`move to Chip.se+(0,m4Lx*lg_pinsep) + Pin`$1': ifelse(`$2',nul,Here,dnl + `line right pinlen "`$1'" above + "`$2'" rjust at last line.start')') + +define(`ATMEGA328P',`[ + Chip: box wid 10*lg_pinsep ht 23*lg_pinsep + Loopover_(`x', + `Arightpin(patsubst(x,;,`,'))', + 2;PD0, 3;PD1, 4;PD2, 5;PD3, 6;PD4, 11;PD5, 12;PD6, 13;PD7, + 100;nul, + 23;PC0, 24;PC1, 25;PC2, 26;PC3, 27;PC4, 28;PC5, + 101;nul, + 14;PB0, 15;PB1, 16;PB2, 17;PB3, 18;PB4, 19;PB5) + Loopover_(`x', + `Aleftpin(patsubst(x,;,`,'))', + 201;nul, 202;nul, 203;nul, 204;nul, 205;nul, 206;nul, 207;nul, 208;nul, + 209;nul, + 8;GND, 7;VCC, + 301;nul, + 22;AGND, 20;AVCC, 21;AREF, + 302;nul, + 9;XTAL1, + 303;nul, + 9;XTAL2, + 304;nul, 305;nul) + lg_pin(Pin305+(0,lg_pinsep),RESET,Pin1,wN,1,pinlen) + ]') + +divert(0)dnl + + maxpswid = 20 + maxpsht = 20 + + define(`pinlen',`30bp__') + define(`lg_pinsep',(1.2*lg_pinsep)) + del = lg_pinsep + + U3: ATMEGA16U2 + `"ATMEGA16U2-MU(R)"' at U3.Chip.s below + `"U3"' at U3.Chip.nw ljust above + ZU4: ATMEGA328P with .Chip.nw at U3.Chip.sw+(0,-1) + `"ATMEGA328P-PU"' at ZU4.Chip.s below + `"ZU4"' at ZU4.Chip.nw ljust above + + dot(at U3.Pin2.end) + R1: resistor(down_ 2*lg_pinsep,,E) + rlabel(,"R1" rjust "1M" rjust) + dot + dot(at R1.start-(2*del,0)) + xtal(down_ 2*lg_pinsep) + rlabel(16,,MHz); dot + XT2: dot(at last line.start-(2*del,0)); { "XT2" at last [].n above } + + Br1: brdge(from U3.Pin33.end to (XT2,U3.Pin33)); BRE: dot + line to (Here,U3.Pin28) then to U3.Pin28.end + {"UGND" at (Br1,Here) above} + + XT1: dot(at XT2-(del,R1.len)); { "XT1" at last [].n above } + line from XT1 to U3.Pin1.end + line from U3.Pin2.end to (XT1,XT2) + C11: capacitor(left_ 3*del); rlabel(,C11); llabel(,22pF) + C9: capacitor(from XT1 to (Here,XT1)); {"C9" "22pF" at last [].s+(0,-11bp__)} + { line to C11.end } + dot + G1: ground(,,E); { "GND" at last line.c below } + line from XT1 down_ 3*del; continue to (G1,Here); dot(,,1) + {"XT3" at last [].n above} + dot(at Here+(0,-3/2*del),,1); {"XT4" at last [].n above} + { line to (XT2,Here) then to XT2 chop dotrad_ chop 0 } + USBVCC: dot(at Here+(0,-7/2*del),,1) + {"USBVCC" at last [].n-(3/2*del,0) above ljust} + { line to (Here,U3.Pin31) chop dotrad_ chop 0; continue to U3.Pin31.end } + dot(at Here+(2*del,0),,1); {"VUCAP" at last [].e+(0,-5bp__) ljust} + line to (Here,U3.Pin27) chop dotrad_ chop 0; dot + line from U3.Pin27.end to (G1.x-4.5*del,U3.Pin27.y) + C8: capacitor(down_ to (Here,Br1)); llabel(C8,,1`'svg_micro) + Bus1: dot + + dot(at U3.Pin33.end) + move to U3.Pin3.end; line to (Here,U3.Chip.s) + G2: ground(,T,E); {"GND" at last line.c below } + + dot(at U3.Pin32.end) + {line to U3.Pin4.end; dot} + line left del; ground(,,E,U); {"svg_it(+)5V" at last line.c above} + + G3: ground(at (C8.x-del,G2.y),T,E); {"GND" at last line.c below } + capacitor(up_ to (Here,C8.start)); { llabel(100n,,C7) } + line to (Here,U3.Pin4) then to U3.Pin4.end + + line from U3.Pin30.end to (G1.x-2*del,U3.Pin30.y); continue to (Here,U3.Pin1) + { "RD`'svg_it(-)" above rjust }; continue left_ 2*del + RN3A: resistor(left_ 3/2*dimen_,,E); rlabel(,22R RN3A) + Dm: line left_ 7*del + +USB: [ K: box invis wid dimen_/2 ht 5*lg_pinsep + "USB" rjust at K.e + line thick 1.5 from K.nw to K.ne then to K.se then to K.sw + Loopover_(`x', + `Pin`'m4Lx: K.ne-(0,m4Lx/5*K.ht) + "x" at Pin`'m4Lx ljust above', + 1 XUSB, 2 D`'svg_it(-), 3 D`'svg_it(+), 4 UGND) + P_1: K.sw; {"P$`1'" at P_1 below rjust} + P_2: K.s; {"P$`2'" at P_2 below ljust} + ] with .Pin2 at Here; "X2" at USB.ne above rjust + + move to U3.Pin29.end + line to (G1.x-3*del,Here.y); continue to (Here,Dm-(0,lg_pinsep)) + { "RD`'svg_it(+)" above rjust} + continue to (RN3A.start,Here) + RN3D: resistor(left_ 3/2*dimen_,,E); llabel(,22R RN3D) + line to USB.Pin3 + + dot(at RN3A.end); line to (Here,RN3D) + Z2: variable(`resistor(down_ to (Here,U3.Pin27),,E); rlabel(Z2)',NN) + dot(at RN3D.end-(2*del,0)) + Z1: variable(`resistor(to (Here,U3.Pin27),,E); rlabel(Z1)',NN) + dot; line to (Z2,Here) + move up Z1.len/4 from last line.c; "CG0603MLC-05E" "X 2" + + line down_ del from USB.P_1; continue to (USB.P_2,Here); dot + line from USB.P_2 to (USB.P_2,Z1.end) then to Z1.end + dot(at (USB.P_2,Here)+(3/2*del,0)); line to (Here,USBVCC) + dot(,,1); {"USHIELD" at last [].n+(4bp__,0) above} + + L1: reversed(`inductor',down_ from Z1.end to (Z1,C8.end),W,,M) + rlabel(L1); llabel( BLM21); dot + { dot(at (Z2,Here)); line to (Here,U3.Pin28); dot(,,1) + "UGND" at last [].n above } + line from USB.Pin1 to (Z2,USB.Pin1) then up 2*del + XUSB: dot(,,1); {"XUSB" at last [].n above} + line from (Z1,USB.Pin3) to (Z1,XUSB); + DP: dot(,,1); {"D`'svg_it(+)" at last [].n above} + dot(at (DP,USB.Pin2)-(2*del,0)); line to (Here,XUSB) + DM: dot(,,1); "D`'svg_it(-)" at last [].n above + line from USB.Pin4 to (DM,USB.Pin4) then to (DM,BRE) then to BRE + + dot(at (U3.Chip.w.x-3*lg_pinsep,U3.Pin24.y)) + D3: diode(up_ 7*lg_pinsep); llabel(,,D3) + dot(at (D3.start-(2*del,0))) + RN1C: resistor(up_ D3.len,,E); llabel(,10K); llabel(RN1C); dot + line from D3.end to (Here.x-2*del,Here.y) + right_ + ICSP1: Header(2A,3,4*del,3*lg_pinsep) with .P2.end at Here + "ICSP1" at last [].Block.nw above ljust + "3X2 M" at last [].Block.sw below ljust + for_(1,5,2,`"m4x" at ICSP1.P`'m4x.end above ljust') + for_(2,6,2,`"m4x" at ICSP1.P`'m4x.end above rjust') + + dot(at ICSP1.P2.end+(del/2,0)); line up_ 2*del + G5: ground(,T,E); "svg_it(+)5V" above + ground(at (G5,ICSP1.P6),,E); {"GND" at last line.w below rjust} + {line to ICSP1.P6.end} + R2: dot(at ICSP1.P5.end-(lg_pinsep/2,0)); {line to ICSP1.P5.end} + { line to (Here,G5); dot(,,1); "RESET2" at last [].n above } + line to (R2,U3.Pin24) then to U3.Pin24.end + line from ICSP1.P4.end to (U3.Pin24.end,ICSP1.P4); dot + { line to (Here,G5); dot(,,1); "MOSI2" at last [].n above } + Turn: (U3.Pin21.end.x+4*lg_pinsep,Here.y) + line to (Turn,Here) then down Here.y-U3.Pin16.y then to U3.Pin16.end + line from ICSP1.P3.end to (R2.x-lg_pinsep,ICSP1.P3.y) \ + then down R2.y-U3.Pin24.y + continue to (D3.x+2*del,Here.y) then up ICSP1.P4.y-Here.y-2*lg_pinsep + continue to (Turn.x-2*lg_pinsep,Here.y) then down Here.y-U3.Pin15.y \ + then to U3.Pin15 + move to ICSP1.P1.end; line left Here.x-R2.x+2*lg_pinsep; dot + { line to (Here,G5); dot(,,1); "MISO2" at last [].n above rjust } + line down Here.y-U3.Pin24.y-2*lg_pinsep + continue to (D3.x+del,Here.y) then up ICSP1.P4.y-Here.y-lg_pinsep + continue to (Turn.x-lg_pinsep,Here.y) then down Here.y-U3.Pin17.y \ + then to U3.Pin17 + + command "" +.PE diff --git a/graphics/circuit_macros/examples/svg/UNOSVG.m4 b/graphics/circuit_macros/examples/svg/UNOSVG.m4 new file mode 100644 index 0000000000..8ae314f1af --- /dev/null +++ b/graphics/circuit_macros/examples/svg/UNOSVG.m4 @@ -0,0 +1,577 @@ +.PS +# UNOSVG.m4 +log_init +include(../icsSVG.m4) +textoffset = 1.5bp__ +svg_font(sans-serif,8.5bp__,textoffset) + +divert(-1) + + `Header([A][1|2], rows, wid, ht, + boxspec, pinlen;pinsize) + arg1: A= type A; number of columns + arg2: pins per column + arg3,4: custom wid, ht + arg5: eg fill_(0.9)' +define(`Header', +`[ define(`m4tp',ifinstr(`$1',A,A))define(`m4Hq',patsubst(`$1',A))dnl + define(`m4Hn',`ifelse(m4Hq,,1,m4Hq)')dnl + define(`m4Hm',`ifelse(`$2',,2,`$2')')dnl + define(`m4Hw',`ifelse(`$3',,`m4Hn*L_unit*3',`($3)')')dnl + define(`m4Hh',`ifelse(`$4',,`m4Hm*L_unit*3',`($4)')')dnl + ifinstr(`$6',;, + `stacksplit_(`m4Jdr',`$6',;)dnl + define(`m4Jps',ifelse(m4Jdr,,`L_unit',m4Jdr))popdef(`m4Jdr')dnl + define(`m4Jpl',ifelse(m4Jdr,,`lg_plen*L_unit',m4Jdr))popdef(`m4Jdr') ', + `define(`m4Jps',L_unit)dnl + define(`m4Jpl',`ifelse(`$6',,lg_plen*L_unit,`$6')')')dnl + Block: rotbox(m4Hw,m4Hh,`$5') + ifelse(`m4tp',A,`pushdef(`L_unit',(linewid/6))') + define(`m4Hct',1)dnl + for_(1,m4Hm,1, + `HeaderPin(Block.NW+vec_(m4Jps*3/2,-(m4x-1/2)*m4Hh/m4Hm), + ifinstr(m4tp,A,1,eval(m4Hct-1)), + P`'m4Hct, w, (m4Jpl+m4Jps);m4Jps) define(`m4Hct',incr(m4Hct)) + ifelse(m4Hn, 2, `HeaderPin(Block.NE+vec_(-m4Jps*3/2,-(m4x-1/2)*m4Hh/m4Hm), + 1, P`'m4Hct, e, (m4Jpl+m4Jps);m4Hps) define(`m4Hct',incr(m4Hct))') ') + ifelse(`m4Hq',A,`popdef(`L_unit')') + `$7' ]') + `HeaderPin(location, type, Picname, n|e|s|w, + [length][;pinsize]) + arg2: 0= square' +define(`HeaderPin',` + ifinstr(`$5',;, + `stacksplit_(`m4Hdr',`$5',;)dnl + define(`m4Hps',ifelse(m4Hdr,,`L_unit',m4Hdr))popdef(`m4Hdr')dnl + define(`m4Hpl',ifelse(m4Hdr,,`lg_plen*L_unit',m4Hdr))popdef(`m4Hdr') ', + `define(`m4Hps',L_unit)dnl + define(`m4Hpl',`ifelse(`$5',,lg_plen*L_unit,`$5')')')dnl + ifelse(`$1',,,`move to `$1';') + ifelse(`$3',,,`$3':) line to ifelse( + `$4',n,`rvec_(0,m4Hpl)', `$4',e,`rvec_(m4Hpl,0)', + `$4',s,`rvec_(0,-m4Hpl)', `rvec_(-m4Hpl,0)') + ifelse(`$3',,,Pin`$3':) ifelse(ifelse(`$2',,0,`$2'),0, + `rotbox(m4Hps,m4Hps,fill_(1))', + `circle diam m4Hps fill_(1)') at last line.start ') + +define(`brdge',`eleminit_(`$1') + define(`m4h',ifelse(`$2',,`sourcerad_',`($2)/2'))dnl + { line to rvec_(rp_len/2-m4h/2,0) + move to rvec_(m4h/2,0) + for m4ng=75 to 255 by 180 do {{ + m4fshade(0, arc cw from rvec_(Rect_(m4h/2,m4ng)) \ + to rvec_(Rect_(m4h/2,-m4ng)) \ + with .c at Here ) }} + line from rvec_(m4h/2,0) to rvec_(rp_len/2,0) } + { [box invis ht_ m4h wid_ m4h] at rvec_(rp_len/2,0) } + line to rvec_(rp_len,0) invis ') + +define(`ATMEGA16U2',`[ + Chip: box wid 10*lg_pinsep ht 25*lg_pinsep + Loopover_(`x', + `Arightpin(patsubst(x,;,`,'))', + 6;PD0, 7;PD1, 8;PD2, 9;PD3, 10;PD4, 11;PD5, 12;PD6, 13;PD7, + 131;nul, + 5;PC2, 26;PC4, 25;PC5, 23;PC6, 22;PC7, + 132;nul, + 133;nul, + 14;PB0, 15;PB1, 16;PB2, 17;PB3, 18;PB4, 19;PB5, 20;PB6, 21;PB7) + Loopover_(`x', + `Aleftpin(patsubst(x,;,`,'))', + 33;PAD, + 100;nul, + 28;UGND, 29;D`'svg_it(+), 30;D`'svg_it(-), 31;UVCC, 27;UCAP, + 101;nul, 102;nul, + 3;GND, 4;VCC, 103;nul, + 104;nul, + 32;AVCC, + 105;nul, 106;nul, + 1;XTAL1, + 107;nul, + 2;XTAL2(PC0), + 108;nul, 109;nul) + lg_pin(Pin109+(0,lg_pinsep),RESET,Pin24,wN,24,pinlen) + ]') +define(`Aleftpin',`move to Chip.sw+(0,m4Lx*lg_pinsep) + Pin`$1': ifelse(`$2',nul,Here,dnl + `line left pinlen "`$1'" above + "`$2'" ljust at last line.start')') +define(`Arightpin',`move to Chip.se+(0,m4Lx*lg_pinsep) + Pin`$1': ifelse(`$2',nul,Here,dnl + `line right pinlen "`$1'" above + "`$2'" rjust at last line.start')') + +define(`ATMEGA328P',`[ + Chip: box wid 10*lg_pinsep ht 23*lg_pinsep + Loopover_(`x', + `Arightpin(patsubst(x,;,`,'))', + 2;PD0, 3;PD1, 4;PD2, 5;PD3, 6;PD4, 11;PD5, 12;PD6, 13;PD7, + 100;nul, + 23;PC0, 24;PC1, 25;PC2, 26;PC3, 27;PC4, 28;PC5, + 101;nul, + 14;PB0, 15;PB1, 16;PB2, 17;PB3, 18;PB4, 19;PB5) + Loopover_(`x', + `Aleftpin(patsubst(x,;,`,'))', + 201;nul, 202;nul, 203;nul, 204;nul, 205;nul, 206;nul, 207;nul, 208;nul, + 209;nul, + 8;GND, 7;VCC, + 301;nul, + 22;AGND, 20;AVCC, 21;AREF, + 302;nul, + 9;XTAL1, + 303;nul, + 10;XTAL2, + 304;nul, 305;nul) + lg_pin(Pin305+(0,lg_pinsep),RESET,Pin1,wN,1,pinlen) + ]') + +define(`rswitch',`dswitch(`$1',,WBoDCP) + DS: last line.start; DC: last line.c; DE: last line.end + DL: DC-vec_(dimen_/6,0); DR: DC+vec_(dimen_/6,0) + {{"1" at DL above rjust}; {"3" at DR above ljust} + { line from DL to DL-vec_(0,dimen_/6) chop dotrad_ chop 0 + {"2" below rjust} + continue to DS-vec_(0,dimen_/6) then to DS; dot } + { line from DR to DR+vec_(0,-dimen_/6) chop dotrad_ chop 0 + {"4" below ljust} + continue to DE+vec_(0,-dimen_/6) then to DE; dot } + line from DC+vec_(dimen_/10,-dimen_/6) to DC+vec_(-dimen_/10,-dimen_/6) + move to last line.c; line to rvec_(0,-dimen_/3) \ + then to rvec_(-dimen_/3,-dimen_/3) + {"5" below}} ') + +divert(0)dnl + + maxpswid = 20 + maxpsht = 20 + + define(`pinlen',`30bp__') + define(`lg_pinsep',(1.2*lg_pinsep)) + del = lg_pinsep + define(`pindiam',0.1) + + define(`egnd',`ground(,,E); "GND" at last line.c below') + + U3: ATMEGA16U2 + `"ATMEGA16U2-MU(R)"' at U3.Chip.s below + `"U3"' at U3.Chip.nw ljust above + ZU4: ATMEGA328P with .Chip.nw at U3.Chip.sw+(-2.5,-10*del) + `"ATMEGA328P-PU"' at ZU4.Chip.s below + `"ZU4"' at ZU4.Chip.nw ljust above + + dot(at U3.Pin2.end) + R1: resistor(down_ 2*lg_pinsep,,E) + rlabel(,"R1" rjust "1M" rjust) + dot + dot(at R1.start-(2*del,0)) + xtal(down_ 2*lg_pinsep) + rlabel(16,,MHz); dot + XT2: dot(at last line.start-(2*del,0)); { "XT2" at last [].n above } + + Br1: brdge(left_ from U3.Pin33.end to (XT2,U3.Pin33)) + rlabel(1,,2); llabel(,GROUND) + BRE: dot + line to (Here,U3.Pin28) then to U3.Pin28.end + {"UGND" at (Br1,Here) above} + + XT1: dot(at XT2-(del,R1.len)); { "XT1" at last [].n above } + line from XT1 to U3.Pin1.end + line from U3.Pin2.end to (XT1,XT2) + C11: capacitor(left_ 3*del); rlabel(,C11); llabel(,22`'pF) + C9: capacitor(from XT1 to (Here,XT1)); {"C9" "22`'pF" at last [].s+(0,-11bp__)} + { line to C11.end } + dot + G1: egnd + line from XT1 down_ 3*del; continue to (G1,Here); dot(,,1) + {"XT3" at last [].n above} + dot(at Here+(0,-3/2*del),,1); {"XT4" at last [].n above} + { line to (XT2,Here) then to XT2 chop dotrad_ chop 0 } + USBVCC: dot(at Here+(0,-7/2*del),,1) + {"USBVCC" at last [].n-(3/2*del,0) above ljust} + { line to (Here,U3.Pin31) chop dotrad_ chop 0; continue to U3.Pin31.end } + dot(at Here+(2*del,0),,1); {"VUCAP" at last [].e+(0,-5bp__) ljust} + line to (Here,U3.Pin27) chop dotrad_ chop 0; dot + line from U3.Pin27.end to (G1.x-4.5*del,U3.Pin27.y) + C8: capacitor(down_ to (Here,Br1)); llabel(C8,,1`'svg_micro) + Bus1: dot + + dot(at U3.Pin33.end) + move to U3.Pin3.end; line to (Here,U3.Chip.s) + G2: ground(,T,E); {"GND" at last line.c below } + + dot(at U3.Pin32.end) + {line to U3.Pin4.end; dot} + line left del; ground(,,E,U); {"svg_it(+)5 V" at last line.c above} + + line from U3.Pin4.end left_ 2*del + capacitor(down_ 3*del); { llabel(C7,,100n) } + G3: ground(,T,E); {"GND" at last line.c below } + + line from U3.Pin30.end to (G1.x-2*del,U3.Pin30.y); TD: Here + continue to (Here,U3.Pin32) + { "RD`'svg_it(-)" above rjust }; continue left_ 1.5*del + RN3A: resistor(left_ 3/2*dimen_,,E); rlabel(,22R RN3A) + Dm: line left_ 7*del + +USB: [ K: box invis wid dimen_/2 ht 5*lg_pinsep + "USB" rjust at K.e + line thick 1.5 from K.nw to K.ne then to K.se then to K.sw + Loopover_(`x', + `Pin`'m4Lx: K.ne-(0,m4Lx/5*K.ht) + "x" at Pin`'m4Lx ljust above', + 1 XUSB, 2 D`'svg_it(-), 3 D`'svg_it(+), 4 UGND) + P_1: K.sw; {"P$`1'" at P_1 below rjust} + P_2: K.s; {"P$`2'" at P_2 below ljust} + ] with .Pin2 at Here; "X2" at USB.ne above rjust + + move to U3.Pin29.end + line to (TD.x-del,Here.y); continue to (Here,Dm-(0,lg_pinsep)) + { "RD`'svg_it(+)" above rjust} + continue to (RN3A.start,Here) + RN3D: resistor(left_ 3/2*dimen_,,E); llabel(,22R RN3D) + line to USB.Pin3 + + dot(at RN3A.end); line to (Here,RN3D) + Z2: variable(`resistor(down_ to (Here,U3.Pin27),,E); rlabel(Z2)',NN) + dot(at RN3D.end-(2*del,0)) + Z1: variable(`resistor(to (Here,U3.Pin27),,E); rlabel(Z1)',NN) + dot; line to (Z2,Here) + move up Z1.len/4 from last line.c; "CG0603MLC-05E" "X 2" + + line down_ del from USB.P_1; continue to (USB.P_2,Here); dot + line from USB.P_2 to (USB.P_2,Z1.end) then to Z1.end + dot(at (USB.P_2,Here)+(3/2*del,0)); line to (Here,USBVCC) + dot(,,1); {"USHIELD" at last [].n+(4bp__,0) above} + + L1: reversed(`inductor',down_ from Z1.end to (Z1,C8.end),W,,) + rlabel(,L1); llabel("svg_thinsp`'BLM21" ljust); dot + { dot(at (Z2,Here)); line to (Here,U3.Pin28); dot(,,1) + "UGND" at last [].n above } + line from USB.Pin1 to (Z2,USB.Pin1) then up 2*del + XUSB: dot(,,1); {"XUSB" at last [].n above} + line from (Z1,USB.Pin3) to (Z1,XUSB); + DP: dot(,,1); {"D`'svg_it(+)" at last [].n above} + dot(at (DP,USB.Pin2)-(2*del,0)); line to (Here,XUSB) + DM: dot(,,1); "D`'svg_it(-)" at last [].n above + line from USB.Pin4 to (DM,USB.Pin4) then to (DM,BRE) then to BRE + + line from U3.Pin18.end right_ 3.5*del + JP2: Header(A2,2,4*del,2*lg_pinsep,,0.2;pindiam) with .P3.end at Here + "JP2" at JP2.Block.nw above ljust + "2X2M - NM" at JP2.s below + "1" at JP2.P3.end above ljust; "3" at JP2.P1.end above ljust + "2" at JP2.P4.end above rjust; "4" at JP2.P2.end above rjust + line from JP2.P1.end to (JP2.P1.end,U3.Pin19) then to U3.Pin19.end + dot(at JP2.P1.end); line up 3.5*del + TPPB5: dot(,,1); {"PB5" at last [].e ljust} + TPPB4: dot(at TPPB5-(del*3/2,0),,1); {"PB4" at last [].w rjust} + line to (Here,JP2.P3); dot + line from JP2.P2.end to (JP2.P2.end,TPPB4) + TPPB7: dot(,,1); {"PB7" at last [].w rjust} + line from JP2.P4.end right del*3/2; continue to (Here,TPPB4) + TPPB6: dot(,,1); {"PB6" at last [].n above} + line from U3.Pin20.end right del then up del; continue to (TPPB6,Here); dot + line from U3.Pin21.end up del; continue to (TPPB7,Here); dot + + ICSP1: Header(A2,3,4*del,2.5*lg_pinsep,,0.2;pindiam) \ + with .P1.end at (JP2.P1.end,U3.Pin14) + "ICSP1" at last [].Block.nw above ljust + "3X2 M" at last [].Block.sw below ljust + for_(1,5,2,`"m4x" at ICSP1.P`'m4x.end above ljust') + for_(2,6,2,`"m4x" at ICSP1.P`'m4x.end above rjust') + line from ICSP1.P1.end to (ICSP1.P1.end,U3.Pin17) then to U3.Pin17.end + line from ICSP1.P3.end left del; continue to (Here,U3.Pin15) \ + then to U3.Pin15.end + + dot(at U3.Pin24.end); + RN1C: resistor(up_ 5*lg_pinsep,,E); rlabel(,10K,RN1C); llabel(5,,3) dot +# D3: diode(up_ 5*lg_pinsep); rlabel(,,D3); dot + line up_ 2*del; ground(,T,E,U); {"+5 V" at last line.w rjust} + dot(at U3.Pin24.end-(del,0)); +# RN1C: resistor(up_ D3.len,,E); llabel(,10K,RN1C) + D3: diode(up_ RN1C.len); llabel(,,D3) + line to (TPPB6.x+del,Here.y) + continue to (Here,ICSP1.P2.end) then to ICSP1.P2.end + line from ICSP1.P5.end down 2*del; continue to (TPPB6.x+2*del,Here.y) + TRESET2: Here + continue to (Here.x,D3.end.y+del) then to (RN1C.end.x-2.5*del,D3.end.y+del) + continue to (Here,U3.Pin24) then to U3.Pin24.end + G4: ground(at ICSP1.P6.end,,E); {"GND" at last line.c below } + line from ICSP1.P4.end right del then up U3.Pin16.y-ICSP1.P4.y \ + then to U3.Pin16.end + dot(at ICSP1.P1.end); line left_ 2.5*del then down_ 5*del + MISO2: dot(,,1); {"MISO2" at last [].s below } + dot(at ICSP1.P3.end-(del,0)); line to (Here,MISO2) + SCK2: dot(,,1); {"SCK2" at last [].s below ljust } + dot(at TRESET2); line to (Here,SCK2) + RESET2: dot(,,1); {"RESET2" wid 36bp__ at last [].s below } + dot(at ICSP1.P4.end+(del,0)); line to (Here,RESET2) + MOSI2: dot(,,1); {"MOSI2" at last [].s-(del,0) below } + + line right_ del from U3.Pin11.end then up_ del*3/2 + TXLED: reversed(`diode',right_ elen_,LER) + rlabel(,YELLOW); llabel(TX); dot + {line up_ del; TPTXL: dot(,,1); "TXL" at last [].n above} + RN2C: resistor(right_ elen_,,E); llabel(,1 K RN2C); rlabel(6,,3); dot + line from U3.Pin10.end to (TXLED.start,U3.Pin10) + RXLED: reversed(`diode',to (TXLED.end,Here),LER) + rlabel(,YELLOW); llabel(RX); dot + {line up_ del; dot(,,1); "RXL" at last [].n above} + RN2B: resistor(right_ elen_,,E); llabel(,1 K RN2B); rlabel(7,,2) + line to (Here,TPTXL); ground(,T,E,U); "+5 V" at last line.c above + +# ZU4 connections + line left_ del*3/2 from ZU4.Pin7.end; dot + {line up_ del; G4: ground(,T,E,U); "+5 V" at last line.c above } + C6: capacitor(down dimen_); llabel(100n,,C6); dot + { dot(at ZU4.Pin8.end) }; dot(at (ZU4.Pin8.end,Here)) + { G4: ground(at Here+(0,-del),,E); {"GND" at last line.c below } + line to ZU4.Pin22.end } + line left_ Here.x-C6.x + dimen_*5/4 + C10: capacitor(up_ C6.len); llabel(100n,,C10); dot + { line to (Here,ZU4.Pin20) then to ZU4.Pin20.end } +# L2: ebox(right_ to C6.start,,,0.2); rlabel(,L2); llabel(,100`'svg_micro`'H) + L2: inductor(right_ to C6.start,W); rlabel(,L2); llabel(,100`'svg_micro`'H) + + line left 2*del from ZU4.Pin9.end; PE: dot + R2: resistor(up_ to (Here,ZU4.Pin10),,E); llabel(,R2); rlabel(,1 M); dot + dot(at Here-(del*4.0,0)); { "XTAL2" above ljust } + XTAL: xtal(down_ R2.len); llabel(16 MHz); dot; { "XTAL1" below ljust } + pushdef(`dimen_',dimen_/2) + capacitor(left_ del from 0.25 between XTAL.start and XTAL.end) + capacitor(left_ del from 0.75 between XTAL.start and XTAL.end) + popdef(`dimen_') + line up XTAL.len/2 + line left del from last line.c then down del + G5: ground(,T,E); "GND" at last line.c below + line down_ del from XTAL.end; dot(,,1); "XT1" at last [].s below + line up del from XTAL.start; dot(,,1); "XT2" at last [].n above + line from XTAL.start to ZU4.Pin10.end + line from XTAL.end to ZU4.Pin9.end + line left 2*del from ZU4.Pin1.end; dot +# dot(at ZU4.Pin1.end) + D2: diode(up_ dimen_); rlabel(,D2) + dot(at D2.start-(2.5*del,0)) + RN1D: resistor(up_ D2.len,,E); rlabel(10 K,,RN1D); dot + { line to D2.end } + line up_ del; ground(,T,E,U); "+5 V" at last line.c above + + line from ZU4.Pin1.end to (RN1D-(1.5*del,0),ZU4.Pin1) then up 7*del + continue to (ZU4.Chip.w,Here)+(del,0); BRB: dot + { line down_ 2*del; Br2: brdge(right_ dimen_) + llabel(1,,2); rlabel(,RESET_EN); line up_ 2*del; dot } + line right_ dimen_+del + C5: capacitor(right_ dimen_); llabel(,C5); rlabel(100n); dot + { RN2D: resistor(down_ dimen_,,E); rlabel(,1 K); llabel(,RN2D) + G6: ground(,T,E); "GND" at last line below } + { line up_ del; DTR: dot(,,1); "DTR" at last [].e ljust } + line from U3.Pin13.end right del/2; continue to (Here,U3.Chip.s) \ + then left+2*del; continue to (Here,BRB) then to C5.end + TP2: Here; continue to C5.end + + line up 3*del from BRB + TP1: dot #; line left BRB.x-RN1D.x + RESET: rswitch( right_ dimen_ from (USB.e,Here)+(del/2,0)) + { "RESET" at RESET+(-del*1.7,1.0*del) above } + line left del from RESET.start then down del + G7: ground(,T,E); "GND" at last line.c below + + ICSP: Header(A2,3,4*del,2.5*lg_pinsep,,0.2;pindiam) \ + with .Block.sw at ZU4.Pin19.end+(2*del,del*3) + "ICSP" at ICSP.Block.nw above ljust + "3X2 M" at ICSP.Block.sw below ljust + for_(1,5,2,`"m4x" at ICSP.P`'m4x.end above ljust') + for_(2,6,2,`"m4x" at ICSP.P`'m4x.end above rjust') + dot(at ZU4.Pin19.end); line to (Here,ICSP.P3) then to ICSP.P3.end + line from ZU4.Pin18.end right del; dot + line to (Here,ICSP.P1) then to ICSP.P1.end + move to ICSP.P5.end; line to (ZU4.Pin19.end,Here)-(del,0); + continue to (Here,TP1); dot + line from ICSP.P2.end up_ del; ground(,T,E,U); "+5 V" at last line.c above + line from ICSP.P6.end down_ del; G9: ground(,T,E); "GND" at last line.c below + move to ICSP.P4.end; line right_ del then down Here.y - ZU4.Pin17.y; dot +# move to ICSP.P4.end; line right_ del then down Here.y - G9.y + del +# continue to (ICSP.P1.end.x+del,Here.y) then down_ Here.y-ZU4.Pin17.y; dot + + line right_ from RESET.end to (U3.Chip.e+(12*del,0),TP1) + POWER: Header(A1,8,1.5*del,7*lg_pinsep,,0.2;pindiam) with .P3.end at Here + "POWER" wid 36bp__ at POWER.Block.nw above ljust + "8X1F-H8.5" at POWER.Block.sw below ljust + for_(1,8,1,`"m4x" at POWER.P`'m4x.end above ljust') + line from POWER.P2.end left del/2 then down POWER.P2.y-POWER.P5.y ; dot + line from POWER.P4.end left 2.5*del; "+3V3" above ljust + dot(at POWER.P3.end-(del*1.5,0)); line up 2*del + dot(,,1); "RESET" at last [].n above + line from POWER.P5.end left 3.5*del then up 4*del; ground(,T,E,U) + "+5 V" at last line.c above + line left del*2 from POWER.P8.end; "VIN" above ljust + line left del/2 from POWER.P7.end; dot + line from POWER.P6.end to (Here,POWER.P6.end) then to Here+(0,-2.5*del) + G10: ground(,T,E); "GND" at last line.c below + + right_ + + IOH: Header(A1,10,1.5*del,10*lg_pinsep,,0.2;pindiam) \ + with .P10.end at ZU4.Pin14.end + (del*15,0) + "IOH" at IOH.Block.nw above ljust + "10X1F-H8.5" at IOH.Block.se below ljust + for_(0,9,1,` + { "incr(m4x)" above ljust at IOH.P`'eval(10-m4x).end } + move to IOH.P`'eval(10-m4x).start-(pindiam/2+dotrad_/2,0) + ifelse(m4x,6,,`dot') + move to IOH.P`'eval(10-m4x).end + ifelse(eval(m4x<6),1,`line from ZU4.Pin`'eval(14+m4x).end to Here ') + ifelse(m4x,6,,` line right del*4; dot(,pindiam/2,1) ') + ifelse(eval(m4x<6),1,`"eval(8+m4x)" at last [].e ljust ')') + "SCL" at last [].e ljust + "SDA" at 3rd last [].e ljust + "AREF" at 5th last [].e ljust + + AD: Header(A1,6,1.5*del,6*lg_pinsep,,0.2;pindiam) \ + with .P6.end at (IOH.P10.end,ZU4.Pin23) #.end + (del*6,0) +# with .P6.end at ZU4.Pin23.end + (del*6,0) + "AD" at AD.Block.nw above ljust + "6X1F-H8.5" at AD.Block.se below ljust + for_(0,5,1,` + dot(at AD.P`'eval(6-m4x).start-(pindiam/2+dotrad_/2,0)) + line from ZU4.Pin`'eval(23+m4x).end \ + to AD.P`'eval(6-m4x).end; {"incr(m4x)" above ljust} + line right del*4; dot(,pindiam/2,1) + "A`'m4x" at last [].e ljust ') + + IOL: Header(A1,8,1.5*del,8*lg_pinsep,,0.2;pindiam) \ + with .P8.end at (AD.P1.end,ZU4.Pin2) + "IOL" at IOL.Block.nw above ljust + "8X1F-H8.5" at IOL.Block.sw ljust below + for_(0,7,1,` + dot(at IOL.P`'eval(8-m4x).start-(pindiam/2+dotrad_/2,0)) + line from ZU4.Pin`'eval(ifelse(eval(m4x<5),1,2,6)+m4x).end \ + to IOL.P`'eval(8-m4x).end; {"incr(m4x)" above ljust} + line right del*4; dot(,pindiam/2,1) + "m4x" at last [].e ljust ') + + line from ZU4.Pin21.end up RESET.y-ZU4.Pin21.y-del \ + then right ICSP.P4.end.x-ZU4.Pin21.end.x + 2*del + continue to (Here,IOH.P3)+(0,del*3/2); dot + { C4: capacitor(down_ 3.0*del); llabel(C4,,100n) + { ground(,T,E); "GND" at last line.e ljust} + line from IOH.P4.end to (Here,IOH.P4); dot } + line right del*3/2; continue to (Here,IOH.P3) then to IOH.P3.end + + line left del/2 from IOH.P2.end; continue to (Here,AD.P2); dot + line left del*3/2 from IOH.P1.end; continue to (Here,AD.P1); dot + +# line right_ del*2 from U3.Pin9.end then down_ 5.5*lg_pinsep; dot + line right_ del*2 from U3.Pin9.end then down_ 3.5*lg_pinsep; dot + { line right_ 2*del; dot(,,1); "RX" at last [].e ljust } + line to (Here,RESET)-(0,del) + RN4B: resistor(down_ dimen_,,E); llabel(7,"RN4B" ljust "1 K" ljust,2) + line down_ del then left_ Here.x - IOH.P9.end.x + del*2.5 + continue to (Here,ZU4.Pin2); dot + + line right_ del from U3.Pin8.end; dot + { line right_ 3*del; dot(,,1); "TX" at last [].e ljust } + line to (Here,RN4B.start) + RN4A: resistor(down_ dimen_,,E); rlabel(8,"RN4A" rjust "1 K" rjust,1) + line to (IOH.P9.end,Here)-(del*3.5,0); continue to (Here,ZU4.Pin3); dot + +Pwr: [ + Vin: line right 2*del "VIN" above + RN1A: resistor(down_ dimen_*5/4,,E); rlabel(8, "RN1A" rjust "10 K" rjust ,1) + CMP: dot + RN1B: resistor(down_ dimen_*5/4,,E); rlabel(2, "RN1B" rjust "10 K" rjust ,7) + B12: ground(,T,E); "GND" at last line below + + line right_ 2*del from CMP; dot + { line up_ 2*del; dot(,,1); "CMP" at last [].n above } + line right_ del + POA: opamp(,"+" ljust,"-" ljust) with .In1 at Here + "U5A" at last [].n; "1" at POA.Out above rjust + "3" at POA.In1 rjust above; "2" at POA.In2 rjust above + line left_ del from POA.In2 then down_ del; "+3V3" below + dot(at POA.Out); {line up_ 2*del; dot(,,1); "GATE" at last [].n above } + T1: mosfet(down_ dimen_*1.5,R,dMdPyEDSQdB,) with .G at Here + "T1" at T1 + (-dimen_/4,del*5/4) + "FDN340P" at T1 + (0,-del*5/4) rjust +# "USBVCC" at T1.D rjust + dot(at T1.S); { line up_ 2*del; ground(,T,E,U); "+5 V" at last line above } + ] with .RN1B at (USB.e.x+del,RN1C.y-2*del) + dot(at XUSB+(0,-del/2)) + F1: fuse(right_ to (Pwr.T1.D,Here)); { "500 mA" ljust } + { "MF-MSMF050-2" at last [].sw below ljust } + line to Pwr.T1.D + + line from Pwr.T1.S right_ 2.5*lg_pinsep + { U2:box ht 3*lg_pinsep wid 5*lg_pinsep with .nw at Here+(0,lg_pinsep/2) } + {"1" above rjust}; {"IN" ljust} + "LP2985-33DBVR" at U2.s below + "U2" above ljust at U2.nw + "3" above rjust at U2.w; line left del from U2.w then up_ lg_pinsep; dot + "ON/OFF" at U2.w ljust + line right_ textht*0.66*3 from U2.w+(textht*0.66*5,textht) + U2P2: U2.w+(0,-lg_pinsep); "2" at U2P2 above rjust; "GND" at U2P2 ljust + line from U2P2 left del then down_ del + G15: ground(,T,E); "GND" at last line.c below + U2P5: (U2.e.x,U2.e.y+lg_pinsep) + "OUT" at U2P5 rjust; "5" at U2P5 above ljust + line from U2P5 right 2*del "+3V3" below; dot + { line up_ del; dot(,,1); "3V3" at last [].n above } + C3: capacitor(down_ to(Here,G15)); rlabel(,"C3" rjust "1`'svg_micro" rjust) + ground(,T,E); "GND" at last line.c below + "NC/FB" at (U2.e.x,U2P2.y) rjust + + "SCK" above ljust at Pwr.Vin + (0,4*del) + line right_ 3*del + U5B: opamp(,"+" ljust, "-" ljust) with .In1 at Here + "5" at U5B.In1 above rjust; "6" at U5B.In2 above rjust + "U5B" at last [].n; "7" at U5B.Out above rjust + line from U5B.In2 left del then down del then right U5B.Out.x-U5B.In1.x+del + TD2: dot + dot(at U5B.Out); dot(at Here+(0,2*del),,1); "LCMD" at last [].e ljust + line down_ from last [].s to TD2 + RN2A: resistor(right_ dimen_*5/4,,E); llabel(8,"1K",1); rlabel(,RN2A) + dot; {line up_ 2*del; dot(,,1); "LL" at last [].n above } + diode(right_ dimen_*5/4,LE); rlabel(,YELLOW) + line down_ dimen_/4; egnd + + X1:box ht 3*lg_pinsep wid 5*lg_pinsep with .w at (U2.x,U5B.y+del) + "X1 DC21MMX" at X1.nw above ljust; "PWR SUPPLY" at X1.nw below ljust + X1P1: 1/3 between X1.sw and X1.se; "1" at X1P1 rjust below + X1P2: 2/3 between X1.sw and X1.se; "2" at X1P2 rjust below + line down_ del from X1P1; dot; { egnd } + line right X1.e.x+del - Here.x then up_ X1.e.y-Here.y then to X1.e + "3" above ljust at X1.e + line from X1P2 down del/2 then right X1.e.x+del*2 - X1P2.x \ + then up X1.n.y - X1P2.y + del/2; dot + { line up_ 2*del; PWRIN: dot(,,1); "PWRIN" at last [].w rjust } + D1: diode(right_ dimen_); llabel(,D1); rlabel(,M7); dot + { PC1: capacitor(down_ dimen_,C); llabel(,"PC1" ljust "47`'svg_micro" ljust) + G16: egnd } + { line to (Here,PWRIN); dot(,,1); "VIN" at last [].e ljust } + line right 3*del; { "3" above rjust } + U1P1: Here + U1: box ht 3*lg_pinsep wid 4*lg_pinsep with .nw at Here+(0,lg_pinsep/2) + "IN" at U1P1 ljust; "OUT" at (U1.e,U1P1) rjust + "1" below rjust at U1.s + "U1" at U1.nw + (0,textht/dptextratio) above ljust \ + "NCP1117ST50T3G" ljust + line from U1.s to (U1.s,G16); egnd + U1P4: (U1.e,U1P1); U1P2: U1P4+(0,-del) + { "4" at U1P4 above ljust }; { "2" at U1P2 above ljust }; + line right_ 2*del from U1P4; dot; + line from U1P2 to (Here,U1P2); dot; { line to (Here,U1P4) } + { PC2: capacitor(down_ to (Here,G16),C) + llabel(,"PC2" ljust "47`'svg_micro" ljust); egnd } + line right_ del*3/2 from (Here,U1P4); dot + { line to (Here,PWRIN); ground(,T,E,U); "+5V" at last line.c above } + line right_ del*3/2; dot; { line to (Here,PC2.start) + C2: capacitor(down_ to (Here,G16),C) + llabel(,"C2" ljust "100`'svg_micro" ljust); egnd } + { line to (Here,PWRIN); dot(,,1); "5V" at last [].n above } + line right_ del*3/2 then to (Here.x+del*3/2,PWRIN.y); dot(,,1) + "5V1" at last [].n above + + + + command "" +.PE diff --git a/graphics/circuit_macros/examples/svg/Xtest.m4 b/graphics/circuit_macros/examples/svg/Xtest.m4 new file mode 100644 index 0000000000..6758043816 --- /dev/null +++ b/graphics/circuit_macros/examples/svg/Xtest.m4 @@ -0,0 +1,58 @@ +.PS +# test.m4 +gen_init + +divert(-1) + +divert(0)dnl + +gs = 0.1 +gw = 3 +gh = 3 +define grid {($1*gs,$2*gs)} +B: box invis wid gw+2 ht gh+2 with .c at (0,0) +bix = gw/gs/2 +G:[ +C: 0,0 +for i=-bix to bix do { line wid 0.4 outlined "gray" from grid(-bix,i) right gw } +for i=-bix to bix by 5 do { sprintf("%g",i) at grid(-bix,i) rjust } +for j=-bix to bix do { line wid 0.4 outlined "gray" from grid(j,-bix) up gh } +for j=-bix to bix by 5 do { sprintf("%g",j) at grid(j,-bix) below } + + line from grid(-bix,0) right gw + line from grid(0,-bix) up gh +] with .C at B + +textoffset = 0 +xwid = 0.71; svg_font(Times,72bp__) +#xwid = 0.65; svg_font(sans-serif,72bp__) +#xwid = 0.64; svg_font(Arial,1) +#xwid = 0.64; svg_font(Helvetica,1) +#xwid = 0.54; svg_font(Courier,1) +#xwid = 0.67; svg_font(Cursive,1) +#xwid = 0.64; svg_font(Verdana,1) +#xwid = 0.70; svg_font(Georgia,1) +#xwid = 0.70; svg_font(Palatino,1) +#xwid = 0.70; svg_font(Garamond,1) +#xwid = 0.70; svg_font(Bookman,1) +##xwid = 0.70; svg_font(Comic Sans MS,1) +#xwid = 0.55; svg_font(Trebuchet MS,1) +#xwid = 0.78; svg_font(Arial Black,1) +#xwid = 0.49; svg_font(Impact,1) +[ +C: 0,0 + "X" wid xwid at grid(0,0) above ljust ; showbox_(last "") + "X" wid xwid at grid(0,0) below ljust ; showbox_(last "") + "X" wid xwid at grid(0,0) above rjust ; showbox_(last "") + "X" wid xwid at grid(0,0) below rjust ; showbox_(last "") +] with .C at G.C +[ + Q: box wid gw ht gh "X" ljust "Y" rjust "Z" + line from Q.n to Q.s; line from Q.w to Q.e +] with .w at B.e + + "X" wid xwid at G.n above; showbox_(last "") + + + command "" +.PE diff --git a/graphics/circuit_macros/examples/svg/Y14-5SVG.m4 b/graphics/circuit_macros/examples/svg/Y14-5SVG.m4 new file mode 100644 index 0000000000..84cc6bcda6 --- /dev/null +++ b/graphics/circuit_macros/examples/svg/Y14-5SVG.m4 @@ -0,0 +1,173 @@ +.PS +# ASME_Y14-5.m4 +# https://en.wikipedia.org/wiki/Geometric_dimensioning_and_tolerancing +# See the ASME Y14.5 standard, Figure 6-30. +scale = 100/3 +cct_init +include(../ASME_Y14-5.m4) +ifsvg(`svg_font(sans-serif,10bp__)', +`textht = 10bp__*2/3 + iflatex(`command "{\sf"')') +# ASME Y14.5 specs: + arrowht = textht*0.8 + arrowwid = textht*0.6 + maxpswid = 12 + +# Diameters + d1 = (20.13+20.00)/2 + d2 = 31.7 + d3 = 36 + d4 = (40.60+40.45)/2 + d5 = 57 + d6 = 86 + d7 = 100 + d8 = 8.0 + adj = 1.5 + +Section: [ + Orig: (0,0) + T0: (0,-d7/2) + T1: (6,-d5/2) + T2: (15.5,-d3/2) + T3: (22,-d3/2-adj) + T4: (32,-d2/2) + T5: (41.3,0) + T6: (9.5,-d4/2) +# for_(0,5,1,`"m4x" at T`'m4x') +# Hatching + H: hatchbox(invis ht d7 wid 41.3,2,thick 0.4,-45) with .w at Orig + box invis fill_(1) wid T5.x-T1.x ht T1.y-H.s.y with .se at H.se + box same with .ne at H.ne + box invis fill_(1) wid T3.x-T2.x ht T2.y-T1.y with .nw at T2 + box same with .sw at (T2.x,-T2.y) + box invis fill_(1) wid T4.x-T3.x ht T3.y-T1.y with .nw at T3 + box same with .sw at (T3.x,-T3.y) + box invis fill_(1) wid T5.x-T4.x ht T4.y-T1.y with .nw at T4 + box same with .sw at (T4.x,-T4.y) +# Section outline lower + line from (0,-d4/2) to T0 then right T1.x-T0.x then up 1 + arcto(T1,(T2,T1),1) + line to (T2,T1) then up 1 + arcto(T2,(T3,T2),1) + arcto((T3,T2),T3,0.5) + arcto(T3,(T4,T3),0.5) + arcto((T4,T3),T4,1) + arcto(T4,(T5,T4),1) + line to (T5,T4) then to (T5.x,-T4.y) then left 1 +# Section outline upper + line from (0,d4/2) to (0,-T0.y) then right T1.x-T0.x then down 1 + arcto((T1.x,-T1.y),(T2.x,-T1.y),1) + line to (T2.x,-T1.y) then down 1 + arcto((T2.x,-T2.y),(T3.x,-T2.y),1) + arcto((T3.x,-T2.y),(T3.x,-T3.y),0.5) + arcto((T3.x,-T3.y),(T4.x,-T3.y),0.5) + arcto((T4.x,-T3.y),(T4.x,-T4.y),1) + arcto((T4.x,-T4.y),(T5.x,-T4.y),1) + line to (T5.x,-T4.y) + + box wid 6 ht d8 fill_(1) with .w at (0,d6/2) + box wid 6 ht d8 fill_(1) with .w at (0,-d6/2) + box invis wid T6.x ht d4 fill_(1) with .w at Orig + box wid T5.x-T6.x ht d1 fill_(1) with .e at T5 + + line from (Orig.x,-T6.y) to (Orig.x,T6.y) + arcto(T6,(T6,Orig),1) + arcto((T6.x,-T6.y),(0,-T6.y),1) + line to (0,-T6.y) + +define(`dialabel', +`[tmpthick = linethick; linethick_(1) + [Y14_dia_]; [$1 wid ifelse(`$2',,textht,`$2')] with .w at last [].e+(0.5,0) + linethick_(tmpthick)]') + +thinlines_ + dimension_(from (0,T6.y) to (0,-T6.y),40,dialabel("40.60" "40.45",12),textht*3) + line up 4 from AE_dimen_.end + Y14_frame(Y14_per_,Y14_dia_;"0";"(M)","A") with .sw at Here + Y14_frame("B") with .s at last [].n+(0,6) +thicklines_(1) + datumarrow(from last [].s to 2nd last [].n) +thinlines_ + dimension_(from T2 to (T2.x,-T2.y),30, + dialabel("35.5" "36.0",12),textht*3) + dimension_(from T0 to T0+(T1.x,0),-8," 6.1 " " 5.9 ",textht) + dimension_(from S_dimen_.end to S_dimen_.end+(T2.x,0),-9, + "15.4" "15.6",textht*4) + line from E_dimen_.start to (T2,T1) chop 0 chop 1 + dimension_(from S_dimen_.end to S_dimen_.end+(T3.x,0),-9, + "21.9" "22.1",textht*4) + line from E_dimen_.start to T3 chop 0 chop 1 + dimension_(from S_dimen_.end to S_dimen_.end+(T4.x,0),-9, + "31.9" "32.1",textht*4) + line from E_dimen_.start to (T4,T3) chop 0 chop 1 + dimension_(from S_dimen_.end to S_dimen_.end+(T5.x,0),-9, + "41.2" "41.4",textht*4) + line from E_dimen_.start to (T5,T4) chop 0 chop 1 + line from S_dimen_.start to T0 chop 0 chop 1 + dimension_(from (0,d7/2) right T6.x,8,"9.6" "9.4",3*textht) + line from E_dimen_.start to (T6.x,d4/2) chop 0 chop 1 + ctrline(from (-3,0) to T5+(3,0),T5.x/2) + ctrline(from (-3,d6/2) right T1.x+6) + ctrline(from (-3,-d6/2) right T1.x+6) + dimension_(from T5-(0,d1/2) to T5+(0,d1/2),-14, + dialabel("20.13" "20.00",4*textht),textht*3) + dimension_(from T5-(0,d2/2) to T5+(0,d2/2),-35, + dialabel("31.8" "31.6",3*textht),textht*3) + arrow <- from (T5.x+6,d1/2) by (Rect_(20,75)) then right 6 + Y14_frame(Y14_cir_,"0.06" wid 3*textht,"A","B") with .w at Here + Y14_frame("C") with .n at last [].se+(-6,-8) +thicklines_(1) + datumarrow(from last [].n up 8) +thinlines_ + arrow <- from (T5.x+6,-d2/2) by (Rect_(10,-75)) then right 4 + Y14_frame(Y14_cir_,"0.1" wid textht*2,"C") with .w at Here + arrow <- from ((T3.x+T4.x)/2,d3/2+adj) by (Rect_(30,75)) then right 4 + "M42 X 1.5 - 6g" wid 9*textht ljust + Y14_frame(Y14_pos_,Y14_dia_;"0.1" wid textht*2;"(M)","C";"(M)") \ + with .nw at last "".sw+(0,-2) + line from (T2.x,-T1.y) up 25 chop 1 chop 0 + Y14_frame(Y14_par_,"0.06" wid 3*textht,"A") with .sw at Here + Y14_frame(Y14_sur_," 0.1 " wid 3*textht,"A") with .sw at last [].nw + arrow <- from (0,-d6/2+10) left 13 + Y14_frame(Y14_fla_,"0.02" wid 4*textht) with .e at Here + Y14_frame("A") with .n at last [].s+(0,-6) + datumarrow(from last [].n up 6) + ] + +Topview:[ + C: circle diam d7 + for i=0 to 7 do { circle diam d8 at C+(Rect_(d6/2,i/8*360)) } + C5: circle diam d5 at C + C4: circle diam d3+2*adj at C + C3: circle dashed diam d3 at C + C2: circle diam d2 at C + C1: circle diam d1 at C + +thinlines_ + dimension_(from C.w-(0,10) to C.e-(0,10),-C.rad-15, + dialabel("100" "99",textht*3),textht*5) + dimension_(from C5.w-(0,5) to C5.e-(0,5),-C.rad-5, + dialabel("57.2" "56.8",textht*4),textht*5) + arrow <-> from C+(Rect_(d6/2,-120)) to C+(Rect_(d6/2,60)) + line from last arrow.end to C+(Rect_(d7/2+6,60)) then right 4 + dialabel("86.2" "85.8",textht*4) with .w at Here+(1,0) + ctrline(from (C.x-(d6-d7/2),C.y) to (C.x+(d6-d7/2),C.y)) + ctrline(from (C.x,C.y-d6/2+d8/2) to (C.x,C.y+d6/2-d8/2)) + for_(0,315,45,`ctrarcr(C,d6/2,(m4x-22.5)*dtor_,(m4x+22.5)*dtor_) + ctrline(from C+(Rect_(d6-d7/2,m4x)) to C+(Rect_(d7/2,m4x))) ') + arcdimension_(from C+(0,d7/2) to C+(Rect_(d7/2,135)) with .c at C, + 8,"8X 45`'iflatex(^\circ)" wid textht*3.5,15,1) + ifsvg("svg_deg" wid textht*2/3 with .w at last "".e) + move to C+(0,d6/2) + arrow <- from Here+(Rect_(8/2,75)) to Here+(Rect_(25,75)) then right_ 3 + "8X" wid 2*textht ljust + linethick_(1); [Y14_dia_] with .w at last "".e+(1,0) + "7.9 - 8.1" wid 8*textht ljust + Y14_frame(Y14_pos_,Y14_dia_;"0.14" wid 3*textht;"(M)","A","C") \ + with .nw at 2nd last "".sw+(0,-2) + + ] with .C at Section.Orig+(4.5*scale,0) + + +command iflatex(`"}"',ifsvg(`""')) +.PE diff --git a/graphics/circuit_macros/examples/svg/ex01SVG.m4 b/graphics/circuit_macros/examples/svg/ex01SVG.m4 index 3a20d90a18..b8787d1539 100644 --- a/graphics/circuit_macros/examples/svg/ex01SVG.m4 +++ b/graphics/circuit_macros/examples/svg/ex01SVG.m4 @@ -1,7 +1,56 @@ .PS -# ex01.m4 +# TimerSVG.m4 cct_init(svg_font(sans-serif,10.5bp__)) +define(`ic555',`[Chip: box ht boxwid wid boxwid "555" + P7: "7" ljust at 1/6 + P6: "6" ljust at 1/2 + P2: "2" ljust at 5/6 + P4: "4" below at 1/3 + P8: "8" below at 2/3 + P3: "3" rjust at Chip.e + P1: "1" above at Chip.s + ]') + +Timer: [ + define(`elen_',`linewid') +Vs: dot + down_ + variable(`resistor(,E); llabel(,svg_norm(1 M`'svg_ohm))'); + resistor(,E); llabel(,svg_norm(100 k`'svg_ohm)) + capacitor(,E); llabel(svg_norm(220 svg_micro`'F)) +Zero: dot + + dot(at Vs+(elen_*4/3,0)) + resistor(,E); llabel(,svg_norm(33 k`'svg_ohm)) + line to (Here,Zero) chop 0 chop elen_ +C2: capacitor; llabel(svg_norm(0.1 svg_micro`'F)) + dot + +IC1: ic555 with .P7 at C2.start + (elen_,0) + line from IC1.P4 to (IC1.P4,Vs); dot + line from IC1.P8 to (IC1.P8,Vs); dot + line from IC1.P1 to (IC1.P1,Zero); dot + line from IC1.P2 to (C2,IC1.P2); dot + crossover(from IC1.P7 to (Zero,IC1.P7),R,C2); dot + line from IC1.P6 left elen_/2 then down IC1.P6.y-IC1.P7.y; dot + line from IC1.P3 right elen_*2/3 +R: dot + line right_ elen_/3 +B: buzzer(,,C) with .In3 at Here + line from B.In1 to (R,B.In1) + reversed(`diode',to (Here,Vs),LE); "red" at last line.c+(elen_/2,0) + resistor(down_ elen_ from R,E); llabel(,svg_norm(470 svg_ohm)) + diode(to (Here,Zero),LE); {"green" wid 0.4 at last line.c+(elen_*2/3,0)} + line to Zero chop 0 chop -elen_ + line up_ (Vs.y-Here.y)/3 + battery(up_ (Vs.y-Here.y)/3); rlabel(,,svg_norm(9 V)) + switch(to (Here,Vs),,D) + line to (R,Vs) +] +Ex01: [ +# ex01.m4 + linewid = linewid*1.5 # let's make the circuit elements bigger than usual define(`elen_',linewid) # but not longer @@ -10,11 +59,13 @@ define(`elen_',linewid) # but not longer Vin: source(up_ elen_ + 2*del, V); llabel(,v`'svg_sub(s),) switch(right_ elen_,,C); rlabel(,t = svg_norm(0),) - resistor; llabel(,svg_norm(47 ohm),); b_current(i`'svg_sub(R),above rjust) + resistor; llabel(,svg_norm(47 ohm),); b_current() + { "svg_it(i`'svg_sub(R))" at last arrow.end+(0,3bp__) above rjust } line right_ elen_/2 then down_ del - parallel_(`inductor(,W); llabel(,"L" wid 0.15,); b_current(i`'svg_sub(L))', + P:parallel_(`L:inductor(,W); llabel(,"L" wid 0.15,); b_current()', `capacitor(,C); rlabel(+,v`'svg_sub(C),-); llabel(,,C)') + { "svg_it(i`'svg_sub(L))" at P.E1.L.start+(2bp__,0) ljust below } line to (Here,Vin.start) then to Vin.start define(`meshcurrent',`[arc -> cw with .c at (0,0) \ @@ -23,6 +74,7 @@ Vin: source(up_ elen_ + 2*del, V); llabel(,v`'svg_sub(s),) right_ meshcurrent(del,i`'svg_sub(2)) at last[].C meshcurrent(2*del,i`'svg_sub(1)) at Vin.start + (4*del,3*del) + ] with .sw at Timer.se+(0.5,0) command "" # end font .PE diff --git a/graphics/circuit_macros/examples/svg/ex05SVG.m4 b/graphics/circuit_macros/examples/svg/ex05SVG.m4 index 0ca39bf4f5..52284a3e33 100644 --- a/graphics/circuit_macros/examples/svg/ex05SVG.m4 +++ b/graphics/circuit_macros/examples/svg/ex05SVG.m4 @@ -1,21 +1,26 @@ .PS -# ex05.m4 +# ex05SVG.m4 darrow_init - fillval = 0.8 # environmental variable +Kalman: [ + fillval = 0.8 - dx = boxht/5 # diagram parameters wrt scaled env variables + boxht = 0.35 + boxwid = 1.5*boxht + dx = boxht/5 circlerad = boxht*3/8 extlen=4*dx indel = boxht/3 + define(`dlthick',dlthick*3/4) -COb: box fill_ "CO" - { line right textht*0.5 from COb+(0,textht*0.5) } +define(`overbar',`line right textht*0.8 \ + with .c at last box.c + ((`$1')*textht,0.7*textht)') + +COb: box fill_ "CO"; overbar(0.5) CO:box fill_ with .nw at last box.se+(dx,-dx) "CO" CbOb: box fill_ with .nw at last box.se+(dx,-dx) "CO" - { line right textht*1.0 with .c at CbOb+(-textht*0.1,textht*0.5) } -CbO: box fill_ with .nw at last box.se+(dx,-dx) "CO" - { line left textht*0.5 from CbO+(-textht*0.2,textht*0.5) } + overbar(-0.5); overbar(0.5) +CbO: box fill_ with .nw at last box.se+(dx,-dx) "CO"; overbar(-0.5) dline(from CbO.s down_ dx,,t,,!-) dright @@ -28,7 +33,7 @@ NE: (CbO.e,COb.n)+(dx,dx) SB: shadebox(box wid NE.x-SW.x ht NE.y-SW.y with .sw at SW) U: COb.w-(3*dx+extlen,0) - {"svg_bf(u)" wid 0.1 rjust at U} + {"svg_it(U)" wid 0.1 rjust at U} dline(from U right_ extlen+dx,,t,,|-) TU: dtee(R) {darrow(to COb.w,t)} @@ -60,10 +65,51 @@ TU: dtee(R) darrow(left_ from Sum.w to Dum.e) dline(from Dum.w to (SB.w-(0.1,0),Dum)); darrow(to (U,Here)) - {"svg_bf(y)" rjust} + {"svg_it(Y)" rjust} move left 0.23 circle at Sum circle at Dum + ] +Coxeter: [ +# Coxeter.m4 + + customlinethick = 1.5 + + linethick = customlinethick + define(`dotrad_',`(3/2*linethick pt__)') + + Orig: (0,0) + for i=0 to 4 do { P[i]: dot(at (i*linewid,0)) } + line from Orig to P[4] + P[-1]: dot(at (Rect_(linewid, 120))); line to Orig + P[-2]: dot(at (Rect_(linewid,-120))); line to Orig + + Pa: dot(at P[4]+(linewid,0)); "svg_it(a)" at last [].n above + arrow from P[4] to Pa chop linewid/4 + Pd: dot(at Pa+(linewid,0)); "svg_it(d)" at last [].w rjust + Pe: dot(at Pd+(linewid,0)); "svg_it(e)" at last [].n above + Pf: dot(at Pe+(linewid,0)); "svg_it(f)" at last [].n above + Pb: dot(at Pd+(Rect_(linewid,120))); "svg_it(b)" at last [].w rjust + Pc: dot(at Pd+(Rect_(linewid,-120))); "svg_it(c)" at last [].w rjust + line from Pb to Pd then to Pc + line from Pd to Pf + + define(`customarc', + `pushdef(`dfillcolor',`0.7,0.7,0.7') linethick_(0.4); dnl + Darc(`$1',linewid, (`$2')*dtor_, (`$3')*dtor_, + thick=linewid/6; wid=linewid*0.3; ht=linewid/6; ends=<->)dnl + linethick_(customlinethick); popdef(`dfillcolor')') + + customarc((linewid,-linewid/3), 25,155) + "svg_it(d)" at (linewid,linewid*2/3) + customarc((2*linewid,-linewid/3), 25,155) + "svg_it(e)" at (2*linewid,linewid*2/3) + customarc((3*linewid,-linewid/3), 25,155) + "svg_it(f)" at (3*linewid,linewid*2/3) + customarc(Orig,130,230); "svg_it(a)" at (Rect_(linewid,180)) + customarc(Orig, 10,110); "svg_it(b)" at (Rect_(linewid, 60)) + customarc(Orig,-110,-10); "svg_it(c)" at (Rect_(linewid,-60)) + ] with .sw at Kalman.se+(15bp__,0) .PE diff --git a/graphics/circuit_macros/examples/svg/examplesSVG.htmx b/graphics/circuit_macros/examples/svg/examplesSVG.htmx index 825c1d5cf4..8bec348222 100644 --- a/graphics/circuit_macros/examples/svg/examplesSVG.htmx +++ b/graphics/circuit_macros/examples/svg/examplesSVG.htmx @@ -5,29 +5,27 @@ SVG Examples: Circuit_macros Version XXX + + - -

SVG Circuit_macros examples, Version XXX

-
+ - + + +

+ifelse(`$2',,,` +$1.m4: +`$2' changecom(,)&`#'8194;changecom(`#')') -
-$1.m4

-
') +ifinstr(`$3',y,,`
')') -define(`m4tt',`') +--------------------------------------------------------------------- --> - + + + + + +
+

SVG Circuit_macros examples, Version XXX

+

-These diagrams have been adapted from the Circuit_macros examples in -order to test the experimental svg output of dpic. -Generating the line art is relatively straightforward, but -the labeling is not created by a text processor and therefore must be -more basic. Some of these diagrams might benefit from a little more -tweaking of fonts and labels. + This file shows diagrams in .svg format; + png + versions are also available. + The PDF equivalent can be found in examples.pdf of the distribution.

+

-These examples conform to the latest dpic, which has changed the -treatment of text sizing. That is, "Text" ht y sets the true height -of SVG text to y rather than the nominal height as previously. +The diagrams shown below have been adapted from the Circuit_macros +examples in order to test the svg output of dpic. Generating svg line +art is straightforward, but TeX, LaTeX, and related word +processors do not produce svg. Either less-sophisticated text formatting +must be employed or an + + intermediate format +such as pdf can be +produced, followed by an additional processing step to convert to svg. +Two possibilities for the latter are + dvisvgm +and + pdf2svg although +there may be font-related issues for some diagrams. +
+Many circuit and similar diagrams intended for the web do not +require sophisticated labels, however; the examples shown below might +be representative.

+

+ Click on the link to view the source of each diagram. +

+

There are a number of other issues:

  • Embedding .svg files in html documents with the <embed> or <object> tag seems to be a perennial issue.
  • This file has been tested mainly by using Firefox. - Chrome also seems to work well with two issues detected to date: - a difference handling color fills and text links in svg.
  • The Adobe reader apparently requires a line of the form
    <embed src="figure.svg" width="x" height="y" type="image/svg+xml" /> @@ -86,11 +106,11 @@ There are a number of other issues: otherwise this could be tedious.
  • The default font face is not specified in all of these diagrams but is inherited from the enclosing document, so the appearance of labels can - differ depend on the browser. Some of these diagrams set the font at + differ depending on the browser. Some of these diagrams set the font at the beginning of the diagram source.
  • The <svg tag may require modification from the default used for this test. Dpic might be modified to - allow the generation of custom headers but that has not yet been done. + allow the generation of custom headers but that has not been done.
  • Diagrams such as these contain text labels that have to be treated differently from the LaTeX-compatible versions. Apparently there is no direct way to know the bounding box of arbitrary svg @@ -103,7 +123,7 @@ There are a number of other issues: Rather than patch the original source files for svg production, edited copies have been used. The configuration file svg.m4 read by m4 prior to libcct.m4 contains the following macros defined for svg. - Others should be defined to exercise some of the media capabilties of svg. + Others could be defined to exercise some of the media capabilties of svg. They are subject to change:
    • @@ -161,191 +181,511 @@ There are a number of other issues:
    • m4tt svgLinkString as above but for strings attached to objects
    • Greek and other symbols: - -
      + +
      +
      - - - - - -
      m4tt svg_alpha changecom(,)&`#'945;changecom(`#') - m4tt svg_beta changecom(,)&`#'946;changecom(`#') - m4tt svg_Gamma changecom(,)&`#'915;changecom(`#') - m4tt svg_gamma changecom(,)&`#'947;changecom(`#') - m4tt svg_Delta changecom(,)&`#'916;changecom(`#') - m4tt svg_delta changecom(,)&`#'948;changecom(`#') + m4tt svg_alpha changecom(,)&`#'945;changecom(`#') + m4tt svg_beta changecom(,)&`#'946;changecom(`#') + m4tt svg_Gamma changecom(,)&`#'915;changecom(`#') + m4tt svg_gamma changecom(,)&`#'947;changecom(`#') + m4tt svg_Delta changecom(,)&`#'916;changecom(`#') + m4tt svg_delta changecom(,)&`#'948;changecom(`#') m4tt svg_epsilon changecom(,)&`#'949;changecom(`#') - m4tt svg_zeta changecom(,)&`#'950;changecom(`#') + m4tt svg_zeta changecom(,)&`#'950;changecom(`#') +
      m4tt svg_eta changecom(,)&`#'951;changecom(`#') - m4tt svg_Theta changecom(,)&`#'920;changecom(`#') - m4tt svg_theta changecom(,)&`#'952;changecom(`#') - m4tt svg_iota changecom(,)&`#'953;changecom(`#') - m4tt svg_kappa changecom(,)&`#'954;changecom(`#') - m4tt svg_Lambda changecom(,)&`#'923;changecom(`#') - m4tt svg_lambda changecom(,)&`#'955;changecom(`#') - m4tt svg_mu changecom(,)&`#'956;changecom(`#') + m4tt svg_eta changecom(,)&`#'951;changecom(`#') + m4tt svg_Theta changecom(,)&`#'920;changecom(`#') + m4tt svg_theta changecom(,)&`#'952;changecom(`#') + m4tt svg_iota changecom(,)&`#'953;changecom(`#') + m4tt svg_kappa changecom(,)&`#'954;changecom(`#') + m4tt svg_Lambda changecom(,)&`#'923;changecom(`#') + m4tt svg_lambda changecom(,)&`#'955;changecom(`#') + m4tt svg_mu changecom(,)&`#'956;changecom(`#') +
      m4tt svg_nu changecom(,)&`#'957;changecom(`#') - m4tt svg_Xi changecom(,)&`#'926;changecom(`#') - m4tt svg_xi changecom(,)&`#'958;changecom(`#') - m4tt svg_Pi changecom(,)&`#'928;changecom(`#') - m4tt svg_pi changecom(,)&`#'960;changecom(`#') - m4tt svg_rho changecom(,)&`#'961;changecom(`#') - m4tt svg_Sigma changecom(,)&`#'931;changecom(`#') - m4tt svg_sigma changecom(,)&`#'963;changecom(`#') + m4tt svg_nu changecom(,)&`#'957;changecom(`#') + m4tt svg_Xi changecom(,)&`#'926;changecom(`#') + m4tt svg_xi changecom(,)&`#'958;changecom(`#') + m4tt svg_Pi changecom(,)&`#'928;changecom(`#') + m4tt svg_pi changecom(,)&`#'960;changecom(`#') + m4tt svg_rho changecom(,)&`#'961;changecom(`#') + m4tt svg_Sigma changecom(,)&`#'931;changecom(`#') + m4tt svg_sigma changecom(,)&`#'963;changecom(`#') +
      m4tt svg_tau changecom(,)&`#'964;changecom(`#') + m4tt svg_tau changecom(,)&`#'964;changecom(`#') m4tt svg_upsilon changecom(,)&`#'965;changecom(`#') - m4tt svg_Phi changecom(,)&`#'934;changecom(`#') - m4tt svg_phi changecom(,)&`#'966;changecom(`#') - m4tt svg_chi changecom(,)&`#'967;changecom(`#') - m4tt svg_Psi changecom(,)&`#'936;changecom(`#') - m4tt svg_psi changecom(,)&`#'968;changecom(`#') - m4tt svg_Omega changecom(,)&`#'937;changecom(`#') + m4tt svg_Phi changecom(,)&`#'934;changecom(`#') + m4tt svg_phi changecom(,)&`#'966;changecom(`#') + m4tt svg_chi changecom(,)&`#'967;changecom(`#') + m4tt svg_Psi changecom(,)&`#'936;changecom(`#') + m4tt svg_psi changecom(,)&`#'968;changecom(`#') + m4tt svg_Omega changecom(,)&`#'937;changecom(`#') +
      m4tt svg_omega changecom(,)&`#'969;changecom(`#') - m4tt svg_micro changecom(,)&`#'956;changecom(`#') - m4tt svg_ohm changecom(,)&`#'937;changecom(`#') - m4tt svg_lt changecom(,)&`#'60;changecom(`#') - m4tt svg_gt changecom(,)&`#'62;changecom(`#') - m4tt svg_leq changecom(,)&`#'8804;changecom(`#') - m4tt svg_geq changecom(,)&`#'8805;changecom(`#') - m4tt svg_prime changecom(,)&`#'8242;changecom(`#') + m4tt svg_omega changecom(,)&`#'969;changecom(`#') + m4tt svg_micro changecom(,)&`#'956;changecom(`#') + m4tt svg_ohm changecom(,)&`#'937;changecom(`#') + m4tt svg_lt changecom(,)&`#'60;changecom(`#') + m4tt svg_gt changecom(,)&`#'62;changecom(`#') + m4tt svg_leq changecom(,)&`#'8804;changecom(`#') + m4tt svg_geq changecom(,)&`#'8805;changecom(`#') + m4tt svg_prime changecom(,)&`#'8242;changecom(`#') +
      m4tt svg_backsl changecom(,)&`#'92;changecom(`#') - m4tt svg_pound changecom(,)&`#'35;changecom(`#') - m4tt svg_comma changecom(,)&`#'44;changecom(`#') - m4tt svg_lparen changecom(,)&`#'40;changecom(`#') - m4tt svg_rparen changecom(,)&`#'41;changecom(`#') - m4tt svg_emsp |changecom(,)&`#'8195;changecom(`#')| - m4tt svg_ensp |changecom(,)&`#'8194;changecom(`#')| - m4tt svg_thinsp |changecom(,)&`#'8201;changecom(`#')| + m4tt svg_backsl changecom(,)&`#'92;changecom(`#') + m4tt svg_pound changecom(,)&`#'35;changecom(`#') + m4tt svg_comma changecom(,)&`#'44;changecom(`#') + m4tt svg_lparen changecom(,)&`#'40;changecom(`#') + m4tt svg_rparen changecom(,)&`#'41;changecom(`#') + m4tt svg_circ changecom(,)&`#'710;changecom(`#') + m4tt svg_deg changecom(,)&`#'176;changecom(`#') +
      + + + +
      m4tt svg_emsp |changecom(,)&`#'8195;changecom(`#')| + m4tt svg_ensp |changecom(,)&`#'8194;changecom(`#')| + m4tt svg_thinsp |changecom(,)&`#'8201;changecom(`#')| +
      +
  • Inkscape: It may be efficient to define elements by macro and to - place them using a WYSIWYG graphics editor. A draft page intended + place them using a wysiwyg graphics editor. A draft page intended for Inkscape is included. A reasonable variety of elements is defined but many more could be added and they should be customized for - particular applications. + particular applications. Adjustments may also have to be made to + obtain the proper snap-to actions.
  • Link experiments: Click on the resistor or source of quickSVG to go to external files in new windows. Click on "n-port" in NportSVG to replace the diagram and then "back" to return. -
  • Some of the assumptions used to create this draft may be naive. Comments - are welcome. +
  • Some of the assumptions used to create this draft may be + na&`#'239;ve. + Comments are welcome.
+ + + +
+ + + +
+cfig(quickSVG, + SVG produced by dpic,y) +
+
+cfig(quick, + SVG produced from quick.pdf by dvisvgm,y) +
+
+
-cfig(quickSVG) -cfig(CctTableSVG) -cfig(DiodesSVG) -cfig(EmarrowsSVG) -cfig(SourcesSVG) -cfig(VariableSVG) -cfig(AmpTableSVG) -cfig(FusesSVG) -cfig(SwitchesSVG) -cfig(GroundsSVG) -cfig(AntennasSVG) -cfig(AudioSVG) -cfig(OpampSVG) -cfig(XformSVG) -cfig(NPDTSVG) -cfig(ContactSVG) -cfig(ContactsSVG) -cfig(relaycoilSVG) -cfig(RelaySVG) -cfig(JackSVG) -cfig(ConnSVG) -cfig(PconnSVG) -cfig(HeadersSVG) -cfig(ConnectorsSVG) -cfig(fetSVG) -cfig(ujtSVG) -cfig(thyristorSVG) -cfig(BipSVG) -cfig(TgateSVG) -cfig(NportSVG) -cfig(NLGSVG) -cfig(WindingsSVG) -cfig(ex01SVG) -cfig(TimerSVG) -cfig(OptoisoSVG) -cfig(MixerSVG) -cfig(PushPullSVG) -cfig(QuantumSVG) -cfig(SQUIDSVG) -cfig(SixpoleSVG) -cfig(ex18SVG) -cfig(MCSVG) -cfig(ex10SVG) -cfig(ThreeSVG) -cfig(ex17SVG) -cfig(ex02SVG) -cfig(ex12SVG) -cfig(pwrsupplySVG) -cfig(TTLnandSVG) -cfig(I2LSVG) -cfig(SchottkySVG) -cfig(ex11SVG) -cfig(ex04SVG) -cfig(CsourceSVG) -cfig(DriveSVG) -cfig(ex16SVG) -cfig(ex03SVG) -cfig(MotorControlSVG) -cfig(RectifiersSVG) -cfig(HeathkitSVG) -cfig(lcctSVG) -cfig(TubediagsSVG) -cfig(sfgSVG) -cfig(LogicSVG) -cfig(ex08SVG) -cfig(DecoderSVG) -cfig(ex21SVG) -cfig(MultiplexerSVG) -cfig(DemultiplexerSVG) -cfig(ShiftRSVG) -cfig(AdderSVG) -cfig(CanLogicSVG) -cfig(AlogixSVG) -cfig(ABlogixSVG) -cfig(XORSVG) -cfig(paletteSVG) -cfig(ex00SVG) -cfig(controlSVG) -cfig(GrayCodeSVG) -cfig(CrossbarSVG) -cfig(ByteSVG) -cfig(RotboxSVG) -cfig(ex06SVG) -cfig(ex09SVG) -cfig(ex05SVG) -cfig(LoglogSVG) -cfig(randomSVG) -cfig(expSVG) -cfig(graysurfSVG) -cfig(shapesSVG) -cfig(AntiqueClockSVG) -cfig(cscSVG) -cfig(roseSVG) -cfig(diamondSVG) -cfig(wormSVG) -cfig(ButtonsSVG) -cfig(DiniSVG) -cfig(SierpinskiSVG) -cfig(recycleSVG) -cfig(ex15SVG) -cfig(CountingSVG) -cfig(CrowSVG) -cfig(FlowSVG) +cfig(CctTableSVG, + Two-terminal elements, showing some variations) + +cfig(DiodesSVG, + Diodes: a m4tt`'K in the second argument draws an open + arrowhead) + +cfig(EmarrowsSVG, + Radiation arrows) + +cfig(SourcesSVG, + Sources and source-like elements) + +cfig(VariableSVG, + Arrows and marks indicating variability) + +cfig(AmpTableSVG, + Macros m4tt`'amp`,' delay`,' and m4tt`'integrator) + +cfig(FusesSVG, + Macros m4tt`'fuse and m4tt`'cbreaker) + +cfig(SwitchesSVG, + The switch macros; m4tt`'switch(`,'`,'`,'L|B|D) is a wrapper + for m4tt`'lswitch`,' m4tt`'bswitch`,' and m4tt`'dswitch) + +cfig(GroundsSVG, + Ground symbols) + +cfig(AntennasSVG, + Antenna symbols) + +cfig(AudioSVG, + Audio elements) + +cfig(OpampSVG, + The opamp) + +cfig(XformSVG, + The transformer element`,' drawing direction down) + +cfig(NPDTSVG, + Double throw with the m4tt`'NPDT macro) + +cfig(ContactSVG, + A non-exhaustive sampling of m4tt`'contact macro variations) + +cfig(ContactsSVG, + The m4tt`'contacts macro) + +cfig(relaycoilSVG, + The m4tt`'relaycoil macro) + +cfig(RelaySVG, + Some variants of the m4tt`'relay macro) + +cfig(JackSVG, + The m4tt`'jack and m4tt`'plug macros) + +cfig(ConnSVG, + The m4tt`'tstrip`,' ccoax`,' tconn`,' and m4tt`'tbox macros) + +cfig(PconnSVG, + The m4tt`'pconnex macro) + +cfig(HeadersSVG, + The m4tt`'Header macro) + +cfig(ConnectorsSVG, + Some connectors with simple geometry and lists of labels) + +cfig(fetSVG, + FETs`,' showing programmable components and example customizations) + +cfig(ujtSVG, + UJT examples) + +cfig(thyristorSVG, + Thyristor examples) + +cfig(BipSVG, + Bipolar transistors (drawing direction: up)) + +cfig(TgateSVG, + The m4tt`'tgate and m4tt`'ptrans elements) + +cfig(NportSVG, + The m4tt`'nport and m4tt`'nterm macros) + +cfig(NLGSVG, + Some customizations of m4tt`'nport) + +cfig(WindingsSVG, + The macro + m4tt`'winding(L|R`,'diam`,'pitch`,'turns`,'core wid`,'core color)) + +cfig(ex01SVG, + Two simple labeled circuits) + +cfig(ex02SVG, + Elements at obtuse angles) + +cfig(OptoisoSVG, + Optical isolator: a circuit with right or left orientation) + +cfig(MixerSVG, + A balanced mixer`,' using m4tt`'mosfet and a custom transformer) + +cfig(PushPullSVG, + A push-pull mixer`,' showing FETs with multiple gates) + +cfig(QuantumSVG, + A quantum circuit) + +cfig(SQUIDSVG, + Superconducting quantum interface device (drawing direction down)) + +cfig(SixpoleSVG, + A six-pole filter) + +cfig(ex18SVG, + Precision half-wave rectifier and a tunnel diode circuit + (illustrating m4tt`'opamp`,' diode`,' resistor`,' ground`,' + and labels)) + +cfig(MCSVG, + A three-phase switched AC-AC converter and a DC-DC converter) + +cfig(ex10SVG, + Non-planar graph and bistable circuit + (illustrating the m4tt`'crossover macro and colored elements)) + +cfig(ThreeSVG, + Three-phase oscillator) + +cfig(ex17SVG, + A repetitive network created by Pic looping and + a skewed circuit used to test the macro m4tt`'parallel_) + +cfig(ex12SVG, + A CMOS NAND gate`,' a test circuit`,' and an XMOSFET example) + +cfig(pwrsupplySVG, + An elementary power supply circuit with colored elements`,' + and a multiple-winding transformer with 3-phase rectifier) + +cfig(TTLnandSVG, + TTL NAND gate illustrating a transistor with multiple emitters) + +cfig(I2LSVG, + Gate circuit and equivalent embedded components + illustrating multiple collectors) + +cfig(SchottkySVG, + A 4-input NAND circuit illustrating the m4tt`'S (Schottky) + option of m4tt`'bi_trans) + +cfig(ex11SVG, + Transistor radio audio chain) + +cfig(ex04SVG, + Labels on non-manhattan elements) + +cfig(CsourceSVG, + Realization of a controlled source + (illustrating stacked element labels)) + +cfig(DriveSVG, + Synchronous machine driven by variable-speed drive and rectifier) + +cfig(ex16SVG, + A rate 1/2 binary convolutional coder and its state diagram) + +cfig(ex03SVG, + Digital filter) + +cfig(MotorControlSVG, + Motor control connections) + +cfig(RectifiersSVG, + Rectifier circuits and waveforms) + +cfig(HeathkitSVG, + The power supply of a Heathkit AR-15 (Now`,' that + was a receiver!) with custom transformer and other elements`,' + drawn on a grid (partially shown) to aid in placement) + +cfig(lcctSVG, + A digital circuit of moderate size`,' + redrawn from M. P. Maclenan and G. M. Burns`,' + "An Approach to Drawing Circuit Diagrams for Text Books`,'" + Tugboat (12)1`,' March 1991`,' pp. 66-69) + +cfig(UNOSVG, + An Arduino UNO circuit adapted and redrawn) + + +cfig(TubediagsSVG, + Electron-tube diagrams: a few bottom-view base diagrams`,' + a generic triode test circuit`,' and a 25-watt audio amplifier adapted + from F. Langford-Smith`,' Radiotron Designers Handbook`,' fourth + edition`,' Harrison`,' NJ: Radio Corporation of America`,' 1952) + +cfig(sfgSVG, + Signal-flow graphs) + +cfig(LogicSVG, + Basic logic gates) + +cfig(ex08SVG, + General-purpose latch: a small logic circuit) + +cfig(DecoderSVG, + Decoder logic`,' constructed using the m4tt`'for_ macro) + +cfig(ex21SVG, + Some flip-flops) + +cfig(MultiplexerSVG, + Multiplexer) + +cfig(DemultiplexerSVG, + Demultiplexer) + +cfig(ShiftRSVG, + A 5-bit shift register drawn using a custom flip-flop) + +cfig(AdderSVG, + A full adder and a cascade of n-bit adders) + +cfig(CanLogicSVG, + A way of automatically drawing two-layer logic diagrams) + +cfig(AlogixSVG, + The m4tt`'Autologix(`'Boolean expression; + Boolean expression... `,' options) + macro automatically draws Boolean expressions in function notation. + The function tree is drawn`,' then a row or column of inputs`,' then + the connections. The default result is on the left`,' + a custom element at the top`,' and a tree of gates only is shown + on the right. THe lower examples illustrate the L`,' R`,' and V options.) + +cfig(ABlogixSVG, + The m4tt`'Autologix macro can draw inputs on the left but + the added drawing complexity may require hand tuning with + second-argument options: m4tt`'L puts the inputs on the left`,' + m4tt`'R reverses their order`,' m4tt`'V scans the input arguments + in reverse order`,' and m4tt`'offset=`'value displaces + the array of inputs) + +cfig(XORSVG, + Realizations of the XOR function using m4tt`'Autologix) + +cfig(paletteSVG, + A draft palette of a few elements for Inkscape using + a 1 mm grid) + +cfig(ex00SVG, + Line diagrams) + +cfig(controlSVG, + Control-system block diagrams that do not require m4) + +cfig(GrayCodeSVG, + Gray code 10-bit encoder disk pattern) + +cfig(CrossbarSVG, + A crossbar switch) + +cfig(ByteSVG, + Elementary splines) + +cfig(RotboxSVG, + The macro + m4tt`'rotbox(wid,ht,type,[r|t=val]) + draws a box in the current direction) + +cfig(ex06SVG, + Crosshatching by m4tt`'for loops) + +cfig(ex09SVG, + Illustrating the macro + m4tt`'dimension_(linespec`,' offset`,' label`,' + H|W|D|blank width`,' tic offset`,' <-|->). + A negative second argument implies an offset to the right of the + linespec direction. A label starting with + m4tt`'" or + m4tt`'sprintf is copied literally. If label is an + m4tt`'s_box(...) then setting argument 4 to m4tt`'H`,' + m4tt`'W`,' + or m4tt`'D tailors the blank width to the m4tt`'s_box height`,' + width`,' or diagonal respectively; i.e.`,' m4tt`'W is equivalent to + m4tt`'s_wd+textoffset*2. + The macro m4tt`'arcdimension_ is similar but the first argument + specifies the arc to be dimensioned and the second argument is + the outward radial offset of the dimension arrow arc.) + +cfig(Y14-5SVG, + Dimensioning with tolerances according to ASME Y14.5) + Use of m4tt`'darrow and m4tt`'Darc) + +cfig(ex05SVG, + Use of m4tt`'darrow and m4tt`'Darc) + +cfig(LoglogSVG, + A graph drawn using the pic language) + +cfig(GeometrySVG, + A plane geometry example) + +cfig(LyapSVG, + Illustrating a Lyapunov function) + +cfig(randomSVG, + Testing random numbers) + +cfig(expSVG, + Test of m4tt`'project and other m4tt`'lib3D + macros`,' showing the projection of a solid onto + the y1`,'z1 plane by sighting along the x1 axis.) + +cfig(graysurfSVG, + Plotting surfaces using gray scales. A sort algorithm + determines plotting order) + +cfig(shapesSVG, + Basic shapes) + +cfig(AntiqueClockSVG, + An antique clock face) + +cfig(cscSVG, + Conestoga Sailing Club (illustrating the filling of arbitrary + shapes)) + +cfig(roseSVG, + Redrawn from a detail of the set design for the musical + Dracula`,' used for testing m4tt`'dpic. This diagram + consumes much LaTeX main memory but can be produced + directly as pdf using m4tt`'dpic -d`,' + as svg using m4tt`'dpic -g`,' + or as postscript using m4tt`'dpic -r + since no text formatting is required) + +cfig(diamondSVG, + Variations on M. Goossens`,' S. Rahtz`,' and F. Mittelbach`,' + The LaTeX Graphics Companion`,' Addison-Wesley 1997`,' pp. 57-58) + +cfig(wormSVG, + An exercise in calculating RGB colours) + +cfig(ButtonsSVG, + Shading in color) + +cfig(DiniSVG, + Dini surface and an icosahedron) + +cfig(SierpinskiSVG, + The Sierpinski triangle and a Cayley graph: + tests of pic macro recursion) + +cfig(recycleSVG, + Modest repetition and partial fill) + +cfig(ex15SVG, + Simple diagrams that are easily drawn by looping) + +cfig(CountingSVG, + An example of enumeration) + +cfig(CrowSVG, + Illustrating m4tt`'shadebox and a custom crowfoot line + termination) + +cfig(FlowSVG, + A flowchart sampler) -cfig(BtreeSVG) -cfig(TtreeSVG) -cfig(InclepsSVG) + +cfig(BtreeSVG, + Binary trees) + +cfig(InclepsSVG, + Overlaying a figure with line graphics) + cfig(FontsSVG) +
diff --git a/graphics/circuit_macros/examples/svg/paletteSVG.m4 b/graphics/circuit_macros/examples/svg/paletteSVG.m4 index 2bad59ba93..6128441fc8 100644 --- a/graphics/circuit_macros/examples/svg/paletteSVG.m4 +++ b/graphics/circuit_macros/examples/svg/paletteSVG.m4 @@ -333,8 +333,8 @@ A:Gridbox( FlipFlop(D) ] with .nw at (0,0) -"A draft palette of a few elements for Inkscape using a 1 mm grid" \ - ljust below at last [].sw +#"A draft palette of a few elements for Inkscape using a 1 mm grid" \ +# ljust below at last [].sw command "
" # end font .PE diff --git a/graphics/circuit_macros/examples/svg/pwrsupplySVG.m4 b/graphics/circuit_macros/examples/svg/pwrsupplySVG.m4 index 843c6660b5..37c7524070 100644 --- a/graphics/circuit_macros/examples/svg/pwrsupplySVG.m4 +++ b/graphics/circuit_macros/examples/svg/pwrsupplySVG.m4 @@ -1,42 +1,76 @@ .PS -# Pwrsupply.m4 +# pwrsupply.m4 cct_init ifdef(`m4pco',`resetrgb') - linewid = linewid*1.2 - down_ -T:transformer - line left_ elen_/4 from T.P1 - rgbdraw(0,0,255,fuse(left_ elen_/3,D)) - reversed(`switch') - gap(down_ to (Here,T.P2)) - { fuse(right_ 2*dimen_/5 at last []) } - line to T.P2 - blen = dimen_/2 -W: T.TS+(dimen_,0) -N: W+(blen,blen) -S: W+(blen,-blen) -E: S+(blen,blen) - diode(from W to N) - diode(from S to E) -G:gap(from E+(dimen_*4/3,0) down_ (E.y-S.y)*5/4); llabel("+" wid 0.1*scale,,-) -C:capacitor(down_ G.start.y-G.end.y from 0.5 between E and G.start,C) +Singlephase:[ + linewid = linewid*1.2 + down_ + T:transformer + line left_ elen_/8 from T.P1 + rgbdraw(0,0,1,fuse(left_ elen_/3,D)) + reversed(`switch',left_ elen_*2/3) + gap(down_ to (Here,T.P2)) + { fuse(right_ 2*dimen_/5 at last []) } + line to T.P2 + blen = dimen_/2 + W: T.TS+(dimen_/2,0) + N: W+(blen,blen) + S: W+(blen,-blen) + E: S+(blen,blen) + diode(from W to N) + diode(from S to E) + G: gap(from E+(dimen_,0) down_ (E.y-S.y)*5/4); llabel(+,,-) + C: capacitor(down_ G.start.y-G.end.y from 0.5 between E and G.start,C) + + setrgb(255,0,0) + line from T.S1 to (T.S1,N); line to N + dot + diode(to E); dot + line from E to G.start; dot + dot(at C.start) + resetrgb + + setrgb(0,255,0,,D) + dot(at C.end) + dot(at G.end) + ground + line to (W,Here); line to W; dot + diode(to S); dot + line to (T.S2,Here); line to T.S2 + resetrgb + ] -setrgb(255,0,0) - line from T.S1 to (T.S1,N); line to N - dot - diode(to E); dot - line from E to G.start; dot - dot(at C.start) -resetrgb +Threephase: [ +L:[ loadht = 2*elen_ + Load: ebox(down_ loadht,0.4,0.25); llabel(+,,-) + hsep = dimen_*3/4 + for_(1,3,1, + `line left_ hsep; ifelse(m4x,3,,dot) + { diode(up_ loadht/3) ; line up_ loadht/3; diode(up_ loadht/3) + T`'m4x: ifelse(m4x,3,Here,dot) + line right hsep } ') + ] -setrgb(0,255,0,,D) - dot(at C.end) - dot(at G.end) - ground - line to (W,Here); line to W; dot - diode(to S); dot - line to (T.S2,Here); line to T.S2 -resetrgb +T:[ + X1: transformer(down_ dimen_*2/3,,,,4) + X2: transformer(down_ dimen_*2/3,,,,4) with .P1 at X1.P2 + X3: transformer(down_ dimen_*2/3,,,,4) with .P1 at X2.P2 + line from X1.M4Core1.end to X3.M4Core1.start + line from X1.M4Core2.end to X3.M4Core2.start + for_(1,3,1, + `move to X`'m4x.P2 ; ifelse(m4x,3,,dot) + line left_ dimen_ + P`'m4x: dot(,,1)') + line left_ dimen_/2 from X1.P1 then down X1.P1.y-P3.y; dot + B: X1.S2+(dimen_/2,0) + line from X1.S1 right B.x-X1.S2.x then down X1.S1.y-X3.S1.y then to X3.S1 + line from X2.S1 to (B,X2.S1); dot + ] with .X2.S2 at L.w-(dimen_,0) + + line from T.X1.S2 to (L.T3,T.X1.S2); dot + line from T.X2.S2 to (L.T2,T.X2.S2); dot + line from T.X3.S2 to (L.T1,T.X3.S2); dot +] with .sw at Singlephase.se+(0.3,0) .PE diff --git a/graphics/circuit_macros/examples/svg/quickSVG.m4 b/graphics/circuit_macros/examples/svg/quickSVG.m4 index 7b63ec6db7..3e77ad1694 100644 --- a/graphics/circuit_macros/examples/svg/quickSVG.m4 +++ b/graphics/circuit_macros/examples/svg/quickSVG.m4 @@ -5,16 +5,16 @@ elen = 0.75 # Variables are allowed; default units are inches move right 0.4 Origin: Here # Position names are capitalized svgLink(SourcesSVG.svg,source(up_ elen)) - llabel(-,v`'svg_sub(s),+) - svgLink(CctTableSVG.svg,resistor(right_ elen)); rlabel(,R,) + llabel(-,svg_it(v`'svg_sub(s)),+) + svgLink(CctTableSVG.svg,resistor(right_ elen)); rlabel(,svg_it(R),) dot { # Save current position and direction capacitor(down_ to (Here,Origin)) #(Here,Origin) = (Here.x,Origin.y) - rlabel(+,v,-); llabel(,,C) + rlabel(+,svg_it(v),-); llabel(,svg_it(C)) dot } # Restore position and direction line right_ elen*2/3 {move right 0.2} - inductor(down_ Here.y-Origin.y); rlabel(,L,); b_current("i") + inductor(down_ Here.y-Origin.y); rlabel(,svg_it(L),); b_current("svg_it(i)") line to Origin .PE # Pic input ends diff --git a/graphics/circuit_macros/examples/svg/randomSVG.m4 b/graphics/circuit_macros/examples/svg/randomSVG.m4 index e482d9f1e4..4ca2056d68 100644 --- a/graphics/circuit_macros/examples/svg/randomSVG.m4 +++ b/graphics/circuit_macros/examples/svg/randomSVG.m4 @@ -6,6 +6,7 @@ NeedDpicTools ################################################################ # hscale(right length,nlabels, # minlabel,maxlabel,[T][N]) +# arg5=T: top axis, N: nolabels define(`hscale',`[ define(`hs_nl',`ifelse(`$2',,5,`$2')') A: line `$1' ; Start: A.start; End: A.end td = 1/(hs_nl-1)*A.len/5 @@ -24,6 +25,7 @@ NeedDpicTools ]') # vscale(up length,nlabels, # minlabel,maxlabel,[R][N] ) +# arg5=R: right axis, N: nolabels define(`vscale',`[ define(`vs_nl',`ifelse(`$2',,5,`$2')') A: line `$1' ; Start: A.start; End: A.end td = 1/(vs_nl-1)*A.len/5 @@ -46,7 +48,7 @@ NeedDpicTools ################################################################ [ - n = 2000 + n = 2000 # number of samples stddev = 0.25 graphsize = 2 diff --git a/graphics/circuit_macros/examples/svg/tstSVG.htmx b/graphics/circuit_macros/examples/svg/tstSVG.htmx index 6bb5ab2029..d81a22927a 100644 --- a/graphics/circuit_macros/examples/svg/tstSVG.htmx +++ b/graphics/circuit_macros/examples/svg/tstSVG.htmx @@ -168,6 +168,9 @@ more basic. m4tt svg_emsp |changecom(,)&`#'8195;changecom(`#')| m4tt svg_ensp |changecom(,)&`#'8194;changecom(`#')| m4tt svg_thinsp |changecom(,)&`#'8201;changecom(`#')| + + m4tt svg_circ |changecom(,)&`#'710;changecom(`#')| + m4tt svg_deg |changecom(,)&`#'176;changecom(`#')| diff --git a/graphics/circuit_macros/examples/xfig/xfiglib.fig b/graphics/circuit_macros/examples/xfig/xfiglib.fig index 6b3d4fb3e4..255d8170c1 100644 --- a/graphics/circuit_macros/examples/xfig/xfiglib.fig +++ b/graphics/circuit_macros/examples/xfig/xfiglib.fig @@ -6,7 +6,7 @@ Letter 100.00 Single -2 -# dpic version 2020.06.01 option -x for Fig 3.2 +# dpic version 2021.01.01 option -x for Fig 3.2 1200 2 6 0 0 3975 5025 6 0 0 3975 5025 diff --git a/graphics/circuit_macros/gpic.m4 b/graphics/circuit_macros/gpic.m4 index 16d58c7a15..70e5c38427 100644 --- a/graphics/circuit_macros/gpic.m4 +++ b/graphics/circuit_macros/gpic.m4 @@ -1,7 +1,7 @@ divert(-1) gpic.m4 Initialization for gpic. -* Circuit_macros Version 9.3, copyright (c) 2020 J. D. Aplevich under * +* Circuit_macros Version 9.4, copyright (c) 2020 J. D. Aplevich under * * the LaTeX Project Public Licence in file Licence.txt. The files of * * this distribution may be redistributed or modified provided that this * * copyright notice is included and provided that modifications are clearly * diff --git a/graphics/circuit_macros/lib3D.m4 b/graphics/circuit_macros/lib3D.m4 index e469841036..81bde54de0 100644 --- a/graphics/circuit_macros/lib3D.m4 +++ b/graphics/circuit_macros/lib3D.m4 @@ -3,7 +3,7 @@ lib3D.m4 Macros for rotation, projection, and other operations on argument triples representing 3D vectors. -* Circuit_macros Version 9.3, copyright (c) 2020 J. D. Aplevich under * +* Circuit_macros Version 9.4, copyright (c) 2020 J. D. Aplevich under * * the LaTeX Project Public Licence in file Licence.txt. The files of * * this distribution may be redistributed or modified provided that this * * copyright notice is included and provided that modifications are clearly * @@ -92,8 +92,9 @@ define(`dcosine3D',`(ifelse(`$1',1,`$2',`$1',2,`$3',`$4'))') define(`length3D',`sqrt((`$1')^2+(`$2')^2+(`$3')^2)') Unit vector define(`unit3D',`sprod3D(1/length3D(`$1',`$2',`$3'),`$1',`$2',`$3')') - Assign the direction cosines to variables - `assign3D([u],[v],[w],x,y,z); eg + + `Assign the direction cosines to variables + assign3D([u],[v],[w],x,y,z); eg assign3D(u,v,w,cross3D(x1,y1,z1,x2,y2,z2)) assigns the 4th arg to u, the 5th to v, and the 6th to w as u, v,or w are nonblank' @@ -101,6 +102,11 @@ define(`assign3D', `ifelse(`$1',,,`$1' = `$4') ifelse(`$2',,,`$2' = `$5') ifelse(`$3',,,`$3' = `$6')') + `vassign3D(name,x,y,z); eg + vassign3D(u,x,y,z) + assigns u[1] to x, u[2] to y, u[3] to z' +define(`vassign3D',`for i_vassign3D = 1 to 3 do { + exec sprintf("`$1'[i_vassign3D] = $%g",i_vassign3D+3) }') Write out the 3 arguments for debug define(`print3D',`print sprintf("`$1'(%g,%g,%g)",`$2',`$3',`$4')') diff --git a/graphics/circuit_macros/libcct.m4 b/graphics/circuit_macros/libcct.m4 index 0ae189ad17..81d36357c6 100644 --- a/graphics/circuit_macros/libcct.m4 +++ b/graphics/circuit_macros/libcct.m4 @@ -1,7 +1,7 @@ divert(-1) libcct.m4 -* Circuit_macros Version 9.3, copyright (c) 2020 J. D. Aplevich under * +* Circuit_macros Version 9.4, copyright (c) 2020 J. D. Aplevich under * * the LaTeX Project Public Licence in file Licence.txt. The files of * * this distribution may be redistributed or modified provided that this * * copyright notice is included and provided that modifications are clearly * @@ -189,11 +189,12 @@ define(`capacitor', line to rvec_(rp_len,0) invis ')') `resistor( linespec, cycles, chars, cycle wid) + cycles: default 3 chars : E=ebox ES=ebox with slash Q=offset - H=squared (default 3 cycles) - N=IEEE (default 3 cycles) + H=squared + N=IEEE (default) V=varistor variant R=to right of drawing direction arg4: cycle width, default dimen_/6' @@ -845,56 +846,113 @@ define(`fuse',`eleminit_(`$1') {[box invis ht_ m4ht wid_ m4wd] at rvec_(rp_len/2,0)} line to rvec_(rp_len,0) invis ') - `arrester( linespec, [G|E|S][D[L]], len, ht ) - G= spark gap (default) - E= gas discharge - S= surge - D= double (creates 3-terminal element) - DL= double, left orientation' + `arrester( linespec, [G|E|S][D[L|R]], + len[:arrowhead ht], ht[:arrowhead wid] ) + arg2 chars: + G= spark gap (default) + g= general (dots) + E= gas discharge + S= box enclosure + C= carbon block + A= electrolytic cell + H= horn gap + P= protective gap + s= sphere gap + F= film element + M= multigap + modifiers: + R= right orientation + L= left orientation + D= 3-terminal element for S, E only with + terminals A, B, G' define(`arrester', - `define(`m4wd',ifelse(`$3',,`dimen_/2',`($3)'))dnl - define(`m4ht',ifelse(`$4',,`dimen_/5',`($4)'))dnl - define(`m4arm',ifinstr(`$2',L,,-))dnl - define(`m4ardna',`patsubst(patsubst(`$2',L),D)')dnl - define(`m4awd',arrowwid*4/3)define(`m4aht',arrowht*2/3)dnl - define(`m4len',`ifinstr(`$2',D,`ifelse(`$1',,dimen_)',`$1')')dnl - ifinstr(`$2',D,[)eleminit_(m4len)ifinstr(`$2',D,,`;{')dnl - ifinstr( m4ardna,S, - `line to rvec_(max(0,rp_len/2-m4wd/2),0) - {lbox(m4wd,m4ht)} - {arrow to rvec_(m4wd*0.4,0) wid m4awd ht m4aht} - ifinstr(`$2',D, - `A: 3rd last line.start; B: last line.end; C: 1/2 between A and B - move to rvec_(m4wd/2,m4arm`'(-m4ht/2)) - Gb: line to rvec_(0,m4arm`'(m4ht*2)) - G: Here]', - `line from rvec_(m4wd,0) to rvec_(max(0,rp_len/2+m4wd/2),0)} - {[box invis ht_ m4ht wid_ m4wd] at rvec_(rp_len/2,0)} - line to rvec_(rp_len,0) invis ') ', - m4ardna,E, - `arrow to rvec_(max(0,rp_len/2-m4wd/8),0) wid m4awd ht m4aht - {dot(at rvec_(-m4aht/4,-m4wd/4),dotrad_*2/3)} - {move to rvec_(m4wd/4,0) - arrow <- to rvec_(max(0,rp_len/2-m4wd/8),0) wid m4awd ht m4aht } - {circle diam m4wd at rvec_(m4wd/8,0)} - ifinstr(`$2',D, - `A: 2nd last arrow.start; B: last arrow.end; C: last circle.c - move to rvec_(m4wd/8,m4arm`'(-m4ht/2)) - Gb: line to rvec_(0,m4arm`'ifelse(`$3',,`dimen_/2',`($3)')) - G: Here]', - `}; {[box invis ht_ m4wd wid_ m4wd] at rvec_(rp_len/2,0)} - line to rvec_(rp_len,0) invis ')', - `define(`m4wd',ifelse(`$3',,`dimen_/8',`($3)'))dnl - arrow to rvec_(max(0,rp_len/2-m4wd/2),0) wid m4awd ht m4aht - { move to rvec_(m4wd,0) - arrow <- to rvec_(max(0,rp_len/2-m4wd/2),0) wid m4awd ht m4aht } + `define(`m4rdna',`patsubst(`$2',D\|L\|R)')dnl + ifelse(m4rdna,,`define(`m4rdna',G)')dnl + define(`m4rL',ifinstr(`$2',L,-))dnl + define(`m4rR',ifinstr(`$2',R,-))dnl + + define(`m4aht',`m4Rightstr(`$3',arrowht*2/3)')dnl + define(`m4awd',`m4Rightstr(`$3',arrowwid*4/3)')dnl + + define(`m4wd', + `ifinstr(m4rdna,C,`m4Leftstr(`$3',dimen_/3)', + m4rdna,F,`m4Leftstr(`$3',dimen_/3)', + m4rdna,s,`m4Leftstr(`$3',dimen_/4)', + m4rdna,E,`m4Leftstr(`$3',dimen_*5/8)', + `m4Leftstr(`$3',dimen_/2)')')dnl + + define(`m4ht', + `ifinstr(Loopover_(`Z',`ifinstr(m4rdna,Z,T)',C,A,s),T, + `m4Leftstr(`$4',dimen_/4)', + ifinstr(m4rdna,F,T),T,`m4Leftstr(`$4',dimen_/3)', + `m4Leftstr(`$4',dimen_/5)')')dnl + ifinstr(`$2',D, - `A: 2nd last arrow.start; B: last arrow.end; C: 1/2 between A and B - move to rvec_(m4wd/2,m4arm`'(-m4awd)) - Gb: line to rvec_(0,m4arm`'ifelse(`$3',,`dimen_/2',`($3)')) - G: Here]', - `}; {[box invis ht_ m4ht wid_ m4wd+2*m4aht] at rvec_(rp_len/2,0)} - line to rvec_(rp_len,0) invis ')')') + `[ define(`m4LL',m4rL)dnl + ifinstr(m4rdna,S, + `R: arrester(ifelse(`$1',,`to rvec_(dimen_,0)'),m4rdna,shift(shift($@))) + Gb: line from R.c+vec_(0,m4LL m4ht/2) to R.c+vec_(0,m4LL (-m4ht*3/2)) ', + m4rdna,E, + `R: arrester(ifelse(`$1',,`to rvec_(dimen_,0)'),m4rdna,shift(shift($@))) + Gb: line from R.c+vec_(0,m4LL m4wd/8) to R.c+vec_(0,m4LL (-m4wd*3/4)) ') + A: R.start; B: R.end; C: R.c; G: Here ]', + + `eleminit_(`$1',elen_) + {line to rvec_(max(0,rp_len/2-m4wd/2),0) + {[ Orig: Here + ifinstr(m4rdna,G, + `{arrow to rvec_(m4aht,0) wid m4awd ht m4aht} + move to rvec_(m4wd,0) + arrow to rvec_(-m4aht,0) wid m4awd ht m4aht', + m4rdna,g, + `{dot(at rvec_(dotrad_,0))}; dot(at rvec_(m4wd-dotrad_,0))', + m4rdna,M, + `{dot(at rvec_(dotrad_,0))} + {dot(at rvec_(m4wd/2,0))}; dot(at rvec_(m4wd-dotrad_,0))', + m4rdna,C, + `lbox(m4wd/3,m4ht); move to rvec_(m4wd/3,0) + lbox(m4wd/3,m4ht)', + m4rdna,A, + `{line to rvec_(m4wd/4,0)} + for_(1,3,1,`line from rvec_(0,m4ht/2) to rvec_(m4wd/4,0) \ + then to rvec_(0,-m4ht/2); move to rvec_(m4wd/4,m4ht/2) + ifelse(m4x,3,,move to rvec_(m4wd/8,0))') ', + m4rdna,H, + `line to rvec_(m4ht,0); round + {arc ifelse(m4rR,-,,c)cw from Here to rvec_(-m4ht,m4rR m4ht) \ + with .c at rvec_(-m4ht,0)} + move to rvec_(m4wd-2*m4ht,0); round + {arc ifelse(m4rR,-,c)cw from Here to rvec_(m4ht,m4rR m4ht) \ + with .c at rvec_(m4ht,0)} + line to rvec_(m4ht,0)', + m4rdna,P, + `{open_arrow(to rvec_(m4aht,0),m4awd,m4aht)} + move to rvec_(m4wd,0) + open_arrow(to rvec_(-m4aht,0),m4awd,m4aht)', + m4rdna,s, + `{line to rvec_(m4ht/2*(sqrt(2)-1),0)} + {arc from rvec_(0,-m4ht/2) to rvec_(0,m4ht/2) \ + with .c at rvec_(-m4ht/2,0)} + move to rvec_(m4wd,0) + {arc from rvec_(0,m4ht/2) to rvec_(0,-m4ht/2) \ + with .c at rvec_(m4ht/2,0)} + {line to rvec_(-m4ht/2*(sqrt(2)-1),0)}', + m4rdna,F, + `{line from rvec_(0,m4ht/2) to rvec_(0,-m4ht/2)} + {line from rvec_(m4wd/2,m4ht/2) to rvec_(m4wd/2,-m4ht/2)} + line from rvec_(m4wd,m4ht/2) to rvec_(m4wd,-m4ht/2)', + m4rdna,S, + `{lbox(m4wd,m4ht)} + arrow to rvec_(m4wd/2,0) wid m4awd ht m4aht', + m4rdna,E, + `{circle diam m4wd at rvec_(m4wd/2,0)} + {arrow to rvec_(m4wd*3/8,0) wid m4awd ht m4aht} + {arrow <- from rvec_(m4wd*5/8,0) to rvec_(m4wd,0) wid m4awd ht m4aht} + dot(at rvec_(m4wd*6/8,m4wd/4),dotrad_*2/3) ') + ] with .Orig at Here } + line from rvec_(m4wd,0) to rvec_(max(0,rp_len/2+m4wd/2),0) } + line invis to rvec_(rp_len,0)') + ') `memristor( linespec, wid, ht )' define(`memristor',`eleminit_(`$1') @@ -1038,7 +1096,7 @@ define(`arrowline',`line ifelse(`$1',,`to rvec_(elen_,0)',`$1') chop lin_leng(last line)/2-arrowht/2 [box invis ht_ arrowwid wid_ arrowht] at last line.c }') - `ground( at position, T, N|F|S|L|P[A]|E, + `ground( at position, T|stem length, N|F|S|L|P[A]|E, D|U|L|R|degrees) T=truncated stem; N=normal ground, F=frame, S=signal, L=low-noise, P=protective, @@ -1047,7 +1105,8 @@ define(`arrowline',`line ifelse(`$1',,`to rvec_(elen_,0)',`$1') define(`ground',`box invis ht 0 wid 0 with .c ifelse(`$1',,`at Here',`$1') define(`m4v',`dimen_/6')define(`m4h',`dimen_/16')dnl {setdir_(ifelse(`$4',,-90,`$4')) - ifelse(`$2',,`line from last box.c to rvec_(dimen_/4,0)') + ifelse(`$2',,`line from last box.c to rvec_(dimen_/4,0)', + `$2',T,,`line from last box.c to rvec_(`$2',0)') ifelse(`$3',F, `{line from rvec_(dimen_/8,m4v-dimen_/12) \ to rvec_(0,m4v) \ @@ -1089,7 +1148,8 @@ define(`ground',`box invis ht 0 wid 0 with .c ifelse(`$1',,`at Here',`$1') to rvec_(2*m4h,-dimen_/14)') resetdir_} ') - `antenna(at position, T, A|L|T|S|D|P|F, U|D|L|R|degrees) + `antenna(at position, T|stem length, A|L|T|S|D|P|F, + U|D|L|R|degrees) arg2=T: truncate stem arg3= A=aerial; L=loop, T=triangle, S=diamond, D=dipole, P=phased, F=fork; @@ -1101,7 +1161,7 @@ define(`antenna',`[ T: Here ifelse( m4atype,L, `T1: rvec_(0,m4h); T2: rvec_(0,-m4h) - ifelse(`$2',,`move to rvec_(m4h*2,0)') + ifelse(`$2',,`move to rvec_(m4h*2,0)', `$2',T,,`move to rvec_(`$2',0)') line from T1 to rvec_(0,m4h) \ then to rvec_(0,m4v/2) \ then to rvec_(m4v-m4h,m4v/2) \ @@ -1114,7 +1174,7 @@ define(`antenna',`[ T: Here then to rvec_(0,-m4h) \ then to T2', m4atype,T, - `ifelse(`$2',,`move to rvec_(m4h*2,0)') + `ifelse(`$2',,`move to rvec_(m4h*2,0)', `$2',T,,`move to rvec_(`$2',0)') line to rvec_(m4v*3/4,m4v*sqrt(3)/4) \ then to rvec_(m4v*3/4,-m4v*sqrt(3)/4) \ then to Here @@ -1122,7 +1182,7 @@ define(`antenna',`[ T: Here to T', m4atype,S, `T1: rvec_(0,m4h); T2: rvec_(0,-m4h) - ifelse(`$2',,`move to rvec_(m4h*2,0)') + ifelse(`$2',,`move to rvec_(m4h*2,0)', `$2',T,,`move to rvec_(`$2',0)') line from T1 to rvec_(0,m4h) \ then to rvec_(m4v*3/4-m4h,m4v*3/4) \ then to rvec_(2*m4v*3/4-m4h,0) \ @@ -1131,20 +1191,20 @@ define(`antenna',`[ T: Here then to T2', m4atype,D, `T1: rvec_(0,m4h); T2: rvec_(0,-m4h) - ifelse(`$2',,`move to rvec_(m4v,0)') + ifelse(`$2',,`move to rvec_(m4v,0)', `$2',T,,`move to rvec_(`$2',0)') { line from T1 to rvec_(0,m4h) \ then to rvec_(0,m4h*3) } { line from T2 to rvec_(0,-m4h) \ then to rvec_(0,-m4h*3) }', m4atype,P, - `ifelse(`$2',,`move to rvec_(m4v*2/3,0)') + `ifelse(`$2',,`move to rvec_(m4h*2/3,0)', `$2',T,,`move to rvec_(`$2',0)') line from T to Here { line from rvec_(0,-m4v/3) \ to rvec_(0,m4v/3) } { line from rvec_(m4h,-m4v*2/3) \ to rvec_(m4h,m4v*2/3) }', m4atype,F, - `ifelse(`$2',,`move to rvec_(m4h*2,0)') + `ifelse(`$2',,`move to rvec_(m4h*2,0)', `$2',T,,`move to rvec_(`$2',0)') { line from rvec_(m4v*3/4,m4v*sqrt(3)/4) \ to rvec_(0,m4v*sqrt(3)/4) \ then to rvec_(0,-m4v*sqrt(3)/4) \ @@ -1152,12 +1212,12 @@ define(`antenna',`[ T: Here line from rvec_(m4v*3/4,0) \ to T', m4atype,A, - `ifelse(`$2',,`move to rvec_(m4h*2,0)') - { line from rvec_(m4v*3/4, m4v*sqrt(3)/4) to Here \ - then to rvec_(m4v*3/4,-m4v*sqrt(3)/4) } - line from rvec_(m4v*3/4,0) \ + `ifelse(`$2',,`move to rvec_(m4h*2,0)', `$2',T,,`move to rvec_(`$2',0)') + { line from rvec_(m4v*3/4, m4v*sqrt(3)/4) to Here \ + then to rvec_(m4v*3/4,-m4v*sqrt(3)/4) } + line from rvec_(m4v*3/4,0) \ to T') - `$5'; resetdir_ ] with .T ifelse(`$1',,`at Here',`$1')') + `$5'; resetdir_ ] with .T ifelse(`$1',,`at Here',`$1')') `switch( linespec,L|R,[O|C][D],L|B|D ) Wrapper for bswitch, lswitch, dswitch @@ -1449,7 +1509,8 @@ define(`m4R',`ifelse(`$2',R,-)')define(`m4sc',`dimen_/24')dnl } line to rvec_(rp_len,0) invis ') - `Amplifier amp( linespec,size )' + `amp( linespec,size ) + Amplifier' define(`amp',`eleminit_(`$1') define(`m4wd',`ifelse(`$2',,`dimen_',`($2)')')dnl {line to rvec_(max(0,rp_len/2-m4wd/2),0) line from rvec_(m4wd,0) \ @@ -2365,7 +2426,8 @@ define(`ta_xy',`vec_(vscal_(m4_xyU,`$1',ifelse(`$2',0,0,m4_xyS`($2)')))') `Relative adjusted macro-internal coordinates' define(`tr_xy',`M4_xyO+vec_(vscal_(m4_xyU,`$1',ifelse(`$2',0,0,m4_xyS`($2)')))') `Initialize tr_xy_init(origin,unit,-)' -define(`tr_xy_init',`M4_xyO: ifelse(`$1',,Here,`$1') +define(`tr_xy_init', +`M4_xyO: ifelse(`$1',,Here,`$1') define(`m4_xyU',`$2')dnl define(`m4_xyS',`$3')') @@ -2388,8 +2450,10 @@ define(`sc_draw',`m4_dna(`$1',`$2')ifelse(m4I_,-1,`$4',`$3')') we temporarily turn off comments for svg' define(`rlabel',`ifsvg(`changecom(,)')dnl m4label(`$1',`$2',`$3',.s_,below_,`$4')`'ifsvg(`changecom(`#',)')') + define(`llabel',`ifsvg(`changecom(,)')dnl m4label(`$1',`$2',`$3',.n_,above_,`$4')`'ifsvg(`changecom(`#',)')') + define(`clabel',`ifsvg(`changecom(,)')dnl m4label(`$1',`$2',`$3',,,`$4')`'ifsvg(`changecom(`#',)')') labels at centre and both ends of an element `dimen_' long @@ -3218,6 +3282,17 @@ define(`ACsymbol',`[ Origin: Here with .Origin at Origin } ') `$5'; resetdir_ ] with .Origin ifelse(`$1',,`at Here',`$1')') + `DCsymbol(at position, len, ht, U|D|L|R|degrees) + Arg4: drawing direction (default: current direction)' +define(`DCsymbol',`[ + define(`m4wid',`ifelse(`$2',,(dimen_/3),`($2)')')dnl + define(`m4ht',`ifelse(`$3',,`m4wid/5',`($3)')') + setdir_(ifelse(`$4',,`ifdef(`m4a_',rp_ang*rtod_,0)',`$4')) + Origin: rvec_(m4wid/2,-m4ht/2) + {line to rvec_(m4wid,0)} + dashline(from rvec_(0,-m4ht) to rvec_(m4wid,-m4ht),,m4wid/4) + `$5'; resetdir_ ] with .c ifelse(`$1',,`at Here',`$1')') + `n-terminal box nterm(box specs; other commands, nw,nn,ne,ns, diff --git a/graphics/circuit_macros/libgen.m4 b/graphics/circuit_macros/libgen.m4 index e03ab1ae27..7aabd68c83 100644 --- a/graphics/circuit_macros/libgen.m4 +++ b/graphics/circuit_macros/libgen.m4 @@ -2,7 +2,7 @@ divert(-1) libgen.m4 Base macros for dpic and gpic diagrams -* Circuit_macros Version 9.3, copyright (c) 2020 J. D. Aplevich under * +* Circuit_macros Version 9.4, copyright (c) 2020 J. D. Aplevich under * * the LaTeX Project Public Licence in file Licence.txt. The files of * * this distribution may be redistributed or modified provided that this * * copyright notice is included and provided that modifications are clearly * @@ -41,8 +41,13 @@ ifdef(`__file__', the installation folder, e.g. dnl define(`HOMELIB_',`D:\Dwight\lib') + `NeedDpicTools( path ) + If path is empty then HOMELIB_ is used + e.g. NeedDpicTools or NeedDpicTools(/home/lib/)' define(`NeedDpicTools',`if "dpictools" != "1" then { - copy "HOMELIB_`'dpictools.pic" } define(`dfitpoints__') define(`dfitcurve__') ') + ifelse(`$1',,`copy "HOMELIB_`'dpictools.pic"',`copy "`$1'dpictools.pic"') + define(`dfitpoints__') define(`dfitcurve__')}') + Processor shortcuts define(`ifdpic',`ifelse(m4picprocessor,dpic,`$1',`$2')') define(`ifgpic',`ifelse(m4picprocessor,gpic,`$1',`$2')') @@ -56,7 +61,6 @@ define(`ifpstricks',`ifelse(m4postprocessor,pstricks,`$1',`$2')') define(`ifsvg',`ifelse(m4postprocessor,svg,`$1',`$2')') define(`iftpic',`ifelse(m4postprocessor,tpic,`$1',`$2')') define(`ifxfig',`ifelse(m4postprocessor,xfig,`$1',`$2')') -#efine(`ifpsfrag',ifinstr(ifdef(`psfrag',T)`'ifdef(`psfrag_',T),T,`$1',`$2')) define(`ifpsfrag',ifelse(ifdef(`psfrag',T,`ifdef(`psfrag_',T)'),T,`$1',`$2')) `iflatex(latextrue,latexfalse) @@ -181,7 +185,7 @@ define(`SIdefaults', define(`latexcommand',`command "ifmpost(verbatimtex) `$1' ifmpost(etex)"') define(`m4announceprocessor',`dnl Do not change the format of the next line: -`#' `$1' Version 9.3: ifelse(m4picprocessor,gpic,`Gpic', +`#' `$1' Version 9.4: ifelse(m4picprocessor,gpic,`Gpic', m4postprocessor,pstricks,`PSTricks', m4postprocessor,pgf,`TikZ PGF', m4postprocessor,mfpic,`Mfpic', @@ -424,6 +428,14 @@ ifinstr(`$2',m4sep,`pushdef(`$1',substr(`$2',0,index(`$2',m4sep)))dnl stacksplit_(`$1',substr(`$2',incr(index(`$2',m4sep))),m4sep)', `pushdef(`$1',`$2')')') + `m4Leftstr(str,default) leftmost substring + to the left of : (arg2 if blank)' +define(`m4Leftstr',`ifelse(patsubst(`$1',:.*),,`$2',patsubst(`$1',:.*))') + `m4Rightstr(str,default) rightmost substring + to the right of : (arg2 if blank)' +define(`m4Rightstr',`ifinstr(`$1',:, + `ifelse(patsubst(`$1',.*:),,`$2',`patsubst(`$1',.*:)')',`$2')') + `basename_(path,sep) Extract rightmost name from arg2-separated path, default dot (.)' @@ -743,10 +755,11 @@ define(`m4Delch', `ifelse(substr(`$1',0,1),ifelse(`$2',,_,`$2'),`substr(`$1',1)',`$1')') `setkey_(string,key,default,[N]) - pushdef macro m4key equal to val when - string contains key=val; - default if not in string - arg4= blank defines m4key as (val)' + string contains semicolon-separated + terms of the form key=val + If string contains key=val; then + pushdef(`m4key',(val)) otherwise use default. + Nonblank arg4 omits the parentheses.' define(`setkey_', `pushdef(`m4xt',index(`$1',`$2'=))ifelse(m4xt,-1, `pushdef(`m4'$2,`ifelse(`$3',,,ifelse(`$4',,(`$3'),`$3'))')', @@ -777,10 +790,11 @@ define(`text_ang',90) (requires PSTricks, pgf, or svg)' define(`r_text',`define(`m4txt', `ifelse(index(`$1',"),0,`substr(`$1',1,eval(len(`$1')-2))',`$1')')dnl -define(`m4rtang',`ifelse(`$2',,90,`$2')')dnl +ifelse(ifpstricks(T)`'ifpgf(T)`'ifsvg(T),T, +`define(`m4rtang',`ifelse(`$2',,90,`$2')')dnl ifsvg(`svg_rot(m4rtang,"m4txt")')dnl ifpstricks(`"\rput[c]{m4rtang}(0,0){m4txt}"')dnl -ifpgf(`"\pgftext[rotate=m4rtang]{m4txt}"')') +ifpgf(`"\pgftext[rotate=m4rtang]{m4txt}"')',"m4txt")') `Like s_box but text is rotated text_ang degrees (requires PSTricks or pgf)' @@ -824,12 +838,12 @@ define(`dot',`[define(`m4ft',`ifelse(`$3',,0,(`$3'))')dnl `circle rad ifelse(`$2',,`dotrad_',`$2') fill_(m4ft)')') dnl `$4'] with .c ifelse(`$1',,`at Here',`$1') move to last [].c') - `cross(at location); assumes that a + `cross(at location,size); assumes that a cross always has manhattan directions' -define(`crosswd_',(0.05*scale)) +define(`crosswd_',`ifelse(`$2',,`(0.05*scale)',`($2)')') define(`cross',`[{line from Here+(0,neg_(crosswd_)) to Here+(0,crosswd_)} line from Here+(neg_(crosswd_),0) to Here+(crosswd_,0) - `$2'] with .c ifelse(`$1',,`at Here',`$1'); move to last [].c') + `$3'] with .c ifelse(`$1',,`at Here',`$1'); move to last [].c') `boxcoord(name,xfraction,yfraction) internal position in a named planar object' @@ -954,6 +968,7 @@ define(`rotellipse', `[define(`m4ehw',(ifelse(`$1',,ellipsewid,`($1)')/2))dnl define(`m4ehh',(ifelse(`$2',,ellipseht,`($2)')/2))dnl N: vec_(0,m4ehh); E: vec_(m4ehw,0); S: vec_(0,-m4ehh); W: vec_(-m4ehw,0) + C: (0,0) spline ifdpic( `ctension_ from S to vec_(m4ehw,-m4ehh) \ then to vec_(m4ehw,m4ehh) then to vec_(-m4ehw,m4ehh) \ @@ -1006,7 +1021,8 @@ define(`m4lstring',`ifelse( D: blank width is the diagonal length of arg3 H: blank width is height of arg3 + textoffset*2 W: blank width is width of arg3 + textoffset*2 - otherwise: arg4 is absolute blank width ' + otherwise: arg4 is absolute blank width + If arg 3 begins with [ it is copied verbatim ' define(`dimension_',`rpoint_(`$1') ; { define(`m4g',ifelse(`$4',,0, `$4',W,(s_wd + ifdpic(textoffset,`2 bp__')*2), @@ -1015,18 +1031,23 @@ define(`dimension_',`rpoint_(`$1') ; { define(`m4h',`(rp_len ifelse((`$4'),(),,neg_(m4g)))')dnl ifelse((`$2'),(),,`if (`$2') != 0 then { m4toff = sign(`$2')*ifelse(`$5',,`3.6bp__',(`$5')) - {move to rvec_(0, m4toff); line to rvec_(0,`$2')} - {move to rvec_(rp_len,m4toff); line to rvec_(0,`$2')} - move to rvec_(0,`$2') }') + {move to rvec_(0, m4toff) + S_dimen_: line to rvec_(0,`$2')} + {move to rvec_(rp_len,m4toff) + E_dimen_: line to rvec_(0,`$2')} + move to rvec_(0,`$2') + AS_C: rvec_(rp_len/2,0) }') if m4h > 2*arrowht then { - { line ifelse(`$6',,<-,index($6,<),0,<-) to rvec_(m4h/2,0) + { AS_dimen_: line ifelse(`$6',,<-,index($6,<),0,<-) to rvec_(m4h/2,0) ifelse((`$4'),(),,`move to rvec_(m4g,0)') - line ifelse(`$6',,->,eval(index($6,>)>0),1,->) to rvec_(m4h/2,0) } + AE_dimen_: line ifelse(`$6',,->,eval(index($6,>)>0),1,->) \ + to rvec_(m4h/2,0) } } else { - { arrow from rvec_(-arrowht*1.5,0) to Here - arrow from rvec_(rp_len+arrowht*1.5,0) to rvec_(rp_len,0) } + { AS_dimen_: arrow from rvec_(-arrowht*1.5,0) to Here + AE_dimen_: arrow from rvec_(rp_len+arrowht*1.5,0) to rvec_(rp_len,0) } } ifelse(`$3',,, + index(`$3',[),0,``$3' at rvec_(rp_len/2,0)', `m4lstring(`$3',"`$3'") at rvec_(rp_len/2,0)') }') `Dimensioning for arcs: @@ -1093,7 +1114,7 @@ define(`shade',`beginshade(`$1') # # `ShadedPolygon(vertexseq,line attributes, # sweep angle (degrees),colorseq) -# arg1 is a colon (:) separated sequence of +# arg1 is a colon (:)-separated sequence of # positions or position names, the vertices in # order (cw or ccw) of the polygon. Colored # shade lines are drawn perpendicular to the @@ -1275,12 +1296,13 @@ define(`Vperp', define(`m4pdy',`(`$2'.y-`$1'.y)')dnl define(`m4pdl',`ifelse(`$3',,`/vlength(m4pdx,m4pdy)',`$3',0,, `*(`$3')/vlength(m4pdx,m4pdy)')')dnl - ifinstr(`$4',R,,-)m4pdy`'m4pdl,\ - m4pdx`'m4pdl') + ifinstr(`$4',R, + `(m4pdy`'m4pdl),(-m4pdx`'m4pdl)',`(-m4pdy`'m4pdl),(m4pdx`'m4pdl)')') - `Equidist3(Pos1,Pos2,Pos3,Result) + `Equidist3(Pos1,Pos2,Pos3,Result,distance) Result is the name of the point equidistant from named Pos1, Pos2, Pos3 + arg4 nonblank: the common distance eg Equidist3(A,B,C,D) arc from A to C with .c at D' define(`Equidist3',` @@ -1289,7 +1311,8 @@ define(`Equidist3',` M4tmp_P2: 0.5 between `$2' and `$3' M4tmp_T2: M4tmp_P2+(Vperp(`$2',`$3')) `$4': intersect_(M4tmp_P1,M4tmp_T1,M4tmp_P2,M4tmp_T2) - ') + ifelse(`$5',,,`$5 = distance(`$4',`$1');') ') + `Cintersect(Pos1,rad1,Pos2,rad2,[R]) Upper (lower if arg5=R) intersection of circles at Pos1 and Pos2, radius rad1 and rad2 @@ -1360,6 +1383,38 @@ define(`M4LP',`($1-($2))')dnl define(`M4LET',`LCtangent((M4LP.x/m4LEta,M4LP.y/m4LEtb),`(0,0)',1,`$5')')dnl (`$2'+(M4LET.x*m4LEta,M4LET.y*m4LEtb))') + `langle(Start,End) + Angle relative to horizontal of a line + between two points' +define(`langle', +`atan2(M4Pos(`$2').y-M4Pos(`$1').y,M4Pos(`$2').x-M4Pos(`$1').x)') + + `ArcAngle(Pos1,Pos2,Pos3,radius,attributes) + arc angle symbol drawn ccw at Pos2 + arg4: radius from Pos2 + arg5: line attributes, e.g. thick linethick/2' +define(`ArcAngle',`arcr(`$2',ifelse(`$4',,arcrad,`$4'), + langle(`$2',`$1'),langle(`$2',`$3'),`$5') ') + + `RightAngle(Pos1,Pos2,Pos3,linelen,attributes) + Draw a right angle symbol at Pos2 + arg4: size + arg5: line attributes, e.g. outlined "gray"' +define(`RightAngle', + `RightA_C: `$1'; RightA_N: `$2'; RightA_B: `$3' +define(`m4AngleLen',`ifelse(`$4',,linewid/5,`$4')') + angleCNB = atan2(RightA_C.y-RightA_N.y,RightA_C.x-RightA_N.x) + M4AB0: (RightA_B-RightA_N)/distance(RightA_B,RightA_N) + M4CN0: (RightA_N-RightA_C)/distance(RightA_N,RightA_C) + move to RightA_N - M4CN0*m4AngleLen + line to Here + M4AB0*m4AngleLen then to RightA_N + M4AB0*m4AngleLen `$5' +') + `PerpTo(Pos,Line,Point) + The point on Line of the perpendicular to Pos' +define(`PerpTo', +`PerpTo_T: move from `$1' to `$1'-(vperp(`$2')) + ifelse(`$3',,PerpTo_P,`$3'): Intersect_(PerpTo_T,`$2') ') + `Convenience fraction along a linear obj' define(`along_',`between `$1'.start and `$1'.end') diff --git a/graphics/circuit_macros/liblog.m4 b/graphics/circuit_macros/liblog.m4 index ce261707ca..99c68076ef 100644 --- a/graphics/circuit_macros/liblog.m4 +++ b/graphics/circuit_macros/liblog.m4 @@ -1,7 +1,7 @@ divert(-1) liblog.m4 Logic gates -* Circuit_macros Version 9.3, copyright (c) 2020 J. D. Aplevich under * +* Circuit_macros Version 9.4, copyright (c) 2020 J. D. Aplevich under * * the LaTeX Project Public Licence in file Licence.txt. The files of * * this distribution may be redistributed or modified provided that this * * copyright notice is included and provided that modifications are clearly * diff --git a/graphics/circuit_macros/mfpic.m4 b/graphics/circuit_macros/mfpic.m4 index 6e68706e24..c631f784d1 100644 --- a/graphics/circuit_macros/mfpic.m4 +++ b/graphics/circuit_macros/mfpic.m4 @@ -1,7 +1,7 @@ divert(-1) mfpic.m4 Initialization for mfpic. -* Circuit_macros Version 9.3, copyright (c) 2020 J. D. Aplevich under * +* Circuit_macros Version 9.4, copyright (c) 2020 J. D. Aplevich under * * the LaTeX Project Public Licence in file Licence.txt. The files of * * this distribution may be redistributed or modified provided that this * * copyright notice is included and provided that modifications are clearly * diff --git a/graphics/circuit_macros/mpost.m4 b/graphics/circuit_macros/mpost.m4 index 0698a3d8d9..778f38e216 100644 --- a/graphics/circuit_macros/mpost.m4 +++ b/graphics/circuit_macros/mpost.m4 @@ -1,7 +1,7 @@ divert(-1) mpost.m4 Initialization for metapost. -* Circuit_macros Version 9.3, copyright (c) 2020 J. D. Aplevich under * +* Circuit_macros Version 9.4, copyright (c) 2020 J. D. Aplevich under * * the LaTeX Project Public Licence in file Licence.txt. The files of * * this distribution may be redistributed or modified provided that this * * copyright notice is included and provided that modifications are clearly * diff --git a/graphics/circuit_macros/pgf.m4 b/graphics/circuit_macros/pgf.m4 index 5b292ccaea..791be9765c 100644 --- a/graphics/circuit_macros/pgf.m4 +++ b/graphics/circuit_macros/pgf.m4 @@ -1,7 +1,7 @@ divert(-1) pgf.m4 Initialization for Tikz-pgf. -* Circuit_macros Version 9.3, copyright (c) 2020 J. D. Aplevich under * +* Circuit_macros Version 9.4, copyright (c) 2020 J. D. Aplevich under * * the LaTeX Project Public Licence in file Licence.txt. The files of * * this distribution may be redistributed or modified provided that this * * copyright notice is included and provided that modifications are clearly * diff --git a/graphics/circuit_macros/postscript.m4 b/graphics/circuit_macros/postscript.m4 index 21072c1d17..c33c1a7afc 100644 --- a/graphics/circuit_macros/postscript.m4 +++ b/graphics/circuit_macros/postscript.m4 @@ -1,7 +1,7 @@ divert(-1) postscript.m4 Initialization for Postscript output. -* Circuit_macros Version 9.3, copyright (c) 2020 J. D. Aplevich under * +* Circuit_macros Version 9.4, copyright (c) 2020 J. D. Aplevich under * * the LaTeX Project Public Licence in file Licence.txt. The files of * * this distribution may be redistributed or modified provided that this * * copyright notice is included and provided that modifications are clearly * diff --git a/graphics/circuit_macros/psfrag.m4 b/graphics/circuit_macros/psfrag.m4 index 7bf1df5656..d11b9dd0bf 100644 --- a/graphics/circuit_macros/psfrag.m4 +++ b/graphics/circuit_macros/psfrag.m4 @@ -2,7 +2,7 @@ divert(-1) psfrag.m4 Initialization for dpic -f processing: Postscript with psfrag strings -* Circuit_macros Version 9.3, copyright (c) 2020 J. D. Aplevich under * +* Circuit_macros Version 9.4, copyright (c) 2020 J. D. Aplevich under * * the LaTeX Project Public Licence in file Licence.txt. The files of * * this distribution may be redistributed or modified provided that this * * copyright notice is included and provided that modifications are clearly * diff --git a/graphics/circuit_macros/pstricks.m4 b/graphics/circuit_macros/pstricks.m4 index efe7cafe16..0dbd8ef7f1 100644 --- a/graphics/circuit_macros/pstricks.m4 +++ b/graphics/circuit_macros/pstricks.m4 @@ -1,7 +1,7 @@ divert(-1) pstricks.m4 Initialization for PSTricks. -* Circuit_macros Version 9.3, copyright (c) 2020 J. D. Aplevich under * +* Circuit_macros Version 9.4, copyright (c) 2020 J. D. Aplevich under * * the LaTeX Project Public Licence in file Licence.txt. The files of * * this distribution may be redistributed or modified provided that this * * copyright notice is included and provided that modifications are clearly * @@ -29,8 +29,8 @@ define(`linethick_',`linethick = ifelse(`$1',,`0.8',`$1'); dnl arrowht = ifelse(`$1',,`0.1',linethick/8)*scale;') `Patch PSTricks to use all coordinate pairs - inside \pscustom' - `Older version for PSTricks prior to Aug 2010:' + inside \pscustom + Older version for PSTricks prior to Aug 2010:' define(`M4PatchPSTricks', `command "\makeatletter\@ifundefined{ifPst@noCurrentPoint}% {\@ifundefined{MPS@Patch}{\gdef\MPS@Patch{}% @@ -41,7 +41,7 @@ define(`M4PatchPSTricks', {\@ifundefined{MPS@PatchMsg}{\gdef\MPS@PatchMsg{}% \typeout{ Dpic -p: Setting noCurrentPoint to use all coord pairs }}{}% \psset{noCurrentPoint}}\makeatother%"') - `For PSTricks since Aug 2010' + `For PSTricks since Aug 2010:' define(`M4PatchPSTricks',`command "\psset{noCurrentPoint}%"') divert(0)dnl diff --git a/graphics/circuit_macros/svg.m4 b/graphics/circuit_macros/svg.m4 index 84f7e21e06..1b3a285ffb 100644 --- a/graphics/circuit_macros/svg.m4 +++ b/graphics/circuit_macros/svg.m4 @@ -1,7 +1,7 @@ divert(-1) svg.m4 Initialization for SVG output. -* Circuit_macros Version 9.3, copyright (c) 2020 J. D. Aplevich under * +* Circuit_macros Version 9.4, copyright (c) 2020 J. D. Aplevich under * * the LaTeX Project Public Licence in file Licence.txt. The files of * * this distribution may be redistributed or modified provided that this * * copyright notice is included and provided that modifications are clearly * @@ -95,6 +95,7 @@ dptextratio)') `see http://www.ascii.cl/htmlcodes.htm and http://webdesign.about.com/od/localization/l/blhtmlcodes-gr.htm' +`These macros are used in strings so the double quote is entered as \". ' define(`svg_symbol',`changecom(,)`$1'changecom(`#',)') define(`svg_it',``$1'') define(`svg_tt',``$1'') @@ -171,6 +172,8 @@ define(`svg_emsp',`svg_symbol(&`#'8195;)') define(`svg_thinsp',`svg_symbol(&`#'8201;)') define(`svg_backsl',`svg_symbol(&`#'92;)') define(`svg_pound',`svg_symbol(&`#'35;)') +define(`svg_circ',`svg_symbol(&`#'710;)') +define(`svg_deg',`svg_symbol(&`#'176;)') ') define(`svgcolor',`sprintf("rgb(%g,%g,%g)",\ diff --git a/graphics/circuit_macros/xfig.m4 b/graphics/circuit_macros/xfig.m4 index f092b44df5..c9498cf628 100644 --- a/graphics/circuit_macros/xfig.m4 +++ b/graphics/circuit_macros/xfig.m4 @@ -1,7 +1,7 @@ divert(-1) xfig.m4 Initialization for xfig. -* Circuit_macros Version 9.3, copyright (c) 2020 J. D. Aplevich under * +* Circuit_macros Version 9.4, copyright (c) 2020 J. D. Aplevich under * * the LaTeX Project Public Licence in file Licence.txt. The files of * * this distribution may be redistributed or modified provided that this * * copyright notice is included and provided that modifications are clearly * diff --git a/info/apprendre-a-programmer-en-tex/README b/info/apprendre-a-programmer-en-tex/README index ed792bf046..6b73c79516 100644 --- a/info/apprendre-a-programmer-en-tex/README +++ b/info/apprendre-a-programmer-en-tex/README @@ -53,35 +53,27 @@ d'utiliser dans le Matériel la police à chasse fixe « Luximono » qui était employée dans le livre, car elle n'est pas sous licence libre. Faire un choix de police de remplacement n'a pas été facile mais finalement, -LinuxLibertineMono a été adoptée. Cela donne une certaine cohérence à -l'ensemble puisque la police du texte est LinuxLibertine. Malheureusement, -telle qu'elle est conçue, son énorme défaut est de chasser beaucoup trop. Il a -donc fallu la modifier pour créer deux autres polices plus « condensées » : - - a) pour les caractères dans le corps du texte, j'ai créé une police - LinuxlibertineMonoTC où les glyphes de LinuxLibertineMonoT ont été, via - fontforge, réduits de 75% horizontalement et 92% verticalement. Ce sont, - après bien des essais, les coefficients qui lui permettent de s'insérer au - mieux (à mon goût) dans le texte, qui donnent une chasse proche de celle de - Luximono et qui rendent le gris typographique acceptable ; - - b) pour les codes figurant dans le texte du livre, la police - LinuxlibertineMonoTCC a été créée, toujours à partir de LinuxLibertineMonoT, - mais les glyphes ont été davantage réduit horizontalement : 67% - horizontalement et 92% verticalement. +GoMono a été adoptée. Cette police est quasiment identique à LuxiMono, +exception faite de la lettre "l", mais c'est sans grande importance car elles +ont les mêmes chasses : à peinr 52sp de différence à l'échelle 0.8 qui est +utilisée dans ce livre. C'est une différence insigifiante. + +Pour les codes figurant dans le texte du livre, la police GMC a été créée à +partir de GoMono en multipliant par 0.8 la dimension horizontale de tous les +glyphes. 3) Enfin, la dernière conséquence est que le fichier pdf produit après compilation du code source n'est pas exactement celui qui a servi à imprimer le livre. Il n'y a que très peu de modifications : - a) les polices à chasse fixe sont différentes, comme expliqué ci-dessus. - Outre les considérations esthétiques sur lesquelles je ne m'étendrai pas, - cela ne devrait pas entraîner de modification de la mise en page car la - chasse de LinuxlibertineMonoTC est extrêmement proche de celle de Luximono ; + a) les polices à chasse fixe sont légèrement différentes, comme expliqué + ci-dessus. + Cela ne devrait pas entraîner de modification de la mise en page car la chasse + de GoMono est extrêmement proche de celle de Luximono ; - b) les mentions Luximono sont changées pour LinuxlibertineMonoTC ; + b) les mentions Luximono sont changées pour GoMono ; - c) la licence est modifiée (page réelle 6) ; + c) la licence est modifiée (voir page réelle 6) ; d) quelques corrections ont été faites (coquilles, erreurs dans les codes, etc.), mais une infime partie en regard de ce qui resterait à faire ! @@ -101,8 +93,8 @@ est dessiné l'ensemble de Mandelbrot à l'aide d'une version modifiée de TeX. Par ailleurs, toujours par souci de simplicité : - tout le code source est dans un seul fichier « livre.tex », qui est le code source à compiler avec l'exécutable pdflatex ; - - seules 3 fontes sont à installer à la main, à savoir LinuxlibertineMonoTC, - LinuxlibertineMonoTCC et les fontes de libertine-legacy. + - seules les fontes GMC et les fontes de libertine-legacy sont à installer + à la main. Pour installer ces fontes, il faut aller dans le répertoire /fonts où se trouvent des fichiers zippés permettant ces installations. La procédure est @@ -117,19 +109,18 @@ donnée pour GNU-linux avec TeXlive car je ne connais ni windows ni mikTeX. c) aller dans /fonts/maps/dvips/libertine-legacy et lancer dans la console la commande suivante - updmap -user --enable map=libertine-legacy.map + updmap -user --enable Map=libertine-legacy.map -2) Installation des fontes LinuxLibertineMono « condensées » : +2) Installation des fontes GMC : - a) dézipper le fichier linlibmonoc.zip + a) dézipper le fichier GMC.zip b) copier les répertoires /fonts et /tex dans le texmf personnel (permettre d'écrire à l'intérieur des dossiers existants) - c) aller dans /fonts/maps/dvips/linlibmonoc et lancer dans la console les - deux commandes suivantes : - updmap -user --enable map=LinuxLibertineMonoTC.map - updmap -user --enable map=LinuxLibertineMonoTCC.map + c) aller dans /fonts/maps/dvips/GMC et lancer dans la console la + commande suivante : + updmap -user --enable Map=GMC.map On peut s'assurer que l'installation s'est correctement déroulée en examinant la sortie générée par la commande diff --git a/info/apprendre-a-programmer-en-tex/output/apprendre-a-programmer-en-tex.pdf b/info/apprendre-a-programmer-en-tex/output/apprendre-a-programmer-en-tex.pdf index 9e349e04e8..1785280676 100644 Binary files a/info/apprendre-a-programmer-en-tex/output/apprendre-a-programmer-en-tex.pdf and b/info/apprendre-a-programmer-en-tex/output/apprendre-a-programmer-en-tex.pdf differ diff --git a/info/apprendre-a-programmer-en-tex/output/progtexcode.txt b/info/apprendre-a-programmer-en-tex/output/progtexcode.txt index fcd1a19ec7..e41a520b5d 100644 --- a/info/apprendre-a-programmer-en-tex/output/progtexcode.txt +++ b/info/apprendre-a-programmer-en-tex/output/progtexcode.txt @@ -7,7 +7,7 @@ %% Encodage ISO 8859-1 %% %% _____ %% %% %% -%% © 2014 Christian Tellechea %% +%% © 2014-2020 Christian Tellechea %% %% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% diff --git a/info/apprendre-a-programmer-en-tex/source/apprendre-a-programmer-en-tex.tex b/info/apprendre-a-programmer-en-tex/source/apprendre-a-programmer-en-tex.tex index 529d26e798..bc5a675f36 100644 --- a/info/apprendre-a-programmer-en-tex/source/apprendre-a-programmer-en-tex.tex +++ b/info/apprendre-a-programmer-en-tex/source/apprendre-a-programmer-en-tex.tex @@ -8,7 +8,7 @@ %% %% %% ___ %% %% %% -%% © 2014 Christian Tellechea %% +%% © 2014-2020 Christian Tellechea %% %% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -18,7 +18,6 @@ %| Encodage ISO 8859-1 (latin1) | %| À compiler avec pdflatex en mode pdf | %|___________________________________________________________________________| - \RequirePackage{etex} \documentclass[fontsize=10pt,chapterprefix=true]{scrbook} @@ -104,7 +103,8 @@ %| | \usepackage{amssymb,textcomp,eurosym,libertine} \usepackage[libertine]{newtxmath} -\renewcommand*\ttdefault{LinuxLibertineMonoTC-TLF} +\newcommand*\GMC@scale{0.8} +\usepackage[scaled=0.8]{GoMono} \DeclareRobustCommand*\libLegacyGlyph[1]{{\ifcsname fxl@#1\endcsname\@nameuse{fxl@#1}\else\errmessage{glyphe fxl@#1 non défini}\fi}} \DeclareRobustCommand*\bioLegacyKeyGlyph[1]{{\ifcsname fxk@#1\endcsname\@nameuse{fxk@#1}\else\errmessage{glyphe fxk@#1 non défini}\fi}} \newcommand*\DeclareTextGlyphX[5]{\@namedef{#1@#4}{{\fontfamily{#3}\fontencoding{#2}\selectfont\char#5\relax}}} @@ -501,7 +501,7 @@ %% Encodage ISO 8859-1 %% %% _____ %% %% %% -%% © 2014 Christian Tellechea %% +%% © 2014-2020 Christian Tellechea %% %% %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -642,7 +642,7 @@ }% échappement ¤...¤ \defactive\%{\unexpanded{\@commenttrue\itshape\color{codegray}\%}}% commentaire \defactive\^^M{\unexpanded{\if@comment\normalfont\ttfamily\color{black}\fi\@commentfalse}\par\leavevmode}% retour charriot - \normalfont\renewcommand*\ttdefault{LinuxLibertineMonoTCC-TLF}\ttfamily + \normalfont\renewcommand*\ttdefault{GMC-TLF}\ttfamily \setbox\z@\hbox{0}\edef\tt@spc{\hskip\the\wd\z@\relax}% \catcode`\ =13 \begingroup @@ -1138,10 +1138,10 @@ \small ISBN 978-2-9548602-0-6\medskip - \textcopyright{} Christian \textsc{Tellechea}, 2014\medskip + \textcopyright{} Christian \textsc{Tellechea}, 2014--2020\medskip \scriptsize - Révision \no2a, 26/04/2019\medskip + Révision \no2b, 20/12/2020\medskip Photo couverture \textcopyright{} Christian~\textsc{Tellechea}\par Photo 4\ieme{} couverture \textcopyright{} Willi~\textsc{Heidelbach}. @@ -16563,7 +16563,7 @@ Avant de b \item \idx\pagegoal est la dimension verticale du texte à composer dans la page en cours. \end{itemize} -La dimension \idx\pagetotal n'est pas actualisée en permanence, mais seulement après chaque paragraphe composé. Par ailleurs, au tout début de la construction d'une page, lorsqu'elle est vide, \idx\pagetotal vaut \numprint[pt]0 alors que \idx\pagegoal vaut \numprint[pt]{16383,99999}\footnote{Lire le \TeX book page~133 et plus généralement le chapitre 15 en entier.}, soit \idx\maxdimen. Par conséquent, notre futur algorithme devra tenir compte de cette spécificité au début des pages. Afin que \idx\pagegoal prenne une valeur reflétant la hauteur de la page, il faudra donc, avant de mesurer quoi que ce soit, faire en sorte que la nouvelle page ne soit pas vide . Insérer le matériel vertical «\idx\hbox\verb-{}-\idx\nointerlineskip» teindra lieu de remplissage de haut de page, tout en ne prenant aucune place verticalement. Ainsi, après cette opération, \idx\pagegoal sera égal à la hauteur de la zone de texte en haut d'une page. Nous sommes maintenant assurés que, quelles que soient les circonstances, la différence entre \idx\pagegoal et \idx\pagetotal sera la hauteur de l'espace vertical disponible restant dans la page en cours. +La dimension \idx\pagetotal n'est pas actualisée en permanence, mais seulement après chaque paragraphe composé. Par ailleurs, au tout début de la construction d'une page, lorsqu'elle est vide, \idx\pagetotal vaut \numprint[pt]0 alors que \idx\pagegoal vaut \numprint[pt]{16383,99999}\footnote{Lire le \TeX book page~133 et plus généralement le chapitre 15 en entier.}, soit \idx\maxdimen. Par conséquent, notre futur algorithme devra tenir compte de cette spécificité au début des pages. Afin que \idx\pagegoal prenne une valeur reflétant la hauteur de la page, il faudra donc, avant de mesurer quoi que ce soit, faire en sorte que la nouvelle page ne soit pas vide . Insérer le matériel vertical «\idx\hbox\verb-{}-\idx\nointerlineskip» tiendra lieu de remplissage de haut de page, tout en ne prenant aucune place verticalement. Ainsi, après cette opération, \idx\pagegoal sera égal à la hauteur de la zone de texte en haut d'une page. Nous sommes maintenant assurés que, quelles que soient les circonstances, la différence entre \idx\pagegoal et \idx\pagetotal sera la hauteur de l'espace vertical disponible restant dans la page en cours. Ces deux primitives étaient ce qui nous manquait pour construire l'algorithme permettent de couper $n$ fois une boite verticale pour la loger sur $n+1$ pages. @@ -17450,7 +17450,7 @@ Peut-on effectuer les coupures, mais ne pas ins Nom de la fonte = \fontname\font\par¤\idx*\fontname\idx*\font¤ \printallchars/ -Par chance, il semblerait que dans la \idx{fonte} à chasse fixe utilisée dans ce livre (qui est « \texttt{LinLibertineMTC} »), le caractère \no23 de cette \idx{fonte} n'ait aucune dimension horizontale. Vérifions-le : +Par chance, il semblerait que dans la \idx{fonte} à chasse fixe utilisée dans ce livre (qui est « \texttt{GoMono} »), le caractère \no23 de cette \idx{fonte} n'ait aucune dimension horizontale. Vérifions-le : \showcode/\setbox0=\hbox{\tt\char23}¤\idx*\setbox\idx*\hbox\idx*\tt\idx*\char¤ Largeur = \the\wd0 \qquad Hauteur = \the\ht0 \qquad Profondeur = \the\dp0 ¤\idx*\the\idx*\wd\idx*\ht\idx*\dp¤/ diff --git a/macros/latex/contrib/curve2e/README.txt b/macros/latex/contrib/curve2e/README.txt index 5a65cdd630..94b76a5f68 100644 --- a/macros/latex/contrib/curve2e/README.txt +++ b/macros/latex/contrib/curve2e/README.txt @@ -5,7 +5,7 @@ %% License information appended %% File README.txt for package curve2e - [2020-12-12 v.2.2.12 Extension package for pict2e] + [2020-12-20 v.2.2.13 Extension package for pict2e] The package bundle curve2e is composed of the following files curve2e.dtx diff --git a/macros/latex/contrib/curve2e/curve2e-manual.pdf b/macros/latex/contrib/curve2e/curve2e-manual.pdf index 5e9bfb45d9..11e45b42be 100644 Binary files a/macros/latex/contrib/curve2e/curve2e-manual.pdf and b/macros/latex/contrib/curve2e/curve2e-manual.pdf differ diff --git a/macros/latex/contrib/curve2e/curve2e.dtx b/macros/latex/contrib/curve2e/curve2e.dtx index 8fc95e6fc3..e9de1ccc69 100644 --- a/macros/latex/contrib/curve2e/curve2e.dtx +++ b/macros/latex/contrib/curve2e/curve2e.dtx @@ -46,7 +46,7 @@ README.txt and curve2e-v161.sty. %<+package>\ProvidesPackage{curve2e}% %<+readme>File README.txt for package curve2e %<*package|readme> - [2020-12-12 v.2.2.12 Extension package for pict2e] + [2020-12-20 v.2.2.13 Extension package for pict2e] % %<*driver> \documentclass{ltxdoc}\errorcontextlines=9 @@ -1373,19 +1373,19 @@ README.txt and curve2e-v161.sty. % \section{Labelling the graphical elements} %^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % While drawing any thing with the \pack{curve2e} package, it might be -% necessary to identify some graphical objects with some sort of “labelâ€. +% necessary to identify some graphical objects with some sort of “labelâ€.^^A %\footnote{Do not confuse this identifier label with the \cs{label} % command.} % % Some commands such as \cs{legenda} (legend), \cs{Zbox}, and \cs{Pbox} -% have been always usede in the documentation of this package and its +% have been always used in the documentation of this package and its % siblings; but we used them in many other documents; therefore we thought % it was useful to have them available with the general user of % \pack{curve2e}. % %Their commands follow the following syntax. -%|\Pbox|\parg{coordinates}\oarg{position}\marg{text}\oarg{dot diameter}\meta{\texttt{*}}\aarg{angle} %\begin{flushleft}\ttfamily\obeylines +%|\Pbox|\parg{coordinates}\oarg{position}\marg{text}\oarg{dot diameter}\meta{\texttt{*}}\aarg{angle} %|\Zbox|\parg{coordinates}\oarg{position}\marg{formula}\oarg{dot diameter} %|\legenda|\parg{coordinates}\marg{formula} %\end{flushleft} @@ -1417,7 +1417,8 @@ README.txt and curve2e-v161.sty. % mandatory argument may contain almost anything. %% %\item[\meta{dot diameter}] the dot diameter default value is positive; -% for |\Zbox| it is |1\unitlength| and the user should be careful in +% for |\Zbox| this parameter equals |1\unitlength|, while for |\Pbox| +% it equals \texttt{0.5ex}; the user should be careful in % modifying this value; but if the dot diameter is set to zero, the % dot is absent and the |\Zbox| command behaves almost as an unframed % legend. The small difference is that |\Zbox| accepts a \meta{position} @@ -1425,24 +1426,24 @@ README.txt and curve2e-v161.sty. %% %\item[\meta{\texttt{*}}] is an optional star; if specified the % “label†is framed with a visible border, otherwise it is framed -% with an invisible border but with a blank separator that tries to -% adjust the border so that the “label†is always at the same distance +% with an invisible one but with a blank gap that tries to +% adjust its thickness so that the “label†is always at the same distance % from the reference point; if this reference point corresponds to -% a box corner it is reduced by approximately a factor equal to +% a box corner it thickness is reduced by approximately a factor equal to % $\sqrt{0.5}$, in oder to take into account the diagonal of the -% blank border angle. +% blank gap angle. %% -%\item[\meta{angle}] is the rotation angle about the reference point -% of the “labelâ€; sometimes such “labels†have to be rotated 90° -% anticlockwise; sometimes they need a positive or negative rotation -% angle (in degrees) in order to match the general direction of the -% “labelled†object, be it an oblique line, an axis, or whatever. +%\item[\meta{angle}] is the rotation angle (in degrees) of the “label†+% about its reference point; sometimes such “labels†have to be +% rotated 90° anticlockwise; sometimes they need a positive or +% negative rotation angle in order to match the general direction of +% the “labelled†object, be it an oblique line, an axis, or whatever. % We found it very useful also to label the cartesian axes, but -% also in other situations; for example to label the $x$ axis the -% |\Pbox| command might have the arrow tip coordinates for the +% also in other situations. For example, in order to label the $x$ axis +% the |\Pbox| command might have the arrow tip coordinates for the % reference point and have \texttt{tr} for the \meta{position}; % for the $y$ axis, the reference point is again the arrow tip, -% and again the position would be again \texttt{tr} if the “label†+% and the position would be again \texttt{tr} if the “label†% sits on the left of the axis. %\end{description} % @@ -1476,12 +1477,8 @@ README.txt and curve2e-v161.sty. % With the above labelling facilities and with use of the \pack{xfp} % functionalities it is not difficult to create diagrams with linear -% or logarithmic axes. In effects the \pack{graphpaper} class contains -% those various and other labelling macros and uses them. We plan to -% extract some general macros from that class and to create a stand -% alone package, so as to use them whenever the user wants to draw -% some diagrams. - +% or logarithmic axes. In effects the \pack{graphpaper} class uses +% these labelling macros and several other ones. %^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % \section{Math operations on fractional operands} %^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -1531,8 +1528,8 @@ README.txt and curve2e-v161.sty. % of the usual \texttt{>}, \texttt{=}, and \texttt{<} operators that may % be negated with the “not’ operator \texttt{!}; furthermore the logical % results of these comparisons may be acted upon with the “and†operator -% \texttt{\&\&} and the “or†operator \texttt{||}. The \meta{true -% code}, and \meta{code} are executed if or while the +% \texttt{\&\&} and the “or†operator \texttt{\string|\string|}. +% The \meta{true code}, and \meta{code} are executed if or while the % \meta{logical expression} is true, while the \meta{false code} is % executed if the \meta{logical expression} is false % @@ -1671,7 +1668,7 @@ README.txt and curve2e-v161.sty. % \end{macrocode} % % -% Sometimes tie argument of a complex number is necessary; therefore with +% Sometimes the argument of a complex number is necessary; therefore with % macro \verb|\ArgOfVect| we calculate the four quadrant arctangent (in % degrees) of the given vector taking into account the sings of the % vector components. We use the |xfp| |atand| with two arguments, so diff --git a/macros/latex/contrib/curve2e/curve2e.pdf b/macros/latex/contrib/curve2e/curve2e.pdf index 94f8117ecd..6b89208d52 100644 Binary files a/macros/latex/contrib/curve2e/curve2e.pdf and b/macros/latex/contrib/curve2e/curve2e.pdf differ diff --git a/macros/latex/contrib/easyfloats/DEPENDS.txt b/macros/latex/contrib/easyfloats/DEPENDS.txt new file mode 100644 index 0000000000..2f8165695e --- /dev/null +++ b/macros/latex/contrib/easyfloats/DEPENDS.txt @@ -0,0 +1,14 @@ +# packages loaded by default +float +caption +subcaption +graphicx # can be disabled using package option nographic +pgfkeys +etoolbox +environ +array # can be disabled using package option noarray +booktabs # can be disabled using package option nobooktabs + +# packages loaded if the corresponding package option is given +soft longtable +soft graphbox diff --git a/macros/latex/contrib/easyfloats/README.md b/macros/latex/contrib/easyfloats/README.md new file mode 100644 index 0000000000..58cca59837 --- /dev/null +++ b/macros/latex/contrib/easyfloats/README.md @@ -0,0 +1,49 @@ +# Abstract + +In standard LaTeX inserting objects like figures or tables requires too much knowledge for beginners and too much typing effort and hardcoding for people like me. +This package aims to make insertion of figures and tables easier for both beginners and experts. +Despite the term *floats* in it's name it also allows to disable floating of such objects. + + +# Documentation + +The documentation is contained in the file [doc/easyfloats.pdf](doc/easyfloats.pdf). + +The source code for the documentation is *not* contained in the dtx file but in the directory [doc](doc). +To build the documentation run: +```sh +cd doc +pdflatex easyfloats.tex +biber easyfloats +pdflatex easyfloats.tex +pdflatex easyfloats.tex +``` + + +# Dependencies + +The dependencies are listed in [DEPENDS.txt](DEPENDS.txt). +It's syntax is explained on http://tug.org/texlive/pkgcontrib.html#deps. +See also section *Used packages* in the [documentation](doc/easyfloats.pdf). + + +# License + +This package and it's documentation are distributed under the [LaTeX Project Public License](https://www.latex-project.org/lppl/), version 1.3 or later. +The preamble of the documentation may alternatively, at your choice, be reused under the terms of the [WTFPL](http://www.wtfpl.net/), version 2 or later. + +Additionally to the rights granted by the LaTeX Project Public License +you have permission to freely distribute *unmodified* copies +of the files [easyfloats.sty](easyfloats.sty) and [doc/easyfloats.pdf](doc/easyfloats.pdf) without other files of this work. +The other files of this work can be found at: +https://gitlab.com/erzo/latex-easyfloats + +The examples and tests are distributed under the [WTFPL](http://www.wtfpl.net/), version 2 or later. + + +# Contact + +Bug reports and feature requests can be submitted at +https://gitlab.com/erzo/latex-easyfloats/-/issues. + +Please see also section *Bug reports and contributions* in the [documentation](doc/easyfloats.pdf). diff --git a/macros/latex/contrib/easyfloats/doc/content/bug-reports-and-contributions.tex b/macros/latex/contrib/easyfloats/doc/content/bug-reports-and-contributions.tex new file mode 100644 index 0000000000..ccfb7dce9a --- /dev/null +++ b/macros/latex/contrib/easyfloats/doc/content/bug-reports-and-contributions.tex @@ -0,0 +1,41 @@ +% !TeX root = ../easyfloats.tex + +\section{Bug reports and contributions} +\label{bug-reports-and-contributions} + +If you find a bug please open an issue for it +on \url{https://gitlab.com/erzo/latex-easyfloats/-/issues} +including a minimal example where the bug occurs, +an explanation of what you expected to happen +and the version of \LaTeX\ and the packages you are using (which are included in the log file). +Issues which are not reproducible will be closed. + +If you have a feature request please open an issue for it +on \url{https://gitlab.com/erzo/latex-easyfloats/-/issues} +including a minimal example which you would like to work, +an explanation of what it should do +and a use case explaining why this would be useful. + +Before opening an issue please check that there is not yet an issue for it already. + +If you want to resolve an issue yourself please create a merge request. +Make the changes in \filename{easyfloats.dtx}. +You can generate the sty file with \verb|tex easyfloats.ins| +but you do not need to do that manually because \filename{test/autotest.py} does that automatically for you. +Before creating a merge request please make sure that the automated tests still pass. +Run the python3 script \filename{test/autotest.py} from the project root or test directory without arguments. +While running the tests it shows a progress bar in square brackets. +A dot stands for a successful test, an F for a failed test and an E for an error in the test script. +Merge requests where a test prints F will most likely be rejected. +If you get an E please create a bug report issue. + +Please use *tabs* for indentation. + +A merge request should include: +\begin{itemize} +\item The changes to \filename{easyfloats.dtx} +\item The automatically generated \filename{easyfloats.sty} +\item Additions to the documentation +\item Automated tests in the \filename{test} directory to make sure the new feature or bug fix does not break in the future +\item A link in the merge request description to the issue which it is supposed to close +\end{itemize} diff --git a/macros/latex/contrib/easyfloats/doc/content/documentation.tex b/macros/latex/contrib/easyfloats/doc/content/documentation.tex new file mode 100644 index 0000000000..6dd1d9b62d --- /dev/null +++ b/macros/latex/contrib/easyfloats/doc/content/documentation.tex @@ -0,0 +1,1082 @@ +% !TeX root = ../easyfloats.tex + +\section{Documentation} +\label{documentation} + +This section contains the documentation on how to use this package. + +\Cref{options} gives general information on options which environments and commands defined by this package may take. +The options themselves are explained in \cref{environments,commands} where the environments and commands defined by this package are explained. + +\Cref{initialization} describes what is happening when loading this package. +\Cref{package-options} describes the options which can be passed to `\usepackage` when loading this package. + +\Cref{help} explains a few features which may help you to get a better understanding about what is going on. +This might be useful if you run into unexpected errors or this package behaves different than you expected. + + +\subsection{Options} +\label{options} + +The environments and commands defined by this package take options (implemented with the \pkg{pgfkeys} package). +Options are a comma separated list of ``s or `=` pairs. + +Which keys are allowed for which environment\slash command and which values are allowed for which key is specified in \cref{environments,commands} where the environments and commands are documented. +This section gives general information about these options. + +This section does *not* apply to the package options which are explained in \cref{package-options}. + + +\subsubsection{Initial vs default values} +\label{initial-vs-default-values} + +I am using the words *initial value* and *default value* like they are used in the \mycite{tikz}. + +The *initial* value of an option is the value which is used if the key is *not* given. + +The *default* value of an option is the value which is used if the key is given without a value. +Most keys don't have a default value, i.e.\ if you use the key you must explicitly give it a value. + +\subsubsection{Options scope} +\label{options-scope} + +Setting an option always applies until the end of the current group. +For the argument of an environment this is the corresponding `\end` command. +For the argument of the \cmd{\includegraphicobject} command this is the end of this command. +For the argument of \cmd{\objectset} this may be the end of the document. + +If you are not familiar with the concept of groups in \TeX\ \mycite[chapter~10]{texbytopic} is one possible place to read up on it. + +\subsubsection{Special characters in options} +\label{special-characters-in-options} + +If a value contains a comma or an equals sign it must be wrapped in curly braces. + +Spaces before and after a comma (separating an option) and before or after an equals sign (separating key and value) are ignored. +However, a space after the opening brace is *not* ignored. +So if you put the first key on the next line make sure to comment out the linebreak. +If a leading or trailing space in a value is desired wrap the value in curly braces. + +`\par` (aka an empty line) is forbidden in keys but allowed in values. + +\subsubsection{Key patterns} +\label{key-patterns} + +Sometimes I am talking about entire groups of keys instead of individual keys. +I specify those groups with a pattern which matches the keys that I am referring to. +In these patterns parenthesis stand for something optional and angular brackets for wildcards. + +For example the pattern `() arg(s)` matches the keys `tabular* arg` and `args` (and many more) +but not `env arg` because `env` is not an existing environment. + +If a key has a version which ends on a `+` to append a value instead of replacing it the space in front of the `+` is optional. + +\subsubsection{Key name vs key path} +\label{key-name-vs-key-path} + +\pkg{pgfkeys} organizes all keys \textcquote[page~954]{tikz}{in a large tree that is reminiscent of the Unix file tree.} +The keys of this package are located in the three paths `/object`, `/subobject` and `/graphicobject`. + +In error messages thrown by the \pkg{pgfkeys} package the full path of a key is shown. + +When setting keys, however, you need not and should not specify the full path. +The commands and environments of this package set the path automatically. +Using full paths does not directly cause an error or a warning but trying to set options for a style or style group with \cmd{\objectset} causes undefined behavior. + +Therefore, error messages thrown directly by this package omit the path and show the name of the key only. + +\subsubsection{Key types} +\label{key-types} + +In \pkg{pgfkeys} there are different types of keys. +Which type a key belongs to is relevant for debugging if you want to check the value of a key, see \cref{help}. + +\keytypedoc{storing key} + Keys of this type are like a variable. + They store the given value. + This value can be showed using the `.show value` handler (see \cref{help}). + +\keytypedoc{executed key} + Keys of this type are like a function. + They execute some predefined code and possibly take a value as argument. + +\keytypedoc{boolean key} + is a special case of an executed key which sets a plain \TeX\ if command. + This if command and it's meaning can be showed with the `.show boolean` handler (which is *not* contained in \pkg{pgfkeys}, I have defined it in this package). + + The allowed values for a key of this type are `true` and `false`. + The default value (i.e.\ the value which is assumed if the key is given without a value) is `true`. + +\keytypedoc{forwarding key} + is a special case of an executed key which calls another key. + +\keytypedoc{handler} + Keys defined in the path `/handlers`. + They can be applied to other keys by appending them to the path. + For users of this package they can be helpful for debugging. + For example `\objectset{env/.show value}` shows the value of the key `env`. + + The \pkg{pgfkeys} package also defines handlers which expand the value. + I haven't come up with an example where this might be useful in the context of this package but e.g.\ `tabular arg/.expand once=\colspec,` works as expected. + +\keytypedoc{unknown key handler} + is a special key which is called if a given key does not exist and it's name is not a handler. + I am using this to implement key patterns. +\endkeytypedoc + +\subsubsection{Styles} +\label{styles} +\DescribeMeta{style} +\DescribeMeta{styles} + +This package defines two styles, one for figures and one for tables. + +You can think of these styles as an extension of the \pkg{float} package's float styles. + +These styles are somewhat inspired by the \pkg{pgfkeys} styles but are different. +They are neither set nor applied in the same way. + +A style is a list of options which is not set immediately but locally for each object belonging to that style. + +The options of a style can be set by passing the name of the style as an optional argument to the \cmd{\objectset} command, +e.g.\ `\objectset[figure]{}` or `\objectset[table]{}`. + +A style is applied by using the corresponding environment (e.g.\ \env{figureobject} or \env{tableobject}) +or `\graphicobjectstyle{