From 5cf5182b44c08dfb2bc977ce5aa5ca6d03b36923 Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Thu, 21 Jul 2022 03:00:45 +0000 Subject: CTAN sync 202207210300 --- CTAN.sites | 7 +- FILES.byname | 950 +-- FILES.byname.gz | Bin 2443962 -> 2444360 bytes FILES.last07days | 635 +- fonts/feyn/README | 8 +- fonts/feyn/VERSION | 2 +- fonts/feyn/exercise-font.pdf | Bin 161614 -> 161626 bytes fonts/feyn/feyn.dtx | 34 +- fonts/feyn/feyn.html | 27 +- fonts/feyn/feyn.mf | 4 +- fonts/feyn/feyn.pdf | Bin 325984 -> 326102 bytes fonts/feyn/feyn10.mf | 4 +- fonts/feyn/feyn11.mf | 4 +- fonts/feyn/feyn12.mf | 4 +- fonts/feyn/feyn18.mf | 4 +- fonts/feyn/feyn24.mf | 4 +- fonts/feyn/feynmac.mf | 2 +- fonts/feyn/feyntext10.mf | 4 +- fonts/feyn/feyntext11.mf | 4 +- fonts/feyn/feyntext12.mf | 4 +- fonts/feyn/feyntext18.mf | 4 +- fonts/feyn/feyntext24.mf | 4 +- fonts/feyn/feynx10.mf | 4 +- fonts/feyn/feynx11.mf | 4 +- fonts/feyn/feynx12.mf | 4 +- fonts/feyn/feynx18.mf | 4 +- fonts/feyn/feynx24.mf | 4 +- fonts/feyn/overheads.pdf | Bin 55977 -> 67965 bytes fonts/feyn/overheads.tex | 9 +- fonts/feyn/release-notes.html | 5 + fonts/greek/gfs/gfsneohellenic/VERSION | 1 + fonts/greek/gfs/gfsneohellenic/doc/VERSION | 1 - .../gfs/gfsneohellenic/opentype/GFSNeohellenic.otf | Bin 122504 -> 122288 bytes graphics/pgf/contrib/bodeplot/README.md | 12 +- graphics/pgf/contrib/bodeplot/bodeplot.dtx | 384 +- graphics/pgf/contrib/bodeplot/bodeplot.pdf | Bin 992859 -> 1007326 bytes graphics/pgf/contrib/tikzfill/CHANGES.md | 23 + graphics/pgf/contrib/tikzfill/README.md | 56 + graphics/pgf/contrib/tikzfill/tikzfill-common.sty | 56 + graphics/pgf/contrib/tikzfill/tikzfill-doc.sty | 130 + graphics/pgf/contrib/tikzfill/tikzfill.hexagon.sty | 24 + graphics/pgf/contrib/tikzfill/tikzfill.image.sty | 24 + graphics/pgf/contrib/tikzfill/tikzfill.pdf | Bin 0 -> 721265 bytes graphics/pgf/contrib/tikzfill/tikzfill.rhombus.sty | 24 + graphics/pgf/contrib/tikzfill/tikzfill.sty | 24 + graphics/pgf/contrib/tikzfill/tikzfill.tex | 1385 +++++ .../tikzfill/tikzlibraryfill.hexagon.code.tex | 315 + .../tikzfill/tikzlibraryfill.image.code.tex | 400 ++ .../tikzfill/tikzlibraryfill.rhombus.code.tex | 159 + language/japanese/README.CJK | 5 - language/japanese/jtex/00NEWS | 148 - language/japanese/jtex/00README | 28 - language/japanese/jtex/README | 26 - macros/generic/fixjfm/README | 16 - macros/generic/fixjfm/fixjfm-doc.pdf | Bin 281286 -> 0 bytes macros/generic/fixjfm/fixjfm-doc.tex | 356 -- macros/generic/fixjfm/fixjfm.sty | 278 - macros/jptex/generic/fixjfm/README | 16 + macros/jptex/generic/fixjfm/fixjfm-doc.pdf | Bin 0 -> 281286 bytes macros/jptex/generic/fixjfm/fixjfm-doc.tex | 356 ++ macros/jptex/generic/fixjfm/fixjfm.sty | 278 + macros/jptex/latex/gentombow/LICENSE | 27 + macros/jptex/latex/gentombow/README.md | 71 + macros/jptex/latex/gentombow/bounddvi-en.pdf | Bin 0 -> 49397 bytes macros/jptex/latex/gentombow/bounddvi-en.tex | 136 + macros/jptex/latex/gentombow/bounddvi.pdf | Bin 0 -> 102475 bytes macros/jptex/latex/gentombow/bounddvi.sty | 112 + macros/jptex/latex/gentombow/bounddvi.tex | 149 + macros/jptex/latex/gentombow/gentombow-ja.pdf | Bin 0 -> 174085 bytes macros/jptex/latex/gentombow/gentombow-ja.tex | 459 ++ macros/jptex/latex/gentombow/gentombow.pdf | Bin 0 -> 150209 bytes macros/jptex/latex/gentombow/gentombow.sty | 747 +++ macros/jptex/latex/gentombow/gentombow.tex | 307 + macros/jptex/latex/gentombow/pxesopic.sty | 239 + macros/jptex/latex/gentombow/pxgentombow.pdf | Bin 0 -> 23109 bytes macros/jptex/latex/gentombow/pxgentombow.sty | 16 + macros/jptex/latex/gentombow/pxgentombow.tex | 25 + macros/jptex/latex/gentombow/pxpdfpages.sty | 72 + macros/jptex/latex/gentombow/pxtextpos.sty | 108 + macros/jptex/latex/jsclasses/LICENSE | 25 + macros/jptex/latex/jsclasses/Makefile | 89 + macros/jptex/latex/jsclasses/README.md | 43 + macros/jptex/latex/jsclasses/jsclasses.dtx | 6106 ++++++++++++++++++++ macros/jptex/latex/jsclasses/jsclasses.ins | 18 + macros/jptex/latex/jsclasses/jsclasses.pdf | Bin 0 -> 412473 bytes macros/jptex/latex/jsclasses/jslogo.dtx | 424 ++ macros/jptex/latex/jsclasses/jslogo.ins | 13 + macros/jptex/latex/jsclasses/jslogo.pdf | Bin 0 -> 76779 bytes macros/jptex/latex/jsclasses/jsverb.dtx | 333 ++ macros/jptex/latex/jsclasses/jsverb.ins | 13 + macros/jptex/latex/jsclasses/jsverb.pdf | Bin 0 -> 75649 bytes macros/jptex/latex/jsclasses/okumacro.dtx | 1190 ++++ macros/jptex/latex/jsclasses/okumacro.ins | 13 + macros/jptex/latex/jsclasses/okumacro.pdf | Bin 0 -> 175557 bytes macros/jptex/latex/jsclasses/okuverb.dtx | 254 + macros/jptex/latex/jsclasses/okuverb.ins | 13 + macros/jptex/latex/jsclasses/okuverb.pdf | Bin 0 -> 59902 bytes macros/jptex/latex/pxcjkcat/LICENSE | 21 + macros/jptex/latex/pxcjkcat/README-ja.md | 55 + macros/jptex/latex/pxcjkcat/README.md | 101 + macros/jptex/latex/pxcjkcat/pxcjkcat.pdf | Bin 0 -> 197668 bytes macros/jptex/latex/pxcjkcat/pxcjkcat.sty | 1130 ++++ macros/jptex/latex/pxcjkcat/pxcjkcat.tex | 999 ++++ macros/jptex/latex/pxtatescale/LICENSE | 24 + macros/jptex/latex/pxtatescale/README | 41 + macros/jptex/latex/pxtatescale/pxtatescale.sty | 43 + macros/latex/contrib/gentombow/LICENSE | 27 - macros/latex/contrib/gentombow/README.md | 71 - macros/latex/contrib/gentombow/bounddvi-en.pdf | Bin 49397 -> 0 bytes macros/latex/contrib/gentombow/bounddvi-en.tex | 136 - macros/latex/contrib/gentombow/bounddvi.pdf | Bin 102475 -> 0 bytes macros/latex/contrib/gentombow/bounddvi.sty | 112 - macros/latex/contrib/gentombow/bounddvi.tex | 149 - macros/latex/contrib/gentombow/gentombow-ja.pdf | Bin 174085 -> 0 bytes macros/latex/contrib/gentombow/gentombow-ja.tex | 459 -- macros/latex/contrib/gentombow/gentombow.pdf | Bin 150209 -> 0 bytes macros/latex/contrib/gentombow/gentombow.sty | 747 --- macros/latex/contrib/gentombow/gentombow.tex | 307 - macros/latex/contrib/gentombow/pxesopic.sty | 239 - macros/latex/contrib/gentombow/pxgentombow.pdf | Bin 23109 -> 0 bytes macros/latex/contrib/gentombow/pxgentombow.sty | 16 - macros/latex/contrib/gentombow/pxgentombow.tex | 25 - macros/latex/contrib/gentombow/pxpdfpages.sty | 72 - macros/latex/contrib/gentombow/pxtextpos.sty | 108 - macros/latex/contrib/hvfloat/Changes | 2 + .../contrib/hvfloat/doc/examples/after1s1c.pdf | Bin 80294 -> 79855 bytes .../contrib/hvfloat/doc/examples/after1s1c.tex | 10 +- .../contrib/hvfloat/doc/examples/after2s2c.pdf | Bin 86722 -> 86559 bytes .../contrib/hvfloat/doc/examples/after2s2c.tex | 10 +- .../latex/contrib/hvfloat/doc/examples/capPos.pdf | Bin 95389 -> 98061 bytes .../latex/contrib/hvfloat/doc/examples/capVPos.inc | 32 +- .../contrib/hvfloat/doc/examples/default1s1c.pdf | Bin 81991 -> 81685 bytes .../contrib/hvfloat/doc/examples/default1s1c.tex | 10 +- .../contrib/hvfloat/doc/examples/default1s2c.pdf | Bin 83275 -> 83180 bytes .../contrib/hvfloat/doc/examples/default1s2c.tex | 6 +- .../contrib/hvfloat/doc/examples/default2s1c.pdf | Bin 79445 -> 78954 bytes .../contrib/hvfloat/doc/examples/default2s1c.tex | 10 +- .../contrib/hvfloat/doc/examples/default2s2c.pdf | Bin 85824 -> 85642 bytes .../contrib/hvfloat/doc/examples/default2s2c.tex | 10 +- .../hvfloat/doc/examples/doublefullpage2s2c.pdf | Bin 0 -> 1759143 bytes .../hvfloat/doc/examples/doublefullpage2s2c.tex | 802 +++ .../hvfloat/doc/examples/doublepage2s1c.pdf | Bin 2314853 -> 2317480 bytes .../hvfloat/doc/examples/doublepage2s1c.tex | 7 +- .../hvfloat/doc/examples/doublepage2s2c.pdf | Bin 619030 -> 616570 bytes .../contrib/hvfloat/doc/examples/even1s1c.pdf | Bin 77658 -> 77202 bytes .../contrib/hvfloat/doc/examples/even1s1c.tex | 10 +- .../contrib/hvfloat/doc/examples/even1s2c.pdf | Bin 86404 -> 86195 bytes .../contrib/hvfloat/doc/examples/even1s2c.tex | 10 +- .../contrib/hvfloat/doc/examples/even2s1c.pdf | Bin 84813 -> 84135 bytes .../contrib/hvfloat/doc/examples/even2s1c.tex | 10 +- .../contrib/hvfloat/doc/examples/even2s2c.pdf | Bin 85098 -> 84895 bytes .../contrib/hvfloat/doc/examples/even2s2c.tex | 10 +- .../contrib/hvfloat/doc/examples/fullpage1s1c.pdf | Bin 0 -> 86549 bytes .../contrib/hvfloat/doc/examples/fullpage1s1c.tex | 64 + .../contrib/hvfloat/doc/examples/fullpage1s2c.pdf | Bin 86773 -> 87033 bytes .../contrib/hvfloat/doc/examples/inner1s2c.pdf | Bin 84020 -> 83734 bytes .../contrib/hvfloat/doc/examples/inner1s2c.tex | 10 +- .../contrib/hvfloat/doc/examples/inner2s1c.pdf | Bin 83977 -> 83699 bytes .../contrib/hvfloat/doc/examples/inner2s1c.tex | 10 +- .../contrib/hvfloat/doc/examples/inner2s2c.pdf | Bin 84013 -> 83924 bytes .../contrib/hvfloat/doc/examples/inner2s2c.tex | 10 +- .../contrib/hvfloat/doc/examples/left2s2c.pdf | Bin 85512 -> 85326 bytes .../contrib/hvfloat/doc/examples/left2s2c.tex | 10 +- .../hvfloat/doc/examples/multi-after1s1c.pdf | Bin 142624 -> 142146 bytes .../hvfloat/doc/examples/multi-after1s1c.tex | 10 +- .../hvfloat/doc/examples/multi-default1s1c.pdf | Bin 146172 -> 145886 bytes .../hvfloat/doc/examples/multi-default1s1c.tex | 10 +- .../hvfloat/doc/examples/multi-default1s2c.pdf | Bin 94586 -> 102871 bytes .../hvfloat/doc/examples/multi-default1s2c.tex | 10 +- .../hvfloat/doc/examples/multi-default2s1c.pdf | Bin 146343 -> 146064 bytes .../hvfloat/doc/examples/multi-default2s1c.tex | 10 +- .../hvfloat/doc/examples/multi-default2s2c.pdf | Bin 92182 -> 100507 bytes .../hvfloat/doc/examples/multi-default2s2c.tex | 10 +- .../hvfloat/doc/examples/multi-inner2s2c.pdf | Bin 89784 -> 98070 bytes .../hvfloat/doc/examples/multi-inner2s2c.tex | 10 +- .../hvfloat/doc/examples/multi-outer2s2c.pdf | Bin 92984 -> 101319 bytes .../hvfloat/doc/examples/multi-outer2s2c.tex | 10 +- .../hvfloat/doc/examples/multi-right1s1c.pdf | Bin 145736 -> 145453 bytes .../hvfloat/doc/examples/multi-right1s1c.tex | 10 +- .../latex/contrib/hvfloat/doc/examples/odd1s1c.pdf | Bin 77805 -> 77375 bytes .../latex/contrib/hvfloat/doc/examples/odd1s1c.tex | 10 +- .../latex/contrib/hvfloat/doc/examples/odd1s2c.pdf | Bin 86523 -> 86322 bytes .../latex/contrib/hvfloat/doc/examples/odd1s2c.tex | 10 +- .../latex/contrib/hvfloat/doc/examples/odd2s1c.pdf | Bin 174218 -> 173604 bytes .../latex/contrib/hvfloat/doc/examples/odd2s1c.tex | 10 +- .../latex/contrib/hvfloat/doc/examples/odd2s2c.pdf | Bin 85566 -> 85385 bytes .../latex/contrib/hvfloat/doc/examples/odd2s2c.tex | 10 +- .../contrib/hvfloat/doc/examples/outer1s2c.pdf | Bin 86318 -> 86224 bytes .../contrib/hvfloat/doc/examples/outer1s2c.tex | 10 +- .../contrib/hvfloat/doc/examples/outer2s1c.pdf | Bin 84292 -> 84006 bytes .../contrib/hvfloat/doc/examples/outer2s1c.tex | 10 +- .../contrib/hvfloat/doc/examples/outer2s2c.pdf | Bin 84680 -> 84587 bytes .../contrib/hvfloat/doc/examples/outer2s2c.tex | 10 +- .../hvfloat/doc/examples/paper-after1s1c.pdf | Bin 79267 -> 78903 bytes .../hvfloat/doc/examples/paper-after1s1c.tex | 10 +- .../hvfloat/doc/examples/paper-after2s2c.pdf | Bin 0 -> 89620 bytes .../hvfloat/doc/examples/paper-after2s2c.tex | 81 + .../hvfloat/doc/examples/paper-default1s1c.pdf | Bin 79967 -> 81195 bytes .../hvfloat/doc/examples/paper-default1s1c.tex | 13 +- .../hvfloat/doc/examples/paper-default1s2c.pdf | Bin 90508 -> 90436 bytes .../hvfloat/doc/examples/paper-default1s2c.tex | 10 +- .../hvfloat/doc/examples/paper-default2s1c.pdf | Bin 87935 -> 87873 bytes .../hvfloat/doc/examples/paper-default2s1c.tex | 8 +- .../hvfloat/doc/examples/paper-default2s2c.pdf | Bin 90332 -> 90257 bytes .../hvfloat/doc/examples/paper-default2s2c.tex | 10 +- .../hvfloat/doc/examples/paper-even2s1c.pdf | Bin 0 -> 87165 bytes .../hvfloat/doc/examples/paper-even2s1c.tex | 81 + .../hvfloat/doc/examples/paper-inner2s2c.pdf | Bin 87855 -> 87776 bytes .../hvfloat/doc/examples/paper-inner2s2c.tex | 10 +- .../contrib/hvfloat/doc/examples/paper-odd2s1c.pdf | Bin 0 -> 87061 bytes .../contrib/hvfloat/doc/examples/paper-odd2s1c.tex | 81 + .../hvfloat/doc/examples/paper-right1s1c.pdf | Bin 80290 -> 81371 bytes .../hvfloat/doc/examples/paper-right1s1c.tex | 10 +- .../doc/examples/paper-twocolcaption-after2s2c.pdf | Bin 0 -> 1615381 bytes .../doc/examples/paper-twocolcaption-after2s2c.tex | 81 + .../contrib/hvfloat/doc/examples/preamble.ltx | 3 + .../contrib/hvfloat/doc/examples/right1s1c.pdf | Bin 80126 -> 79681 bytes .../contrib/hvfloat/doc/examples/right1s1c.tex | 10 +- .../contrib/hvfloat/doc/examples/right1s2c.pdf | Bin 89340 -> 89151 bytes .../contrib/hvfloat/doc/examples/right1s2c.tex | 10 +- .../contrib/hvfloat/doc/examples/right2s1c.pdf | Bin 81033 -> 78955 bytes .../contrib/hvfloat/doc/examples/right2s1c.tex | 10 +- .../contrib/hvfloat/doc/examples/right2s2c.pdf | Bin 85585 -> 85418 bytes .../contrib/hvfloat/doc/examples/right2s2c.tex | 10 +- .../latex/contrib/hvfloat/doc/examples/runAll.sh | 2 +- .../contrib/hvfloat/doc/examples/sub-after1s1c.pdf | Bin 143952 -> 143688 bytes .../contrib/hvfloat/doc/examples/sub-after1s1c.tex | 10 +- .../contrib/hvfloat/doc/examples/sub-after2s2c.pdf | Bin 144771 -> 144612 bytes .../contrib/hvfloat/doc/examples/sub-after2s2c.tex | 10 +- .../hvfloat/doc/examples/sub-default1s1c.pdf | Bin 144003 -> 143725 bytes .../hvfloat/doc/examples/sub-default1s1c.tex | 10 +- .../hvfloat/doc/examples/sub-default1s2c.pdf | Bin 144217 -> 144030 bytes .../hvfloat/doc/examples/sub-default1s2c.tex | 10 +- .../hvfloat/doc/examples/sub-default2s2c.pdf | Bin 143517 -> 143328 bytes .../hvfloat/doc/examples/sub-default2s2c.tex | 10 +- .../contrib/hvfloat/doc/examples/sub-right1s1c.pdf | Bin 143873 -> 143611 bytes .../contrib/hvfloat/doc/examples/sub-right1s1c.tex | 10 +- .../contrib/hvfloat/doc/examples/sub-right1s2c.pdf | Bin 144879 -> 144711 bytes .../contrib/hvfloat/doc/examples/sub-right1s2c.tex | 10 +- .../contrib/hvfloat/doc/examples/sub-right2s2c.pdf | Bin 144315 -> 144144 bytes .../contrib/hvfloat/doc/examples/sub-right2s2c.tex | 10 +- .../contrib/hvfloat/doc/examples/wide1s2c.pdf | Bin 120949 -> 120832 bytes .../contrib/hvfloat/doc/examples/wide2s2c.pdf | Bin 121917 -> 121819 bytes macros/latex/contrib/hvfloat/doc/hvfloat.pdf | Bin 5039170 -> 5037834 bytes macros/latex/contrib/hvfloat/doc/hvfloat.tex | 8 +- macros/latex/contrib/hvfloat/latex/hvfloat.sty | 59 +- macros/latex/contrib/jsclasses/LICENSE | 25 - macros/latex/contrib/jsclasses/Makefile | 89 - macros/latex/contrib/jsclasses/README.md | 43 - macros/latex/contrib/jsclasses/jsclasses.dtx | 6106 -------------------- macros/latex/contrib/jsclasses/jsclasses.ins | 18 - macros/latex/contrib/jsclasses/jsclasses.pdf | Bin 412473 -> 0 bytes macros/latex/contrib/jsclasses/jslogo.dtx | 424 -- macros/latex/contrib/jsclasses/jslogo.ins | 13 - macros/latex/contrib/jsclasses/jslogo.pdf | Bin 76779 -> 0 bytes macros/latex/contrib/jsclasses/jsverb.dtx | 333 -- macros/latex/contrib/jsclasses/jsverb.ins | 13 - macros/latex/contrib/jsclasses/jsverb.pdf | Bin 75649 -> 0 bytes macros/latex/contrib/jsclasses/okumacro.dtx | 1190 ---- macros/latex/contrib/jsclasses/okumacro.ins | 13 - macros/latex/contrib/jsclasses/okumacro.pdf | Bin 175557 -> 0 bytes macros/latex/contrib/jsclasses/okuverb.dtx | 254 - macros/latex/contrib/jsclasses/okuverb.ins | 13 - macros/latex/contrib/jsclasses/okuverb.pdf | Bin 59902 -> 0 bytes macros/latex/contrib/pxcjkcat/LICENSE | 21 - macros/latex/contrib/pxcjkcat/README-ja.md | 55 - macros/latex/contrib/pxcjkcat/README.md | 101 - macros/latex/contrib/pxcjkcat/pxcjkcat.pdf | Bin 197668 -> 0 bytes macros/latex/contrib/pxcjkcat/pxcjkcat.sty | 1130 ---- macros/latex/contrib/pxcjkcat/pxcjkcat.tex | 999 ---- macros/latex/contrib/pxtatescale/LICENSE | 24 - macros/latex/contrib/pxtatescale/README | 41 - macros/latex/contrib/pxtatescale/pxtatescale.sty | 43 - macros/latex/contrib/wrapstuff/README.md | 50 + macros/latex/contrib/wrapstuff/wrapstuff.dtx | 3011 ++++++++++ macros/latex/contrib/wrapstuff/wrapstuff.pdf | Bin 0 -> 422157 bytes macros/latex/required/babel/base/README.md | 26 +- macros/latex/required/babel/base/babel.dtx | 62 +- macros/latex/required/babel/base/babel.ins | 2 +- macros/latex/required/babel/base/babel.pdf | Bin 885137 -> 883440 bytes macros/latex/required/babel/base/bbcompat.dtx | 2 +- obsolete/language/japanese/jtex/00NEWS | 148 + obsolete/language/japanese/jtex/00README | 28 + obsolete/language/japanese/jtex/README | 26 + .../texlive/tlnet/tlpkg/installer/ctan-mirrors.pl | 1 - systems/texlive/tlnet/tlpkg/texlive.tlpdb | 171 +- 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 2392992 -> 2394032 bytes systems/win32/miktex/tm/packages/next/pr.ini | 8 +- systems/win32/miktex/tm/packages/pr.ini | 8 +- timestamp | 2 +- 293 files changed, 22769 insertions(+), 15674 deletions(-) create mode 100644 fonts/greek/gfs/gfsneohellenic/VERSION delete mode 100644 fonts/greek/gfs/gfsneohellenic/doc/VERSION create mode 100644 graphics/pgf/contrib/tikzfill/CHANGES.md create mode 100644 graphics/pgf/contrib/tikzfill/README.md create mode 100644 graphics/pgf/contrib/tikzfill/tikzfill-common.sty create mode 100644 graphics/pgf/contrib/tikzfill/tikzfill-doc.sty create mode 100644 graphics/pgf/contrib/tikzfill/tikzfill.hexagon.sty create mode 100644 graphics/pgf/contrib/tikzfill/tikzfill.image.sty create mode 100644 graphics/pgf/contrib/tikzfill/tikzfill.pdf create mode 100644 graphics/pgf/contrib/tikzfill/tikzfill.rhombus.sty create mode 100644 graphics/pgf/contrib/tikzfill/tikzfill.sty create mode 100644 graphics/pgf/contrib/tikzfill/tikzfill.tex create mode 100644 graphics/pgf/contrib/tikzfill/tikzlibraryfill.hexagon.code.tex create mode 100644 graphics/pgf/contrib/tikzfill/tikzlibraryfill.image.code.tex create mode 100644 graphics/pgf/contrib/tikzfill/tikzlibraryfill.rhombus.code.tex delete mode 100644 language/japanese/README.CJK delete mode 100644 language/japanese/jtex/00NEWS delete mode 100644 language/japanese/jtex/00README delete mode 100644 language/japanese/jtex/README delete mode 100644 macros/generic/fixjfm/README delete mode 100644 macros/generic/fixjfm/fixjfm-doc.pdf delete mode 100644 macros/generic/fixjfm/fixjfm-doc.tex delete mode 100644 macros/generic/fixjfm/fixjfm.sty create mode 100644 macros/jptex/generic/fixjfm/README create mode 100644 macros/jptex/generic/fixjfm/fixjfm-doc.pdf create mode 100644 macros/jptex/generic/fixjfm/fixjfm-doc.tex create mode 100644 macros/jptex/generic/fixjfm/fixjfm.sty create mode 100644 macros/jptex/latex/gentombow/LICENSE create mode 100644 macros/jptex/latex/gentombow/README.md create mode 100644 macros/jptex/latex/gentombow/bounddvi-en.pdf create mode 100644 macros/jptex/latex/gentombow/bounddvi-en.tex create mode 100644 macros/jptex/latex/gentombow/bounddvi.pdf create mode 100644 macros/jptex/latex/gentombow/bounddvi.sty create mode 100644 macros/jptex/latex/gentombow/bounddvi.tex create mode 100644 macros/jptex/latex/gentombow/gentombow-ja.pdf create mode 100644 macros/jptex/latex/gentombow/gentombow-ja.tex create mode 100644 macros/jptex/latex/gentombow/gentombow.pdf create mode 100644 macros/jptex/latex/gentombow/gentombow.sty create mode 100644 macros/jptex/latex/gentombow/gentombow.tex create mode 100644 macros/jptex/latex/gentombow/pxesopic.sty create mode 100644 macros/jptex/latex/gentombow/pxgentombow.pdf create mode 100644 macros/jptex/latex/gentombow/pxgentombow.sty create mode 100644 macros/jptex/latex/gentombow/pxgentombow.tex create mode 100644 macros/jptex/latex/gentombow/pxpdfpages.sty create mode 100644 macros/jptex/latex/gentombow/pxtextpos.sty create mode 100644 macros/jptex/latex/jsclasses/LICENSE create mode 100644 macros/jptex/latex/jsclasses/Makefile create mode 100644 macros/jptex/latex/jsclasses/README.md create mode 100644 macros/jptex/latex/jsclasses/jsclasses.dtx create mode 100644 macros/jptex/latex/jsclasses/jsclasses.ins create mode 100644 macros/jptex/latex/jsclasses/jsclasses.pdf create mode 100644 macros/jptex/latex/jsclasses/jslogo.dtx create mode 100644 macros/jptex/latex/jsclasses/jslogo.ins create mode 100644 macros/jptex/latex/jsclasses/jslogo.pdf create mode 100644 macros/jptex/latex/jsclasses/jsverb.dtx create mode 100644 macros/jptex/latex/jsclasses/jsverb.ins create mode 100644 macros/jptex/latex/jsclasses/jsverb.pdf create mode 100644 macros/jptex/latex/jsclasses/okumacro.dtx create mode 100644 macros/jptex/latex/jsclasses/okumacro.ins create mode 100644 macros/jptex/latex/jsclasses/okumacro.pdf create mode 100644 macros/jptex/latex/jsclasses/okuverb.dtx create mode 100644 macros/jptex/latex/jsclasses/okuverb.ins create mode 100644 macros/jptex/latex/jsclasses/okuverb.pdf create mode 100644 macros/jptex/latex/pxcjkcat/LICENSE create mode 100644 macros/jptex/latex/pxcjkcat/README-ja.md create mode 100644 macros/jptex/latex/pxcjkcat/README.md create mode 100644 macros/jptex/latex/pxcjkcat/pxcjkcat.pdf create mode 100644 macros/jptex/latex/pxcjkcat/pxcjkcat.sty create mode 100644 macros/jptex/latex/pxcjkcat/pxcjkcat.tex create mode 100644 macros/jptex/latex/pxtatescale/LICENSE create mode 100644 macros/jptex/latex/pxtatescale/README create mode 100644 macros/jptex/latex/pxtatescale/pxtatescale.sty delete mode 100644 macros/latex/contrib/gentombow/LICENSE delete mode 100644 macros/latex/contrib/gentombow/README.md delete mode 100644 macros/latex/contrib/gentombow/bounddvi-en.pdf delete mode 100644 macros/latex/contrib/gentombow/bounddvi-en.tex delete mode 100644 macros/latex/contrib/gentombow/bounddvi.pdf delete mode 100644 macros/latex/contrib/gentombow/bounddvi.sty delete mode 100644 macros/latex/contrib/gentombow/bounddvi.tex delete mode 100644 macros/latex/contrib/gentombow/gentombow-ja.pdf delete mode 100644 macros/latex/contrib/gentombow/gentombow-ja.tex delete mode 100644 macros/latex/contrib/gentombow/gentombow.pdf delete mode 100644 macros/latex/contrib/gentombow/gentombow.sty delete mode 100644 macros/latex/contrib/gentombow/gentombow.tex delete mode 100644 macros/latex/contrib/gentombow/pxesopic.sty delete mode 100644 macros/latex/contrib/gentombow/pxgentombow.pdf delete mode 100644 macros/latex/contrib/gentombow/pxgentombow.sty delete mode 100644 macros/latex/contrib/gentombow/pxgentombow.tex delete mode 100644 macros/latex/contrib/gentombow/pxpdfpages.sty delete mode 100644 macros/latex/contrib/gentombow/pxtextpos.sty create mode 100644 macros/latex/contrib/hvfloat/doc/examples/doublefullpage2s2c.pdf create mode 100644 macros/latex/contrib/hvfloat/doc/examples/doublefullpage2s2c.tex create mode 100644 macros/latex/contrib/hvfloat/doc/examples/fullpage1s1c.pdf create mode 100644 macros/latex/contrib/hvfloat/doc/examples/fullpage1s1c.tex create mode 100644 macros/latex/contrib/hvfloat/doc/examples/paper-after2s2c.pdf create mode 100644 macros/latex/contrib/hvfloat/doc/examples/paper-after2s2c.tex create mode 100644 macros/latex/contrib/hvfloat/doc/examples/paper-even2s1c.pdf create mode 100644 macros/latex/contrib/hvfloat/doc/examples/paper-even2s1c.tex create mode 100644 macros/latex/contrib/hvfloat/doc/examples/paper-odd2s1c.pdf create mode 100644 macros/latex/contrib/hvfloat/doc/examples/paper-odd2s1c.tex create mode 100644 macros/latex/contrib/hvfloat/doc/examples/paper-twocolcaption-after2s2c.pdf create mode 100644 macros/latex/contrib/hvfloat/doc/examples/paper-twocolcaption-after2s2c.tex delete mode 100644 macros/latex/contrib/jsclasses/LICENSE delete mode 100644 macros/latex/contrib/jsclasses/Makefile delete mode 100644 macros/latex/contrib/jsclasses/README.md delete mode 100644 macros/latex/contrib/jsclasses/jsclasses.dtx delete mode 100644 macros/latex/contrib/jsclasses/jsclasses.ins delete mode 100644 macros/latex/contrib/jsclasses/jsclasses.pdf delete mode 100644 macros/latex/contrib/jsclasses/jslogo.dtx delete mode 100644 macros/latex/contrib/jsclasses/jslogo.ins delete mode 100644 macros/latex/contrib/jsclasses/jslogo.pdf delete mode 100644 macros/latex/contrib/jsclasses/jsverb.dtx delete mode 100644 macros/latex/contrib/jsclasses/jsverb.ins delete mode 100644 macros/latex/contrib/jsclasses/jsverb.pdf delete mode 100644 macros/latex/contrib/jsclasses/okumacro.dtx delete mode 100644 macros/latex/contrib/jsclasses/okumacro.ins delete mode 100644 macros/latex/contrib/jsclasses/okumacro.pdf delete mode 100644 macros/latex/contrib/jsclasses/okuverb.dtx delete mode 100644 macros/latex/contrib/jsclasses/okuverb.ins delete mode 100644 macros/latex/contrib/jsclasses/okuverb.pdf delete mode 100644 macros/latex/contrib/pxcjkcat/LICENSE delete mode 100644 macros/latex/contrib/pxcjkcat/README-ja.md delete mode 100644 macros/latex/contrib/pxcjkcat/README.md delete mode 100644 macros/latex/contrib/pxcjkcat/pxcjkcat.pdf delete mode 100644 macros/latex/contrib/pxcjkcat/pxcjkcat.sty delete mode 100644 macros/latex/contrib/pxcjkcat/pxcjkcat.tex delete mode 100644 macros/latex/contrib/pxtatescale/LICENSE delete mode 100644 macros/latex/contrib/pxtatescale/README delete mode 100644 macros/latex/contrib/pxtatescale/pxtatescale.sty create mode 100644 macros/latex/contrib/wrapstuff/README.md create mode 100644 macros/latex/contrib/wrapstuff/wrapstuff.dtx create mode 100644 macros/latex/contrib/wrapstuff/wrapstuff.pdf create mode 100644 obsolete/language/japanese/jtex/00NEWS create mode 100644 obsolete/language/japanese/jtex/00README create mode 100644 obsolete/language/japanese/jtex/README diff --git a/CTAN.sites b/CTAN.sites index 287af66234..c2e3986c22 100644 --- a/CTAN.sites +++ b/CTAN.sites @@ -102,9 +102,10 @@ by country): URL: http://repo.ugm.ac.id/ctan/ - ctan.asis.ai (Iran) - URL: rsync://ctan.asis.ai/ctan/ - URL: https://ctan.asis.ai/ + ctan.asis.sh (Iran) + URL: http://ctan.asis.ai/ + URL: rsync://ctan.asis.sh/CTAN/ + URL: https://ctan.asis.sh/ ctan.um.ac.ir (Iran) URL: https://ctan.um.ac.ir/ diff --git a/FILES.byname b/FILES.byname index 5a57bf8d93..a54ab4f67e 100644 --- a/FILES.byname +++ b/FILES.byname @@ -5260,7 +5260,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 -2022/07/19 | 145431 | FILES.last07days +2022/07/20 | 123676 | FILES.last07days 2021/07/24 | 1139410 | fonts/aboensis/Aboensis.glyphs 2021/07/24 | 18907382 | fonts/aboensis/aboensis.pdf 2021/07/24 | 137860 | fonts/aboensis/Aboensis-Regular.otf @@ -41294,42 +41294,42 @@ 2017/04/07 | 54743 | fonts/fetamont/type1/ffmw10.pfb 2017/04/07 | 51873 | fonts/fetamont/type1/ffmwo10.pfb 2017/04/15 | 5956694 | fonts/fetamont.zip -2022/07/18 | 161614 | fonts/feyn/exercise-font.pdf -2022/07/18 | 5939 | fonts/feyn/exercise-font.tex -2022/07/18 | 1378 | fonts/feyn/feyn10.mf -2022/07/18 | 1382 | fonts/feyn/feyn11.mf -2022/07/18 | 1377 | fonts/feyn/feyn12.mf -2022/07/18 | 1377 | fonts/feyn/feyn18.mf -2022/07/18 | 1378 | fonts/feyn/feyn24.mf -2022/07/18 | 56836 | fonts/feyn/feyn.dtx -2022/07/18 | 6895 | fonts/feyn/feyn.html -2022/07/18 | 231 | fonts/feyn/feyn.ins -2022/07/18 | 4422 | fonts/feyn/feynmac.mf -2022/07/18 | 23442 | fonts/feyn/feyn.mf -2022/07/18 | 325984 | fonts/feyn/feyn.pdf -2022/07/18 | 1373 | fonts/feyn/feyntext10.mf -2022/07/18 | 1379 | fonts/feyn/feyntext11.mf -2022/07/18 | 1374 | fonts/feyn/feyntext12.mf -2022/07/18 | 1373 | fonts/feyn/feyntext18.mf -2022/07/18 | 1374 | fonts/feyn/feyntext24.mf -2022/07/18 | 1410 | fonts/feyn/feynx10.mf -2022/07/18 | 1414 | fonts/feyn/feynx11.mf -2022/07/18 | 1408 | fonts/feyn/feynx12.mf -2022/07/18 | 1409 | fonts/feyn/feynx18.mf -2022/07/18 | 1410 | fonts/feyn/feynx24.mf -2022/07/18 | 1333 | fonts/feyn/LICENCE -2022/07/18 | 55977 | fonts/feyn/overheads.pdf -2022/07/18 | 582 | fonts/feyn/overheads.tex -2022/07/18 | 2422 | fonts/feyn/README -2022/07/18 | 4579 | fonts/feyn/release-notes.html -2022/07/18 | 3920 | fonts/feyn/sample-massive.png -2022/07/18 | 3981 | fonts/feyn/sample-phi4.png -2022/07/18 | 4935 | fonts/feyn/sample-two-loop-annotated.png -2022/07/18 | 3928 | fonts/feyn/sample-two-loop.png -2022/07/18 | 3319 | fonts/feyn/sample-vertex.png -2022/07/18 | 6729 | fonts/feyn/style.css -2022/07/18 | 11 | fonts/feyn/VERSION -2022/07/19 | 594397 | fonts/feyn.zip +2022/07/20 | 161626 | fonts/feyn/exercise-font.pdf +2022/07/20 | 5939 | fonts/feyn/exercise-font.tex +2022/07/20 | 1378 | fonts/feyn/feyn10.mf +2022/07/20 | 1382 | fonts/feyn/feyn11.mf +2022/07/20 | 1377 | fonts/feyn/feyn12.mf +2022/07/20 | 1377 | fonts/feyn/feyn18.mf +2022/07/20 | 1378 | fonts/feyn/feyn24.mf +2022/07/20 | 57404 | fonts/feyn/feyn.dtx +2022/07/20 | 7057 | fonts/feyn/feyn.html +2022/07/20 | 231 | fonts/feyn/feyn.ins +2022/07/20 | 4422 | fonts/feyn/feynmac.mf +2022/07/20 | 23442 | fonts/feyn/feyn.mf +2022/07/20 | 326102 | fonts/feyn/feyn.pdf +2022/07/20 | 1373 | fonts/feyn/feyntext10.mf +2022/07/20 | 1379 | fonts/feyn/feyntext11.mf +2022/07/20 | 1374 | fonts/feyn/feyntext12.mf +2022/07/20 | 1373 | fonts/feyn/feyntext18.mf +2022/07/20 | 1374 | fonts/feyn/feyntext24.mf +2022/07/20 | 1410 | fonts/feyn/feynx10.mf +2022/07/20 | 1414 | fonts/feyn/feynx11.mf +2022/07/20 | 1408 | fonts/feyn/feynx12.mf +2022/07/20 | 1409 | fonts/feyn/feynx18.mf +2022/07/20 | 1410 | fonts/feyn/feynx24.mf +2022/07/20 | 1333 | fonts/feyn/LICENCE +2022/07/20 | 67965 | fonts/feyn/overheads.pdf +2022/07/20 | 675 | fonts/feyn/overheads.tex +2022/07/20 | 2399 | fonts/feyn/README +2022/07/20 | 4857 | fonts/feyn/release-notes.html +2022/07/20 | 3920 | fonts/feyn/sample-massive.png +2022/07/20 | 3981 | fonts/feyn/sample-phi4.png +2022/07/20 | 4935 | fonts/feyn/sample-two-loop-annotated.png +2022/07/20 | 3928 | fonts/feyn/sample-two-loop.png +2022/07/20 | 3319 | fonts/feyn/sample-vertex.png +2022/07/20 | 6729 | fonts/feyn/style.css +2022/07/20 | 11 | fonts/feyn/VERSION +2022/07/20 | 606752 | fonts/feyn.zip 2015/05/20 | 2997 | fonts/fge/fgebase.mf 2015/05/20 | 12 | fonts/fge/fge.cfg 2015/05/20 | 136906 | fonts/fge/fge-doc.pdf @@ -50888,7 +50888,6 @@ 2013/05/23 | 391171 | fonts/greek/gfs/gfsneohellenic/doc/NeohellenicSpecimen.pdf 2013/05/23 | 23824 | fonts/greek/gfs/gfsneohellenic/doc/OFL-FAQ.txt 2013/05/23 | 4441 | fonts/greek/gfs/gfsneohellenic/doc/OFL.txt -2013/05/23 | 52 | fonts/greek/gfs/gfsneohellenic/doc/VERSION 2013/10/23 | 3042 | fonts/greek/gfs/gfsneohellenic/enc/neohellenicdenomnums.enc 2013/10/23 | 3355 | fonts/greek/gfs/gfsneohellenic/enc/neohellenicec.enc 2013/10/23 | 3461 | fonts/greek/gfs/gfsneohellenic/enc/neohellenicecsc.enc @@ -50903,7 +50902,7 @@ 2007/04/15 | 103688 | fonts/greek/gfs/gfsneohellenic/opentype/GFSNeohellenicBoldIt.otf 2007/04/15 | 91984 | fonts/greek/gfs/gfsneohellenic/opentype/GFSNeohellenicBold.otf 2007/04/15 | 102424 | fonts/greek/gfs/gfsneohellenic/opentype/GFSNeohellenicIt.otf -2007/04/15 | 122504 | fonts/greek/gfs/gfsneohellenic/opentype/GFSNeohellenic.otf +2009/09/18 | 122288 | fonts/greek/gfs/gfsneohellenic/opentype/GFSNeohellenic.otf 2013/05/23 | 209 | fonts/greek/gfs/gfsneohellenic/README 2013/05/23 | 12140 | fonts/greek/gfs/gfsneohellenic/tex/gfsneohellenic.sty 2013/05/23 | 1251 | fonts/greek/gfs/gfsneohellenic/tex/lgrneohellenic.fd @@ -50971,6 +50970,7 @@ 2013/05/23 | 166767 | fonts/greek/gfs/gfsneohellenic/type1/GFSNeohellenic-Bold.pfb 2013/05/23 | 171954 | fonts/greek/gfs/gfsneohellenic/type1/GFSNeohellenic-Italic.pfb 2013/05/23 | 198724 | fonts/greek/gfs/gfsneohellenic/type1/GFSNeohellenic-Regular.pfb +2022/07/20 | 53 | fonts/greek/gfs/gfsneohellenic/VERSION 2013/10/23 | 1036 | fonts/greek/gfs/gfsneohellenic/vf/gfsneohellenicmath8a.vf 2013/10/23 | 1668 | fonts/greek/gfs/gfsneohellenic/vf/gneohellenicb6a.vf 2013/10/23 | 1688 | fonts/greek/gfs/gfsneohellenic/vf/gneohellenicbi6a.vf @@ -50999,7 +50999,7 @@ 2013/10/23 | 1628 | fonts/greek/gfs/gfsneohellenic/vf/neohellenicsco8a.vf 2013/10/23 | 1756 | fonts/greek/gfs/gfsneohellenic/vf/neohellenicsco9a.vf 2013/10/23 | 592 | fonts/greek/gfs/gfsneohellenic/vf/neohellenictabnums8a.vf -2013/10/23 | 1561833 | fonts/greek/gfs/gfsneohellenic.zip +2022/07/20 | 1562087 | fonts/greek/gfs/gfsneohellenic.zip 2007/10/22 | 19796 | fonts/greek/gfs/gfsporson/afm/GFSPorson-Regular.afm 2007/05/16 | 30843 | fonts/greek/gfs/gfsporson/doc/gfsporson.pdf 2007/10/22 | 3424 | fonts/greek/gfs/gfsporson/doc/gfsporson.tex @@ -158206,11 +158206,11 @@ 2010/10/10 | 82 | graphics/pgf/contrib/bodegraph/gnuplot/bodegraph/9.table 2010/10/10 | 473 | graphics/pgf/contrib/bodegraph/README 2010/10/10 | 421558 | graphics/pgf/contrib/bodegraph.zip -2022/07/06 | 83672 | graphics/pgf/contrib/bodeplot/bodeplot.dtx -2022/07/06 | 1416 | graphics/pgf/contrib/bodeplot/bodeplot.ins -2022/07/06 | 992859 | graphics/pgf/contrib/bodeplot/bodeplot.pdf -2022/07/06 | 3281 | graphics/pgf/contrib/bodeplot/README.md -2022/07/06 | 765182 | graphics/pgf/contrib/bodeplot.zip +2022/07/20 | 85685 | graphics/pgf/contrib/bodeplot/bodeplot.dtx +2022/07/20 | 1416 | graphics/pgf/contrib/bodeplot/bodeplot.ins +2022/07/20 | 1007326 | graphics/pgf/contrib/bodeplot/bodeplot.pdf +2022/07/20 | 3629 | graphics/pgf/contrib/bodeplot/README.md +2022/07/20 | 776733 | graphics/pgf/contrib/bodeplot.zip 2019/05/07 | 70256 | graphics/pgf/contrib/braids/braids_code.dtx 2019/05/07 | 410835 | graphics/pgf/contrib/braids/braids_code.pdf 2019/04/04 | 314455 | graphics/pgf/contrib/braids/braids.pdf @@ -159297,6 +159297,20 @@ 2016/02/05 | 68192 | graphics/pgf/contrib/tikz-feynman/tikz-feynman.tex 2016/02/05 | 11610 | graphics/pgf/contrib/tikz-feynman/tikzlibraryfeynman.code.tex 2016/02/05 | 351538 | graphics/pgf/contrib/tikz-feynman.zip +2022/07/20 | 402 | graphics/pgf/contrib/tikzfill/CHANGES.md +2022/07/20 | 2450 | graphics/pgf/contrib/tikzfill/README.md +2022/07/20 | 1891 | graphics/pgf/contrib/tikzfill/tikzfill-common.sty +2022/07/20 | 4680 | graphics/pgf/contrib/tikzfill/tikzfill-doc.sty +2022/07/20 | 1101 | graphics/pgf/contrib/tikzfill/tikzfill.hexagon.sty +2022/07/20 | 1083 | graphics/pgf/contrib/tikzfill/tikzfill.image.sty +2022/07/20 | 721265 | graphics/pgf/contrib/tikzfill/tikzfill.pdf +2022/07/20 | 1101 | graphics/pgf/contrib/tikzfill/tikzfill.rhombus.sty +2022/07/20 | 1109 | graphics/pgf/contrib/tikzfill/tikzfill.sty +2022/07/20 | 42108 | graphics/pgf/contrib/tikzfill/tikzfill.tex +2022/07/20 | 12043 | graphics/pgf/contrib/tikzfill/tikzlibraryfill.hexagon.code.tex +2022/07/20 | 11652 | graphics/pgf/contrib/tikzfill/tikzlibraryfill.image.code.tex +2022/07/20 | 6563 | graphics/pgf/contrib/tikzfill/tikzlibraryfill.rhombus.code.tex +2022/07/20 | 637842 | graphics/pgf/contrib/tikzfill.zip 2019/04/30 | 500 | graphics/pgf/contrib/tikz-imagelabels/Makefile 2019/06/24 | 518323 | graphics/pgf/contrib/tikz-imagelabels/pleiades.jpg 2019/04/30 | 224 | graphics/pgf/contrib/tikz-imagelabels/README.md @@ -188807,6 +188821,7 @@ 2014/06/15 | 843875 | install/graphics/pgf/contrib/logicpuzzle.tds.zip 2021/05/15 | 17583452 | install/graphics/pgf/contrib/pgfplots.tds.zip 2013/12/11 | 491125 | install/graphics/pgf/contrib/rulercompass.tds.zip +2022/07/20 | 637204 | install/graphics/pgf/contrib/tikzfill.tds.zip 2014/01/23 | 77120 | install/graphics/pgf/contrib/tikz-opm.tds.zip 2012/09/16 | 256432 | install/graphics/pgf/contrib/tikzpagenodes.tds.zip 2017/04/22 | 533244 | install/graphics/pgf/contrib/tikzpeople.tds.zip @@ -188844,6 +188859,7 @@ 2020/06/30 | 1215011 | install/macros/generic/tracklang.tds.zip 2021/09/15 | 585368 | install/macros/generic/unicode-data.tds.zip 2022/06/11 | 4242531 | install/macros/generic/xint.tds.zip +2021/07/01 | 946668 | install/macros/jptex/latex/jsclasses.tds.zip 2016/05/15 | 295442 | install/macros/latex/contrib/abc.tds.zip 2018/11/24 | 6522794 | install/macros/latex/contrib/abntex2.tds.zip 2009/09/02 | 160216 | install/macros/latex/contrib/abstract.tds.zip @@ -188989,7 +189005,6 @@ 2019/12/15 | 441325 | install/macros/latex/contrib/intcalc.tds.zip 2008/07/31 | 81728 | install/macros/latex/contrib/inversepath.tds.zip 2022/02/09 | 1035078 | install/macros/latex/contrib/jmlr.tds.zip -2021/07/01 | 946668 | install/macros/latex/contrib/jsclasses.tds.zip 2022/07/04 | 9745376 | install/macros/latex/contrib/koma-script.tds.zip 2015/12/09 | 171418 | install/macros/latex/contrib/ksp-thesis.tds.zip 2019/12/19 | 302191 | install/macros/latex/contrib/kvdefinekeys.tds.zip @@ -189157,7 +189172,7 @@ 2022/06/16 | 7338999 | install/macros/latex-dev/required/latex-tools-dev.tds.zip 2022/07/05 | 38317838 | install/macros/latex/latex-base.tds.zip 2020/06/01 | 1578753 | install/macros/latex/required/amscls.tds.zip -2022/06/26 | 3014165 | install/macros/latex/required/babel-base.tds.zip +2022/07/20 | 3013535 | install/macros/latex/required/babel-base.tds.zip 2022/06/08 | 2794804 | install/macros/latex/required/latex-amsmath.tds.zip 2022/06/14 | 242625 | install/macros/latex/required/latexbug.tds.zip 2022/06/16 | 1352652 | install/macros/latex/required/latex-cyrillic.tds.zip @@ -198284,16 +198299,6 @@ 2019/04/01 | 3094 | language/japanese/jlreq/README-template.html 2022/01/07 | 3315 | language/japanese/jlreq/README-template.tex 2022/07/13 | 603041 | language/japanese/jlreq.zip -1995/08/05 | 7067 | language/japanese/jtex/00NEWS -1995/07/26 | 1558 | language/japanese/jtex/00README -1995/06/21 | 1825 | language/japanese/jtex/jlatex2e-add1.tar.gz -1995/06/21 | 51373 | language/japanese/jtex/jlatex2e.tar.gz -1995/06/21 | 2627 | language/japanese/jtex/jlib-add1.tar.gz -1995/06/21 | 150730 | language/japanese/jtex/jlib.tar.gz -1995/06/18 | 1751 | language/japanese/jtex/README -1995/07/26 | 1091 | language/japanese/jtex/web2c-6.1j-add1.tar.gz -1995/08/05 | 19100 | language/japanese/jtex/web2c-6.1j-add2.tar.gz -1995/08/05 | 259455 | language/japanese/jtex/web2c-6.1j.tar.gz 2021/12/11 | 137664 | language/japanese/platex/exppl2e.pdf 2021/12/11 | 13656 | language/japanese/platex/exppl2e.sty 2021/12/11 | 158330 | language/japanese/platex/jclasses.dtx @@ -199110,7 +199115,6 @@ 2020/02/08 | 663404 | language/japanese/pxufont/vf/zu-uprubyminr-h.vf 2020/02/08 | 663432 | language/japanese/pxufont/vf/zu-uprubyminr-v.vf 2020/02/08 | 18511157 | language/japanese/pxufont.zip -1995/12/03 | 222 | language/japanese/README.CJK 2021/05/31 | 1586 | language/japanese/uplatex/LICENSE 2021/05/31 | 4410 | language/japanese/uplatex/Makefile 2021/05/31 | 626 | language/japanese/uplatex/README.md @@ -202968,11 +202972,6 @@ 2011/11/18 | 8382 | macros/generic/fenixpar/fenixtok.sty 2011/11/18 | 312 | macros/generic/fenixpar/README 2011/11/18 | 4082 | macros/generic/fenixpar.zip -2018/03/24 | 281286 | macros/generic/fixjfm/fixjfm-doc.pdf -2018/03/24 | 13012 | macros/generic/fixjfm/fixjfm-doc.tex -2018/03/24 | 8252 | macros/generic/fixjfm/fixjfm.sty -2018/03/24 | 349 | macros/generic/fixjfm/README -2018/03/24 | 286272 | macros/generic/fixjfm.zip 2004/11/12 | 61180 | macros/generic/fltpoint/fltpoint.dtx 2004/11/12 | 292 | macros/generic/fltpoint/fltpoint.ins 2004/11/12 | 206320 | macros/generic/fltpoint/fltpoint.pdf @@ -203963,6 +203962,60 @@ 1991/09/17 | 33043 | macros/inrstex/texgraph/texgraph.tex 1991/09/06 | 352326 | macros/inrstex/texgraph/thgraph.ps 2004/11/23 | 103137 | macros/jadetex/jadetex-3.13.tar.gz +2018/03/24 | 281286 | macros/jptex/generic/fixjfm/fixjfm-doc.pdf +2018/03/24 | 13012 | macros/jptex/generic/fixjfm/fixjfm-doc.tex +2018/03/24 | 8252 | macros/jptex/generic/fixjfm/fixjfm.sty +2018/03/24 | 349 | macros/jptex/generic/fixjfm/README +2018/03/24 | 286272 | macros/jptex/generic/fixjfm.zip +2020/10/14 | 49397 | macros/jptex/latex/gentombow/bounddvi-en.pdf +2020/10/14 | 5322 | macros/jptex/latex/gentombow/bounddvi-en.tex +2020/10/14 | 102475 | macros/jptex/latex/gentombow/bounddvi.pdf +2020/10/14 | 3986 | macros/jptex/latex/gentombow/bounddvi.sty +2020/10/14 | 7664 | macros/jptex/latex/gentombow/bounddvi.tex +2020/10/14 | 174085 | macros/jptex/latex/gentombow/gentombow-ja.pdf +2020/10/14 | 21595 | macros/jptex/latex/gentombow/gentombow-ja.tex +2020/10/14 | 150209 | macros/jptex/latex/gentombow/gentombow.pdf +2020/10/14 | 26436 | macros/jptex/latex/gentombow/gentombow.sty +2020/10/14 | 10362 | macros/jptex/latex/gentombow/gentombow.tex +2020/10/14 | 1500 | macros/jptex/latex/gentombow/LICENSE +2020/10/14 | 7762 | macros/jptex/latex/gentombow/pxesopic.sty +2020/10/14 | 23109 | macros/jptex/latex/gentombow/pxgentombow.pdf +2020/10/14 | 457 | macros/jptex/latex/gentombow/pxgentombow.sty +2020/10/14 | 728 | macros/jptex/latex/gentombow/pxgentombow.tex +2020/10/14 | 2144 | macros/jptex/latex/gentombow/pxpdfpages.sty +2020/10/14 | 3412 | macros/jptex/latex/gentombow/pxtextpos.sty +2020/10/14 | 1965 | macros/jptex/latex/gentombow/README.md +2020/10/14 | 523053 | macros/jptex/latex/gentombow.zip +2021/07/01 | 197349 | macros/jptex/latex/jsclasses/jsclasses.dtx +2021/07/01 | 561 | macros/jptex/latex/jsclasses/jsclasses.ins +2021/07/01 | 412473 | macros/jptex/latex/jsclasses/jsclasses.pdf +2021/07/01 | 11305 | macros/jptex/latex/jsclasses/jslogo.dtx +2021/07/01 | 233 | macros/jptex/latex/jsclasses/jslogo.ins +2021/07/01 | 76779 | macros/jptex/latex/jsclasses/jslogo.pdf +2021/07/01 | 8623 | macros/jptex/latex/jsclasses/jsverb.dtx +2021/07/01 | 232 | macros/jptex/latex/jsclasses/jsverb.ins +2021/07/01 | 75649 | macros/jptex/latex/jsclasses/jsverb.pdf +2021/07/01 | 1392 | macros/jptex/latex/jsclasses/LICENSE +2021/07/01 | 2811 | macros/jptex/latex/jsclasses/Makefile +2021/07/01 | 40908 | macros/jptex/latex/jsclasses/okumacro.dtx +2021/07/01 | 240 | macros/jptex/latex/jsclasses/okumacro.ins +2021/07/01 | 175557 | macros/jptex/latex/jsclasses/okumacro.pdf +2021/07/01 | 6087 | macros/jptex/latex/jsclasses/okuverb.dtx +2021/07/01 | 236 | macros/jptex/latex/jsclasses/okuverb.ins +2021/07/01 | 59902 | macros/jptex/latex/jsclasses/okuverb.pdf +2021/07/01 | 1432 | macros/jptex/latex/jsclasses/README.md +2021/07/01 | 860614 | macros/jptex/latex/jsclasses.zip +2022/05/25 | 1091 | macros/jptex/latex/pxcjkcat/LICENSE +2022/06/03 | 197668 | macros/jptex/latex/pxcjkcat/pxcjkcat.pdf +2022/06/03 | 40123 | macros/jptex/latex/pxcjkcat/pxcjkcat.sty +2022/06/03 | 50755 | macros/jptex/latex/pxcjkcat/pxcjkcat.tex +2022/06/03 | 1658 | macros/jptex/latex/pxcjkcat/README-ja.md +2022/06/03 | 3204 | macros/jptex/latex/pxcjkcat/README.md +2022/06/08 | 223926 | macros/jptex/latex/pxcjkcat.zip +2017/01/21 | 1196 | macros/jptex/latex/pxtatescale/LICENSE +2017/01/21 | 1443 | macros/jptex/latex/pxtatescale/pxtatescale.sty +2017/01/21 | 1181 | macros/jptex/latex/pxtatescale/README +2017/01/21 | 2360 | macros/jptex/latex/pxtatescale.zip 2011/06/14 | 65070577 | macros/lamstex/doc/The_LAmS-TeX_Wizards_Manual.pdf 1991/06/29 | 92364 | macros/lamstex/doc/wiz1.tex 1991/06/18 | 46550 | macros/lamstex/doc/wiz2.tex @@ -216950,25 +217003,6 @@ 2006/09/16 | 86371 | macros/latex/contrib/genmpage/genmpage.pdf 2006/09/16 | 269 | macros/latex/contrib/genmpage/README 2006/09/16 | 79510 | macros/latex/contrib/genmpage.zip -2020/10/14 | 49397 | macros/latex/contrib/gentombow/bounddvi-en.pdf -2020/10/14 | 5322 | macros/latex/contrib/gentombow/bounddvi-en.tex -2020/10/14 | 102475 | macros/latex/contrib/gentombow/bounddvi.pdf -2020/10/14 | 3986 | macros/latex/contrib/gentombow/bounddvi.sty -2020/10/14 | 7664 | macros/latex/contrib/gentombow/bounddvi.tex -2020/10/14 | 174085 | macros/latex/contrib/gentombow/gentombow-ja.pdf -2020/10/14 | 21595 | macros/latex/contrib/gentombow/gentombow-ja.tex -2020/10/14 | 150209 | macros/latex/contrib/gentombow/gentombow.pdf -2020/10/14 | 26436 | macros/latex/contrib/gentombow/gentombow.sty -2020/10/14 | 10362 | macros/latex/contrib/gentombow/gentombow.tex -2020/10/14 | 1500 | macros/latex/contrib/gentombow/LICENSE -2020/10/14 | 7762 | macros/latex/contrib/gentombow/pxesopic.sty -2020/10/14 | 23109 | macros/latex/contrib/gentombow/pxgentombow.pdf -2020/10/14 | 457 | macros/latex/contrib/gentombow/pxgentombow.sty -2020/10/14 | 728 | macros/latex/contrib/gentombow/pxgentombow.tex -2020/10/14 | 2144 | macros/latex/contrib/gentombow/pxpdfpages.sty -2020/10/14 | 3412 | macros/latex/contrib/gentombow/pxtextpos.sty -2020/10/14 | 1965 | macros/latex/contrib/gentombow/README.md -2020/10/14 | 523053 | macros/latex/contrib/gentombow.zip 2020/01/02 | 15887 | macros/latex/contrib/geometry/changes.txt 2020/01/02 | 159890 | macros/latex/contrib/geometry/geometry-de.dtx 2020/01/02 | 465858 | macros/latex/contrib/geometry/geometry-de.pdf @@ -218608,123 +218642,135 @@ 2022/05/27 | 713 | macros/latex/contrib/hvextern/README 2022/06/21 | 1030 | macros/latex/contrib/hvextern/script/hvextern-checkfile.lua 2022/06/24 | 1371984 | macros/latex/contrib/hvextern.zip -2022/05/01 | 4066 | macros/latex/contrib/hvfloat/Changes -2021/06/26 | 80294 | macros/latex/contrib/hvfloat/doc/examples/after1s1c.pdf -2021/05/17 | 2374 | macros/latex/contrib/hvfloat/doc/examples/after1s1c.tex -2021/06/26 | 86722 | macros/latex/contrib/hvfloat/doc/examples/after2s2c.pdf -2021/05/17 | 2457 | macros/latex/contrib/hvfloat/doc/examples/after2s2c.tex +2022/07/20 | 4199 | macros/latex/contrib/hvfloat/Changes +2022/07/20 | 79855 | macros/latex/contrib/hvfloat/doc/examples/after1s1c.pdf +2021/11/20 | 2379 | macros/latex/contrib/hvfloat/doc/examples/after1s1c.tex +2022/07/20 | 86559 | macros/latex/contrib/hvfloat/doc/examples/after2s2c.pdf +2021/11/20 | 2462 | macros/latex/contrib/hvfloat/doc/examples/after2s2c.tex 2021/06/17 | 2956 | macros/latex/contrib/hvfloat/doc/examples/capPos.inc -2021/06/26 | 95389 | macros/latex/contrib/hvfloat/doc/examples/capPos.pdf -2021/06/17 | 1568 | macros/latex/contrib/hvfloat/doc/examples/capPos.tex -2021/06/17 | 3471 | macros/latex/contrib/hvfloat/doc/examples/capVPos.inc -2021/06/26 | 81991 | macros/latex/contrib/hvfloat/doc/examples/default1s1c.pdf -2021/05/17 | 2388 | macros/latex/contrib/hvfloat/doc/examples/default1s1c.tex -2021/06/26 | 83275 | macros/latex/contrib/hvfloat/doc/examples/default1s2c.pdf -2021/05/17 | 1885 | macros/latex/contrib/hvfloat/doc/examples/default1s2c.tex -2021/06/26 | 79445 | macros/latex/contrib/hvfloat/doc/examples/default2s1c.pdf -2021/05/17 | 2314 | macros/latex/contrib/hvfloat/doc/examples/default2s1c.tex -2021/06/26 | 85824 | macros/latex/contrib/hvfloat/doc/examples/default2s2c.pdf -2021/05/17 | 2455 | macros/latex/contrib/hvfloat/doc/examples/default2s2c.tex -2021/06/26 | 2314853 | macros/latex/contrib/hvfloat/doc/examples/doublepage2s1c.pdf -2021/05/30 | 35031 | macros/latex/contrib/hvfloat/doc/examples/doublepage2s1c.tex -2021/06/26 | 619030 | macros/latex/contrib/hvfloat/doc/examples/doublepage2s2c.pdf -2021/05/30 | 37908 | macros/latex/contrib/hvfloat/doc/examples/doublepage2s2c.tex -2021/06/26 | 77658 | macros/latex/contrib/hvfloat/doc/examples/even1s1c.pdf -2021/05/17 | 2378 | macros/latex/contrib/hvfloat/doc/examples/even1s1c.tex -2021/06/26 | 86404 | macros/latex/contrib/hvfloat/doc/examples/even1s2c.pdf -2021/05/17 | 2512 | macros/latex/contrib/hvfloat/doc/examples/even1s2c.tex -2021/06/26 | 84813 | macros/latex/contrib/hvfloat/doc/examples/even2s1c.pdf -2021/05/17 | 2502 | macros/latex/contrib/hvfloat/doc/examples/even2s1c.tex -2021/06/26 | 85098 | macros/latex/contrib/hvfloat/doc/examples/even2s2c.pdf -2021/05/17 | 2521 | macros/latex/contrib/hvfloat/doc/examples/even2s2c.tex -2021/06/26 | 86773 | macros/latex/contrib/hvfloat/doc/examples/fullpage1s2c.pdf -2021/05/17 | 1276 | macros/latex/contrib/hvfloat/doc/examples/fullpage1s2c.tex -2021/06/26 | 84020 | macros/latex/contrib/hvfloat/doc/examples/inner1s2c.pdf -2021/05/17 | 2116 | macros/latex/contrib/hvfloat/doc/examples/inner1s2c.tex -2021/06/26 | 83977 | macros/latex/contrib/hvfloat/doc/examples/inner2s1c.pdf -2021/05/17 | 2093 | macros/latex/contrib/hvfloat/doc/examples/inner2s1c.tex -2021/06/26 | 84013 | macros/latex/contrib/hvfloat/doc/examples/inner2s2c.pdf -2021/05/17 | 2135 | macros/latex/contrib/hvfloat/doc/examples/inner2s2c.tex -2021/06/26 | 85512 | macros/latex/contrib/hvfloat/doc/examples/left2s2c.pdf -2021/05/17 | 2500 | macros/latex/contrib/hvfloat/doc/examples/left2s2c.tex -2021/06/26 | 142624 | macros/latex/contrib/hvfloat/doc/examples/multi-after1s1c.pdf -2021/06/17 | 5902 | macros/latex/contrib/hvfloat/doc/examples/multi-after1s1c.tex -2021/06/26 | 146172 | macros/latex/contrib/hvfloat/doc/examples/multi-default1s1c.pdf -2021/05/17 | 5867 | macros/latex/contrib/hvfloat/doc/examples/multi-default1s1c.tex -2021/06/26 | 94586 | macros/latex/contrib/hvfloat/doc/examples/multi-default1s2c.pdf -2021/05/17 | 4677 | macros/latex/contrib/hvfloat/doc/examples/multi-default1s2c.tex -2021/06/26 | 146343 | macros/latex/contrib/hvfloat/doc/examples/multi-default2s1c.pdf -2021/05/17 | 5875 | macros/latex/contrib/hvfloat/doc/examples/multi-default2s1c.tex -2021/06/26 | 92182 | macros/latex/contrib/hvfloat/doc/examples/multi-default2s2c.pdf -2021/05/17 | 4687 | macros/latex/contrib/hvfloat/doc/examples/multi-default2s2c.tex -2021/06/26 | 89784 | macros/latex/contrib/hvfloat/doc/examples/multi-inner2s2c.pdf -2021/06/17 | 4793 | macros/latex/contrib/hvfloat/doc/examples/multi-inner2s2c.tex -2021/06/26 | 92984 | macros/latex/contrib/hvfloat/doc/examples/multi-outer2s2c.pdf -2021/06/17 | 4794 | macros/latex/contrib/hvfloat/doc/examples/multi-outer2s2c.tex -2021/06/26 | 145736 | macros/latex/contrib/hvfloat/doc/examples/multi-right1s1c.pdf -2021/06/17 | 5905 | macros/latex/contrib/hvfloat/doc/examples/multi-right1s1c.tex -2021/06/26 | 77805 | macros/latex/contrib/hvfloat/doc/examples/odd1s1c.pdf -2021/06/20 | 2421 | macros/latex/contrib/hvfloat/doc/examples/odd1s1c.tex -2021/06/26 | 86523 | macros/latex/contrib/hvfloat/doc/examples/odd1s2c.pdf -2021/05/17 | 2517 | macros/latex/contrib/hvfloat/doc/examples/odd1s2c.tex -2021/06/26 | 174218 | macros/latex/contrib/hvfloat/doc/examples/odd2s1c.pdf -2021/06/17 | 2492 | macros/latex/contrib/hvfloat/doc/examples/odd2s1c.tex -2021/06/26 | 85566 | macros/latex/contrib/hvfloat/doc/examples/odd2s2c.pdf -2021/05/17 | 2525 | macros/latex/contrib/hvfloat/doc/examples/odd2s2c.tex -2021/06/26 | 86318 | macros/latex/contrib/hvfloat/doc/examples/outer1s2c.pdf -2021/05/17 | 2114 | macros/latex/contrib/hvfloat/doc/examples/outer1s2c.tex -2021/06/26 | 84292 | macros/latex/contrib/hvfloat/doc/examples/outer2s1c.pdf -2021/05/17 | 2081 | macros/latex/contrib/hvfloat/doc/examples/outer2s1c.tex -2021/06/26 | 84680 | macros/latex/contrib/hvfloat/doc/examples/outer2s2c.pdf -2021/05/17 | 2122 | macros/latex/contrib/hvfloat/doc/examples/outer2s2c.tex -2021/06/26 | 79267 | macros/latex/contrib/hvfloat/doc/examples/paper-after1s1c.pdf -2021/05/17 | 2506 | macros/latex/contrib/hvfloat/doc/examples/paper-after1s1c.tex -2021/06/26 | 79967 | macros/latex/contrib/hvfloat/doc/examples/paper-default1s1c.pdf -2021/05/17 | 2456 | macros/latex/contrib/hvfloat/doc/examples/paper-default1s1c.tex -2021/06/26 | 90508 | macros/latex/contrib/hvfloat/doc/examples/paper-default1s2c.pdf -2021/05/17 | 2457 | macros/latex/contrib/hvfloat/doc/examples/paper-default1s2c.tex -2021/06/26 | 87935 | macros/latex/contrib/hvfloat/doc/examples/paper-default2s1c.pdf -2021/05/28 | 2446 | macros/latex/contrib/hvfloat/doc/examples/paper-default2s1c.tex -2021/06/26 | 90332 | macros/latex/contrib/hvfloat/doc/examples/paper-default2s2c.pdf -2021/05/17 | 2457 | macros/latex/contrib/hvfloat/doc/examples/paper-default2s2c.tex -2021/06/26 | 87855 | macros/latex/contrib/hvfloat/doc/examples/paper-inner2s2c.pdf -2021/05/17 | 2515 | macros/latex/contrib/hvfloat/doc/examples/paper-inner2s2c.tex -2021/06/26 | 80290 | macros/latex/contrib/hvfloat/doc/examples/paper-right1s1c.pdf -2021/05/17 | 2511 | macros/latex/contrib/hvfloat/doc/examples/paper-right1s1c.tex -2021/06/17 | 2226 | macros/latex/contrib/hvfloat/doc/examples/preamble.ltx +2022/07/20 | 98061 | macros/latex/contrib/hvfloat/doc/examples/capPos.pdf +2021/11/11 | 1568 | macros/latex/contrib/hvfloat/doc/examples/capPos.tex +2022/03/19 | 3601 | macros/latex/contrib/hvfloat/doc/examples/capVPos.inc +2022/07/20 | 81685 | macros/latex/contrib/hvfloat/doc/examples/default1s1c.pdf +2021/11/20 | 2393 | macros/latex/contrib/hvfloat/doc/examples/default1s1c.tex +2022/07/20 | 83180 | macros/latex/contrib/hvfloat/doc/examples/default1s2c.pdf +2021/11/20 | 1888 | macros/latex/contrib/hvfloat/doc/examples/default1s2c.tex +2022/07/20 | 78954 | macros/latex/contrib/hvfloat/doc/examples/default2s1c.pdf +2021/11/20 | 2319 | macros/latex/contrib/hvfloat/doc/examples/default2s1c.tex +2022/07/20 | 85642 | macros/latex/contrib/hvfloat/doc/examples/default2s2c.pdf +2021/11/20 | 2460 | macros/latex/contrib/hvfloat/doc/examples/default2s2c.tex +2022/07/20 | 1759143 | macros/latex/contrib/hvfloat/doc/examples/doublefullpage2s2c.pdf +2022/05/30 | 23950 | macros/latex/contrib/hvfloat/doc/examples/doublefullpage2s2c.tex +2022/07/20 | 2317480 | macros/latex/contrib/hvfloat/doc/examples/doublepage2s1c.pdf +2021/11/11 | 35041 | macros/latex/contrib/hvfloat/doc/examples/doublepage2s1c.tex +2022/07/20 | 616570 | macros/latex/contrib/hvfloat/doc/examples/doublepage2s2c.pdf +2021/11/11 | 37908 | macros/latex/contrib/hvfloat/doc/examples/doublepage2s2c.tex +2022/07/20 | 77202 | macros/latex/contrib/hvfloat/doc/examples/even1s1c.pdf +2021/11/20 | 2383 | macros/latex/contrib/hvfloat/doc/examples/even1s1c.tex +2022/07/20 | 86195 | macros/latex/contrib/hvfloat/doc/examples/even1s2c.pdf +2021/11/20 | 2517 | macros/latex/contrib/hvfloat/doc/examples/even1s2c.tex +2022/07/20 | 84135 | macros/latex/contrib/hvfloat/doc/examples/even2s1c.pdf +2021/11/20 | 2507 | macros/latex/contrib/hvfloat/doc/examples/even2s1c.tex +2022/07/20 | 84895 | macros/latex/contrib/hvfloat/doc/examples/even2s2c.pdf +2021/11/20 | 2526 | macros/latex/contrib/hvfloat/doc/examples/even2s2c.tex +2022/07/20 | 86549 | macros/latex/contrib/hvfloat/doc/examples/fullpage1s1c.pdf +2022/06/09 | 1265 | macros/latex/contrib/hvfloat/doc/examples/fullpage1s1c.tex +2022/07/20 | 87033 | macros/latex/contrib/hvfloat/doc/examples/fullpage1s2c.pdf +2021/11/11 | 1276 | macros/latex/contrib/hvfloat/doc/examples/fullpage1s2c.tex +2022/07/20 | 83734 | macros/latex/contrib/hvfloat/doc/examples/inner1s2c.pdf +2021/11/20 | 2121 | macros/latex/contrib/hvfloat/doc/examples/inner1s2c.tex +2022/07/20 | 83699 | macros/latex/contrib/hvfloat/doc/examples/inner2s1c.pdf +2021/11/20 | 2098 | macros/latex/contrib/hvfloat/doc/examples/inner2s1c.tex +2022/07/20 | 83924 | macros/latex/contrib/hvfloat/doc/examples/inner2s2c.pdf +2021/11/20 | 2140 | macros/latex/contrib/hvfloat/doc/examples/inner2s2c.tex +2022/07/20 | 85326 | macros/latex/contrib/hvfloat/doc/examples/left2s2c.pdf +2021/11/20 | 2505 | macros/latex/contrib/hvfloat/doc/examples/left2s2c.tex +2022/07/20 | 142146 | macros/latex/contrib/hvfloat/doc/examples/multi-after1s1c.pdf +2021/11/20 | 5906 | macros/latex/contrib/hvfloat/doc/examples/multi-after1s1c.tex +2022/07/20 | 145886 | macros/latex/contrib/hvfloat/doc/examples/multi-default1s1c.pdf +2021/11/20 | 5872 | macros/latex/contrib/hvfloat/doc/examples/multi-default1s1c.tex +2022/07/20 | 102871 | macros/latex/contrib/hvfloat/doc/examples/multi-default1s2c.pdf +2021/11/20 | 4682 | macros/latex/contrib/hvfloat/doc/examples/multi-default1s2c.tex +2022/07/20 | 146064 | macros/latex/contrib/hvfloat/doc/examples/multi-default2s1c.pdf +2021/11/20 | 5880 | macros/latex/contrib/hvfloat/doc/examples/multi-default2s1c.tex +2022/07/20 | 100507 | macros/latex/contrib/hvfloat/doc/examples/multi-default2s2c.pdf +2021/11/20 | 4692 | macros/latex/contrib/hvfloat/doc/examples/multi-default2s2c.tex +2022/07/20 | 98070 | macros/latex/contrib/hvfloat/doc/examples/multi-inner2s2c.pdf +2021/11/20 | 4797 | macros/latex/contrib/hvfloat/doc/examples/multi-inner2s2c.tex +2022/07/20 | 101319 | macros/latex/contrib/hvfloat/doc/examples/multi-outer2s2c.pdf +2021/11/20 | 4798 | macros/latex/contrib/hvfloat/doc/examples/multi-outer2s2c.tex +2022/07/20 | 145453 | macros/latex/contrib/hvfloat/doc/examples/multi-right1s1c.pdf +2021/11/20 | 5909 | macros/latex/contrib/hvfloat/doc/examples/multi-right1s1c.tex +2022/07/20 | 77375 | macros/latex/contrib/hvfloat/doc/examples/odd1s1c.pdf +2021/11/20 | 2425 | macros/latex/contrib/hvfloat/doc/examples/odd1s1c.tex +2022/07/20 | 86322 | macros/latex/contrib/hvfloat/doc/examples/odd1s2c.pdf +2021/11/20 | 2522 | macros/latex/contrib/hvfloat/doc/examples/odd1s2c.tex +2022/07/20 | 173604 | macros/latex/contrib/hvfloat/doc/examples/odd2s1c.pdf +2021/11/20 | 2496 | macros/latex/contrib/hvfloat/doc/examples/odd2s1c.tex +2022/07/20 | 85385 | macros/latex/contrib/hvfloat/doc/examples/odd2s2c.pdf +2021/11/20 | 2530 | macros/latex/contrib/hvfloat/doc/examples/odd2s2c.tex +2022/07/20 | 86224 | macros/latex/contrib/hvfloat/doc/examples/outer1s2c.pdf +2021/11/20 | 2119 | macros/latex/contrib/hvfloat/doc/examples/outer1s2c.tex +2022/07/20 | 84006 | macros/latex/contrib/hvfloat/doc/examples/outer2s1c.pdf +2021/11/20 | 2086 | macros/latex/contrib/hvfloat/doc/examples/outer2s1c.tex +2022/07/20 | 84587 | macros/latex/contrib/hvfloat/doc/examples/outer2s2c.pdf +2021/11/20 | 2127 | macros/latex/contrib/hvfloat/doc/examples/outer2s2c.tex +2022/07/20 | 78903 | macros/latex/contrib/hvfloat/doc/examples/paper-after1s1c.pdf +2021/11/20 | 2511 | macros/latex/contrib/hvfloat/doc/examples/paper-after1s1c.tex +2022/07/20 | 89620 | macros/latex/contrib/hvfloat/doc/examples/paper-after2s2c.pdf +2022/02/28 | 2514 | macros/latex/contrib/hvfloat/doc/examples/paper-after2s2c.tex +2022/07/20 | 81195 | macros/latex/contrib/hvfloat/doc/examples/paper-default1s1c.pdf +2022/07/20 | 2462 | macros/latex/contrib/hvfloat/doc/examples/paper-default1s1c.tex +2022/07/20 | 90436 | macros/latex/contrib/hvfloat/doc/examples/paper-default1s2c.pdf +2021/11/20 | 2462 | macros/latex/contrib/hvfloat/doc/examples/paper-default1s2c.tex +2022/07/20 | 87873 | macros/latex/contrib/hvfloat/doc/examples/paper-default2s1c.pdf +2021/11/11 | 2450 | macros/latex/contrib/hvfloat/doc/examples/paper-default2s1c.tex +2022/07/20 | 90257 | macros/latex/contrib/hvfloat/doc/examples/paper-default2s2c.pdf +2021/11/20 | 2462 | macros/latex/contrib/hvfloat/doc/examples/paper-default2s2c.tex +2022/07/20 | 87165 | macros/latex/contrib/hvfloat/doc/examples/paper-even2s1c.pdf +2021/11/11 | 2435 | macros/latex/contrib/hvfloat/doc/examples/paper-even2s1c.tex +2022/07/20 | 87776 | macros/latex/contrib/hvfloat/doc/examples/paper-inner2s2c.pdf +2021/11/20 | 2520 | macros/latex/contrib/hvfloat/doc/examples/paper-inner2s2c.tex +2022/07/20 | 87061 | macros/latex/contrib/hvfloat/doc/examples/paper-odd2s1c.pdf +2021/11/11 | 2506 | macros/latex/contrib/hvfloat/doc/examples/paper-odd2s1c.tex +2022/07/20 | 81371 | macros/latex/contrib/hvfloat/doc/examples/paper-right1s1c.pdf +2021/11/20 | 2516 | macros/latex/contrib/hvfloat/doc/examples/paper-right1s1c.tex +2022/07/20 | 1615381 | macros/latex/contrib/hvfloat/doc/examples/paper-twocolcaption-after2s2c.pdf +2022/02/28 | 2722 | macros/latex/contrib/hvfloat/doc/examples/paper-twocolcaption-after2s2c.tex +2022/03/19 | 2306 | macros/latex/contrib/hvfloat/doc/examples/preamble.ltx 2021/05/17 | 649 | macros/latex/contrib/hvfloat/doc/examples/README.exa -2021/06/26 | 80126 | macros/latex/contrib/hvfloat/doc/examples/right1s1c.pdf -2021/05/17 | 2374 | macros/latex/contrib/hvfloat/doc/examples/right1s1c.tex -2021/06/26 | 89340 | macros/latex/contrib/hvfloat/doc/examples/right1s2c.pdf -2021/05/17 | 2501 | macros/latex/contrib/hvfloat/doc/examples/right1s2c.tex -2021/06/26 | 81033 | macros/latex/contrib/hvfloat/doc/examples/right2s1c.pdf -2021/05/17 | 2375 | macros/latex/contrib/hvfloat/doc/examples/right2s1c.tex -2021/06/26 | 85585 | macros/latex/contrib/hvfloat/doc/examples/right2s2c.pdf -2021/05/17 | 2456 | macros/latex/contrib/hvfloat/doc/examples/right2s2c.tex -2021/06/19 | 651 | macros/latex/contrib/hvfloat/doc/examples/runAll.sh +2022/07/20 | 79681 | macros/latex/contrib/hvfloat/doc/examples/right1s1c.pdf +2021/11/20 | 2379 | macros/latex/contrib/hvfloat/doc/examples/right1s1c.tex +2022/07/20 | 89151 | macros/latex/contrib/hvfloat/doc/examples/right1s2c.pdf +2021/11/20 | 2506 | macros/latex/contrib/hvfloat/doc/examples/right1s2c.tex +2022/07/20 | 78955 | macros/latex/contrib/hvfloat/doc/examples/right2s1c.pdf +2021/11/20 | 2380 | macros/latex/contrib/hvfloat/doc/examples/right2s1c.tex +2022/07/20 | 85418 | macros/latex/contrib/hvfloat/doc/examples/right2s2c.pdf +2021/11/20 | 2461 | macros/latex/contrib/hvfloat/doc/examples/right2s2c.tex +2021/07/23 | 661 | macros/latex/contrib/hvfloat/doc/examples/runAll.sh 2021/06/19 | 666 | macros/latex/contrib/hvfloat/doc/examples/runEXA.sh -2021/06/26 | 143952 | macros/latex/contrib/hvfloat/doc/examples/sub-after1s1c.pdf -2021/06/17 | 4534 | macros/latex/contrib/hvfloat/doc/examples/sub-after1s1c.tex -2021/06/26 | 144771 | macros/latex/contrib/hvfloat/doc/examples/sub-after2s2c.pdf -2021/06/17 | 4576 | macros/latex/contrib/hvfloat/doc/examples/sub-after2s2c.tex -2021/06/26 | 144003 | macros/latex/contrib/hvfloat/doc/examples/sub-default1s1c.pdf -2021/05/17 | 4497 | macros/latex/contrib/hvfloat/doc/examples/sub-default1s1c.tex -2021/06/26 | 144217 | macros/latex/contrib/hvfloat/doc/examples/sub-default1s2c.pdf -2021/05/17 | 4541 | macros/latex/contrib/hvfloat/doc/examples/sub-default1s2c.tex -2021/06/26 | 143517 | macros/latex/contrib/hvfloat/doc/examples/sub-default2s2c.pdf -2021/05/17 | 4549 | macros/latex/contrib/hvfloat/doc/examples/sub-default2s2c.tex -2021/06/26 | 143873 | macros/latex/contrib/hvfloat/doc/examples/sub-right1s1c.pdf -2021/06/17 | 4534 | macros/latex/contrib/hvfloat/doc/examples/sub-right1s1c.tex -2021/06/26 | 144879 | macros/latex/contrib/hvfloat/doc/examples/sub-right1s2c.pdf -2021/06/17 | 4576 | macros/latex/contrib/hvfloat/doc/examples/sub-right1s2c.tex -2021/06/26 | 144315 | macros/latex/contrib/hvfloat/doc/examples/sub-right2s2c.pdf -2021/06/17 | 4576 | macros/latex/contrib/hvfloat/doc/examples/sub-right2s2c.tex -2021/06/26 | 120949 | macros/latex/contrib/hvfloat/doc/examples/wide1s2c.pdf -2021/06/17 | 4184 | macros/latex/contrib/hvfloat/doc/examples/wide1s2c.tex -2021/06/26 | 121917 | macros/latex/contrib/hvfloat/doc/examples/wide2s2c.pdf -2021/06/17 | 3964 | macros/latex/contrib/hvfloat/doc/examples/wide2s2c.tex -2022/05/01 | 5039170 | macros/latex/contrib/hvfloat/doc/hvfloat.pdf -2022/05/01 | 120636 | macros/latex/contrib/hvfloat/doc/hvfloat.tex +2022/07/20 | 143688 | macros/latex/contrib/hvfloat/doc/examples/sub-after1s1c.pdf +2021/11/20 | 4538 | macros/latex/contrib/hvfloat/doc/examples/sub-after1s1c.tex +2022/07/20 | 144612 | macros/latex/contrib/hvfloat/doc/examples/sub-after2s2c.pdf +2021/11/20 | 4580 | macros/latex/contrib/hvfloat/doc/examples/sub-after2s2c.tex +2022/07/20 | 143725 | macros/latex/contrib/hvfloat/doc/examples/sub-default1s1c.pdf +2021/11/20 | 4502 | macros/latex/contrib/hvfloat/doc/examples/sub-default1s1c.tex +2022/07/20 | 144030 | macros/latex/contrib/hvfloat/doc/examples/sub-default1s2c.pdf +2021/11/20 | 4546 | macros/latex/contrib/hvfloat/doc/examples/sub-default1s2c.tex +2022/07/20 | 143328 | macros/latex/contrib/hvfloat/doc/examples/sub-default2s2c.pdf +2021/11/20 | 4554 | macros/latex/contrib/hvfloat/doc/examples/sub-default2s2c.tex +2022/07/20 | 143611 | macros/latex/contrib/hvfloat/doc/examples/sub-right1s1c.pdf +2021/11/20 | 4538 | macros/latex/contrib/hvfloat/doc/examples/sub-right1s1c.tex +2022/07/20 | 144711 | macros/latex/contrib/hvfloat/doc/examples/sub-right1s2c.pdf +2021/11/20 | 4580 | macros/latex/contrib/hvfloat/doc/examples/sub-right1s2c.tex +2022/07/20 | 144144 | macros/latex/contrib/hvfloat/doc/examples/sub-right2s2c.pdf +2021/11/20 | 4580 | macros/latex/contrib/hvfloat/doc/examples/sub-right2s2c.tex +2022/07/20 | 120832 | macros/latex/contrib/hvfloat/doc/examples/wide1s2c.pdf +2021/11/11 | 4184 | macros/latex/contrib/hvfloat/doc/examples/wide1s2c.tex +2022/07/20 | 121819 | macros/latex/contrib/hvfloat/doc/examples/wide2s2c.pdf +2021/11/11 | 3964 | macros/latex/contrib/hvfloat/doc/examples/wide2s2c.tex +2022/07/20 | 5037834 | macros/latex/contrib/hvfloat/doc/hvfloat.pdf +2022/07/20 | 120656 | macros/latex/contrib/hvfloat/doc/hvfloat.tex 2019/04/01 | 69089 | macros/latex/contrib/hvfloat/doc/images/CTAN.png 2021/03/12 | 1362739 | macros/latex/contrib/hvfloat/doc/images/felsen-wasser-small.pdf 2019/04/01 | 5208 | macros/latex/contrib/hvfloat/doc/images/frose.png @@ -218732,9 +218778,9 @@ 2019/04/01 | 2493 | macros/latex/contrib/hvfloat/doc/images/rose.png 2021/03/14 | 501524 | macros/latex/contrib/hvfloat/doc/images/sonne-meer.jpg 2021/06/20 | 918 | macros/latex/contrib/hvfloat/latex/hvfloat-fps.sty -2022/05/01 | 69796 | macros/latex/contrib/hvfloat/latex/hvfloat.sty +2022/07/20 | 69916 | macros/latex/contrib/hvfloat/latex/hvfloat.sty 2021/03/08 | 563 | macros/latex/contrib/hvfloat/README -2022/05/01 | 14343080 | macros/latex/contrib/hvfloat.zip +2022/07/20 | 17989295 | macros/latex/contrib/hvfloat.zip 2017/12/12 | 533 | macros/latex/contrib/hvindex/Changes 2017/12/12 | 74896 | macros/latex/contrib/hvindex/doc/hvindex-doc.pdf 2017/12/12 | 7652 | macros/latex/contrib/hvindex/doc/hvindex-doc.tex @@ -219792,25 +219838,6 @@ 2007/03/01 | 31037 | macros/latex/contrib/jpsj/jpsj2.cls 2003/04/22 | 3667 | macros/latex/contrib/jpsj/template.tex 2007/03/09 | 162970 | macros/latex/contrib/jpsj.zip -2021/07/01 | 197349 | macros/latex/contrib/jsclasses/jsclasses.dtx -2021/07/01 | 561 | macros/latex/contrib/jsclasses/jsclasses.ins -2021/07/01 | 412473 | macros/latex/contrib/jsclasses/jsclasses.pdf -2021/07/01 | 11305 | macros/latex/contrib/jsclasses/jslogo.dtx -2021/07/01 | 233 | macros/latex/contrib/jsclasses/jslogo.ins -2021/07/01 | 76779 | macros/latex/contrib/jsclasses/jslogo.pdf -2021/07/01 | 8623 | macros/latex/contrib/jsclasses/jsverb.dtx -2021/07/01 | 232 | macros/latex/contrib/jsclasses/jsverb.ins -2021/07/01 | 75649 | macros/latex/contrib/jsclasses/jsverb.pdf -2021/07/01 | 1392 | macros/latex/contrib/jsclasses/LICENSE -2021/07/01 | 2811 | macros/latex/contrib/jsclasses/Makefile -2021/07/01 | 40908 | macros/latex/contrib/jsclasses/okumacro.dtx -2021/07/01 | 240 | macros/latex/contrib/jsclasses/okumacro.ins -2021/07/01 | 175557 | macros/latex/contrib/jsclasses/okumacro.pdf -2021/07/01 | 6087 | macros/latex/contrib/jsclasses/okuverb.dtx -2021/07/01 | 236 | macros/latex/contrib/jsclasses/okuverb.ins -2021/07/01 | 59902 | macros/latex/contrib/jsclasses/okuverb.pdf -2021/07/01 | 1432 | macros/latex/contrib/jsclasses/README.md -2021/07/01 | 860614 | macros/latex/contrib/jsclasses.zip 2015/07/09 | 1361 | macros/latex/contrib/jslectureplanner/cologne.lps 2018/09/26 | 2829 | macros/latex/contrib/jslectureplanner/english.lps 2017/03/12 | 710 | macros/latex/contrib/jslectureplanner/examples/English/lecpresbody-english.tex @@ -226765,22 +226792,11 @@ 2006/01/31 | 1797 | macros/latex/contrib/punk-latex/punk.tex 2006/01/25 | 493 | macros/latex/contrib/punk-latex/README 2006/09/23 | 151193 | macros/latex/contrib/punk-latex.zip -2022/05/25 | 1091 | macros/latex/contrib/pxcjkcat/LICENSE -2022/06/03 | 197668 | macros/latex/contrib/pxcjkcat/pxcjkcat.pdf -2022/06/03 | 40123 | macros/latex/contrib/pxcjkcat/pxcjkcat.sty -2022/06/03 | 50755 | macros/latex/contrib/pxcjkcat/pxcjkcat.tex -2022/06/03 | 1658 | macros/latex/contrib/pxcjkcat/README-ja.md -2022/06/03 | 3204 | macros/latex/contrib/pxcjkcat/README.md -2022/06/08 | 223926 | macros/latex/contrib/pxcjkcat.zip 2011/03/16 | 11907 | macros/latex/contrib/pxgreeks/pxgreeks.dtx 2011/03/16 | 2216 | macros/latex/contrib/pxgreeks/pxgreeks.ins 2011/03/16 | 68222 | macros/latex/contrib/pxgreeks/pxgreeks.pdf 2011/03/25 | 1502 | macros/latex/contrib/pxgreeks/README 2011/03/26 | 62655 | macros/latex/contrib/pxgreeks.zip -2017/01/21 | 1196 | macros/latex/contrib/pxtatescale/LICENSE -2017/01/21 | 1443 | macros/latex/contrib/pxtatescale/pxtatescale.sty -2017/01/21 | 1181 | macros/latex/contrib/pxtatescale/README -2017/01/21 | 2360 | macros/latex/contrib/pxtatescale.zip 2020/12/21 | 62882 | macros/latex/contrib/pygmentex/blueshade.png 2020/12/21 | 300 | macros/latex/contrib/pygmentex/Factorial.java 2020/12/21 | 236 | macros/latex/contrib/pygmentex/pygmentex_demo.c @@ -234694,6 +234710,10 @@ 2011/04/09 | 15201 | macros/latex/contrib/wrapfig/wrapfig-doc.tex 2003/02/05 | 26220 | macros/latex/contrib/wrapfig/wrapfig.sty 2011/04/09 | 346180 | macros/latex/contrib/wrapfig.zip +2022/07/20 | 1703 | macros/latex/contrib/wrapstuff/README.md +2022/07/20 | 88543 | macros/latex/contrib/wrapstuff/wrapstuff.dtx +2022/07/20 | 422157 | macros/latex/contrib/wrapstuff/wrapstuff.pdf +2022/07/20 | 424500 | macros/latex/contrib/wrapstuff.zip 2013/08/27 | 1511 | macros/latex/contrib/wsemclassic/LICENSE 2013/08/27 | 2275 | macros/latex/contrib/wsemclassic/Makefile 2013/08/27 | 2394 | macros/latex/contrib/wsemclassic/README @@ -236111,14 +236131,14 @@ 2022/06/08 | 454511 | macros/latex/required/amsmath/testmath.pdf 2022/06/08 | 82371 | macros/latex/required/amsmath/testmath.tex 2022/06/08 | 2762704 | macros/latex/required/amsmath.zip -2022/06/26 | 750004 | macros/latex/required/babel/base/babel.dtx -2022/06/26 | 7799 | macros/latex/required/babel/base/babel.ins -2022/06/26 | 885137 | macros/latex/required/babel/base/babel.pdf -2022/06/26 | 21890 | macros/latex/required/babel/base/bbcompat.dtx -2022/06/26 | 3526 | macros/latex/required/babel/base/bbidxglo.dtx -2022/06/26 | 837636 | macros/latex/required/babel/base/locale.zip -2022/06/26 | 2478 | macros/latex/required/babel/base/README.md -2022/06/26 | 1921487 | macros/latex/required/babel/base.zip +2022/07/20 | 748494 | macros/latex/required/babel/base/babel.dtx +2022/07/20 | 7799 | macros/latex/required/babel/base/babel.ins +2022/07/20 | 883440 | macros/latex/required/babel/base/babel.pdf +2022/07/20 | 21890 | macros/latex/required/babel/base/bbcompat.dtx +2022/07/20 | 3526 | macros/latex/required/babel/base/bbidxglo.dtx +2022/07/20 | 838780 | macros/latex/required/babel/base/locale.zip +2022/07/20 | 2141 | macros/latex/required/babel/base/README.md +2022/07/20 | 1920315 | macros/latex/required/babel/base.zip 2022/06/16 | 5612 | macros/latex/required/cyrillic/changes.txt 2022/06/16 | 57710 | macros/latex/required/cyrillic/cyinpenc.dtx 2022/06/16 | 215413 | macros/latex/required/cyrillic/cyinpenc.pdf @@ -262322,6 +262342,16 @@ 2016/11/08 | 12644 | obsolete/language/japanese/jfontmaps/tools/mkmap.lua 2016/11/08 | 1553 | obsolete/language/japanese/jfontmaps/tools/release.sh 2016/11/08 | 563470 | obsolete/language/japanese/jfontmaps.zip +1995/08/05 | 7067 | obsolete/language/japanese/jtex/00NEWS +1995/07/26 | 1558 | obsolete/language/japanese/jtex/00README +1995/06/21 | 1825 | obsolete/language/japanese/jtex/jlatex2e-add1.tar.gz +1995/06/21 | 51373 | obsolete/language/japanese/jtex/jlatex2e.tar.gz +1995/06/21 | 2627 | obsolete/language/japanese/jtex/jlib-add1.tar.gz +1995/06/21 | 150730 | obsolete/language/japanese/jtex/jlib.tar.gz +1995/06/18 | 1751 | obsolete/language/japanese/jtex/README +1995/07/26 | 1091 | obsolete/language/japanese/jtex/web2c-6.1j-add1.tar.gz +1995/08/05 | 19100 | obsolete/language/japanese/jtex/web2c-6.1j-add2.tar.gz +1995/08/05 | 259455 | obsolete/language/japanese/jtex/web2c-6.1j.tar.gz 1998/05/11 | 462865 | obsolete/language/malayalam/Malayalam-TeX-1.6.zip 2001/04/01 | 17982 | obsolete/language/manju/manjutex/COPYING 2001/04/01 | 32916 | obsolete/language/manju/manjutex/doc/manjutex.dvi @@ -282399,7 +282429,7 @@ 2022/01/22 | 1272 | systems/texlive/tlnet/archive/collection-bibtexextra.r61687.tar.xz 2022/01/29 | 960 | systems/texlive/tlnet/archive/collection-binextra.r61780.tar.xz 2020/03/04 | 596 | systems/texlive/tlnet/archive/collection-context.r54074.tar.xz -2022/05/25 | 1964 | systems/texlive/tlnet/archive/collection-fontsextra.r63394.tar.xz +2022/07/20 | 1964 | systems/texlive/tlnet/archive/collection-fontsextra.r63936.tar.xz 2020/03/04 | 560 | systems/texlive/tlnet/archive/collection-fontsrecommended.r54074.tar.xz 2021/12/03 | 536 | systems/texlive/tlnet/archive/collection-fontutils.r61207.tar.xz 2022/02/27 | 584 | systems/texlive/tlnet/archive/collection-formatsextra.r62226.tar.xz @@ -284467,15 +284497,15 @@ 2021/03/03 | 893672 | systems/texlive/tlnet/archive/fewerfloatpages.doc.r58058.tar.xz 2021/03/03 | 2660 | systems/texlive/tlnet/archive/fewerfloatpages.r58058.tar.xz 2021/03/03 | 16108 | systems/texlive/tlnet/archive/fewerfloatpages.source.r58058.tar.xz -2020/07/08 | 516512 | systems/texlive/tlnet/archive/feyn.doc.r55777.tar.xz +2022/07/20 | 522192 | systems/texlive/tlnet/archive/feyn.doc.r63935.tar.xz 2019/02/28 | 466364 | systems/texlive/tlnet/archive/feynmf.doc.r17259.tar.xz 2019/02/28 | 19484 | systems/texlive/tlnet/archive/feynmf.r17259.tar.xz 2019/02/28 | 64056 | systems/texlive/tlnet/archive/feynmf.source.r17259.tar.xz 2019/02/28 | 375268 | systems/texlive/tlnet/archive/feynmp-auto.doc.r30223.tar.xz 2019/02/28 | 1912 | systems/texlive/tlnet/archive/feynmp-auto.r30223.tar.xz 2019/02/28 | 4768 | systems/texlive/tlnet/archive/feynmp-auto.source.r30223.tar.xz -2020/07/08 | 13492 | systems/texlive/tlnet/archive/feyn.r55777.tar.xz -2020/07/08 | 16212 | systems/texlive/tlnet/archive/feyn.source.r55777.tar.xz +2022/07/20 | 13512 | systems/texlive/tlnet/archive/feyn.r63935.tar.xz +2022/07/20 | 16212 | systems/texlive/tlnet/archive/feyn.source.r63935.tar.xz 2022/01/24 | 190180 | systems/texlive/tlnet/archive/ffcode.doc.r61719.tar.xz 2022/01/24 | 1924 | systems/texlive/tlnet/archive/ffcode.r61719.tar.xz 2019/02/28 | 381912 | systems/texlive/tlnet/archive/ffslides.doc.r38895.tar.xz @@ -284585,9 +284615,9 @@ 2019/08/06 | 202740 | systems/texlive/tlnet/archive/fixcmex.doc.r51825.tar.xz 2019/08/06 | 1400 | systems/texlive/tlnet/archive/fixcmex.r51825.tar.xz 2019/08/06 | 2868 | systems/texlive/tlnet/archive/fixcmex.source.r51825.tar.xz -2022/07/15 | 321516 | systems/texlive/tlnet/archive/fixdif.doc.r63892.tar.xz -2022/07/15 | 1816 | systems/texlive/tlnet/archive/fixdif.r63892.tar.xz -2022/07/15 | 6844 | systems/texlive/tlnet/archive/fixdif.source.r63892.tar.xz +2022/07/20 | 321848 | systems/texlive/tlnet/archive/fixdif.doc.r63938.tar.xz +2022/07/20 | 1796 | systems/texlive/tlnet/archive/fixdif.r63938.tar.xz +2022/07/20 | 6864 | systems/texlive/tlnet/archive/fixdif.source.r63938.tar.xz 2019/02/28 | 50024 | systems/texlive/tlnet/archive/fixfoot.doc.r17131.tar.xz 2019/02/28 | 3280 | systems/texlive/tlnet/archive/fixfoot.r17131.tar.xz 2019/02/28 | 286260 | systems/texlive/tlnet/archive/fixjfm.doc.r47113.tar.xz @@ -286036,8 +286066,8 @@ 2019/02/28 | 340 | systems/texlive/tlnet/archive/jfmutil.x86_64-solaris.r44835.tar.xz 2022/04/06 | 151932 | systems/texlive/tlnet/archive/jieeetran.doc.r62958.tar.xz 2022/04/06 | 17652 | systems/texlive/tlnet/archive/jieeetran.r62958.tar.xz -2022/06/21 | 164884 | systems/texlive/tlnet/archive/jigsaw.doc.r63662.tar.xz -2022/06/21 | 1528 | systems/texlive/tlnet/archive/jigsaw.r63662.tar.xz +2022/07/20 | 173688 | systems/texlive/tlnet/archive/jigsaw.doc.r63937.tar.xz +2022/07/20 | 1532 | systems/texlive/tlnet/archive/jigsaw.r63937.tar.xz 2019/02/28 | 128124 | systems/texlive/tlnet/archive/jkmath.doc.r47109.tar.xz 2019/02/28 | 1636 | systems/texlive/tlnet/archive/jkmath.r47109.tar.xz 2019/02/28 | 3252 | systems/texlive/tlnet/archive/jknapltx.doc.r19440.tar.xz @@ -290475,8 +290505,8 @@ 2019/02/28 | 3888 | systems/texlive/tlnet/archive/rulercompass.r32392.tar.xz 2019/02/28 | 6072 | systems/texlive/tlnet/archive/rulercompass.source.r32392.tar.xz 2020/03/13 | 6620 | systems/texlive/tlnet/archive/ruler.r54251.tar.xz -2022/05/15 | 54836 | systems/texlive/tlnet/archive/runcode.doc.r63301.tar.xz -2022/05/15 | 3916 | systems/texlive/tlnet/archive/runcode.r63301.tar.xz +2022/07/20 | 56552 | systems/texlive/tlnet/archive/runcode.doc.r63939.tar.xz +2022/07/20 | 4000 | systems/texlive/tlnet/archive/runcode.r63939.tar.xz 2019/02/28 | 3584 | systems/texlive/tlnet/archive/r_und_s.doc.r15878.tar.xz 2019/02/28 | 15440 | systems/texlive/tlnet/archive/r_und_s.r15878.tar.xz 2019/02/28 | 297660 | systems/texlive/tlnet/archive/russ.doc.r25209.tar.xz @@ -290772,9 +290802,9 @@ 2022/06/14 | 2912 | systems/texlive/tlnet/archive/showhyphenation.r63578.tar.xz 2022/06/24 | 45620 | systems/texlive/tlnet/archive/showkerning.doc.r63708.tar.xz 2022/06/24 | 2660 | systems/texlive/tlnet/archive/showkerning.r63708.tar.xz -2021/10/28 | 231580 | systems/texlive/tlnet/archive/showlabels.doc.r60877.tar.xz -2021/10/28 | 3212 | systems/texlive/tlnet/archive/showlabels.r60877.tar.xz -2021/10/28 | 15948 | systems/texlive/tlnet/archive/showlabels.source.r60877.tar.xz +2022/07/20 | 232956 | systems/texlive/tlnet/archive/showlabels.doc.r63940.tar.xz +2022/07/20 | 3236 | systems/texlive/tlnet/archive/showlabels.r63940.tar.xz +2022/07/20 | 16256 | systems/texlive/tlnet/archive/showlabels.source.r63940.tar.xz 2019/02/28 | 211912 | systems/texlive/tlnet/archive/showtags.doc.r20336.tar.xz 2019/02/28 | 2052 | systems/texlive/tlnet/archive/showtags.r20336.tar.xz 2022/03/05 | 2123460 | systems/texlive/tlnet/archive/shtthesis.doc.r62441.tar.xz @@ -291732,7 +291762,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 -2022/07/19 | 418864 | systems/texlive/tlnet/archive/texlive-scripts.doc.r63925.tar.xz +2022/07/20 | 418788 | systems/texlive/tlnet/archive/texlive-scripts.doc.r63934.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 @@ -291756,7 +291786,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 -2022/07/19 | 113496 | systems/texlive/tlnet/archive/texlive-scripts.r63925.tar.xz +2022/07/20 | 113544 | systems/texlive/tlnet/archive/texlive-scripts.r63934.tar.xz 2021/02/25 | 572 | systems/texlive/tlnet/archive/texlive-scripts.universal-darwin.r57908.tar.xz 2022/04/19 | 36296 | systems/texlive/tlnet/archive/texlive-scripts.win32.r63068.tar.xz 2020/05/17 | 588 | systems/texlive/tlnet/archive/texlive-scripts.x86_64-cygwin.r55172.tar.xz @@ -292246,8 +292276,8 @@ 2021/01/22 | 8444 | systems/texlive/tlnet/archive/tkz-berge.r57485.tar.xz 2022/07/16 | 40180 | systems/texlive/tlnet/archive/tkz-doc.doc.r63902.tar.xz 2022/07/16 | 536 | systems/texlive/tlnet/archive/tkz-doc.r63902.tar.xz -2022/07/16 | 1157328 | systems/texlive/tlnet/archive/tkz-euclide.doc.r63907.tar.xz -2022/07/16 | 39604 | systems/texlive/tlnet/archive/tkz-euclide.r63907.tar.xz +2022/07/20 | 1157656 | systems/texlive/tlnet/archive/tkz-euclide.doc.r63941.tar.xz +2022/07/20 | 39620 | systems/texlive/tlnet/archive/tkz-euclide.r63941.tar.xz 2022/07/16 | 96832 | systems/texlive/tlnet/archive/tkzexample.doc.r63908.tar.xz 2022/07/16 | 3872 | systems/texlive/tlnet/archive/tkzexample.r63908.tar.xz 2022/02/09 | 749696 | systems/texlive/tlnet/archive/tkz-fct.doc.r61949.tar.xz @@ -293474,6 +293504,8 @@ 2022/06/21 | 897156 | systems/texlive/tlnet/archive/yet-another-guide-latex2e.doc.r63663.tar.xz 2022/06/21 | 572 | systems/texlive/tlnet/archive/yet-another-guide-latex2e.r63663.tar.xz 2019/04/06 | 192824 | systems/texlive/tlnet/archive/yfonts.doc.r50755.tar.xz +2022/07/20 | 146036 | systems/texlive/tlnet/archive/yfonts-otf.doc.r63936.tar.xz +2022/07/20 | 52024 | systems/texlive/tlnet/archive/yfonts-otf.r63936.tar.xz 2019/04/06 | 1820 | systems/texlive/tlnet/archive/yfonts.r50755.tar.xz 2019/04/06 | 7968 | systems/texlive/tlnet/archive/yfonts.source.r50755.tar.xz 2019/02/28 | 952 | systems/texlive/tlnet/archive/yfonts-t1.doc.r36013.tar.xz @@ -293571,16 +293603,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 2022/07/17 | 124404 | systems/texlive/tlnet/install-tl -2022/07/19 | 5804914 | systems/texlive/tlnet/install-tl-unx.tar.gz -2022/07/19 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512 -2022/07/19 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc +2022/07/20 | 5804718 | systems/texlive/tlnet/install-tl-unx.tar.gz +2022/07/20 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512 +2022/07/20 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc 2021/04/11 | 4945 | systems/texlive/tlnet/install-tl-windows.bat -2022/07/19 | 20459353 | systems/texlive/tlnet/install-tl-windows.exe -2022/07/19 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512 -2022/07/19 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc -2022/07/19 | 25489326 | systems/texlive/tlnet/install-tl.zip -2022/07/19 | 145 | systems/texlive/tlnet/install-tl.zip.sha512 -2022/07/19 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc +2022/07/20 | 20463125 | systems/texlive/tlnet/install-tl-windows.exe +2022/07/20 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512 +2022/07/20 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc +2022/07/20 | 25489317 | systems/texlive/tlnet/install-tl.zip +2022/07/20 | 145 | systems/texlive/tlnet/install-tl.zip.sha512 +2022/07/20 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc 2022/04/03 | 1229 | systems/texlive/tlnet/README.md 2022/04/03 | 0 | systems/texlive/tlnet/TEXLIVE_2022 2022/02/28 | 7791 | systems/texlive/tlnet/tlpkg/gpg/pubring.gpg @@ -293590,7 +293622,7 @@ 2022/02/28 | 1280 | systems/texlive/tlnet/tlpkg/gpg/trustdb.gpg 2022/05/27 | 49794 | systems/texlive/tlnet/tlpkg/installer/config.guess 2010/11/11 | 11651 | systems/texlive/tlnet/tlpkg/installer/COPYING.MinGW-runtime.txt -2022/07/18 | 7436 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl +2022/07/19 | 7390 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl 2022/04/27 | 215352 | systems/texlive/tlnet/tlpkg/installer/curl/curl-ca-bundle.crt 2020/04/15 | 2606592 | systems/texlive/tlnet/tlpkg/installer/curl/curl.exe 2017/04/16 | 2629 | systems/texlive/tlnet/tlpkg/installer/installer-options.txt @@ -293632,12 +293664,12 @@ 2021/05/16 | 20371 | systems/texlive/tlnet/tlpkg/TeXLive/TLCrypto.pm 2021/12/21 | 5429 | systems/texlive/tlnet/tlpkg/TeXLive/TLDownload.pm 2021/12/21 | 27582 | systems/texlive/tlnet/tlpkg/TeXLive/TLPaper.pm -2022/07/19 | 17557620 | systems/texlive/tlnet/tlpkg/texlive.tlpdb -2022/07/19 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 +2022/07/20 | 17559148 | systems/texlive/tlnet/tlpkg/texlive.tlpdb +2022/07/20 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 2022/04/18 | 86658 | systems/texlive/tlnet/tlpkg/TeXLive/TLPDB.pm -2022/07/19 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 -2022/07/19 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc -2022/07/19 | 2392680 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz +2022/07/20 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 +2022/07/20 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc +2022/07/20 | 2392992 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz 2021/12/21 | 58848 | systems/texlive/tlnet/tlpkg/TeXLive/TLPOBJ.pm 2022/04/18 | 42116 | systems/texlive/tlnet/tlpkg/TeXLive/TLPSRC.pm 2021/12/21 | 16130 | systems/texlive/tlnet/tlpkg/TeXLive/TLTREE.pm @@ -298897,7 +298929,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 -2022/07/19 | 659658 | systems/win32/miktex/tm/packages/files.csv.lzma +2022/07/20 | 659658 | 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 @@ -300559,9 +300591,9 @@ 2018/01/12 | 157226 | systems/win32/miktex/tm/packages/miktex-zip-bin-x64.tar.lzma 2022/07/16 | 39688 | systems/win32/miktex/tm/packages/miktex-zlib-bin-2.9.tar.lzma 2022/07/16 | 43614 | systems/win32/miktex/tm/packages/miktex-zlib-bin-x64-2.9.tar.lzma -2022/07/19 | 286514 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma -2022/07/19 | 1474308 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma -2022/07/19 | 1358454 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma +2022/07/20 | 286473 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma +2022/07/20 | 1474474 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma +2022/07/20 | 1358362 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma 2022/07/16 | 13509 | systems/win32/miktex/tm/packages/miktex-zzip-bin-2.9.tar.lzma 2022/07/16 | 14427 | 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 @@ -300802,191 +300834,191 @@ 2018/04/09 | 400132 | systems/win32/miktex/tm/packages/newunicodechar.tar.lzma 2011/09/19 | 101312 | systems/win32/miktex/tm/packages/newvbtm.tar.lzma 2021/03/17 | 232249 | systems/win32/miktex/tm/packages/newverbs.tar.lzma -2022/07/19 | 659836 | systems/win32/miktex/tm/packages/next/files.csv.lzma -2022/07/19 | 51828 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-2.9.tar.lzma -2022/07/19 | 57284 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma -2022/07/19 | 1023424 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-2.9.tar.lzma -2022/07/19 | 1161246 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma -2022/07/19 | 28930 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-2.9.tar.lzma -2022/07/19 | 31572 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma -2022/07/19 | 30158 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-2.9.tar.lzma -2022/07/19 | 35251 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma -2022/07/19 | 56965 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-2.9.tar.lzma -2022/07/19 | 65178 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma -2022/07/19 | 83218 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-2.9.tar.lzma -2022/07/19 | 95603 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma -2022/07/19 | 69370 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-2.9.tar.lzma -2022/07/19 | 77247 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma -2022/07/19 | 27387 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-2.9.tar.lzma -2022/07/19 | 31532 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma -2022/07/19 | 332482 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-2.9.tar.lzma -2022/07/19 | 394070 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma -2022/07/19 | 32775 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-2.9.tar.lzma -2022/07/19 | 37020 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma -2022/07/19 | 51464 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-2.9.tar.lzma -2022/07/19 | 57515 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma -2022/07/19 | 244718 | systems/win32/miktex/tm/packages/next/miktex-console-bin-2.9.tar.lzma -2022/07/19 | 270788 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma -2022/07/19 | 179834 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-2.9.tar.lzma -2022/07/19 | 196154 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma -2022/07/19 | 92904 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-2.9.tar.lzma -2022/07/19 | 103265 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma -2022/07/19 | 21338 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-2.9.tar.lzma -2022/07/19 | 24140 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma -2022/07/19 | 481220 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma -2022/07/19 | 46418 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-2.9.tar.lzma -2022/07/19 | 51990 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma -2022/07/19 | 285844 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-2.9.tar.lzma -2022/07/19 | 326016 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma -2022/07/19 | 41460 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-2.9.tar.lzma -2022/07/19 | 45803 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma -2022/07/19 | 120682 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-2.9.tar.lzma -2022/07/19 | 135401 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma -2022/07/19 | 1297232 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-2.9.tar.lzma -2022/07/19 | 1455265 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma -2022/07/19 | 99487 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-2.9.tar.lzma -2022/07/19 | 112994 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma -2022/07/19 | 43672 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-2.9.tar.lzma -2022/07/19 | 48841 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma -2022/07/19 | 25261 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-2.9.tar.lzma -2022/07/19 | 28502 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma -2022/07/19 | 56906 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-2.9.tar.lzma -2022/07/19 | 63161 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma -2022/07/19 | 136104 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-2.9.tar.lzma -2022/07/19 | 155472 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma -2022/07/19 | 74110 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-2.9.tar.lzma -2022/07/19 | 79106 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma -2022/07/19 | 72152 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-2.9.tar.lzma -2022/07/19 | 81351 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma -2022/07/19 | 259332 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-2.9.tar.lzma -2022/07/19 | 295871 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma -2022/07/19 | 22153 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-2.9.tar.lzma -2022/07/19 | 25104 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma -2022/07/19 | 97422 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-2.9.tar.lzma -2022/07/19 | 113026 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma -2022/07/19 | 64629 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-2.9.tar.lzma -2022/07/19 | 73217 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma -2022/07/19 | 96970 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-2.9.tar.lzma -2022/07/19 | 115404 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma -2022/07/19 | 38692 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-2.9.tar.lzma -2022/07/19 | 43700 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma -2022/07/19 | 483447 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-2.9.tar.lzma -2022/07/19 | 564871 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma -2022/07/19 | 204191 | systems/win32/miktex/tm/packages/next/miktex-hitex-bin.tar.lzma -2022/07/19 | 247273 | systems/win32/miktex/tm/packages/next/miktex-hitex-bin-x64.tar.lzma -2022/07/19 | 152543 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-2.9.tar.lzma -2022/07/19 | 169636 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma -2022/07/19 | 95498 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-2.9.tar.lzma -2022/07/19 | 109688 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma -2022/07/19 | 16462 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-2.9.tar.lzma -2022/07/19 | 18390 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma -2022/07/19 | 28508 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-2.9.tar.lzma -2022/07/19 | 30555 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma -2022/07/19 | 631396 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-2.9.tar.lzma -2022/07/19 | 681996 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma -2022/07/19 | 532440 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-2.9.tar.lzma -2022/07/19 | 599118 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma -2022/07/19 | 478114 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-2.9.tar.lzma -2022/07/19 | 527081 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma -2022/07/19 | 94100 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-2.9.tar.lzma -2022/07/19 | 103624 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma -2022/07/19 | 1740658 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-2.9.tar.lzma -2022/07/19 | 2027161 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma -2022/07/19 | 67993 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-2.9.tar.lzma -2022/07/19 | 74072 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma -2022/07/19 | 27744 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-2.9.tar.lzma -2022/07/19 | 32080 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma -2022/07/19 | 7754 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-2.9.tar.lzma -2022/07/19 | 8819 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma -2022/07/19 | 190509 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-2.9.tar.lzma -2022/07/19 | 209176 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma -2022/07/19 | 251193 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-2.9.tar.lzma -2022/07/19 | 286692 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma -2022/07/19 | 99343 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-2.9.tar.lzma -2022/07/19 | 104730 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma -2022/07/19 | 126875 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-2.9.tar.lzma -2022/07/19 | 140069 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma -2022/07/19 | 287375 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-2.9.tar.lzma -2022/07/19 | 325592 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma -2022/07/19 | 199825 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-2.9.tar.lzma -2022/07/19 | 181608 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma -2022/07/19 | 49728 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-2.9.tar.lzma -2022/07/19 | 55267 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma -2022/07/19 | 31441 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-2.9.tar.lzma -2022/07/19 | 35212 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma -2022/07/19 | 38311 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-2.9.tar.lzma -2022/07/19 | 43617 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma -2022/07/19 | 43507 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-2.9.tar.lzma -2022/07/19 | 48034 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma -2022/07/19 | 45809 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-2.9.tar.lzma -2022/07/19 | 52366 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma -2022/07/19 | 197328 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-2.9.tar.lzma -2022/07/19 | 213318 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma -2022/07/19 | 36408 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin.tar.lzma -2022/07/19 | 41137 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin-x64.tar.lzma -2022/07/19 | 748816 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-2.9.tar.lzma -2022/07/19 | 824815 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma -2022/07/19 | 200458 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-2.9.tar.lzma -2022/07/19 | 203527 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma -2022/07/19 | 210189 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-2.9.tar.lzma -2022/07/19 | 245183 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma -2022/07/19 | 79452 | systems/win32/miktex/tm/packages/next/miktex-png-bin-2.9.tar.lzma -2022/07/19 | 88390 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma -2022/07/19 | 1180314 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-2.9.tar.lzma -2022/07/19 | 1322192 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma -2022/07/19 | 20186 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-2.9.tar.lzma -2022/07/19 | 23976 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma -2022/07/19 | 31581 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-2.9.tar.lzma -2022/07/19 | 37545 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma -2022/07/19 | 64869 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-2.9.tar.lzma -2022/07/19 | 72970 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma -2022/07/19 | 50554 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-2.9.tar.lzma -2022/07/19 | 58741 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma -2022/07/19 | 692213 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin.tar.lzma -2022/07/19 | 763861 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin-x64.tar.lzma -2022/07/19 | 1354844 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-2.9.tar.lzma -2022/07/19 | 1503355 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma -2022/07/19 | 42744 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-2.9.tar.lzma -2022/07/19 | 52579 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma -2022/07/19 | 57416 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin.tar.lzma -2022/07/19 | 63795 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma -2022/07/19 | 25502 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-2.9.tar.lzma -2022/07/19 | 27629 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma -2022/07/19 | 16517 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-2.9.tar.lzma -2022/07/19 | 18492 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma -2022/07/19 | 64181 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-2.9.tar.lzma -2022/07/19 | 70948 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma -2022/07/19 | 157153 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-2.9.tar.lzma -2022/07/19 | 173123 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma -2022/07/19 | 58254 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-2.9.tar.lzma -2022/07/19 | 68210 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma -2022/07/19 | 100584 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-2.9.tar.lzma -2022/07/19 | 107322 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma -2022/07/19 | 2695590 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-2.9.tar.lzma -2022/07/19 | 2823041 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma -2022/07/19 | 55560 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-2.9.tar.lzma -2022/07/19 | 62337 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma -2022/07/19 | 37038 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin.tar.lzma -2022/07/19 | 41199 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma -2022/07/19 | 28715 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-2.9.tar.lzma -2022/07/19 | 33837 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma -2022/07/19 | 68060 | systems/win32/miktex/tm/packages/next/miktex-web-bin-2.9.tar.lzma -2022/07/19 | 73610 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma -2022/07/19 | 316695 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-2.9.tar.lzma -2022/07/19 | 352130 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma -2022/07/19 | 55745 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin.tar.lzma -2022/07/19 | 57455 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin-x64.tar.lzma -2022/07/19 | 591164 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-2.9.tar.lzma -2022/07/19 | 630005 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma -2022/07/19 | 39638 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-2.9.tar.lzma -2022/07/19 | 43673 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma -2022/07/19 | 286481 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma -2022/07/19 | 1474555 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma -2022/07/19 | 1358257 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma -2022/07/19 | 13518 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-2.9.tar.lzma -2022/07/19 | 14435 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma +2022/07/20 | 659836 | systems/win32/miktex/tm/packages/next/files.csv.lzma +2022/07/20 | 51828 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-2.9.tar.lzma +2022/07/20 | 57283 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma +2022/07/20 | 1023425 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-2.9.tar.lzma +2022/07/20 | 1161245 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma +2022/07/20 | 28929 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-2.9.tar.lzma +2022/07/20 | 31572 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma +2022/07/20 | 30157 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-2.9.tar.lzma +2022/07/20 | 35251 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma +2022/07/20 | 56964 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-2.9.tar.lzma +2022/07/20 | 65178 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma +2022/07/20 | 83218 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-2.9.tar.lzma +2022/07/20 | 95605 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma +2022/07/20 | 69367 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-2.9.tar.lzma +2022/07/20 | 77247 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma +2022/07/20 | 27386 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-2.9.tar.lzma +2022/07/20 | 31532 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma +2022/07/20 | 332480 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-2.9.tar.lzma +2022/07/20 | 394070 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma +2022/07/20 | 32776 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-2.9.tar.lzma +2022/07/20 | 37020 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma +2022/07/20 | 51462 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-2.9.tar.lzma +2022/07/20 | 57515 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma +2022/07/20 | 244719 | systems/win32/miktex/tm/packages/next/miktex-console-bin-2.9.tar.lzma +2022/07/20 | 270790 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma +2022/07/20 | 179833 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-2.9.tar.lzma +2022/07/20 | 196154 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma +2022/07/20 | 92902 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-2.9.tar.lzma +2022/07/20 | 103261 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma +2022/07/20 | 21337 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-2.9.tar.lzma +2022/07/20 | 24140 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma +2022/07/20 | 481220 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma +2022/07/20 | 46419 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-2.9.tar.lzma +2022/07/20 | 51990 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma +2022/07/20 | 285843 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-2.9.tar.lzma +2022/07/20 | 326014 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma +2022/07/20 | 41460 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-2.9.tar.lzma +2022/07/20 | 45804 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma +2022/07/20 | 120683 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-2.9.tar.lzma +2022/07/20 | 135401 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma +2022/07/20 | 1297230 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-2.9.tar.lzma +2022/07/20 | 1455266 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma +2022/07/20 | 99486 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-2.9.tar.lzma +2022/07/20 | 112994 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma +2022/07/20 | 43671 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-2.9.tar.lzma +2022/07/20 | 48840 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma +2022/07/20 | 25261 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-2.9.tar.lzma +2022/07/20 | 28501 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma +2022/07/20 | 56905 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-2.9.tar.lzma +2022/07/20 | 63161 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma +2022/07/20 | 136103 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-2.9.tar.lzma +2022/07/20 | 155471 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma +2022/07/20 | 74110 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-2.9.tar.lzma +2022/07/20 | 79106 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma +2022/07/20 | 72151 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-2.9.tar.lzma +2022/07/20 | 81350 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma +2022/07/20 | 259332 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-2.9.tar.lzma +2022/07/20 | 295868 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma +2022/07/20 | 22153 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-2.9.tar.lzma +2022/07/20 | 25104 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma +2022/07/20 | 97421 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-2.9.tar.lzma +2022/07/20 | 113027 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma +2022/07/20 | 64628 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-2.9.tar.lzma +2022/07/20 | 73216 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma +2022/07/20 | 96970 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-2.9.tar.lzma +2022/07/20 | 115404 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma +2022/07/20 | 38692 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-2.9.tar.lzma +2022/07/20 | 43699 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma +2022/07/20 | 483448 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-2.9.tar.lzma +2022/07/20 | 564871 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma +2022/07/20 | 204192 | systems/win32/miktex/tm/packages/next/miktex-hitex-bin.tar.lzma +2022/07/20 | 247273 | systems/win32/miktex/tm/packages/next/miktex-hitex-bin-x64.tar.lzma +2022/07/20 | 152543 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-2.9.tar.lzma +2022/07/20 | 169632 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma +2022/07/20 | 95497 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-2.9.tar.lzma +2022/07/20 | 109688 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma +2022/07/20 | 16463 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-2.9.tar.lzma +2022/07/20 | 18391 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma +2022/07/20 | 28508 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-2.9.tar.lzma +2022/07/20 | 30555 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma +2022/07/20 | 631398 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-2.9.tar.lzma +2022/07/20 | 681995 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma +2022/07/20 | 532438 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-2.9.tar.lzma +2022/07/20 | 599119 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma +2022/07/20 | 478112 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-2.9.tar.lzma +2022/07/20 | 527079 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma +2022/07/20 | 94099 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-2.9.tar.lzma +2022/07/20 | 103623 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma +2022/07/20 | 1740657 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-2.9.tar.lzma +2022/07/20 | 2027162 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma +2022/07/20 | 67994 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-2.9.tar.lzma +2022/07/20 | 74072 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma +2022/07/20 | 27745 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-2.9.tar.lzma +2022/07/20 | 32080 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma +2022/07/20 | 7753 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-2.9.tar.lzma +2022/07/20 | 8818 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma +2022/07/20 | 190509 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-2.9.tar.lzma +2022/07/20 | 209177 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma +2022/07/20 | 251193 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-2.9.tar.lzma +2022/07/20 | 286694 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma +2022/07/20 | 99343 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-2.9.tar.lzma +2022/07/20 | 104730 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma +2022/07/20 | 126878 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-2.9.tar.lzma +2022/07/20 | 140069 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma +2022/07/20 | 287374 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-2.9.tar.lzma +2022/07/20 | 325593 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma +2022/07/20 | 199823 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-2.9.tar.lzma +2022/07/20 | 181606 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma +2022/07/20 | 49728 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-2.9.tar.lzma +2022/07/20 | 55268 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma +2022/07/20 | 31441 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-2.9.tar.lzma +2022/07/20 | 35213 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma +2022/07/20 | 38311 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-2.9.tar.lzma +2022/07/20 | 43616 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma +2022/07/20 | 43507 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-2.9.tar.lzma +2022/07/20 | 48033 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma +2022/07/20 | 45809 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-2.9.tar.lzma +2022/07/20 | 52365 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma +2022/07/20 | 197327 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-2.9.tar.lzma +2022/07/20 | 213318 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma +2022/07/20 | 36408 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin.tar.lzma +2022/07/20 | 41137 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin-x64.tar.lzma +2022/07/20 | 748817 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-2.9.tar.lzma +2022/07/20 | 824814 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma +2022/07/20 | 200460 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-2.9.tar.lzma +2022/07/20 | 203528 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma +2022/07/20 | 210192 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-2.9.tar.lzma +2022/07/20 | 245183 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma +2022/07/20 | 79450 | systems/win32/miktex/tm/packages/next/miktex-png-bin-2.9.tar.lzma +2022/07/20 | 88390 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma +2022/07/20 | 1180314 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-2.9.tar.lzma +2022/07/20 | 1322193 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma +2022/07/20 | 20186 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-2.9.tar.lzma +2022/07/20 | 23977 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma +2022/07/20 | 31580 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-2.9.tar.lzma +2022/07/20 | 37543 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma +2022/07/20 | 64868 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-2.9.tar.lzma +2022/07/20 | 72970 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma +2022/07/20 | 50554 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-2.9.tar.lzma +2022/07/20 | 58742 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma +2022/07/20 | 692213 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin.tar.lzma +2022/07/20 | 763862 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin-x64.tar.lzma +2022/07/20 | 1354845 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-2.9.tar.lzma +2022/07/20 | 1503355 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma +2022/07/20 | 42743 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-2.9.tar.lzma +2022/07/20 | 52579 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma +2022/07/20 | 57416 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin.tar.lzma +2022/07/20 | 63796 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma +2022/07/20 | 25502 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-2.9.tar.lzma +2022/07/20 | 27628 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma +2022/07/20 | 16516 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-2.9.tar.lzma +2022/07/20 | 18493 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma +2022/07/20 | 64178 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-2.9.tar.lzma +2022/07/20 | 70948 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma +2022/07/20 | 157153 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-2.9.tar.lzma +2022/07/20 | 173123 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma +2022/07/20 | 58253 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-2.9.tar.lzma +2022/07/20 | 68211 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma +2022/07/20 | 100585 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-2.9.tar.lzma +2022/07/20 | 107321 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma +2022/07/20 | 2695587 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-2.9.tar.lzma +2022/07/20 | 2823041 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma +2022/07/20 | 55559 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-2.9.tar.lzma +2022/07/20 | 62335 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma +2022/07/20 | 37039 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin.tar.lzma +2022/07/20 | 41200 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma +2022/07/20 | 28716 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-2.9.tar.lzma +2022/07/20 | 33837 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma +2022/07/20 | 68061 | systems/win32/miktex/tm/packages/next/miktex-web-bin-2.9.tar.lzma +2022/07/20 | 73609 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma +2022/07/20 | 316696 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-2.9.tar.lzma +2022/07/20 | 352131 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma +2022/07/20 | 55744 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin.tar.lzma +2022/07/20 | 57454 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin-x64.tar.lzma +2022/07/20 | 591160 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-2.9.tar.lzma +2022/07/20 | 630006 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma +2022/07/20 | 39637 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-2.9.tar.lzma +2022/07/20 | 43671 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma +2022/07/20 | 286537 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma +2022/07/20 | 1474289 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma +2022/07/20 | 1359449 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma +2022/07/20 | 13517 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-2.9.tar.lzma +2022/07/20 | 14435 | 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 -2022/07/19 | 1153 | systems/win32/miktex/tm/packages/next/pr.ini +2022/07/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 @@ -301473,7 +301505,7 @@ 2022/02/22 | 6917 | systems/win32/miktex/tm/packages/preview.tar.lzma 2019/06/20 | 375963 | systems/win32/miktex/tm/packages/prftree.tar.lzma 2021/04/23 | 274028 | systems/win32/miktex/tm/packages/principia.tar.lzma -2022/07/19 | 1138 | systems/win32/miktex/tm/packages/pr.ini +2022/07/20 | 1138 | 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 @@ -303386,7 +303418,7 @@ 2004/06/04 | 404 | tds/tds.sed 2004/06/23 | 65418 | tds/tds.tex 2019/05/29 | 304264 | tds.zip -2022/07/20 | 186 | timestamp +2022/07/21 | 186 | timestamp 2002/08/26 | 61898 | usergrps/dante/antrag.pdf 2002/08/26 | 118217 | usergrps/dante/antrag.ps 2022/02/28 | 917 | usergrps/dante/dtk/doc/beispiel.bib diff --git a/FILES.byname.gz b/FILES.byname.gz index b1b767aa09..e2e1cae143 100644 Binary files a/FILES.byname.gz and b/FILES.byname.gz differ diff --git a/FILES.last07days b/FILES.last07days index 709a2abd24..fb108b6501 100644 --- a/FILES.last07days +++ b/FILES.last07days @@ -1,341 +1,478 @@ -2022/07/19 | 99487 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-2.9.tar.lzma -2022/07/19 | 99343 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-2.9.tar.lzma -2022/07/19 | 97422 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-2.9.tar.lzma -2022/07/19 | 96970 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-2.9.tar.lzma -2022/07/19 | 95603 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma -2022/07/19 | 95498 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-2.9.tar.lzma -2022/07/19 | 94100 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-2.9.tar.lzma +2022/07/20 | 99486 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-2.9.tar.lzma +2022/07/20 | 99343 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-2.9.tar.lzma +2022/07/20 | 98070 | macros/latex/contrib/hvfloat/doc/examples/multi-inner2s2c.pdf +2022/07/20 | 98061 | macros/latex/contrib/hvfloat/doc/examples/capPos.pdf +2022/07/20 | 97421 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-2.9.tar.lzma +2022/07/20 | 96970 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-2.9.tar.lzma +2022/07/20 | 95605 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma +2022/07/20 | 95497 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-2.9.tar.lzma +2022/07/20 | 94099 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-2.9.tar.lzma +2022/07/20 | 92902 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-2.9.tar.lzma +2022/07/20 | 90436 | macros/latex/contrib/hvfloat/doc/examples/paper-default1s2c.pdf +2022/07/20 | 90257 | macros/latex/contrib/hvfloat/doc/examples/paper-default2s2c.pdf +2022/07/20 | 89620 | macros/latex/contrib/hvfloat/doc/examples/paper-after2s2c.pdf +2022/07/20 | 89151 | macros/latex/contrib/hvfloat/doc/examples/right1s2c.pdf +2022/07/20 | 88543 | macros/latex/contrib/wrapstuff/wrapstuff.dtx +2022/07/20 | 88390 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma +2022/07/20 | 883440 | macros/latex/required/babel/base/babel.pdf +2022/07/20 | 8818 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma +2022/07/20 | 87873 | macros/latex/contrib/hvfloat/doc/examples/paper-default2s1c.pdf +2022/07/20 | 87776 | macros/latex/contrib/hvfloat/doc/examples/paper-inner2s2c.pdf +2022/07/20 | 87165 | macros/latex/contrib/hvfloat/doc/examples/paper-even2s1c.pdf +2022/07/20 | 87061 | macros/latex/contrib/hvfloat/doc/examples/paper-odd2s1c.pdf +2022/07/20 | 87033 | macros/latex/contrib/hvfloat/doc/examples/fullpage1s2c.pdf +2022/07/20 | 86559 | macros/latex/contrib/hvfloat/doc/examples/after2s2c.pdf +2022/07/20 | 86549 | macros/latex/contrib/hvfloat/doc/examples/fullpage1s1c.pdf +2022/07/20 | 86322 | macros/latex/contrib/hvfloat/doc/examples/odd1s2c.pdf +2022/07/20 | 86224 | macros/latex/contrib/hvfloat/doc/examples/outer1s2c.pdf +2022/07/20 | 86195 | macros/latex/contrib/hvfloat/doc/examples/even1s2c.pdf +2022/07/20 | 85685 | graphics/pgf/contrib/bodeplot/bodeplot.dtx +2022/07/20 | 85642 | macros/latex/contrib/hvfloat/doc/examples/default2s2c.pdf +2022/07/20 | 85418 | macros/latex/contrib/hvfloat/doc/examples/right2s2c.pdf +2022/07/20 | 85385 | macros/latex/contrib/hvfloat/doc/examples/odd2s2c.pdf +2022/07/20 | 85326 | macros/latex/contrib/hvfloat/doc/examples/left2s2c.pdf +2022/07/20 | 84895 | macros/latex/contrib/hvfloat/doc/examples/even2s2c.pdf +2022/07/20 | 84587 | macros/latex/contrib/hvfloat/doc/examples/outer2s2c.pdf +2022/07/20 | 84135 | macros/latex/contrib/hvfloat/doc/examples/even2s1c.pdf +2022/07/20 | 84006 | macros/latex/contrib/hvfloat/doc/examples/outer2s1c.pdf +2022/07/20 | 83924 | macros/latex/contrib/hvfloat/doc/examples/inner2s2c.pdf +2022/07/20 | 838780 | macros/latex/required/babel/base/locale.zip +2022/07/20 | 83734 | macros/latex/contrib/hvfloat/doc/examples/inner1s2c.pdf +2022/07/20 | 83699 | macros/latex/contrib/hvfloat/doc/examples/inner2s1c.pdf +2022/07/20 | 83218 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-2.9.tar.lzma +2022/07/20 | 83180 | macros/latex/contrib/hvfloat/doc/examples/default1s2c.pdf +2022/07/20 | 824814 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma +2022/07/20 | 81685 | macros/latex/contrib/hvfloat/doc/examples/default1s1c.pdf +2022/07/20 | 81371 | macros/latex/contrib/hvfloat/doc/examples/paper-right1s1c.pdf +2022/07/20 | 81350 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma +2022/07/20 | 81195 | macros/latex/contrib/hvfloat/doc/examples/paper-default1s1c.pdf +2022/07/20 | 79855 | macros/latex/contrib/hvfloat/doc/examples/after1s1c.pdf +2022/07/20 | 79681 | macros/latex/contrib/hvfloat/doc/examples/right1s1c.pdf +2022/07/20 | 79450 | systems/win32/miktex/tm/packages/next/miktex-png-bin-2.9.tar.lzma +2022/07/20 | 79106 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma +2022/07/20 | 78955 | macros/latex/contrib/hvfloat/doc/examples/right2s1c.pdf +2022/07/20 | 78954 | macros/latex/contrib/hvfloat/doc/examples/default2s1c.pdf +2022/07/20 | 78903 | macros/latex/contrib/hvfloat/doc/examples/paper-after1s1c.pdf +2022/07/20 | 7799 | macros/latex/required/babel/base/babel.ins +2022/07/20 | 776733 | graphics/pgf/contrib/bodeplot.zip +2022/07/20 | 7753 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-2.9.tar.lzma +2022/07/20 | 77375 | macros/latex/contrib/hvfloat/doc/examples/odd1s1c.pdf +2022/07/20 | 77247 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma +2022/07/20 | 77202 | macros/latex/contrib/hvfloat/doc/examples/even1s1c.pdf +2022/07/20 | 763862 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin-x64.tar.lzma +2022/07/20 | 748817 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-2.9.tar.lzma +2022/07/20 | 748494 | macros/latex/required/babel/base/babel.dtx +2022/07/20 | 74110 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-2.9.tar.lzma +2022/07/20 | 74072 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma +2022/07/20 | 73609 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma +2022/07/20 | 73216 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma +2022/07/20 | 72970 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma +2022/07/20 | 72151 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-2.9.tar.lzma +2022/07/20 | 721265 | graphics/pgf/contrib/tikzfill/tikzfill.pdf +2022/07/20 | 70948 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma +2022/07/20 | 7057 | fonts/feyn/feyn.html +2022/07/20 | 69916 | macros/latex/contrib/hvfloat/latex/hvfloat.sty +2022/07/20 | 69367 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-2.9.tar.lzma +2022/07/20 | 692213 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin.tar.lzma +2022/07/20 | 6864 | systems/texlive/tlnet/archive/fixdif.source.r63938.tar.xz +2022/07/20 | 68211 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma +2022/07/20 | 681995 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma +2022/07/20 | 68061 | systems/win32/miktex/tm/packages/next/miktex-web-bin-2.9.tar.lzma +2022/07/20 | 67994 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-2.9.tar.lzma +2022/07/20 | 67965 | fonts/feyn/overheads.pdf +2022/07/20 | 675 | fonts/feyn/overheads.tex +2022/07/20 | 6729 | fonts/feyn/style.css +2022/07/20 | 659836 | systems/win32/miktex/tm/packages/next/files.csv.lzma +2022/07/20 | 659658 | systems/win32/miktex/tm/packages/files.csv.lzma +2022/07/20 | 6563 | graphics/pgf/contrib/tikzfill/tikzlibraryfill.rhombus.code.tex +2022/07/20 | 65178 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma +2022/07/20 | 64868 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-2.9.tar.lzma +2022/07/20 | 64628 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-2.9.tar.lzma +2022/07/20 | 64178 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-2.9.tar.lzma +2022/07/20 | 63796 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma +2022/07/20 | 637842 | graphics/pgf/contrib/tikzfill.zip +2022/07/20 | 637204 | install/graphics/pgf/contrib/tikzfill.tds.zip +2022/07/20 | 63161 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma +2022/07/20 | 631398 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-2.9.tar.lzma +2022/07/20 | 630006 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma +2022/07/20 | 62335 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma +2022/07/20 | 616570 | macros/latex/contrib/hvfloat/doc/examples/doublepage2s2c.pdf +2022/07/20 | 606752 | fonts/feyn.zip +2022/07/20 | 599119 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma +2022/07/20 | 5939 | fonts/feyn/exercise-font.tex +2022/07/20 | 591160 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-2.9.tar.lzma +2022/07/20 | 58742 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma +2022/07/20 | 58253 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-2.9.tar.lzma +2022/07/20 | 5804718 | systems/texlive/tlnet/install-tl-unx.tar.gz +2022/07/20 | 57515 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma +2022/07/20 | 57454 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin-x64.tar.lzma +2022/07/20 | 57416 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin.tar.lzma +2022/07/20 | 57404 | fonts/feyn/feyn.dtx +2022/07/20 | 57283 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma +2022/07/20 | 56964 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-2.9.tar.lzma +2022/07/20 | 56905 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-2.9.tar.lzma +2022/07/20 | 56552 | systems/texlive/tlnet/archive/runcode.doc.r63939.tar.xz +2022/07/20 | 564871 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma +2022/07/20 | 55744 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin.tar.lzma +2022/07/20 | 55559 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-2.9.tar.lzma +2022/07/20 | 55268 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma +2022/07/20 | 53 | fonts/greek/gfs/gfsneohellenic/VERSION +2022/07/20 | 532438 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-2.9.tar.lzma +2022/07/20 | 527079 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma +2022/07/20 | 52579 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma +2022/07/20 | 52365 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma +2022/07/20 | 522192 | systems/texlive/tlnet/archive/feyn.doc.r63935.tar.xz +2022/07/20 | 52024 | systems/texlive/tlnet/archive/yfonts-otf.r63936.tar.xz +2022/07/20 | 51990 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma +2022/07/20 | 51828 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-2.9.tar.lzma +2022/07/20 | 51462 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-2.9.tar.lzma +2022/07/20 | 50554 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-2.9.tar.lzma +2022/07/20 | 5037834 | macros/latex/contrib/hvfloat/doc/hvfloat.pdf +2022/07/20 | 49728 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-2.9.tar.lzma +2022/07/20 | 4935 | fonts/feyn/sample-two-loop-annotated.png +2022/07/20 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 +2022/07/20 | 48840 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma +2022/07/20 | 4857 | fonts/feyn/release-notes.html +2022/07/20 | 483448 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-2.9.tar.lzma +2022/07/20 | 481220 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma +2022/07/20 | 48033 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma +2022/07/20 | 478112 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-2.9.tar.lzma +2022/07/20 | 4680 | graphics/pgf/contrib/tikzfill/tikzfill-doc.sty +2022/07/20 | 46419 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-2.9.tar.lzma +2022/07/20 | 45809 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-2.9.tar.lzma +2022/07/20 | 45804 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma +2022/07/20 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc +2022/07/20 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc +2022/07/20 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc +2022/07/20 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc +2022/07/20 | 4422 | fonts/feyn/feynmac.mf +2022/07/20 | 43699 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma +2022/07/20 | 43671 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma +2022/07/20 | 43671 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-2.9.tar.lzma +2022/07/20 | 43616 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma +2022/07/20 | 43507 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-2.9.tar.lzma +2022/07/20 | 42743 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-2.9.tar.lzma +2022/07/20 | 424500 | macros/latex/contrib/wrapstuff.zip +2022/07/20 | 422157 | macros/latex/contrib/wrapstuff/wrapstuff.pdf +2022/07/20 | 42108 | graphics/pgf/contrib/tikzfill/tikzfill.tex +2022/07/20 | 4199 | macros/latex/contrib/hvfloat/Changes +2022/07/20 | 418788 | systems/texlive/tlnet/archive/texlive-scripts.doc.r63934.tar.xz +2022/07/20 | 41460 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-2.9.tar.lzma +2022/07/20 | 41200 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma +2022/07/20 | 41137 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin-x64.tar.lzma +2022/07/20 | 402 | graphics/pgf/contrib/tikzfill/CHANGES.md +2022/07/20 | 4000 | systems/texlive/tlnet/archive/runcode.r63939.tar.xz +2022/07/20 | 3981 | fonts/feyn/sample-phi4.png +2022/07/20 | 39637 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-2.9.tar.lzma +2022/07/20 | 39620 | systems/texlive/tlnet/archive/tkz-euclide.r63941.tar.xz +2022/07/20 | 394070 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma +2022/07/20 | 3928 | fonts/feyn/sample-two-loop.png +2022/07/20 | 3920 | fonts/feyn/sample-massive.png +2022/07/20 | 38692 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-2.9.tar.lzma +2022/07/20 | 38311 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-2.9.tar.lzma +2022/07/20 | 37543 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma +2022/07/20 | 37039 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin.tar.lzma +2022/07/20 | 37020 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma +2022/07/20 | 36408 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin.tar.lzma +2022/07/20 | 3629 | graphics/pgf/contrib/bodeplot/README.md +2022/07/20 | 3526 | macros/latex/required/babel/base/bbidxglo.dtx +2022/07/20 | 35251 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma +2022/07/20 | 35213 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma +2022/07/20 | 352131 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma +2022/07/20 | 33837 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma +2022/07/20 | 332480 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-2.9.tar.lzma +2022/07/20 | 3319 | fonts/feyn/sample-vertex.png +2022/07/20 | 32776 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-2.9.tar.lzma +2022/07/20 | 326102 | fonts/feyn/feyn.pdf +2022/07/20 | 326014 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma +2022/07/20 | 325593 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma +2022/07/20 | 3236 | systems/texlive/tlnet/archive/showlabels.r63940.tar.xz +2022/07/20 | 321848 | systems/texlive/tlnet/archive/fixdif.doc.r63938.tar.xz +2022/07/20 | 32080 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma +2022/07/20 | 316696 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-2.9.tar.lzma +2022/07/20 | 31580 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-2.9.tar.lzma +2022/07/20 | 31572 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma +2022/07/20 | 31532 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma +2022/07/20 | 31441 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-2.9.tar.lzma +2022/07/20 | 30555 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma +2022/07/20 | 30157 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-2.9.tar.lzma +2022/07/20 | 3013535 | install/macros/latex/required/babel-base.tds.zip +2022/07/20 | 295868 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma +2022/07/20 | 28929 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-2.9.tar.lzma +2022/07/20 | 287374 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-2.9.tar.lzma +2022/07/20 | 28716 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-2.9.tar.lzma +2022/07/20 | 286694 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma +2022/07/20 | 286537 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma +2022/07/20 | 286473 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma +2022/07/20 | 285843 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-2.9.tar.lzma +2022/07/20 | 28508 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-2.9.tar.lzma +2022/07/20 | 28501 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma +2022/07/20 | 2823041 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma +2022/07/20 | 27745 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-2.9.tar.lzma +2022/07/20 | 27628 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma +2022/07/20 | 27386 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-2.9.tar.lzma +2022/07/20 | 270790 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma +2022/07/20 | 2695587 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-2.9.tar.lzma +2022/07/20 | 259332 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-2.9.tar.lzma +2022/07/20 | 25502 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-2.9.tar.lzma +2022/07/20 | 25489317 | systems/texlive/tlnet/install-tl.zip +2022/07/20 | 25261 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-2.9.tar.lzma +2022/07/20 | 251193 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-2.9.tar.lzma +2022/07/20 | 25104 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma +2022/07/20 | 247273 | systems/win32/miktex/tm/packages/next/miktex-hitex-bin-x64.tar.lzma +2022/07/20 | 2462 | macros/latex/contrib/hvfloat/doc/examples/paper-default1s1c.tex +2022/07/20 | 245183 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma +2022/07/20 | 2450 | graphics/pgf/contrib/tikzfill/README.md +2022/07/20 | 244719 | systems/win32/miktex/tm/packages/next/miktex-console-bin-2.9.tar.lzma +2022/07/20 | 24140 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma +2022/07/20 | 2399 | fonts/feyn/README +2022/07/20 | 23977 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma +2022/07/20 | 2392992 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz +2022/07/20 | 23442 | fonts/feyn/feyn.mf +2022/07/20 | 232956 | systems/texlive/tlnet/archive/showlabels.doc.r63940.tar.xz +2022/07/20 | 231 | fonts/feyn/feyn.ins +2022/07/20 | 2317480 | macros/latex/contrib/hvfloat/doc/examples/doublepage2s1c.pdf +2022/07/20 | 22153 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-2.9.tar.lzma +2022/07/20 | 21890 | macros/latex/required/babel/base/bbcompat.dtx +2022/07/20 | 2141 | macros/latex/required/babel/base/README.md +2022/07/20 | 21337 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-2.9.tar.lzma +2022/07/20 | 213318 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma +2022/07/20 | 210192 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-2.9.tar.lzma +2022/07/20 | 209177 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma +2022/07/20 | 20463125 | systems/texlive/tlnet/install-tl-windows.exe +2022/07/20 | 204192 | systems/win32/miktex/tm/packages/next/miktex-hitex-bin.tar.lzma +2022/07/20 | 203528 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma +2022/07/20 | 2027162 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma +2022/07/20 | 20186 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-2.9.tar.lzma +2022/07/20 | 200460 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-2.9.tar.lzma +2022/07/20 | 199823 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-2.9.tar.lzma +2022/07/20 | 197327 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-2.9.tar.lzma +2022/07/20 | 1964 | systems/texlive/tlnet/archive/collection-fontsextra.r63936.tar.xz +2022/07/20 | 196154 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma +2022/07/20 | 1920315 | macros/latex/required/babel/base.zip +2022/07/20 | 190509 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-2.9.tar.lzma +2022/07/20 | 1891 | graphics/pgf/contrib/tikzfill/tikzfill-common.sty +2022/07/20 | 18493 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma +2022/07/20 | 18391 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma +2022/07/20 | 181606 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma +2022/07/20 | 17989295 | macros/latex/contrib/hvfloat.zip +2022/07/20 | 179833 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-2.9.tar.lzma +2022/07/20 | 1796 | systems/texlive/tlnet/archive/fixdif.r63938.tar.xz +2022/07/20 | 1759143 | macros/latex/contrib/hvfloat/doc/examples/doublefullpage2s2c.pdf +2022/07/20 | 17559148 | systems/texlive/tlnet/tlpkg/texlive.tlpdb +2022/07/20 | 1740657 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-2.9.tar.lzma +2022/07/20 | 173688 | systems/texlive/tlnet/archive/jigsaw.doc.r63937.tar.xz +2022/07/20 | 173604 | macros/latex/contrib/hvfloat/doc/examples/odd2s1c.pdf +2022/07/20 | 173123 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma +2022/07/20 | 1703 | macros/latex/contrib/wrapstuff/README.md +2022/07/20 | 169632 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma +2022/07/20 | 16516 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-2.9.tar.lzma +2022/07/20 | 16463 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-2.9.tar.lzma +2022/07/20 | 16256 | systems/texlive/tlnet/archive/showlabels.source.r63940.tar.xz +2022/07/20 | 16212 | systems/texlive/tlnet/archive/feyn.source.r63935.tar.xz +2022/07/20 | 161626 | fonts/feyn/exercise-font.pdf +2022/07/20 | 1615381 | macros/latex/contrib/hvfloat/doc/examples/paper-twocolcaption-after2s2c.pdf +2022/07/20 | 157153 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-2.9.tar.lzma +2022/07/20 | 1562087 | fonts/greek/gfs/gfsneohellenic.zip +2022/07/20 | 155471 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma +2022/07/20 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512 +2022/07/20 | 1532 | systems/texlive/tlnet/archive/jigsaw.r63937.tar.xz +2022/07/20 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512 +2022/07/20 | 152543 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-2.9.tar.lzma +2022/07/20 | 1503355 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma +2022/07/20 | 1474474 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma +2022/07/20 | 1474289 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma +2022/07/20 | 146064 | macros/latex/contrib/hvfloat/doc/examples/multi-default2s1c.pdf +2022/07/20 | 146036 | systems/texlive/tlnet/archive/yfonts-otf.doc.r63936.tar.xz +2022/07/20 | 145 | systems/texlive/tlnet/install-tl.zip.sha512 +2022/07/20 | 145886 | macros/latex/contrib/hvfloat/doc/examples/multi-default1s1c.pdf +2022/07/20 | 1455266 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma +2022/07/20 | 145453 | macros/latex/contrib/hvfloat/doc/examples/multi-right1s1c.pdf +2022/07/20 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 +2022/07/20 | 144711 | macros/latex/contrib/hvfloat/doc/examples/sub-right1s2c.pdf +2022/07/20 | 144612 | macros/latex/contrib/hvfloat/doc/examples/sub-after2s2c.pdf +2022/07/20 | 14435 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma +2022/07/20 | 144144 | macros/latex/contrib/hvfloat/doc/examples/sub-right2s2c.pdf +2022/07/20 | 144030 | macros/latex/contrib/hvfloat/doc/examples/sub-default1s2c.pdf +2022/07/20 | 143725 | macros/latex/contrib/hvfloat/doc/examples/sub-default1s1c.pdf +2022/07/20 | 143688 | macros/latex/contrib/hvfloat/doc/examples/sub-after1s1c.pdf +2022/07/20 | 143611 | macros/latex/contrib/hvfloat/doc/examples/sub-right1s1c.pdf +2022/07/20 | 143328 | macros/latex/contrib/hvfloat/doc/examples/sub-default2s2c.pdf +2022/07/20 | 142146 | macros/latex/contrib/hvfloat/doc/examples/multi-after1s1c.pdf +2022/07/20 | 1416 | graphics/pgf/contrib/bodeplot/bodeplot.ins +2022/07/20 | 1414 | fonts/feyn/feynx11.mf +2022/07/20 | 1410 | fonts/feyn/feynx24.mf +2022/07/20 | 1410 | fonts/feyn/feynx10.mf +2022/07/20 | 1409 | fonts/feyn/feynx18.mf +2022/07/20 | 1408 | fonts/feyn/feynx12.mf +2022/07/20 | 140069 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma +2022/07/20 | 1382 | fonts/feyn/feyn11.mf +2022/07/20 | 1379 | fonts/feyn/feyntext11.mf +2022/07/20 | 1378 | fonts/feyn/feyn24.mf +2022/07/20 | 1378 | fonts/feyn/feyn10.mf +2022/07/20 | 1377 | fonts/feyn/feyn18.mf +2022/07/20 | 1377 | fonts/feyn/feyn12.mf +2022/07/20 | 1374 | fonts/feyn/feyntext24.mf +2022/07/20 | 1374 | fonts/feyn/feyntext12.mf +2022/07/20 | 1373 | fonts/feyn/feyntext18.mf +2022/07/20 | 1373 | fonts/feyn/feyntext10.mf +2022/07/20 | 136103 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-2.9.tar.lzma +2022/07/20 | 1359449 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma +2022/07/20 | 1358362 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma +2022/07/20 | 1354845 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-2.9.tar.lzma +2022/07/20 | 135401 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma +2022/07/20 | 13517 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-2.9.tar.lzma +2022/07/20 | 13512 | systems/texlive/tlnet/archive/feyn.r63935.tar.xz +2022/07/20 | 1333 | fonts/feyn/LICENCE +2022/07/20 | 1322193 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma +2022/07/20 | 1297230 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-2.9.tar.lzma +2022/07/20 | 126878 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-2.9.tar.lzma +2022/07/20 | 121819 | macros/latex/contrib/hvfloat/doc/examples/wide2s2c.pdf +2022/07/20 | 120832 | macros/latex/contrib/hvfloat/doc/examples/wide1s2c.pdf +2022/07/20 | 120683 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-2.9.tar.lzma +2022/07/20 | 120656 | macros/latex/contrib/hvfloat/doc/hvfloat.tex +2022/07/20 | 12043 | graphics/pgf/contrib/tikzfill/tikzlibraryfill.hexagon.code.tex +2022/07/20 | 11 | fonts/feyn/VERSION +2022/07/20 | 1180314 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-2.9.tar.lzma +2022/07/20 | 11652 | graphics/pgf/contrib/tikzfill/tikzlibraryfill.image.code.tex +2022/07/20 | 1161245 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma +2022/07/20 | 1157656 | systems/texlive/tlnet/archive/tkz-euclide.doc.r63941.tar.xz +2022/07/20 | 115404 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma +2022/07/20 | 1153 | systems/win32/miktex/tm/packages/next/pr.ini +2022/07/20 | 1138 | systems/win32/miktex/tm/packages/pr.ini +2022/07/20 | 113544 | systems/texlive/tlnet/archive/texlive-scripts.r63934.tar.xz +2022/07/20 | 113027 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma +2022/07/20 | 112994 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma +2022/07/20 | 1109 | graphics/pgf/contrib/tikzfill/tikzfill.sty +2022/07/20 | 1101 | graphics/pgf/contrib/tikzfill/tikzfill.rhombus.sty +2022/07/20 | 1101 | graphics/pgf/contrib/tikzfill/tikzfill.hexagon.sty +2022/07/20 | 109688 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma +2022/07/20 | 1083 | graphics/pgf/contrib/tikzfill/tikzfill.image.sty +2022/07/20 | 107321 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma +2022/07/20 | 104730 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma +2022/07/20 | 103623 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma +2022/07/20 | 103261 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma +2022/07/20 | 102871 | macros/latex/contrib/hvfloat/doc/examples/multi-default1s2c.pdf +2022/07/20 | 1023425 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-2.9.tar.lzma +2022/07/20 | 101319 | macros/latex/contrib/hvfloat/doc/examples/multi-outer2s2c.pdf +2022/07/20 | 1007326 | graphics/pgf/contrib/bodeplot/bodeplot.pdf +2022/07/20 | 100585 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-2.9.tar.lzma +2022/07/20 | 100507 | macros/latex/contrib/hvfloat/doc/examples/multi-default2s2c.pdf 2022/07/19 | 9391 | macros/latex/contrib/tkz/tkz-euclide/latex/tkz-obj-eu-circles.tex -2022/07/19 | 92904 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-2.9.tar.lzma -2022/07/19 | 88390 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma -2022/07/19 | 8819 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma 2022/07/19 | 8465 | fonts/yfonts-otf/doc/yfonts-otf.ltx -2022/07/19 | 83218 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-2.9.tar.lzma -2022/07/19 | 824815 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma -2022/07/19 | 81351 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma -2022/07/19 | 79452 | systems/win32/miktex/tm/packages/next/miktex-png-bin-2.9.tar.lzma 2022/07/19 | 7934 | macros/latex/contrib/tkz/tkz-euclide/doc/latex/TKZdoc-euclide-main.tex 2022/07/19 | 79307 | fonts/yfonts-otf/doc/Erlkonig.pdf -2022/07/19 | 79106 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma 2022/07/19 | 787 | macros/latex/contrib/fixdif/README.md 2022/07/19 | 7808 | macros/latex/contrib/tkz/tkz-euclide/latex/tkz-tools-eu-math.tex 2022/07/19 | 7783 | macros/latex/contrib/tkz/tkz-euclide/latex/tkz-tools-eu-utilities.tex -2022/07/19 | 7754 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-2.9.tar.lzma -2022/07/19 | 77247 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma -2022/07/19 | 763861 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin-x64.tar.lzma -2022/07/19 | 748816 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-2.9.tar.lzma -2022/07/19 | 74110 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-2.9.tar.lzma -2022/07/19 | 74072 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma -2022/07/19 | 73610 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma +2022/07/19 | 7390 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl 2022/07/19 | 7321 | macros/latex/contrib/tkz/tkz-euclide/latex/tkz-obj-eu-draw-points.tex -2022/07/19 | 73217 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma -2022/07/19 | 72970 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma -2022/07/19 | 72152 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-2.9.tar.lzma -2022/07/19 | 70948 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma 2022/07/19 | 6 | macros/latex/contrib/showlabels/VERSION -2022/07/19 | 69370 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-2.9.tar.lzma -2022/07/19 | 692213 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin.tar.lzma -2022/07/19 | 68210 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma -2022/07/19 | 681996 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma -2022/07/19 | 68060 | systems/win32/miktex/tm/packages/next/miktex-web-bin-2.9.tar.lzma -2022/07/19 | 67993 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-2.9.tar.lzma 2022/07/19 | 6765 | macros/latex/contrib/tkz/tkz-euclide/latex/tkz-obj-eu-axesmin.tex 2022/07/19 | 6729 | macros/latex/contrib/showlabels/style.css -2022/07/19 | 659836 | systems/win32/miktex/tm/packages/next/files.csv.lzma -2022/07/19 | 659658 | systems/win32/miktex/tm/packages/files.csv.lzma 2022/07/19 | 6576 | macros/latex/contrib/tkz/tkz-euclide/latex/tkz-obj-eu-circles-by.tex 2022/07/19 | 656908 | systems/texlive/tlnet/archive/polyglossia.doc.r63931.tar.xz -2022/07/19 | 65178 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma 2022/07/19 | 6496 | macros/latex/contrib/tkz/tkz-euclide/latex/tkz-obj-eu-points.tex -2022/07/19 | 64869 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-2.9.tar.lzma 2022/07/19 | 64839 | fonts/yfonts-otf/doc/yfonts-otf.pdf -2022/07/19 | 64629 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-2.9.tar.lzma -2022/07/19 | 64181 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-2.9.tar.lzma -2022/07/19 | 63795 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma -2022/07/19 | 63161 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma -2022/07/19 | 631396 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-2.9.tar.lzma -2022/07/19 | 630005 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma -2022/07/19 | 62337 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma 2022/07/19 | 614164 | systems/texlive/tlnet/archive/texlive-common.doc.r63925.tar.xz 2022/07/19 | 6085 | macros/latex/contrib/tkz/tkz-euclide/latex/tkz-euclide.sty 2022/07/19 | 60152 | macros/latex/contrib/runcode.zip -2022/07/19 | 599118 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma 2022/07/19 | 5962 | macros/latex/contrib/tkz/tkz-euclide/latex/tkz-obj-eu-draw-circles.tex -2022/07/19 | 594397 | fonts/feyn.zip -2022/07/19 | 591164 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-2.9.tar.lzma -2022/07/19 | 58741 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma -2022/07/19 | 58254 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-2.9.tar.lzma -2022/07/19 | 5804914 | systems/texlive/tlnet/install-tl-unx.tar.gz -2022/07/19 | 57515 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma -2022/07/19 | 57455 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin-x64.tar.lzma -2022/07/19 | 57416 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin.tar.lzma -2022/07/19 | 57284 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma -2022/07/19 | 56965 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-2.9.tar.lzma -2022/07/19 | 56906 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-2.9.tar.lzma -2022/07/19 | 564871 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma 2022/07/19 | 55816 | macros/latex/contrib/runcode/runcode.pdf -2022/07/19 | 55745 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin.tar.lzma -2022/07/19 | 55560 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-2.9.tar.lzma -2022/07/19 | 55267 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma 2022/07/19 | 5343 | macros/latex/contrib/tkz/tkz-euclide/latex/tkz-obj-eu-points-rnd.tex -2022/07/19 | 532440 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-2.9.tar.lzma 2022/07/19 | 52976 | macros/latex/contrib/showlabels/showlabels.dtx -2022/07/19 | 527081 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma -2022/07/19 | 52579 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma -2022/07/19 | 52366 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma -2022/07/19 | 51990 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma -2022/07/19 | 51828 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-2.9.tar.lzma -2022/07/19 | 51464 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-2.9.tar.lzma 2022/07/19 | 5067 | macros/latex/contrib/tkz/tkz-euclide/latex/tkz-obj-eu-draw-polygons.tex -2022/07/19 | 50554 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-2.9.tar.lzma -2022/07/19 | 49728 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-2.9.tar.lzma -2022/07/19 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 -2022/07/19 | 48841 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma -2022/07/19 | 483447 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-2.9.tar.lzma -2022/07/19 | 481220 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma -2022/07/19 | 48034 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma -2022/07/19 | 478114 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-2.9.tar.lzma 2022/07/19 | 47528 | fonts/yfonts-otf/fonts/ygoth.otf -2022/07/19 | 46418 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-2.9.tar.lzma 2022/07/19 | 4601 | macros/latex/contrib/tkz/tkz-euclide/latex/tkz-obj-eu-protractor.tex -2022/07/19 | 45809 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-2.9.tar.lzma -2022/07/19 | 45803 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma -2022/07/19 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc -2022/07/19 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc -2022/07/19 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc -2022/07/19 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc 2022/07/19 | 448 | systems/texlive/tlnet/archive/mcf2graph.r63929.tar.xz 2022/07/19 | 4375 | macros/latex/contrib/tkz/tkz-euclide/latex/tkz-lib-eu-marks.tex -2022/07/19 | 43700 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma -2022/07/19 | 43673 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma -2022/07/19 | 43672 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-2.9.tar.lzma -2022/07/19 | 43617 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma -2022/07/19 | 43507 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-2.9.tar.lzma -2022/07/19 | 42744 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-2.9.tar.lzma -2022/07/19 | 418864 | systems/texlive/tlnet/archive/texlive-scripts.doc.r63925.tar.xz -2022/07/19 | 41460 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-2.9.tar.lzma -2022/07/19 | 41199 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma -2022/07/19 | 41137 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin-x64.tar.lzma 2022/07/19 | 4085 | macros/latex/contrib/tkz/tkz-euclide/latex/tkz-obj-eu-polygons.tex 2022/07/19 | 4052588 | systems/texlive/tlnet/archive/bidi.doc.r63930.tar.xz 2022/07/19 | 40320 | fonts/yfonts-otf/fonts/yfrak.otf 2022/07/19 | 3975 | macros/latex/contrib/tkz/tkz-euclide/latex/tkz-obj-eu-compass.tex -2022/07/19 | 39638 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-2.9.tar.lzma -2022/07/19 | 394070 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma -2022/07/19 | 38692 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-2.9.tar.lzma -2022/07/19 | 38311 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-2.9.tar.lzma -2022/07/19 | 37545 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma 2022/07/19 | 37220 | fonts/yfonts-otf/fonts/yswab.otf -2022/07/19 | 37038 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin.tar.lzma -2022/07/19 | 37020 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma -2022/07/19 | 36408 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin.tar.lzma -2022/07/19 | 35251 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma -2022/07/19 | 352130 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma -2022/07/19 | 35212 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma 2022/07/19 | 348 | systems/texlive/tlnet/archive/texlive-common.r63925.tar.xz 2022/07/19 | 3484 | macros/latex/contrib/tkz/tkz-euclide/latex/tkz-tools-eu-base.tex 2022/07/19 | 3473 | macros/latex/contrib/tkz/tkz-euclide/latex/tkz-obj-eu-grids.tex 2022/07/19 | 3414 | fonts/yfonts-otf/doc/Erlkonig.ltx -2022/07/19 | 33837 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma 2022/07/19 | 3371 | fonts/yfonts-otf/tex/oldgerm-otf.sty -2022/07/19 | 332482 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-2.9.tar.lzma 2022/07/19 | 331118 | macros/latex/contrib/fixdif/fixdif.pdf -2022/07/19 | 32775 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-2.9.tar.lzma 2022/07/19 | 327444 | macros/latex/contrib/fixdif.zip -2022/07/19 | 326016 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma -2022/07/19 | 325592 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma -2022/07/19 | 32080 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma -2022/07/19 | 316695 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-2.9.tar.lzma -2022/07/19 | 31581 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-2.9.tar.lzma -2022/07/19 | 31572 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma -2022/07/19 | 31532 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma -2022/07/19 | 31441 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-2.9.tar.lzma 2022/07/19 | 3111 | macros/latex/contrib/tkz/tkz-euclide/latex/tkz-tools-eu-angles.tex 2022/07/19 | 3061 | macros/latex/contrib/fixdif/fixdif.ins -2022/07/19 | 30555 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma -2022/07/19 | 30158 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-2.9.tar.lzma 2022/07/19 | 2987 | macros/latex/contrib/tkz/tkz-euclide/latex/tkz-tools-eu-text.tex 2022/07/19 | 296192 | systems/texlive/tlnet/archive/gfsneohellenicmath.r63928.tar.xz -2022/07/19 | 295871 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma -2022/07/19 | 28930 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-2.9.tar.lzma -2022/07/19 | 287375 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-2.9.tar.lzma -2022/07/19 | 28715 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-2.9.tar.lzma -2022/07/19 | 286692 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma -2022/07/19 | 286514 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma -2022/07/19 | 286481 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma -2022/07/19 | 285844 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-2.9.tar.lzma -2022/07/19 | 28508 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-2.9.tar.lzma -2022/07/19 | 28502 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma 2022/07/19 | 2836 | macros/latex/contrib/tkz/tkz-euclide/latex/tkz-obj-eu-draw-triangles.tex -2022/07/19 | 2823041 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma -2022/07/19 | 27744 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-2.9.tar.lzma -2022/07/19 | 27629 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma 2022/07/19 | 2749 | macros/latex/contrib/tkz/tkz-euclide/latex/tkz-tools-eu-modules.tex -2022/07/19 | 27387 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-2.9.tar.lzma -2022/07/19 | 270788 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma -2022/07/19 | 2695590 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-2.9.tar.lzma 2022/07/19 | 268 | macros/latex/contrib/showlabels/showlabels.ins -2022/07/19 | 259332 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-2.9.tar.lzma -2022/07/19 | 25502 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-2.9.tar.lzma -2022/07/19 | 25489326 | systems/texlive/tlnet/install-tl.zip 2022/07/19 | 252659 | macros/latex/contrib/showlabels.zip -2022/07/19 | 25261 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-2.9.tar.lzma -2022/07/19 | 251193 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-2.9.tar.lzma -2022/07/19 | 25104 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma -2022/07/19 | 247273 | systems/win32/miktex/tm/packages/next/miktex-hitex-bin-x64.tar.lzma -2022/07/19 | 245183 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma -2022/07/19 | 244718 | systems/win32/miktex/tm/packages/next/miktex-console-bin-2.9.tar.lzma -2022/07/19 | 24140 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma -2022/07/19 | 23976 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma -2022/07/19 | 2392680 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz 2022/07/19 | 23735 | macros/latex/contrib/tkz/tkz-euclide/latex/tkz-obj-eu-points-spc.tex 2022/07/19 | 22979 | macros/latex/contrib/fixdif/fixdif.dtx 2022/07/19 | 2268 | macros/latex/contrib/tkz/tkz-euclide/latex/tkz-tools-eu-colors.tex -2022/07/19 | 22153 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-2.9.tar.lzma 2022/07/19 | 2207 | macros/latex/contrib/showlabels/README 2022/07/19 | 219520 | macros/latex/contrib/showlabels/showlabels.pdf 2022/07/19 | 21724 | macros/latex/contrib/tkz/tkz-euclide/latex/tkz-obj-eu-draw-angles.tex 2022/07/19 | 214457 | fonts/yfonts-otf.zip -2022/07/19 | 21338 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-2.9.tar.lzma -2022/07/19 | 213318 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma -2022/07/19 | 210189 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-2.9.tar.lzma -2022/07/19 | 209176 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma 2022/07/19 | 20618 | macros/latex/contrib/showlabels/showlabels.html -2022/07/19 | 20459353 | systems/texlive/tlnet/install-tl-windows.exe -2022/07/19 | 204191 | systems/win32/miktex/tm/packages/next/miktex-hitex-bin.tar.lzma -2022/07/19 | 203527 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma -2022/07/19 | 2027161 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma -2022/07/19 | 20186 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-2.9.tar.lzma 2022/07/19 | 2005 | macros/latex/contrib/tkz/tkz-euclide/latex/tkz-lib-eu-shape.tex -2022/07/19 | 200458 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-2.9.tar.lzma -2022/07/19 | 199825 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-2.9.tar.lzma -2022/07/19 | 197328 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-2.9.tar.lzma -2022/07/19 | 196154 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma 2022/07/19 | 19106 | macros/latex/contrib/showlabels/lppl.txt -2022/07/19 | 190509 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-2.9.tar.lzma 2022/07/19 | 18568 | macros/latex/contrib/tkz/tkz-euclide/latex/tkz-obj-eu-points-by.tex -2022/07/19 | 18492 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma 2022/07/19 | 18460 | macros/latex/contrib/tkz/tkz-euclide/latex/tkz-tools-eu-intersections.tex -2022/07/19 | 18390 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma -2022/07/19 | 181608 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma -2022/07/19 | 179834 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-2.9.tar.lzma 2022/07/19 | 17804 | macros/latex/contrib/tkz/tkz-euclide/latex/tkz-obj-eu-triangles.tex -2022/07/19 | 17557620 | systems/texlive/tlnet/tlpkg/texlive.tlpdb -2022/07/19 | 1740658 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-2.9.tar.lzma -2022/07/19 | 173123 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma -2022/07/19 | 169636 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma -2022/07/19 | 16517 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-2.9.tar.lzma -2022/07/19 | 16462 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-2.9.tar.lzma 2022/07/19 | 1614 | fonts/yfonts-otf/README.md 2022/07/19 | 158224 | systems/texlive/tlnet/archive/polyglossia.source.r63931.tar.xz -2022/07/19 | 157153 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-2.9.tar.lzma -2022/07/19 | 155472 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma -2022/07/19 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512 2022/07/19 | 15343 | macros/latex/contrib/runcode/runcode.sty -2022/07/19 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512 -2022/07/19 | 152543 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-2.9.tar.lzma -2022/07/19 | 1503355 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma 2022/07/19 | 148044 | systems/texlive/tlnet/archive/bidi.source.r63930.tar.xz -2022/07/19 | 1474555 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma -2022/07/19 | 1474308 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma -2022/07/19 | 145 | systems/texlive/tlnet/install-tl.zip.sha512 -2022/07/19 | 1455265 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma -2022/07/19 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 2022/07/19 | 14443 | macros/latex/contrib/tkz/tkz-euclide/latex/tkz-obj-eu-show.tex -2022/07/19 | 14435 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma 2022/07/19 | 1436 | systems/texlive/tlnet/archive/gfsneohellenicmath.doc.r63928.tar.xz -2022/07/19 | 140069 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma -2022/07/19 | 136104 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-2.9.tar.lzma -2022/07/19 | 1358454 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma -2022/07/19 | 1358257 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma -2022/07/19 | 1354844 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-2.9.tar.lzma -2022/07/19 | 135401 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma -2022/07/19 | 13518 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-2.9.tar.lzma 2022/07/19 | 13272 | macros/latex/contrib/tkz/tkz-euclide/latex/tkz-obj-eu-sectors.tex -2022/07/19 | 1322192 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma 2022/07/19 | 131436 | systems/texlive/tlnet/archive/bidi.r63930.tar.xz -2022/07/19 | 1297232 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-2.9.tar.lzma -2022/07/19 | 126875 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-2.9.tar.lzma 2022/07/19 | 1265504 | macros/latex/contrib/tkz/tkz-euclide.zip 2022/07/19 | 1239 | macros/latex/contrib/runcode/README 2022/07/19 | 1224 | macros/latex/contrib/tkz/tkz-euclide/latex/tkz-tools-eu-BB.tex -2022/07/19 | 120682 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-2.9.tar.lzma 2022/07/19 | 119580 | systems/texlive/tlnet/archive/polyglossia.r63931.tar.xz -2022/07/19 | 1180314 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-2.9.tar.lzma -2022/07/19 | 1161246 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma -2022/07/19 | 115404 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma -2022/07/19 | 1153 | systems/win32/miktex/tm/packages/next/pr.ini -2022/07/19 | 1138 | systems/win32/miktex/tm/packages/pr.ini -2022/07/19 | 113496 | systems/texlive/tlnet/archive/texlive-scripts.r63925.tar.xz -2022/07/19 | 113026 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma -2022/07/19 | 112994 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma 2022/07/19 | 11224 | macros/latex/contrib/tkz/tkz-euclide/latex/tkz-euclide.cfg 2022/07/19 | 1102232 | macros/latex/contrib/tkz/tkz-euclide/doc/tkz-euclide.pdf -2022/07/19 | 109688 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma 2022/07/19 | 10762 | macros/latex/contrib/runcode/runcode.tex -2022/07/19 | 107322 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma 2022/07/19 | 10652 | macros/latex/contrib/tkz/tkz-euclide/latex/tkz-obj-eu-points-with.tex 2022/07/19 | 10572 | macros/latex/contrib/tkz/tkz-euclide/README.md -2022/07/19 | 104730 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma 2022/07/19 | 10463 | macros/latex/contrib/tkz/tkz-euclide/latex/tkz-obj-eu-lines.tex 2022/07/19 | 1037804 | systems/texlive/tlnet/archive/mcf2graph.doc.r63929.tar.xz -2022/07/19 | 103624 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma -2022/07/19 | 103265 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma -2022/07/19 | 1023424 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-2.9.tar.lzma 2022/07/19 | 10207 | macros/latex/contrib/tkz/tkz-euclide/latex/tkz-obj-eu-draw-lines.tex -2022/07/19 | 100584 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-2.9.tar.lzma 2022/07/18 | 971089 | macros/unicodetex/latex/polyglossia/polyglossia.dtx 2022/07/18 | 8484 | systems/texlive/tlnet/archive/tabvar.r63921.tar.xz 2022/07/18 | 79537 | graphics/mcf2graph/mcf_exa_code.pdf 2022/07/18 | 7938 | graphics/pgf/contrib/jigsaw/jigsaw-doc.tex 2022/07/18 | 761651 | macros/xetex/latex/bidi/gull.jpg -2022/07/18 | 7436 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl 2022/07/18 | 714748 | systems/texlive/tlnet/archive/latex-base-dev.source.r63922.tar.xz -2022/07/18 | 6895 | fonts/feyn/feyn.html -2022/07/18 | 6729 | fonts/feyn/style.css 2022/07/18 | 65 | systems/mac/mactex/mactex-MacTeXtras-20220718.zip.md5 2022/07/18 | 619144 | systems/texlive/tlnet/archive/tabvar.doc.r63921.tar.xz 2022/07/18 | 6101 | macros/xetex/latex/bidi/bidi-doc-latex-pkgsupport.ltx -2022/07/18 | 5939 | fonts/feyn/exercise-font.tex -2022/07/18 | 582 | fonts/feyn/overheads.tex 2022/07/18 | 5823 | macros/xetex/latex/bidi/bidi-doc-plain-basics.ltx 2022/07/18 | 57636 | graphics/mcf2graph/mcf_manual.tex -2022/07/18 | 56836 | fonts/feyn/feyn.dtx 2022/07/18 | 564296 | macros/unicodetex/latex/polyglossia.zip -2022/07/18 | 55977 | fonts/feyn/overheads.pdf 2022/07/18 | 534 | macros/xetex/latex/bidi/bidi-doc.ltx 2022/07/18 | 514376969 | systems/mac/mactex/mactex-MacTeXtras-20220718.zip 2022/07/18 | 49 | systems/mac/mactex/MacTeXtras.zip.md5 -2022/07/18 | 4935 | fonts/feyn/sample-two-loop-annotated.png 2022/07/18 | 473 | graphics/pgf/contrib/jigsaw/README.md 2022/07/18 | 4698846 | install/macros/xetex/latex/bidi.tds.zip -2022/07/18 | 4579 | fonts/feyn/release-notes.html 2022/07/18 | 4547 | macros/xetex/latex/bidi/bidi-doc-latex-pkgs.ltx 2022/07/18 | 4497 | macros/xetex/latex/bidi/bidi-doc-latex-programming.ltx -2022/07/18 | 4422 | fonts/feyn/feynmac.mf 2022/07/18 | 43352 | graphics/mcf2graph/mcf_man_soc.mp 2022/07/18 | 432324 | graphics/mcf2graph/mcf_example.pdf 2022/07/18 | 4280226 | macros/xetex/latex/bidi.zip -2022/07/18 | 3981 | fonts/feyn/sample-phi4.png -2022/07/18 | 3928 | fonts/feyn/sample-two-loop.png -2022/07/18 | 3920 | fonts/feyn/sample-massive.png 2022/07/18 | 387830 | fonts/gfsneohellenicmath.zip 2022/07/18 | 38151 | systems/mac/mactex/ExtrasFolder.pdf 2022/07/18 | 3812 | graphics/mcf2graph/mcf_exa_code.tex 2022/07/18 | 3596 | macros/xetex/latex/bidi/bidi-doc-preamble.ltx 2022/07/18 | 352848 | macros/unicodetex/latex/polyglossia/polyglossia.pdf 2022/07/18 | 3469983 | macros/xetex/latex/bidi/bidi.pdf -2022/07/18 | 3319 | fonts/feyn/sample-vertex.png -2022/07/18 | 325984 | fonts/feyn/feyn.pdf 2022/07/18 | 30769112 | systems/texlive/tlnet/archive/latex-base-dev.doc.r63922.tar.xz 2022/07/18 | 3013 | graphics/pgf/contrib/jigsaw/jigsaw.sty 2022/07/18 | 2984 | graphics/mcf2graph/mcf_example.tex 2022/07/18 | 2936 | macros/xetex/latex/bidi/bidi-bibitem.pdf 2022/07/18 | 289436 | graphics/mcf2graph/mcf_manual.pdf 2022/07/18 | 2772 | systems/texlive/tlnet/archive/gitver.r63920.tar.xz -2022/07/18 | 2422 | fonts/feyn/README -2022/07/18 | 23442 | fonts/feyn/feyn.mf -2022/07/18 | 231 | fonts/feyn/feyn.ins 2022/07/18 | 23131 | macros/xetex/latex/bidi/bidi-doc-latex-basics.ltx 2022/07/18 | 2285 | graphics/mcf2graph/mcf_exa_soc.mp 2022/07/18 | 226712 | systems/texlive/tlnet/archive/latex-base-dev.r63922.tar.xz @@ -350,30 +487,12 @@ 2022/07/18 | 174269 | graphics/pgf/contrib/jigsaw.zip 2022/07/18 | 1693 | macros/xetex/latex/bidi/picture.jpg 2022/07/18 | 161 | systems/mac/mactex/mactex-MacTeXtras-20220718.zip.sha512 -2022/07/18 | 161614 | fonts/feyn/exercise-font.pdf 2022/07/18 | 1612 | systems/mac/mactex/Licenses.txt 2022/07/18 | 145 | systems/mac/mactex/MacTeXtras.zip.sha512 2022/07/18 | 14575 | graphics/mcf2graph/mcf_mplib_exa.tex -2022/07/18 | 1414 | fonts/feyn/feynx11.mf -2022/07/18 | 1410 | fonts/feyn/feynx24.mf -2022/07/18 | 1410 | fonts/feyn/feynx10.mf -2022/07/18 | 1409 | fonts/feyn/feynx18.mf -2022/07/18 | 1408 | fonts/feyn/feynx12.mf 2022/07/18 | 140860 | systems/texlive/tlnet/archive/gitver.doc.r63920.tar.xz 2022/07/18 | 1396 | macros/xetex/latex/bidi/bidi-doc-intro.ltx -2022/07/18 | 1382 | fonts/feyn/feyn11.mf -2022/07/18 | 1379 | fonts/feyn/feyntext11.mf -2022/07/18 | 1378 | fonts/feyn/feyn24.mf -2022/07/18 | 1378 | fonts/feyn/feyn10.mf -2022/07/18 | 1377 | fonts/feyn/feyn18.mf -2022/07/18 | 1377 | fonts/feyn/feyn12.mf -2022/07/18 | 1374 | fonts/feyn/feyntext24.mf -2022/07/18 | 1374 | fonts/feyn/feyntext12.mf -2022/07/18 | 1373 | fonts/feyn/feyntext18.mf -2022/07/18 | 1373 | fonts/feyn/feyntext10.mf -2022/07/18 | 1333 | fonts/feyn/LICENCE 2022/07/18 | 1323 | macros/xetex/latex/bidi/README -2022/07/18 | 11 | fonts/feyn/VERSION 2022/07/18 | 1137643 | install/macros/unicodetex/latex/polyglossia.tds.zip 2022/07/18 | 11084 | systems/texlive/tlnet/archive/tabvar.source.r63921.tar.xz 2022/07/18 | 1048141 | graphics/mcf2graph.zip @@ -861,7 +980,6 @@ 2022/07/16 | 40180 | systems/texlive/tlnet/archive/tkz-doc.doc.r63902.tar.xz 2022/07/16 | 4001 | macros/latex/contrib/gitver/gitver.tex 2022/07/16 | 39688 | systems/win32/miktex/tm/packages/miktex-zlib-bin-2.9.tar.lzma -2022/07/16 | 39604 | systems/texlive/tlnet/archive/tkz-euclide.r63907.tar.xz 2022/07/16 | 393941 | systems/win32/miktex/tm/packages/miktex-cairo-bin-x64-2.9.tar.lzma 2022/07/16 | 3872 | systems/texlive/tlnet/archive/tkzexample.r63908.tar.xz 2022/07/16 | 38642 | systems/win32/miktex/tm/packages/miktex-gsf2pk-bin-2.9.tar.lzma @@ -980,7 +1098,6 @@ 2022/07/16 | 11851628 | systems/texlive/tlnet/archive/l3kernel.doc.r63904.tar.xz 2022/07/16 | 1180421 | systems/win32/miktex/tm/packages/miktex-poppler-bin-2.9.tar.lzma 2022/07/16 | 1161779 | systems/win32/miktex/tm/packages/miktex-asymptote-bin-x64-2.9.tar.lzma -2022/07/16 | 1157328 | systems/texlive/tlnet/archive/tkz-euclide.doc.r63907.tar.xz 2022/07/16 | 115471 | systems/win32/miktex/tm/packages/miktex-gregorio-bin-x64-2.9.tar.lzma 2022/07/16 | 112940 | systems/win32/miktex/tm/packages/miktex-epstopdf-bin-x64-2.9.tar.lzma 2022/07/16 | 112881 | systems/win32/miktex/tm/packages/miktex-gd-bin-x64-2.9.tar.lzma @@ -1026,7 +1143,6 @@ 2022/07/15 | 70685 | macros/latex/contrib/l3kernel/expl3.dtx 2022/07/15 | 70578 | macros/latex/contrib/l3kernel/l3fp.dtx 2022/07/15 | 69260 | macros/latex/contrib/l3kernel/l3candidates.dtx -2022/07/15 | 6844 | systems/texlive/tlnet/archive/fixdif.source.r63892.tar.xz 2022/07/15 | 6760 | systems/texlive/tlnet/archive/pseudo.r63896.tar.xz 2022/07/15 | 6677 | macros/latex/contrib/l3kernel/l3news02.tex 2022/07/15 | 66524 | macros/latex/contrib/l3kernel/l3prg.dtx @@ -1075,7 +1191,6 @@ 2022/07/15 | 33607 | macros/latex/contrib/lwarp/lwarp.ins 2022/07/15 | 33116 | macros/latex/contrib/l3kernel/l3sys.dtx 2022/07/15 | 32430 | macros/latex/contrib/l3kernel/l3cctab.dtx -2022/07/15 | 321516 | systems/texlive/tlnet/archive/fixdif.doc.r63892.tar.xz 2022/07/15 | 3191275 | macros/latex/contrib/lwarp/lwarp.pdf 2022/07/15 | 304577 | macros/latex/contrib/l3kernel/l3regex.dtx 2022/07/15 | 29836 | macros/latex/contrib/lwarp/lwarpmk.lua @@ -1114,7 +1229,6 @@ 2022/07/15 | 1908 | macros/latex/contrib/l3kernel/interface3.tex 2022/07/15 | 18531 | macros/latex/contrib/l3kernel/l3fp-round.dtx 2022/07/15 | 18263 | macros/latex/contrib/tkz/tkz-base/latex/tkz-obj-axes.tex -2022/07/15 | 1816 | systems/texlive/tlnet/archive/fixdif.r63892.tar.xz 2022/07/15 | 17886 | macros/latex/contrib/tkz/tkzexample/doc/latex/tkzexample.tex 2022/07/15 | 1768619 | macros/latex/contrib/l3kernel/interface3.pdf 2022/07/15 | 170063 | macros/latex/contrib/l3kernel/l3news11.pdf @@ -1494,30 +1608,3 @@ 2022/07/14 | 1012088 | systems/win32/miktex/tm/packages/xepersian__doc.tar.lzma 2022/07/14 | 100665 | support/texlive/texlive-dummy/Fedora.zip 2022/07/14 | 10007 | systems/win32/miktex/tm/packages/create-theorem.tar.lzma -2022/07/13 | 9784 | systems/texlive/tlnet/archive/create-theorem.r63879.tar.xz -2022/07/13 | 9274 | language/japanese/jlreq/Makefile -2022/07/13 | 8600450 | macros/latex/contrib/profcollege/doc/ProfCollege-doc.pdf -2022/07/13 | 816627 | macros/latex/contrib/profcollege/latex/ProfCollege.sty -2022/07/13 | 8096 | systems/texlive/tlnet/archive/ndsu-thesis-2022.r63881.tar.xz -2022/07/13 | 7878 | language/japanese/jlreq/jlreq-trimmarks-ja.md -2022/07/13 | 78020 | systems/texlive/tlnet/archive/create-theorem.doc.r63879.tar.xz -2022/07/13 | 7312024 | systems/texlive/tlnet/archive/biblatex.doc.r63878.tar.xz -2022/07/13 | 6802 | language/japanese/jlreq/README.md -2022/07/13 | 6560 | language/japanese/jlreq/jlreq-trimmarks.md -2022/07/13 | 62924 | macros/latex/contrib/profcollege/metapost/PfCPseudo.mp -2022/07/13 | 603041 | language/japanese/jlreq.zip -2022/07/13 | 48330 | language/japanese/jlreq/jlreq-trimmarks.sty -2022/07/13 | 45772 | language/japanese/jlreq/README-ja.md -2022/07/13 | 371560 | language/japanese/jlreq/jlreq-ja.pdf -2022/07/13 | 284079 | language/japanese/jlreq/jlreq.cls -2022/07/13 | 254224 | systems/texlive/tlnet/archive/biblatex.r63878.tar.xz -2022/07/13 | 2209146 | macros/latex/contrib/profcollege/doc/ProfCollege-doc.zip -2022/07/13 | 1612 | systems/texlive/tlnet/archive/collection-publishers.r63881.tar.xz -2022/07/13 | 1567624 | systems/texlive/tlnet/archive/ndsu-thesis-2022.doc.r63881.tar.xz -2022/07/13 | 1348 | language/japanese/jlreq/LICENSE -2022/07/13 | 12941594 | macros/latex/contrib/profcollege.zip -2022/07/13 | 119802 | language/japanese/jlreq/jlreq.pdf -2022/07/13 | 10946453 | install/language/japanese/jlreq.tds.zip -2022/07/13 | 104857 | macros/latex/contrib/profcollege/metapost/PfCScratchpdf.mp -2022/07/13 | 102812 | macros/latex/contrib/profcollege/metapost/PfCScratch.mp -2022/07/13 | 10200 | language/japanese/jlreq/jlreq-complements.sty diff --git a/fonts/feyn/README b/fonts/feyn/README index 6c8044502a..1c3a807ba5 100644 --- a/fonts/feyn/README +++ b/fonts/feyn/README @@ -2,7 +2,7 @@ Feyn: a Metafont for Feynman diagrams ------------------------------------- -Version 0.4.2. +Version 0.4.3. This package is intended to produce relatively simple Feynman diagrams, for example within equations. @@ -26,7 +26,7 @@ equations’. There is further documentation, plus numerous examples, in the package documentation (feyn.pdf). -See the package's home page on the web: http://purl.org/nxg/dist/feyn +See the package's home page on the web: . Installation @@ -45,8 +45,8 @@ installed correctly, then the usual font-generation commands (such as `mktexpk` for example) should work as normal, and they should be invoked by default when you LaTeX the feyn.dtx file. -You should be able to find generic instructions for installing LaTeX files at -http://www.tex.ac.uk/cgi-bin/texfaq2html?label=installthings +You should be able to find generic instructions for installing LaTeX +files at . Licence diff --git a/fonts/feyn/VERSION b/fonts/feyn/VERSION index 526394f33e..5f95f31416 100644 --- a/fonts/feyn/VERSION +++ b/fonts/feyn/VERSION @@ -1 +1 @@ -feyn-0.4.2 +feyn-0.4.3 diff --git a/fonts/feyn/exercise-font.pdf b/fonts/feyn/exercise-font.pdf index 68ab27ff61..0b3ab898ce 100644 Binary files a/fonts/feyn/exercise-font.pdf and b/fonts/feyn/exercise-font.pdf differ diff --git a/fonts/feyn/feyn.dtx b/fonts/feyn/feyn.dtx index 73827d2672..74e7830814 100644 --- a/fonts/feyn/feyn.dtx +++ b/fonts/feyn/feyn.dtx @@ -5,17 +5,17 @@ %% It is distributed under the terms of the 2-clause BSD Licence; %% see the file LICENCE for details. % -%<+package|driver>%% VCS Info: Mercurial revision 3e70c259dcfe, 2022-07-18 22:14 +0100, tag 0.4.2 + 0 +%<+package|driver>%% VCS Info: Mercurial revision 0a471f8ed572, 2022-07-20 11:23 +0100, tag 0.4.3 + 0 %<+package>\NeedsTeXFormat{LaTeX2e} -%<+package>\ProvidesPackage{feyn}[2022/07/18 0.4.2] -%<+package>\typeout{Package: `feyn' 0.4.2 <2022/07/18>} +%<+package>\ProvidesPackage{feyn}[2022/07/20 0.4.3] +%<+package>\typeout{Package: `feyn' 0.4.3 <2022/07/20>} % %<*driver> \documentclass{ltxdoc} \usepackage{feyn} \title{The feyn font} \author{Norman Gray\\(\texttt{https://nxg.me.uk})} -\date{Version 0.4.2, 2022 July 18} +\date{Version 0.4.3, 2022 July 20} \newcommand\Lopt[1]{\textsf {#1}} \newcommand\file[1]{\texttt {#1}} \newcommand\Lcount[1]{\textsl {\small#1}} @@ -100,7 +100,7 @@ % The propagators and vertices which are implemented are those of one- % and two-loop QED and QCD, plus $\phi^4$ theory, plus a few extras % which commonly appear in non-figure displays (the practical -% definition of `commonly appear is `which I wanted' or `which +% definition of `commonly appear' is: `which I wanted' or `which % people asked me for'). I'd be delighted to add others which folk % feel would be useful, as long as they're still in the rather simple % scope of the font. @@ -123,6 +123,15 @@ % of~`!' using the \Lopt{globalbang} and \Lopt{noglobalbang} options % to the \texttt{$\backslash$usepackage\{feyn\}} command.} % +% You write Feynman diagrams in text by writing a sequence of letters +% in the maths-mode \feynx\ font, selected with |\Feyn{...}| in text +% style and |\feyn{...}| in displays. Most of the characters in the +% font are selected using ligatures, so that |\feyn{f}| produces a +% fermion propagator, $\feyn{f}$., but |\feyn{fs}| produces a short +% fermion, $\feyn{fs}$ and |\feyn{fA}| produces an arrowed one, +% $\feyn{fA}$. See below for more detailed description of how to use +% the font. +% % \makeatletter % \def\refptcirc{\lower\feyn@maxis \hbox to 0pt{\hss$\circ$\hss}} % \makeatother @@ -231,7 +240,8 @@ % % The unnassigned positions in the \feynx\ font are filled % with an obviously wrong dummy character, so that |$\feyn{A}$|, for example, -% produces $\feyn{fs0Afs0}$. +% produces $\feyn{fs0Afs0}$. This should help at least some +% mistypings stand out. % % If you were to print out a font table, you would discover that many % of the glyphs in the font can be obtained using single @@ -243,8 +253,9 @@ % The file \file{feyn.sty} additionally defines a number of macros, % described here. % \begin{description} -% \item[\cs{feyn}] Selects the diagram font. This must be used -% within math mode. \cs{Feyn} selects the text-mode diagram font. +% \item[\cs{feyn}] Selects the diagram font, in display style -- that +% is, suitable for a displayed equation. This must be used +% within math mode. \cs{Feyn} selects the textstyle diagram font. % \item[\cs{momentum}\{ch\}\{text\}] sets the character % `ch', which may be a ligature, and puts the given text at the recommended % annotation position for that character. |\momentum[pos]{ch}{text}| @@ -838,7 +849,7 @@ % The nominal distribution point for the Feyn package is CTAN, % under \texttt{fonts/feyn}\footnote{\url{https://ctan.org/pkg/feyn}}. % -% The feyn package is included in the TeXLive distribution\footnote{\url{http://www.tug.org/texlive/}}, so +% The feyn package is included in the TeXLive distribution\footnote{\url{https://www.tug.org/texlive/}}, so % you may have it on your machine already. If not, or if you need a % more up-to-date version, read on. % @@ -847,14 +858,13 @@ % For TeXLive, that's % `tlmgr'\footnote{\url{https://www.tug.org/texlive/tlmgr.html}}, and % for MikTeX see the maintenance section of the -% manual\footnote{\url{https://docs.miktex.org/faq/maintenance.html}}. +% manual\footnote{\url{https://docs.miktex.org/}}. % % \subsection{Installing by hand} % % If, for some reason, you need to install the package by hand, then % you should be able to find generic instructions for installing -% \LaTeX\ files at -% \url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=installthings}. +% \LaTeX\ files at \url{https://texfaq.org/#installing}. % % In brief: If you have not done so already, you need to extract the package % file from the distribution file using |latex feyn.ins|. The diff --git a/fonts/feyn/feyn.html b/fonts/feyn/feyn.html index 14e432b81b..2c431acc7c 100644 --- a/fonts/feyn/feyn.html +++ b/fonts/feyn/feyn.html @@ -4,14 +4,13 @@ Feyn font -

Feyn font

A package of fonts for displaying Feynman diagrams.

-

Version 0.4.2, 2022 July 18.

+

Version 0.4.3, 2022 July 20.

  • Canonical URL: https://purl.org/nxg/dist/feyn
  • Repository
  • @@ -26,7 +25,7 @@ primarily for use within equations.

    />This package differs from Thorsten Ohl’s feynmf/feynmp package (at CTAN, or see the -TeX FAQ). +TeX FAQ). FeynMP works by creating Metafont or MetaPost figures using a preprocessor. It’s more general than this package, but is at its best when creating relatively large diagrams, for figures. In contrast, @@ -59,6 +58,11 @@ It is distributed under the terms of the 2-clause BSD Licence<
    +
    Version 0.4.3, 2022 July 20
    +
    Documentation update, including fixes for broken URIs, and more +consistent use of the canonical homepage URI, +https://purl.org/nxg/dist/feyn.
    +
    Version 0.4.2, 2022 July 18

    No code changes, but updates to URLs, including the repository location.

    @@ -108,16 +112,15 @@ are no longer the same as one half-loop.

    under fonts/feyn.

    The feyn package is included in the -TeXLive distribution, so +TeXLive distribution, so you may have it on your machine already. If not, or if you need a more up-to-date version, read on.

    Since the package is on CTAN, it should be easily installed and updated using the tools which support this in your TeX distribution. For TeXLive, that's tlmgr, -and for MikTeX see the -maintenance -section of the manual.

    +and for MikTeX see the maintenance section of +the manual.

    Doing the installation by hand

    @@ -125,9 +128,9 @@ section of the manual.

    1. Download either -feyn-0.4.2.tar.gz +feyn-0.4.3.tar.gz or -feyn-0.4.2.zip +feyn-0.4.3.zip and unpack it.
    2. Run LaTeX on the file feyn.ins – this will unpack the @@ -148,7 +151,7 @@ With the teTeX and TeXLive Unix distributions, the output of for Metafont source files. The font files should be generated on the fly when you first refer to them. See also the relevant discussion in the TeX FAQ about ‘where LaTeX can find them’.
    3. Run LaTeX on the file feyn.dtx to obtain the @@ -158,13 +161,13 @@ generate the font files as a side-effect).

    You should be able to find generic instructions for installing LaTeX files at -the TeX FAQ.

    +the TeX FAQ.

    Norman Gray
    -2022 July 18 +2022 July 20
    diff --git a/fonts/feyn/feyn.mf b/fonts/feyn/feyn.mf index 9c5247356f..68b81c771f 100644 --- a/fonts/feyn/feyn.mf +++ b/fonts/feyn/feyn.mf @@ -1,9 +1,9 @@ -% This is the metafont for the feynfont font, release 0.4.2, 2022 July 18 +% This is the metafont for the feynfont font, release 0.4.3, 2022 July 20 % % Copyright 1991, 1994, 2001, 2002, 2005, 2008-10, Norman Gray. % See the file LICENCE for licence details. % -% Mercurial revision 3e70c259dcfe, 2022-07-18 22:14 +0100, tag 0.4.2 + 0 +% Mercurial revision 0a471f8ed572, 2022-07-20 11:23 +0100, tag 0.4.3 + 0 % % % diff --git a/fonts/feyn/feyn.pdf b/fonts/feyn/feyn.pdf index 467ca16f8f..9c350c8618 100644 Binary files a/fonts/feyn/feyn.pdf and b/fonts/feyn/feyn.pdf differ diff --git a/fonts/feyn/feyn10.mf b/fonts/feyn/feyn10.mf index 05aaea3ecf..694d85eafb 100644 --- a/fonts/feyn/feyn10.mf +++ b/fonts/feyn/feyn10.mf @@ -1,7 +1,7 @@ -% Feynman diagram font, 10pt display size, release 0.4.2, 2022 July 18. +% Feynman diagram font, 10pt display size, release 0.4.3, 2022 July 20. % % This software is copyright 1991, 1994, 2001-2, 2005, 2008-17, Norman Gray. -% Mercurial revision 3e70c259dcfe, 2022-07-18 22:14 +0100, tag 0.4.2 + 0 +% Mercurial revision 0a471f8ed572, 2022-07-20 11:23 +0100, tag 0.4.3 + 0 font_identifier "FEYN"; font_size 10pt#; diff --git a/fonts/feyn/feyn11.mf b/fonts/feyn/feyn11.mf index 32bfa5df31..3357ab1579 100644 --- a/fonts/feyn/feyn11.mf +++ b/fonts/feyn/feyn11.mf @@ -1,7 +1,7 @@ -% Feynman diagram font, 11pt display size, release 0.4.2, 2022 July 18. +% Feynman diagram font, 11pt display size, release 0.4.3, 2022 July 20. % % This software is copyright 1991, 1994, 2001-2, 2005, 2008-17, Norman Gray. -% Mercurial revision 3e70c259dcfe, 2022-07-18 22:14 +0100, tag 0.4.2 + 0 +% Mercurial revision 0a471f8ed572, 2022-07-20 11:23 +0100, tag 0.4.3 + 0 font_identifier "FEYN"; font_size 11pt#; diff --git a/fonts/feyn/feyn12.mf b/fonts/feyn/feyn12.mf index 7739aa7d22..3bc3f464b6 100644 --- a/fonts/feyn/feyn12.mf +++ b/fonts/feyn/feyn12.mf @@ -1,7 +1,7 @@ -% Feynman diagram font, 12pt display size, release 0.4.2, 2022 July 18. +% Feynman diagram font, 12pt display size, release 0.4.3, 2022 July 20. % % This software is copyright 1991, 1994, 2001-2, 2005, 2008-17, Norman Gray. -% Mercurial revision 3e70c259dcfe, 2022-07-18 22:14 +0100, tag 0.4.2 + 0 +% Mercurial revision 0a471f8ed572, 2022-07-20 11:23 +0100, tag 0.4.3 + 0 font_identifier "FEYN"; font_size 12pt#; diff --git a/fonts/feyn/feyn18.mf b/fonts/feyn/feyn18.mf index 14be743168..459a7a77f1 100644 --- a/fonts/feyn/feyn18.mf +++ b/fonts/feyn/feyn18.mf @@ -1,7 +1,7 @@ -% Feynman diagram font, 18pt display size, release 0.4.2, 2022 July 18. +% Feynman diagram font, 18pt display size, release 0.4.3, 2022 July 20. % % This software is copyright 1991, 1994, 2001-2, 2005, 2008-17, Norman Gray. -% Mercurial revision 3e70c259dcfe, 2022-07-18 22:14 +0100, tag 0.4.2 + 0 +% Mercurial revision 0a471f8ed572, 2022-07-20 11:23 +0100, tag 0.4.3 + 0 font_identifier "FEYN"; font_size 18pt#; diff --git a/fonts/feyn/feyn24.mf b/fonts/feyn/feyn24.mf index 3d502bcbe5..1cc8e8d469 100644 --- a/fonts/feyn/feyn24.mf +++ b/fonts/feyn/feyn24.mf @@ -1,7 +1,7 @@ -% Feynman diagram font, 24pt display size, release 0.4.2, 2022 July 18. +% Feynman diagram font, 24pt display size, release 0.4.3, 2022 July 20. % % This software is copyright 1991, 1994, 2001-2, 2005, 2008-17, Norman Gray. -% Mercurial revision 3e70c259dcfe, 2022-07-18 22:14 +0100, tag 0.4.2 + 0 +% Mercurial revision 0a471f8ed572, 2022-07-20 11:23 +0100, tag 0.4.3 + 0 font_identifier "FEYN"; font_size 24pt#; diff --git a/fonts/feyn/feynmac.mf b/fonts/feyn/feynmac.mf index 70467a06de..6691e7a7ad 100644 --- a/fonts/feyn/feynmac.mf +++ b/fonts/feyn/feynmac.mf @@ -1,7 +1,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % Macros to support feyn.mf -% Release 0.4.2, 2022 July 18 +% Release 0.4.3, 2022 July 20 def looselink = ..tension 0.75.. enddef; diff --git a/fonts/feyn/feyntext10.mf b/fonts/feyn/feyntext10.mf index 3240e538c0..bd8d33508c 100644 --- a/fonts/feyn/feyntext10.mf +++ b/fonts/feyn/feyntext10.mf @@ -1,7 +1,7 @@ -% Feynman diagram font, 10pt text size, release 0.4.2, 2022 July 18. +% Feynman diagram font, 10pt text size, release 0.4.3, 2022 July 20. % % This software is copyright 1991, 1994, 2001-2, 2005, 2008-17, Norman Gray. -% Mercurial revision 3e70c259dcfe, 2022-07-18 22:14 +0100, tag 0.4.2 + 0 +% Mercurial revision 0a471f8ed572, 2022-07-20 11:23 +0100, tag 0.4.3 + 0 font_identifier "FEYN"; font_size 10pt#; diff --git a/fonts/feyn/feyntext11.mf b/fonts/feyn/feyntext11.mf index c8c35ffb50..1fc28d1e31 100644 --- a/fonts/feyn/feyntext11.mf +++ b/fonts/feyn/feyntext11.mf @@ -1,7 +1,7 @@ -% Feynman diagram font, 11pt text size, release 0.4.2, 2022 July 18. +% Feynman diagram font, 11pt text size, release 0.4.3, 2022 July 20. % % This software is copyright 1991, 1994, 2001-2, 2005, 2008-17, Norman Gray. -% Mercurial revision 3e70c259dcfe, 2022-07-18 22:14 +0100, tag 0.4.2 + 0 +% Mercurial revision 0a471f8ed572, 2022-07-20 11:23 +0100, tag 0.4.3 + 0 font_identifier "FEYN"; font_size 11pt#; diff --git a/fonts/feyn/feyntext12.mf b/fonts/feyn/feyntext12.mf index c07b38bc88..f3d8b5d22f 100644 --- a/fonts/feyn/feyntext12.mf +++ b/fonts/feyn/feyntext12.mf @@ -1,7 +1,7 @@ -% Feynman diagram font, 12pt text size, release 0.4.2, 2022 July 18. +% Feynman diagram font, 12pt text size, release 0.4.3, 2022 July 20. % % This software is copyright 1991, 1994, 2001-2, 2005, 2008-17, Norman Gray. -% Mercurial revision 3e70c259dcfe, 2022-07-18 22:14 +0100, tag 0.4.2 + 0 +% Mercurial revision 0a471f8ed572, 2022-07-20 11:23 +0100, tag 0.4.3 + 0 font_identifier "FEYN"; font_size 12pt#; diff --git a/fonts/feyn/feyntext18.mf b/fonts/feyn/feyntext18.mf index d522ccf908..6deb985c0c 100644 --- a/fonts/feyn/feyntext18.mf +++ b/fonts/feyn/feyntext18.mf @@ -1,7 +1,7 @@ -% Feynman diagram font, 18pt text size, release 0.4.2, 2022 July 18. +% Feynman diagram font, 18pt text size, release 0.4.3, 2022 July 20. % % This software is copyright 1991, 1994, 2001-2, 2005, 2008-17, Norman Gray. -% Mercurial revision 3e70c259dcfe, 2022-07-18 22:14 +0100, tag 0.4.2 + 0 +% Mercurial revision 0a471f8ed572, 2022-07-20 11:23 +0100, tag 0.4.3 + 0 font_identifier "FEYN"; font_size 18pt#; diff --git a/fonts/feyn/feyntext24.mf b/fonts/feyn/feyntext24.mf index a23769fb46..cae23a4a8f 100644 --- a/fonts/feyn/feyntext24.mf +++ b/fonts/feyn/feyntext24.mf @@ -1,7 +1,7 @@ -% Feynman diagram font, 24pt text size, release 0.4.2, 2022 July 18. +% Feynman diagram font, 24pt text size, release 0.4.3, 2022 July 20. % % This software is copyright 1991, 1994, 2001-2, 2005, 2008-17, Norman Gray. -% Mercurial revision 3e70c259dcfe, 2022-07-18 22:14 +0100, tag 0.4.2 + 0 +% Mercurial revision 0a471f8ed572, 2022-07-20 11:23 +0100, tag 0.4.3 + 0 font_identifier "FEYN"; font_size 24pt#; diff --git a/fonts/feyn/feynx10.mf b/fonts/feyn/feynx10.mf index ce869ade76..1b7804cd77 100644 --- a/fonts/feyn/feynx10.mf +++ b/fonts/feyn/feynx10.mf @@ -1,7 +1,7 @@ -% Feynman diagram font, 10pt extended size, release 0.4.2, 2022 July 18. +% Feynman diagram font, 10pt extended size, release 0.4.3, 2022 July 20. % % This software is copyright 1991, 1994, 2001-2, 2005, 2008-17, Norman Gray. -% Mercurial revision 3e70c259dcfe, 2022-07-18 22:14 +0100, tag 0.4.2 + 0 +% Mercurial revision 0a471f8ed572, 2022-07-20 11:23 +0100, tag 0.4.3 + 0 font_identifier "FEYNX"; font_size 10pt#; diff --git a/fonts/feyn/feynx11.mf b/fonts/feyn/feynx11.mf index efb348ee7c..81b1526f55 100644 --- a/fonts/feyn/feynx11.mf +++ b/fonts/feyn/feynx11.mf @@ -1,7 +1,7 @@ -% Feynman diagram font, 11pt extended size, release 0.4.2, 2022 July 18. +% Feynman diagram font, 11pt extended size, release 0.4.3, 2022 July 20. % % This software is copyright 1991, 1994, 2001-2, 2005, 2008-17, Norman Gray. -% Mercurial revision 3e70c259dcfe, 2022-07-18 22:14 +0100, tag 0.4.2 + 0 +% Mercurial revision 0a471f8ed572, 2022-07-20 11:23 +0100, tag 0.4.3 + 0 font_identifier "FEYNX"; font_size 11pt#; diff --git a/fonts/feyn/feynx12.mf b/fonts/feyn/feynx12.mf index 28adc32dce..cfeb7f7e72 100644 --- a/fonts/feyn/feynx12.mf +++ b/fonts/feyn/feynx12.mf @@ -1,7 +1,7 @@ -% Feynman diagram font, 12pt extended size, release 0.4.2, 2022 July 18. +% Feynman diagram font, 12pt extended size, release 0.4.3, 2022 July 20. % % This software is copyright 1991, 1994, 2001-2, 2005, 2008-17, Norman Gray. -% Mercurial revision 3e70c259dcfe, 2022-07-18 22:14 +0100, tag 0.4.2 + 0 +% Mercurial revision 0a471f8ed572, 2022-07-20 11:23 +0100, tag 0.4.3 + 0 font_identifier "FEYNX"; font_size 12pt#; diff --git a/fonts/feyn/feynx18.mf b/fonts/feyn/feynx18.mf index 46dac86221..7bb05c04e6 100644 --- a/fonts/feyn/feynx18.mf +++ b/fonts/feyn/feynx18.mf @@ -1,7 +1,7 @@ -% Feynman diagram font, 18pt extended size, release 0.4.2, 2022 July 18. +% Feynman diagram font, 18pt extended size, release 0.4.3, 2022 July 20. % % This software is copyright 1991, 1994, 2001-2, 2005, 2008-17, Norman Gray. -% Mercurial revision 3e70c259dcfe, 2022-07-18 22:14 +0100, tag 0.4.2 + 0 +% Mercurial revision 0a471f8ed572, 2022-07-20 11:23 +0100, tag 0.4.3 + 0 font_identifier "FEYNX"; font_size 18pt#; diff --git a/fonts/feyn/feynx24.mf b/fonts/feyn/feynx24.mf index d912aeb1d5..c46ea55749 100644 --- a/fonts/feyn/feynx24.mf +++ b/fonts/feyn/feynx24.mf @@ -1,7 +1,7 @@ -% Feynman diagram font, 24pt extended size, release 0.4.2, 2022 July 18. +% Feynman diagram font, 24pt extended size, release 0.4.3, 2022 July 20. % % This software is copyright 1991, 1994, 2001-2, 2005, 2008-17, Norman Gray. -% Mercurial revision 3e70c259dcfe, 2022-07-18 22:14 +0100, tag 0.4.2 + 0 +% Mercurial revision 0a471f8ed572, 2022-07-20 11:23 +0100, tag 0.4.3 + 0 font_identifier "FEYNX"; font_size 24pt#; diff --git a/fonts/feyn/overheads.pdf b/fonts/feyn/overheads.pdf index 043120ae05..0089ebd77a 100644 Binary files a/fonts/feyn/overheads.pdf and b/fonts/feyn/overheads.pdf differ diff --git a/fonts/feyn/overheads.tex b/fonts/feyn/overheads.tex index 46aee60713..8ba1b2e11d 100644 --- a/fonts/feyn/overheads.tex +++ b/fonts/feyn/overheads.tex @@ -1,12 +1,12 @@ \documentclass{beamer} -% Quick example of overheads, using the sample beamer description at +% Quick example of overheads, using the sample beamer description at % http://www.miwie.org/presentations/presentations.html#beamer -\usepackage{feyn} +\usepackage{feyn,url} -\title{Feynman diagrams} +\title{Feynman diagram font} \author{Norman Gray\\University of Glasgow} -\date{v0.4.2, 2022 July 18} +\date{v0.4.3, 2022 July 20} %\parindent0pt @@ -24,5 +24,6 @@ Here is a text diagram $\Feyn{fglf}$, and a displayed one: = \displaystyle ig\gamma_\mu (t^c)_{ab} \] +This uses the `feyn' font for drawing diagrams: \url{https://purl.org/nxg/dist/feyn}. } \end{document} diff --git a/fonts/feyn/release-notes.html b/fonts/feyn/release-notes.html index e2442f1baa..bf4ebe9bfe 100644 --- a/fonts/feyn/release-notes.html +++ b/fonts/feyn/release-notes.html @@ -14,6 +14,11 @@ dd ul { padding: 0pt; margin: 0pt; }
    +
    Version 0.4.3, 2022 July 20
    +
    Documentation update, including fixes for broken URIs, and more +consistent use of the canonical homepage URI, +https://purl.org/nxg/dist/feyn.
    +
    Version 0.4.2, 2022 July 18

    No code changes, but updates to URLs, including the repository location.

    diff --git a/fonts/greek/gfs/gfsneohellenic/VERSION b/fonts/greek/gfs/gfsneohellenic/VERSION new file mode 100644 index 0000000000..8aac43fccb --- /dev/null +++ b/fonts/greek/gfs/gfsneohellenic/VERSION @@ -0,0 +1 @@ +GFSNeoHellenic for LaTeX. Version 1.02, 20 July 2022 diff --git a/fonts/greek/gfs/gfsneohellenic/doc/VERSION b/fonts/greek/gfs/gfsneohellenic/doc/VERSION deleted file mode 100644 index f64c450ab8..0000000000 --- a/fonts/greek/gfs/gfsneohellenic/doc/VERSION +++ /dev/null @@ -1 +0,0 @@ -GFSNeoHellenic for LaTeX. Version 1.01, 12 May 2006 diff --git a/fonts/greek/gfs/gfsneohellenic/opentype/GFSNeohellenic.otf b/fonts/greek/gfs/gfsneohellenic/opentype/GFSNeohellenic.otf index fb84eaab36..8453f79c87 100644 Binary files a/fonts/greek/gfs/gfsneohellenic/opentype/GFSNeohellenic.otf and b/fonts/greek/gfs/gfsneohellenic/opentype/GFSNeohellenic.otf differ diff --git a/graphics/pgf/contrib/bodeplot/README.md b/graphics/pgf/contrib/bodeplot/README.md index 23733a484e..25b8d7e1dd 100644 --- a/graphics/pgf/contrib/bodeplot/README.md +++ b/graphics/pgf/contrib/bodeplot/README.md @@ -5,6 +5,16 @@ Inspired by the `bodegraph` package. *Version 1.0.8 and newer store `gnuplot` temporary files in the working directory. Use class option `declutter` to restore pre-v1.0.8 behavior. Option `declutter` can cause errors if used with a `tikzexternalize` prefix.* +Compilation instructions: +1) `latex bodeplot.ins` to generate `bodeplot.sty` +2) To compile documentation (needs `gnuplot` on system PATH): +``` +pdflatex bodeplot.dtx --shell-escape +makeindex -s gind.ist bodeplot.idx +makeindex -s gglo.ist -o bodeplot.gls bodeplot.glo +pdflatex bodeplot.dtx --shell-escape +pdflatex bodeplot.dtx --shell-escape +``` Added functionality: - New `\BodeZPK` and `\BodeTF` commands to generate Bode plots of any transfer function given either poles, zeros, gain, and delay, or numerator and denominator coefficients and delay - Support for unstable poles and zeros. @@ -42,4 +52,4 @@ Other new environments and associated commands: - `\addNyquistZPKPlot[plot-options]{z/{zeros},p/{poles},k/gain,d/delay}` - `\addNyquistTFPlot[plot-options]{num/{coeff},den/{coeff},d/delay}` -Limitation: Phase plots from TF commands are wrapped between 0 and 360 degrees. \ No newline at end of file +Limitation: Nichols charts from TF commands are wrapped between 0 and 360 degrees. diff --git a/graphics/pgf/contrib/bodeplot/bodeplot.dtx b/graphics/pgf/contrib/bodeplot/bodeplot.dtx index 10cc1700aa..a5cdfbf6db 100644 --- a/graphics/pgf/contrib/bodeplot/bodeplot.dtx +++ b/graphics/pgf/contrib/bodeplot/bodeplot.dtx @@ -18,7 +18,6 @@ % \iffalse %\NeedsTeXFormat{LaTeX2e}[2006/05/20] %\ProvidesPackage{bodeplot} -%\RequirePackage{tikz} %\RequirePackage{pdftexcmds} %\RequirePackage{ifplatform} %\RequirePackage{pgfplots} @@ -55,6 +54,7 @@ \geometry{lmargin=2in,rmargin=1in,tmargin=1in,bmargin=1in} \usetikzlibrary{decorations.markings,arrows.meta,spy,backgrounds} \usepackage[nottoc]{tocbibind} +\sloppy \EnableCrossrefs \CodelineIndex \RecordChanges @@ -66,7 +66,7 @@ % % \fi % -% \CheckSum{1375} +% \CheckSum{1404} % % \changes{v1.0}{2021/10/25}{Initial release} % \changes{v1.0.4}{2021/11/05}{Fixed unintended optional argument macro expansion} @@ -74,13 +74,12 @@ % \changes{v1.0.7}{2021/12/02}{Removed unnecessary semicolons} % \changes{v1.0.7}{2022/01/18}{Updated documentation} % \changes{v1.0.8}{2022/07/06}{Added a new class option `declutter'} +% \changes{v1.1.0}{2022/07/06}{Fixed phase wrapping in gnuplot mode} % % \GetFileInfo{bodeplot.sty} % \DoNotIndex{\newcommand,\xdef,\gdef,\def,\edef,\addplot,\approx,\arabic,\opt,\typ,\obj,\else,\if@pgfarg,\fi,\begin,\end,\feature,\footnotesize,\draw,\detokenize,\DeclareOption,\foreach,\ifdim,\ifodd,\Im,\Re,\let,\newif,\nextgroupplot,\noexpand,\expandafter,\unexpanded,\PackageError,\PackageWarning,\relax,\RequirePackage,\tikzset,\pgfmathsetmacro,\pgfmathtruncatemacro,\ProcessOptions} % -% \title{The \textsf{bodeplot} package\thanks{This document -% corresponds to \textsf{bodeplot}~v1.0.8, -% dated July 06, 2022.}} +% \title{The \textsf{bodeplot} package\thanks{This document corresponds to \textsf{bodeplot}~v1.1.0, dated July 20, 2022.}} % \author{Rushikesh Kamalapurkar \\ \texttt{rlkamalapurkar@gmail.com}} % % \maketitle @@ -88,14 +87,14 @@ % \clearpage % \section{Introduction} % -% Generate Bode, Nyquist, and Nichols plots for transfer functions in the canonical (TF) form \begin{equation}G(s) = e^{-Ts}\frac{b_ms^m+\cdots+b_1s+b_0}{a_ns^n+\cdots+a_1s+a_0}\label{eq:TF}\end{equation} and the zero-pole-gain (ZPK) form \begin{equation}G(s) = Ke^{-Ts}\frac{(s-z_1)(s-z_2)\cdots(s-z_m)}{(s-p_1)(s-p_2)\cdots(s-p_n)}.\label{eq:ZPK}\end{equation} In the equations above, $b_m,\cdots,b_0$ and $a_n,\cdots,a_0$ are real coefficients, $T\geq 0$ is the loop delay, $z_1,\cdots,z_m$ and $p_1,\cdots,p_n$ are complex zeros and poles of the transfer function, respectively, and $K\in \Re$ is the loop gain. For transfer functions in the ZPK format in (\ref{eq:ZPK}) \emph{with zero delay}, this package also supports linear and asymptotic approximation of Bode plots. +% Generate Bode, Nyquist, and Nichols plots for transfer functions in the canonical (TF) form \begin{equation}G(s) = e^{-Ts}\frac{b_ms^m+\cdots+b_1s+b_0}{a_ns^n+\cdots+a_1s+a_0}\label{eq:TF}\end{equation} and the zero-pole-gain (ZPK) form \begin{equation}G(s) = Ke^{-Ts}\frac{(s-z_1)(s-z_2)\cdots(s-z_m)}{(s-p_1)(s-p_2)\cdots(s-p_n)}.\label{eq:ZPK}\end{equation} In the equations above, $b_m,\cdots,b_0$ and $a_n,\cdots,a_0$ are real coefficients, $T\geq 0$ is the loop delay, $z_1,\cdots,z_m$ and $p_1,\cdots,p_n$ are complex zeros and poles of the transfer function, respectively, and $K\in \Re$ is the loop gain. For transfer functions in the ZPK format in (\ref{eq:ZPK}) \emph{with zero delay}, this package also supports linear and asymptotic approximation of Bode plots. By default, all phase plots use degrees as units. Use the |rad| package option to generate plots in radians. % \subsection{External Dependencies} -% By default, the package uses |gnuplot| to do all the computations. If |gnuplot| is not available, the |pgf| package option can be used to do the calculations using the native |pgf| math engine. Compilation using the |pgf| math engine is typically slower, but the end result should be the identical. +% By default, the package uses |gnuplot| to do all the computations. If |gnuplot| is not available, the |pgf| package option can be used to do the calculations using the native |pgf| math engine. Compilation using the |pgf| math engine is typically slower, but the end result should be the identical (other than phase wrapping in the TF format, see limitations below). %\subsection{Directory Structure} % Since version 1.0.8, the |bodeplot| package places all |gnuplot| temporary files in the working directory. The package option |declutter| restores the original behavior where the temporary files are placed in a folder called |gnuplot|. % \subsection{Limitations} % \begin{itemize} -% \item In TF form, the phase angles are always between 0 and 360$^\circ$. As such, the Bode phase plots and the Nyquist and Nichols plots will have phase wrapping discontinuities. I do not know how this can be rectified, pull requests are welcome! +% \item When plotting Nichols charts in TF form, the phase angles are wrapped between 0 and 360$^\circ$. As such, the Nichols charts will have phase wrapping discontinuities. Phase wrapping in Bode plots was fixed in v1.1.0 using |gnuplot|. In |pgf| mode, Bode phase plots, plotted using the TF form, will also show phase wrapping discontinuities. % \item Use of the |declutter| option with other directory management tools such as a |tikzexternalize| prefix is not recommended. % \end{itemize} % \clearpage @@ -123,7 +122,7 @@ \hrulefill -Bode plot in TF format with arrow decoration, transport delay, and color customization (note the phase wrapping) +Bode plot in TF format with arrow decoration, transport delay, and color customization (the phase plot will show wrapping if the |pgf| package option is used) \begin{LTXexample}[pos=r,width=0.5\textwidth] \BodeTF[% samples=1000, @@ -188,10 +187,8 @@ Individual gain and phase plots with more customization \begin{minipage}[t]{0.45\textwidth} \begin{LTXexample}[pos=t,width=\columnwidth] -\begin{BodePlot}[% - axes/{ylabel={Gain (dB)}, - ytick distance=40, - height=2cm, +\begin{BodeMagPlot}[% + axes/{height=2cm, width=4cm} ] {0.01} @@ -207,13 +204,12 @@ Individual gain and phase plots with more customization p/{{-0.5,-10},{-0.5,10}}, k/10 } -\end{BodePlot} +\end{BodeMagPlot} \end{LTXexample} \end{minipage}\hfill \begin{minipage}[t]{0.45\textwidth} \begin{LTXexample}[pos=t,width=\columnwidth] -\begin{BodePlot}[% - ylabel={Phase ($^{\circ}$)}, +\begin{BodePhPlot}[% height=2cm, width=4cm, ytick distance=90 @@ -231,7 +227,7 @@ Individual gain and phase plots with more customization p/{{-0.5,-10},{-0.5,10}}, k/10 } -\end{BodePlot} +\end{BodePhPlot} \end{LTXexample} \end{minipage} @@ -243,20 +239,21 @@ Nichols chart {% z/{0,{-0.1,-0.5},{-0.1,0.5}}, p/{{-0.5,-10},{-0.5,10}}, - k/10 + k/10, + d/0.01 } {0.001} -{100} +{500} \end{LTXexample} \hrulefill -Nichols chart in TF format +Same Nichols chart in TF format (shows phase wrapping discontinuity) \begin{LTXexample}[pos=r,hsep=20pt,width=0.5\textwidth] \NicholsTF[samples=1000] -{num/{10,2,2.6,0},den/{1,1,100.25}} +{num/{10,2,2.6,0},den/{1,1,100.25},d/0.01} {0.001} -{100} +{500} \end{LTXexample} \hrulefill @@ -486,12 +483,12 @@ Nyquist plots with additional commands, using two different macros % \end{center} % \end{figure} % -% \DescribeEnv{BodePlot} -% |\begin{BodePlot}|\oarg{obj1/\marg{opt1},obj2/\marg{opt2},...}\\ +% \DescribeEnv{BodeMagPlot} +% |\begin{BodeMagPlot}|\oarg{obj1/\marg{opt1},obj2/\marg{opt2},...}\\ % \hspace*{3em}\marg{min-frequency}\marg{max-frequency}\\ % \hspace*{2em}|\addBode...|\\ -% \hspace*{1.5em}|\end{BodePlot}|\\ -% The |BodePlot| environment works in conjunction with the parametric function generator macros |\addBodeZPKPlots|, |\addBodeTFPlot|, and |\addBodeComponentPlot|. The optional argument is comprised of a comma separated list of tuples, either |obj/{opt}| or just |{opt}|. Each tuple passes options to different |pgfplots| macros that generate the axes and the plots according to: +% \hspace*{1.5em}|\end{BodeMagPlot}|\\ +% The |BodeMagPlot| environment works in conjunction with the parametric function generator macros |\addBodeZPKPlots|, |\addBodeTFPlot|, and |\addBodeComponentPlot|, intended to be used for magnitude plots. The optional argument is comprised of a comma separated list of tuples, either |obj/{opt}| or just |{opt}|. Each tuple passes options to different |pgfplots| macros that generate the axes and the plots according to: % \begin{itemize} % \item Tuples of the form |obj/{opt}|: % \begin{itemize} @@ -503,6 +500,13 @@ Nyquist plots with additional commands, using two different macros % \end{itemize} % The frequency limits are translated to the x-axis limits and the domain of the |semilogaxis| environment. Example usage in the description of |\addBodeZPKPlots|, |\addBodeTFPlot|, and |\addBodeComponentPlot|. % +%\DescribeEnv{BodePhPlot} +% |\begin{BodePhPlot}|\oarg{obj1/\marg{opt1},obj2/\marg{opt2},...}\\ + % \hspace*{3em}\marg{min-frequency}\marg{max-frequency}\\ + % \hspace*{2em}|\addBode...|\\ + % \hspace*{1.5em}|\end{BodePhPlot}|\\ +% Intended to be used for phase plots, otherwise same as the |BodeMagPlot| environment +% % \DescribeMacro{\addBodeZPKPlots} % |\addBodeZPKPlots| \oarg{approx1/\marg{opt1},approx2/\marg{opt2},...}\\ % \hspace*{2em}\marg{plot-type}\\ @@ -512,50 +516,44 @@ Nyquist plots with additional commands, using two different macros % % For example, given the transfer function in (\ref{eq:ZPKExample}), its linear, asymptotic, and true Bode plots can be superimposed using %\begin{verbatim} -%\begin{BodePlot}[ ylabel={Gain (dB)}, ytick distance=40, -% height=2cm, width=4cm] {0.01} {100} +%\begin{BodeMagPlot}[height=2cm,width=4cm] {0.01} {100} % \addBodeZPKPlots[ % true/{black,thick}, % linear/{red,dashed,thick}, % asymptotic/{blue,dotted,thick}] % {magnitude} % {z/{0,{-0.1,-0.5},{-0.1,0.5}},p/{{-0.5,-10},{-0.5,10}},k/10} -%\end{BodePlot} +%\end{BodeMagPlot} % -%\begin{BodePlot}[ylabel={Phase ($^{\circ}$)}, -% height=2cm, width=4cm, ytick distance=90] {0.01} {100} +%\begin{BodePhPlot}[height=2cm, width=4cm, ytick distance=90] {0.01} {100} % \addBodeZPKPlots[ % true/{black,thick}, % linear/{red,dashed,thick}, % asymptotic/{blue,dotted,thick}] % {phase} % {z/{0,{-0.1,-0.5},{-0.1,0.5}},p/{{-0.5,-10},{-0.5,10}},k/10} -%\end{BodePlot} +%\end{BodePhPlot} %\end{verbatim} % \begin{figure} % \begin{center} -% \begin{BodePlot}[ ylabel={Gain (dB)}, ytick distance=40, -% height=2cm, width=4cm] {0.01} {100} -% +% \begin{BodeMagPlot}[height=2cm,width=4cm]{0.01}{100} % \addBodeZPKPlots[ % true/{black,thick}, % linear/{red,dashed,thick}, % asymptotic/{blue,dotted,thick}] % {magnitude} % {z/{0,{-0.1,-0.5},{-0.1,0.5}},p/{{-0.5,-10},{-0.5,10}},k/10} -% \end{BodePlot} -% \begin{BodePlot}[ylabel={Phase ($^{\circ}$)}, -% height=2cm, width=4cm, ytick distance=90] {0.01} {100} -% +% \end{BodeMagPlot} +% \begin{BodePhPlot}[height=2cm,width=4cm,ytick distance=90]{0.01}{100} % \addBodeZPKPlots[ % true/{black,thick}, % linear/{red,dashed,thick}, % asymptotic/{blue,dotted,thick}] % {phase} % {z/{0,{-0.1,-0.5},{-0.1,0.5}},p/{{-0.5,-10},{-0.5,10}},k/10} -% \end{BodePlot} +% \end{BodePhPlot} % \end{center} -% \caption{\label{multiBodeZPK}Superimposed approximate and true Bode plots using the \texttt{BodePlot} environment and the \texttt{\textbackslash addBodeZPKPlots} macro.} +% \caption{\label{multiBodeZPK}Superimposed approximate and true Bode plots using the \texttt{BodeMagPlot} and \texttt{BodePhPlot} environments and the \texttt{\textbackslash addBodeZPKPlots} macro.} % \end{figure} % which generates the plot in Figure \ref{multiBodeZPK}. % @@ -584,7 +582,7 @@ Nyquist plots with additional commands, using two different macros % \end{itemize} % All 20 of the macros defined by combinations of |Type|, |Feature|, and |Approx|, and any |gnuplot| (or |pgfplot| if the |pgf| class option is loaded) compatible function of the 20 macros can be used as |plot-command| in the |addBodeComponentPlot| macro. This is sufficient to generate the Bode plot of any rational transfer function with delay. For example, the Bode phase plot in Figure \ref{multiBodeZPK} can also be generated using: %\begin{verbatim} -%\begin{BodePlot}[ylabel={Phase (degree)},ytick distance=90]{0.01}{100} +%\begin{BodePhPlot}[ytick distance=90]{0.01}{100} % \addBodeComponentPlot[black,thick]{\PhZero{0}{0} + \PhZero{-0.1}{-0.5} + % \PhZero{-0.1}{0.5} + \PhPole{-0.5}{-10} + \PhPole{-0.5}{10} + % \PhK{10}{0}} @@ -594,17 +592,17 @@ Nyquist plots with additional commands, using two different macros % \addBodeComponentPlot[blue,dotted,thick] {\PhZeroAsymp{0}{0} + % \PhZeroAsymp{-0.1}{-0.5} + \PhZeroAsymp{-0.1}{0.5} + % \PhPoleAsymp{-0.5}{-10} + \PhPoleAsymp{-0.5}{10} + \PhKAsymp{10}{40}} -%\end{BodePlot} +%\end{BodePhPlot} %\end{verbatim} %\begin{figure} % \begin{center} -% \begin{BodePlot}[ylabel={Phase (degree)},ytick distance=90]{0.01}{100} +% \begin{BodePhPlot}[ytick distance=90]{0.01}{100} % \addBodeComponentPlot[black,thick] {\PhZero{0}{0} + \PhZero{-0.1}{-0.5} + \PhZero{-0.1}{0.5} + \PhPole{-0.5}{-10} + \PhPole{-0.5}{10} + \PhK{10}{0}} % \addBodeComponentPlot[red,dashed,thick] {\PhZeroLin{0}{0} + \PhZeroLin{-0.1}{-0.5} + \PhZeroLin{-0.1}{0.5} + \PhPoleLin{-0.5}{-10} + \PhPoleLin{-0.5}{10} + \PhKLin{10}{20}} % \addBodeComponentPlot[blue,dotted,thick] {\PhZeroAsymp{0}{0} + \PhZeroAsymp{-0.1}{-0.5} + \PhZeroAsymp{-0.1}{0.5} + \PhPoleAsymp{-0.5}{-10} + \PhPoleAsymp{-0.5}{10} + \PhKAsymp{10}{40}} -% \end{BodePlot} +% \end{BodePhPlot} % \end{center} -% \caption{\label{multiBodeComponents}Superimposed approximate and true Bode Phase plot using the \texttt{BodePlot} environment, the \texttt{\textbackslash addBodeComponentPlot} macro, and several macros of the \texttt{\textbackslash TypeFeatureApprox} form.} +% \caption{\label{multiBodeComponents}Superimposed approximate and true Bode Phase plot using the \texttt{BodePhPlot} environment, the \texttt{\textbackslash addBodeComponentPlot} macro, and several macros of the \texttt{\textbackslash TypeFeatureApprox} form.} %\end{figure} % which gives us the plot in Figure \ref{multiBodeComponents}. % @@ -620,21 +618,21 @@ Nyquist plots with additional commands, using two different macros % % \noindent This entry describes 2 different macros of the form |\MagSOFeaturePeak| that take the the coefficients $ a_1 $ and $ a_0 $ of a general second order system as inputs, and draw a resonant peak using the |\draw| TikZ macro. The |Feature| in the macro name should be replaced by either |Poles| or |Zeros| to generate a peak for poles and a valley for zeros, respectively. For example, the command %\begin{verbatim} -%\begin{BodePlot}[xlabel={}]{0.1}{10} +%\begin{BodeMagPlot}[xlabel={}]{0.1}{10} % \addBodeComponentPlot[red,dashed,thick]{\MagSOPoles{0.2}{1}} % \addBodeComponentPlot[black,thick]{\MagSOPolesLin{0.2}{1}} % \MagSOPolesPeak[thick]{0.2}{1} -%\end{BodePlot} +%\end{BodeMagPlot} %\end{verbatim} % generates the plot in Figure \ref{BodePeak}. % % \begin{figure} % \begin{center} -% \begin{BodePlot}[xlabel={}]{0.1}{10} +% \begin{BodeMagPlot}[xlabel={}]{0.1}{10} % \addBodeComponentPlot[red,dashed,thick]{\MagSOPoles{0.2}{1}} % \addBodeComponentPlot[black,thick]{\MagSOPolesLin{0.2}{1}} % \MagSOPolesPeak[very thick]{0.2}{1} -% \end{BodePlot} +% \end{BodeMagPlot} % \end{center} % \cprotect\caption{\label{BodePeak} Resonant peak in asymptotic Bode plot using |\MagSOPolesPeak|.} % \end{figure} @@ -727,7 +725,7 @@ Nyquist plots with additional commands, using two different macros % |\addNyquistTFPlot|\oarg{plot-options}\\ % \hspace*{2em}\marg{num/\marg{coeffs},den/\marg{coeffs},d/\marg{delay}} % -% \noindent Similar to |\addNyquistZPKPlot|, with a transfer function input in the TF form. +% \noindent Similar to |\addNyquistZPKPlot|, with a transfer function input in the TF form. % % \subsection{Nichols charts} % \DescribeMacro{\NicholsZPK} @@ -804,8 +802,7 @@ Nyquist plots with additional commands, using two different macros % \begin{macro}{gnuplot@prefix} % \changes{v1.0.3}{2021/11/03}{Added jobname to gnuplot prefix} % \changes{v1.0.8}{2022/07/06}{Fixed issue \#6} -% \begin{macro}{gnuplot@degrees} -% This code is needed to support both |pgfplots| and |gnuplot| simultaneously. New macros are defined for the |pow| and |mod| functions to address differences between the two math engines. We start by processing the |pgf| and |declutter| class options. +% This code is needed to support both |pgfplots| and |gnuplot| simultaneously. New macros are defined for the |pow| and |mod| functions to address differences between the two math engines. We start by processing the class options. % \begin{macrocode} \newif\if@pgfarg\@pgfargfalse \DeclareOption{pgf}{% @@ -815,21 +812,27 @@ Nyquist plots with additional commands, using two different macros \DeclareOption{declutter}{% \@declutterargtrue } +\newif\if@radarg\@radargfalse +\DeclareOption{rad}{% + \@radargtrue +} \ProcessOptions\relax % \end{macrocode} % Then, we define two new macros to unify |pgfplots| and |gnuplot|. % \begin{macrocode} +\newcommand{\n@mod}[2]{(#1)-(floor((#1)/(#2))*(#2))} \if@pgfarg - \newcommand{\n@pow}[2]{(#1)^(#2)}% - \newcommand{\n@mod}[2]{mod((#1),(#2))}% + \newcommand{\n@pow}[2]{(#1)^(#2)} + \pgfplotsset{% + trig format plots=rad% + } \else - \newcommand{\n@pow}[2]{(#1)**(#2)}% - \newcommand{\n@mod}[2]{(#1)-(floor((#1)/(#2))*(#2))}% + \newcommand{\n@pow}[2]{(#1)**(#2)} % \end{macrocode} % Then, we create a counter so that a new data table is generated and for each new plot. If the plot macros have not changed, the tables, once generated, can be reused by |gnuplot|, which reduces compilation time. The |declutter| option is used to enable the |gnuplot| directory to declutter the working directory. % \begin{macrocode} - \newcounter{gnuplot@id}% - \setcounter{gnuplot@id}{0}% + \newcounter{gnuplot@id} + \setcounter{gnuplot@id}{0} \if@declutterarg \tikzset{% gnuplot@prefix/.style={% @@ -846,21 +849,11 @@ Nyquist plots with additional commands, using two different macros } \fi % \end{macrocode} -% Then, we add |set angles degrees| to all |gnuplot| macros to avoid having to convert from degrees to radians everywhere. -% \begin{macrocode} - \pgfplotsset{% - gnuplot@degrees/.code={% - \ifnum\value{gnuplot@id}=1 - \xdef\pgfplots@gnuplot@format{\pgfplots@gnuplot@format set angles degrees;}% - \fi - }% - } -% \end{macrocode} % If the operating system is not Windows, and if the |declutter| option is not passed, we create the |gnuplot| folder if it does not already exist. \changes{v1.0.2}{2021/11/01}{Fixed issue \#1} % \begin{macrocode} \ifwindows\else \if@declutterarg - \immediate\write18{mkdir -p gnuplot}% + \immediate\write18{mkdir -p gnuplot} \fi \fi \fi @@ -869,7 +862,6 @@ Nyquist plots with additional commands, using two different macros % \end{macro} % \end{macro} % \end{macro} -% \end{macro} % \begin{macro}{bode@style} % Default axis properties for all plot macros are collected in this |pgf| style. % \begin{macrocode} @@ -889,6 +881,20 @@ Nyquist plots with additional commands, using two different macros } % \end{macrocode} % \end{macro} +% \begin{macro}{ph@filter} +% \begin{macro}{ph@x@filter} +% These macros create |pgf| filters to convert plots from radians to degrees. +% \begin{macrocode} +\if@radarg + \pgfplotsset{ph@filter/.style = {ytick distance=pi/4, ylabel={Phase (rad)}}}% + \pgfplotsset{ph@x@filter/.style = {xlabel={Phase (rad)}}}% +\else + \pgfplotsset{ph@filter/.style = {y filter/.expression={y*180/pi}, ytick distance=45, ylabel={Phase (deg)}}}% + \pgfplotsset{ph@x@filter/.style = {x filter/.expression={x*180/pi}, xlabel={Phase (deg)}}}% +\fi +% \end{macrocode} +% \end{macro} +% \end{macro} % \subsection{Parametric function generators for poles, zeros, gains, and delays.} % \begin{macro}{\MagK} % \begin{macro}{\MagKAsymp} @@ -901,7 +907,7 @@ Nyquist plots with additional commands, using two different macros \newcommand*{\MagK}[2]{(20*log10(abs(#1)))} \newcommand*{\MagKAsymp}{\MagK} \newcommand*{\MagKLin}{\MagK} -\newcommand*{\PhK}[2]{(#1<0?-180:0)} +\newcommand*{\PhK}[2]{(#1<0?-pi:0)} \newcommand*{\PhKAsymp}{\PhK} \newcommand*{\PhKLin}{\PhK} % \end{macrocode} @@ -916,7 +922,7 @@ Nyquist plots with additional commands, using two different macros % True magnitude and phase parametric functions for a pure delay $G(s)=e^{-Ts}$. The macros take two arguments corresponding to real and imaginary part of the gain to facilitate code reuse between delays, gains, poles, and zeros, but only real gains are supported. The second argument, if supplied, is ignored. % \begin{macrocode} \newcommand*{\MagDel}[2]{0} -\newcommand*{\PhDel}[2]{-#1*180*t/pi} +\newcommand*{\PhDel}[2]{-#1*t} % \end{macrocode} % \end{macro} % \end{macro} @@ -945,23 +951,23 @@ Nyquist plots with additional commands, using two different macros % Parametric function for the true phase of a complex pole. % \begin{macrocode} \newcommand*{\PhPole}[2]{(#1 > 0 ? (#2 > 0 ? - (\n@mod{-atan2((t - (#2)),-(#1))+360}{360}) : + (\n@mod{-atan2((t - (#2)),-(#1))}{2*pi}) : (-atan2((t - (#2)),-(#1)))) : (-atan2((t - (#2)),-(#1))))} % \end{macrocode} % Parametric function for linear approximation of the phase of a complex pole. % \begin{macrocode} \newcommand*{\PhPoleLin}[2]{% - (abs(#1)+abs(#2) == 0 ? -90 : - (t < (sqrt(\n@pow{#1}{2} + \n@pow{#2}{2}) / - (\n@pow{10}{sqrt(\n@pow{#1}{2}/(\n@pow{#1}{2} + \n@pow{#2}{2}))})) ? + (abs(#1)+abs(#2) == 0 ? -pi/2 : + (t < (sqrt(\n@pow{#1}{2} + \n@pow{#2}{2}) / + (\n@pow{10}{sqrt(\n@pow{#1}{2}/(\n@pow{#1}{2} + \n@pow{#2}{2}))})) ? (-atan2(-(#2),-(#1))) : - (t >= (sqrt(\n@pow{#1}{2} + \n@pow{#2}{2}) * - (\n@pow{10}{sqrt(\n@pow{#1}{2}/(\n@pow{#1}{2} + \n@pow{#2}{2}))})) ? - (#2>0?(#1>0?270:-90):-90) : - (-atan2(-(#2),-(#1)) + (log10(t/(sqrt(\n@pow{#1}{2} + \n@pow{#2}{2}) / - (\n@pow{10}{sqrt(\n@pow{#1}{2}/(\n@pow{#1}{2} + - \n@pow{#2}{2}))}))))*((#2>0?(#1>0?270:-90):-90) + atan2(-(#2),-(#1)))/ + (t >= (sqrt(\n@pow{#1}{2} + \n@pow{#2}{2}) * + (\n@pow{10}{sqrt(\n@pow{#1}{2}/(\n@pow{#1}{2} + \n@pow{#2}{2}))})) ? + (#2>0?(#1>0?3*pi/2:-pi/2):-pi/2) : + (-atan2(-(#2),-(#1)) + (log10(t/(sqrt(\n@pow{#1}{2} + \n@pow{#2}{2}) / + (\n@pow{10}{sqrt(\n@pow{#1}{2}/(\n@pow{#1}{2} + + \n@pow{#2}{2}))}))))*((#2>0?(#1>0?3*pi/2:-pi/2):-pi/2) + atan2(-(#2),-(#1)))/ (log10(\n@pow{10}{sqrt((4*\n@pow{#1}{2})/ (\n@pow{#1}{2} + \n@pow{#2}{2}))}))))))} % \end{macrocode} @@ -969,7 +975,7 @@ Nyquist plots with additional commands, using two different macros % \begin{macrocode} \newcommand*{\PhPoleAsymp}[2]{(t < (sqrt(\n@pow{#1}{2} + \n@pow{#2}{2})) ? (-atan2(-(#2),-(#1))) : - (#2>0?(#1>0?270:-90):-90))} + (#2>0?(#1>0?3*pi/2:-pi/2):-pi/2))} % \end{macrocode} % \end{macro} % \end{macro} @@ -1026,10 +1032,10 @@ Nyquist plots with additional commands, using two different macros \newcommand*{\PhCSPolesLin}[2]{(t < (#2 / (\n@pow{10}{abs(#1)})) ? 0 : (t >= (#2 * (\n@pow{10}{abs(#1)})) ? - (#1>0 ? -180 : 180) : - (#1>0 ? (-180*(log10(t*(\n@pow{10}{#1})/#2))/(2*#1)) : - (180*(log10(t*(\n@pow{10}{abs(#1)})/#2))/(2*abs(#1))))))} -\newcommand*{\PhCSPolesAsymp}[2]{(#1>0?(t<#2?0:-180):(t<#2?0:180))} + (#1>0 ? -pi : pi) : + (#1>0 ? (-pi*(log10(t*(\n@pow{10}{#1})/#2))/(2*#1)) : + (pi*(log10(t*(\n@pow{10}{abs(#1)})/#2))/(2*abs(#1))))))} +\newcommand*{\PhCSPolesAsymp}[2]{(#1>0?(t<#2?0:-pi):(t<#2?0:pi))} % \end{macrocode} % Plots of the inverse function $G(s)=s^2+2\zeta\omega_n s+\omega_n^2$ are defined to be negative of plots of poles. The |0-| is necessary due to a bug in |gnuplot| (fixed in version 5.4, patchlevel 3). % \begin{macrocode} @@ -1092,10 +1098,10 @@ Nyquist plots with additional commands, using two different macros \newcommand*{\PhSOPoles}[2]{(-atan2((#1)*t,((#2) - \n@pow{t}{2})))} \newcommand*{\PhSOPolesLin}[2]{(#2>0 ? \PhCSPolesLin{(#1/(2*sqrt(#2)))}{(sqrt(#2))} : - (#1>0 ? -180 : 180))} + (#1>0 ? -pi : pi))} \newcommand*{\PhSOPolesAsymp}[2]{(#2>0 ? \PhCSPolesAsymp{(#1/(2*sqrt(#2)))}{(sqrt(#2))} : - (#1>0 ? -180 : 180))} + (#1>0 ? -pi : pi))} % \end{macrocode} % Plots of the inverse function $G(s)=s^2+as+b$ are defined to be negative of plots of poles. The |0-| is necessary due to a bug in |gnuplot| (fixed in version 5.4, patchlevel 3). % \begin{macrocode} @@ -1151,7 +1157,7 @@ Nyquist plots with additional commands, using two different macros % \end{macrocode} % The |\noexpand| macros below are needed to so that only the macro |\opt@group| is expanded. \changes{v1.0.3}{2021/11/03}{Added Tikz option} % \begin{macrocode} - \edef\temp@cmd{\noexpand\begin{tikzpicture}[\unexpanded\expandafter{\opt@tikz}]% + \edef\temp@cmd{\noexpand\begin{tikzpicture} [\unexpanded\expandafter{\opt@tikz}]% \noexpand\begin{groupplot}[% bode@style, xmin={#3}, @@ -1167,48 +1173,35 @@ Nyquist plots with additional commands, using two different macros % \end{macrocode} % To ensure frequency tick marks on magnitude and the phase plots are always aligned, we use the |groupplot| library. The |\expandafter| chain below is used to expand macros in the plot and group optional arguments. % \begin{macrocode} - \if@pgfarg - \expandafter\nextgroupplot\expandafter[ytick distance=20, - ylabel={Gain (dB)},xmajorticks=false,\optmag@axes] - \edef\temp@cmd{\noexpand\addplot[variable=t,thick,\optmag@plot]}% - \temp@cmd {\func@mag}; - \optmag@commands - \expandafter\nextgroupplot\expandafter[ytick distance=45, - ylabel={Phase ($^{\circ}$)},xlabel={Frequency (rad/s)},\optph@axes] - \edef\temp@cmd{\noexpand\addplot[variable=t,thick,\optph@plot]}% - \temp@cmd {\func@ph}; - \optph@commands - \else + \edef\temp@mag@cmd{\noexpand\nextgroupplot[ytick distance=20, ylabel={Gain (dB)}, xmajorticks=false, \optmag@axes] + \noexpand\addplot[variable=t, thick, \optmag@plot]} + \edef\temp@ph@cmd{\noexpand\nextgroupplot[ph@filter, xlabel={Frequency (rad/s)}, \optph@axes] + \noexpand\addplot[variable=t, thick, \optph@plot]} % \end{macrocode} % In |gnuplot| mode, we increment the |gnuplot@id| counter before every plot to make sure that new and reusable |.gnuplot| and |.table| files are generated for every plot. % \begin{macrocode} - \stepcounter{gnuplot@id} - \expandafter\nextgroupplot\expandafter[ytick distance=20, - ylabel={Gain (dB)},xmajorticks=false,\optmag@axes] - \edef\temp@cmd{\noexpand\addplot[variable=t,thick,\optmag@plot]}% - \temp@cmd gnuplot[gnuplot@degrees,gnuplot@prefix] {\func@mag}; + \if@pgfarg\else + \edef\temp@mag@cmd{\noexpand\stepcounter{gnuplot@id} \unexpanded\expandafter{\temp@mag@cmd} gnuplot[gnuplot@prefix]} + \edef\temp@ph@cmd{\noexpand\stepcounter{gnuplot@id} \unexpanded\expandafter{\temp@ph@cmd} gnuplot[gnuplot@prefix]} + \fi + \temp@mag@cmd {\func@mag}; \optmag@commands - \stepcounter{gnuplot@id} - \expandafter\nextgroupplot\expandafter[ytick distance=45, - ylabel={Phase ($^{\circ}$)},xlabel={Frequency (rad/s)},\optph@axes] - \edef\temp@cmd{\noexpand\addplot[variable=t,thick,\optph@plot]}% - \temp@cmd gnuplot[gnuplot@degrees,gnuplot@prefix] {\func@ph}; + \temp@ph@cmd {\func@ph}; \optph@commands - \fi \end{groupplot} \end{tikzpicture} } % \end{macrocode} % \end{macro} % \begin{macro}{\BodeTF} -% Implementation of this macro is very similar to the |\BodeZPK| macro above. The only difference is the lack of linear and asymptotic plots and slightly different parsing of the mandatory arguments. \changes{v1.0.3}{2021/11/03}{Added Tikz option} +% Implementation of this macro is very similar to the |\BodeZPK| macro above. The only difference is the lack of linear and asymptotic plots and slightly different parsing of the mandatory arguments. \changes{v1.0.3}{2021/11/03}{Added Tikz option} \changes{v1.1.0}{2022/07/06}{Fixed phase wrapping in gnuplot mode} % \begin{macrocode} \newcommand{\BodeTF}[4][]{% \parse@opt{#1}% \gdef\func@mag{}% \gdef\func@ph{}% \build@TF@plot{\func@mag}{\func@ph}{#2}% - \edef\temp@cmd{\noexpand\begin{tikzpicture}[\unexpanded\expandafter{\opt@tikz}]% + \edef\temp@cmd{\noexpand\begin{tikzpicture} [\unexpanded\expandafter{\opt@tikz}]% \noexpand\begin{groupplot}[% bode@style, xmin={#3}, @@ -1221,31 +1214,22 @@ Nyquist plots with additional commands, using two different macros ]% }% \temp@cmd + \edef\temp@mag@cmd{\noexpand\nextgroupplot[ytick distance=20, ylabel={Gain (dB)}, xmajorticks=false, \optmag@axes] + \noexpand\addplot[variable=t, thick, \optmag@plot]} + \edef\temp@ph@cmd{\noexpand\nextgroupplot[ph@filter, xlabel={Frequency (rad/s)}, \optph@axes] + \noexpand\addplot[variable=t, thick, \optph@plot]} + \if@pgfarg\else + \edef\temp@mag@cmd{\noexpand\stepcounter{gnuplot@id} \unexpanded\expandafter{\temp@mag@cmd} gnuplot[gnuplot@prefix]} + \edef\temp@ph@cmd{\noexpand\stepcounter{gnuplot@id} \unexpanded\expandafter{\temp@ph@cmd} gnuplot[gnuplot@prefix]} + \fi + \temp@mag@cmd {\func@mag}; + \optmag@commands \if@pgfarg - \expandafter\nextgroupplot\expandafter[ytick distance=20, - ylabel={Gain (dB)},xmajorticks=false,\optmag@axes] - \edef\temp@cmd{\noexpand\addplot[variable=t,thick,\optmag@plot]}% - \temp@cmd {\func@mag}; - \optmag@commands - \expandafter\nextgroupplot\expandafter[ytick distance=45, - ylabel={Phase ($^{\circ}$)},xlabel={Frequency (rad/s)},\optph@axes] - \edef\temp@cmd{\noexpand\addplot[variable=t,thick,\optph@plot]}% - \temp@cmd {\func@ph}; - \optph@commands + \temp@ph@cmd {\n@mod{\func@ph}{2*pi}}; \else - \stepcounter{gnuplot@id}% - \expandafter\nextgroupplot\expandafter[ytick distance=20, - ylabel={Gain (dB)},xmajorticks=false,\optmag@axes] - \edef\temp@cmd{\noexpand\addplot[variable=t,thick,\optmag@plot]}% - \temp@cmd gnuplot[gnuplot@degrees,gnuplot@prefix] {\func@mag}; - \optmag@commands - \stepcounter{gnuplot@id}% - \expandafter\nextgroupplot\expandafter[ytick distance=45, - ylabel={Phase ($^{\circ}$)},xlabel={Frequency (rad/s)},\optph@axes] - \edef\temp@cmd{\noexpand\addplot[variable=t,thick,\optph@plot]}% - \temp@cmd gnuplot[gnuplot@degrees,gnuplot@prefix] {\func@ph}; - \optph@commands + \temp@ph@cmd {'+' using (t):\func@ph smooth unwrap}; \fi + \optph@commands \end{groupplot} \end{tikzpicture} } @@ -1269,14 +1253,14 @@ Nyquist plots with additional commands, using two different macros \else \stepcounter{gnuplot@id}% \edef\temp@cmd{\noexpand\addplot[variable=t,thick,\opt]} - \temp@cmd gnuplot[gnuplot@degrees,gnuplot@prefix] {\plot@macro}; + \temp@cmd gnuplot[gnuplot@prefix] {\plot@macro}; \fi }% } % \end{macrocode} %\end{macro} % \begin{macro}{\addBodeTFPlot} -% This macro is designed to issues a single |\addplot| macros for the set of coefficients and delay. All of the work is done by the |\build@TF@plot| macro. +% This macro is designed to issues a single |\addplot| macros for the set of coefficients and delay. All of the work is done by the |\build@TF@plot| macro. \changes{v1.1.0}{2022/07/06}{Fixed phase wrapping in gnuplot mode} % \begin{macrocode} \newcommand{\addBodeTFPlot}[3][thick]{% \gdef\plot@macro{}% @@ -1287,10 +1271,18 @@ Nyquist plots with additional commands, using two different macros \build@TF@plot{\plot@macro}{\temp@macro}{#3}% \fi \if@pgfarg - \addplot[variable=t,#1]{\plot@macro}; + \ifnum\pdfstrcmp{#2}{phase}=0 + \addplot[variable=t,#1]{\n@mod{\plot@macro}{2*pi}}; + \else + \addplot[variable=t,#1]{\plot@macro}; + \fi \else \stepcounter{gnuplot@id}% - \addplot[variable=t,#1] gnuplot[gnuplot@degrees, gnuplot@prefix] {\plot@macro}; + \ifnum\pdfstrcmp{#2}{phase}=0 + \addplot[variable=t,#1] gnuplot[gnuplot@prefix] {'+' using (t):\plot@macro smooth unwrap} + \else + \addplot[variable=t,#1] gnuplot[gnuplot@prefix] {\plot@macro}; + \fi \fi } % \end{macrocode} @@ -1303,17 +1295,67 @@ Nyquist plots with additional commands, using two different macros \addplot[variable=t,#1]{#2}; \else \stepcounter{gnuplot@id}% - \addplot[variable=t,#1] gnuplot[gnuplot@degrees,gnuplot@prefix] {#2}; + \addplot[variable=t,#1] gnuplot[gnuplot@prefix] {#2}; \fi } % \end{macrocode} %\end{macro} +% \begin{environment}{BodePhPlot} +% An environment to host phase plot macros that pass parametric functions to |\addplot| macros. Uses the defaults specified in |bode@style| to create a shortcut that includes the |tikzpicture| and |semilogaxis| environments.\changes{v1.1.0}{2022/07/20}{Added separate environments for phase and magnitude plots} +% \begin{macrocode} +\newenvironment{BodePhPlot}[3][]{% + \parse@env@opt{#1}% + \edef\temp@cmd{\noexpand\begin{tikzpicture} [\unexpanded\expandafter{\opt@tikz}] + \noexpand\begin{semilogxaxis}[% + ph@filter, + bode@style, + xmin={#2}, + xmax={#3}, + domain=#2:#3, + height=2.5cm, + xlabel={Frequency (rad/s)}, + \unexpanded\expandafter{\opt@axes} + ]% + } + \temp@cmd +}{ + \end{semilogxaxis} + \end{tikzpicture} +} +% \end{macrocode} +% \end{environment} +% \begin{environment}{BodeMagPlot} +% An environment to host magnitude plot macros that pass parametric functions to |\addplot| macros. Uses the defaults specified in |bode@style| to create a shortcut that includes the |tikzpicture| and |semilogaxis| environments.\changes{v1.1.0}{2022/07/20}{Added separate environments for phase and magnitude plots} +% \begin{macrocode} +\newenvironment{BodeMagPlot}[3][]{% + \parse@env@opt{#1}% + \edef\temp@cmd{\noexpand\begin{tikzpicture} [\unexpanded\expandafter{\opt@tikz}] + \noexpand\begin{semilogxaxis}[% + bode@style, + xmin={#2}, + xmax={#3}, + domain=#2:#3, + height=2.5cm, + xlabel={Frequency (rad/s)}, + ylabel={Gain (dB)}, + ytick distance=40, + \unexpanded\expandafter{\opt@axes} + ]% + } + \temp@cmd +}{ + \end{semilogxaxis} + \end{tikzpicture} +} +% \end{macrocode} +% \end{environment} % \begin{environment}{BodePlot} -% An environment to host macros that pass parametric functions to |\addplot| macros. Uses the defaults specified in |bode@style| to create a shortcut that includes the |tikzpicture| and |semilogaxis| environments. \changes{v1.0.3}{2021/11/03}{Added tikz option to environments} +% Same as |BodeMagPlot|. The |BodePlot| environment is deprecated as of v1.1.0, please use the |BodePhPlot| and |BodeMagPlot| environments instead.\changes{v1.0.3}{2021/11/03}{Added tikz option to environments}\changes{v1.1.0}{2022/02/20}{Deprecated BodePlot environment} % \begin{macrocode} \newenvironment{BodePlot}[3][]{% + \PackageWarning{bodeplot}{Since v1.1.0, the BodePlot environment returns phase plots in radian units only. Please use the BodePhPlot environment if degree units are needed.}% \parse@env@opt{#1}% - \edef\temp@cmd{\noexpand\begin{tikzpicture}[\unexpanded\expandafter{\opt@tikz}] + \edef\temp@cmd{\noexpand\begin{tikzpicture} [\unexpanded\expandafter{\opt@tikz}] \noexpand\begin{semilogxaxis}[% bode@style, xmin={#2}, @@ -1323,7 +1365,7 @@ Nyquist plots with additional commands, using two different macros xlabel={Frequency (rad/s)}, \unexpanded\expandafter{\opt@axes} ]% - }% + } \temp@cmd }{ \end{semilogxaxis} @@ -1475,8 +1517,8 @@ Nyquist plots with additional commands, using two different macros \xdef\loop@delay{\values}% \fi }% - \xdef#2{(\n@mod{atan2((\num@im),(\num@real))-atan2((\den@im),% - (\den@real))-\loop@delay*180*t/pi+360}{360})}% + \xdef#2{(atan2((\num@im),(\num@real))-atan2((\den@im),% + (\den@real))-\loop@delay*t)}% \xdef#1{(20*log10(sqrt((\n@pow{\num@real}{2})+(\n@pow{\num@im}{2})))-% 20*log10(sqrt((\n@pow{\den@real}{2})+(\n@pow{\den@im}{2}))))}% } @@ -1581,7 +1623,7 @@ Nyquist plots with additional commands, using two different macros \gdef\func@mag{}% \gdef\func@ph{}% \build@ZPK@plot{\func@mag}{\func@ph}{}{#2}% - \edef\temp@cmd{\noexpand\begin{tikzpicture}[\unexpanded\expandafter{\opt@tikz}]% + \edef\temp@cmd{\noexpand\begin{tikzpicture} [\unexpanded\expandafter{\opt@tikz}]% \noexpand\begin{axis}[% bode@style, domain=#3:#4, @@ -1594,14 +1636,14 @@ Nyquist plots with additional commands, using two different macros }% \temp@cmd \addplot [only marks,mark=+,thick,red] (-1 , 0); - \edef\temp@cmd{\noexpand\addplot[variable=t,thick,\unexpanded\expandafter{\opt@plot}]}% + \edef\temp@cmd{\noexpand\addplot[variable=t, thick, \unexpanded\expandafter{\opt@plot}]}% \if@pgfarg \temp@cmd ( {\n@pow{10}{((\func@mag)/20)}*cos(\func@ph)}, {\n@pow{10}{((\func@mag)/20)}*sin(\func@ph)} ); \opt@commands \else \stepcounter{gnuplot@id}% - \temp@cmd gnuplot[parametric,gnuplot@degrees,gnuplot@prefix] {% + \temp@cmd gnuplot[parametric,gnuplot@prefix] {% \n@pow{10}{((\func@mag)/20)}*cos(\func@ph), \n@pow{10}{((\func@mag)/20)}*sin(\func@ph)}; \opt@commands @@ -1619,7 +1661,7 @@ Nyquist plots with additional commands, using two different macros \gdef\func@mag{}% \gdef\func@ph{}% \build@TF@plot{\func@mag}{\func@ph}{#2}% - \edef\temp@cmd{\noexpand\begin{tikzpicture}[\unexpanded\expandafter{\opt@tikz}]% + \edef\temp@cmd{\noexpand\begin{tikzpicture} [\unexpanded\expandafter{\opt@tikz}]% \noexpand\begin{axis}[% bode@style, domain=#3:#4, @@ -1632,14 +1674,14 @@ Nyquist plots with additional commands, using two different macros }% \temp@cmd \addplot [only marks,mark=+,thick,red] (-1 , 0); - \edef\temp@cmd{\noexpand\addplot[variable=t,thick,\unexpanded\expandafter{\opt@plot}]}% + \edef\temp@cmd{\noexpand\addplot[variable=t, thick, \unexpanded\expandafter{\opt@plot}]}% \if@pgfarg \temp@cmd ( {\n@pow{10}{((\func@mag)/20)}*cos(\func@ph)}, {\n@pow{10}{((\func@mag)/20)}*sin(\func@ph)} ); \opt@commands \else \stepcounter{gnuplot@id}% - \temp@cmd gnuplot[parametric,gnuplot@degrees,gnuplot@prefix]{% + \temp@cmd gnuplot[parametric,gnuplot@prefix]{% \n@pow{10}{((\func@mag)/20)}*cos(\func@ph), \n@pow{10}{((\func@mag)/20)}*sin(\func@ph)}; \opt@commands @@ -1661,7 +1703,7 @@ Nyquist plots with additional commands, using two different macros {\n@pow{10}{((\func@mag)/20)}*sin(\func@ph)} ); \else \stepcounter{gnuplot@id}% - \addplot[variable=t,#1] gnuplot[parametric,gnuplot@degrees,gnuplot@prefix]{% + \addplot[variable=t,#1] gnuplot[parametric,gnuplot@prefix]{% \n@pow{10}{((\func@mag)/20)}*cos(\func@ph), \n@pow{10}{((\func@mag)/20)}*sin(\func@ph)}; \fi @@ -1680,7 +1722,7 @@ Nyquist plots with additional commands, using two different macros {\n@pow{10}{((\func@mag)/20)}*sin(\func@ph)} ); \else \stepcounter{gnuplot@id}% - \addplot[variable=t,#1] gnuplot[parametric,gnuplot@degrees,gnuplot@prefix]{% + \addplot[variable=t,#1] gnuplot[parametric,gnuplot@prefix]{% \n@pow{10}{((\func@mag)/20)}*cos(\func@ph), \n@pow{10}{((\func@mag)/20)}*sin(\func@ph)}; \fi @@ -1692,7 +1734,7 @@ Nyquist plots with additional commands, using two different macros % \begin{macrocode} \newenvironment{NyquistPlot}[3][]{% \parse@env@opt{#1}% - \edef\temp@cmd{\noexpand\begin{tikzpicture}[\unexpanded\expandafter{\opt@tikz}]% + \edef\temp@cmd{\noexpand\begin{tikzpicture} [\unexpanded\expandafter{\opt@tikz}]% \noexpand\begin{axis}[% bode@style, height=5cm, @@ -1758,12 +1800,12 @@ Nyquist plots with additional commands, using two different macros \gdef\func@mag{}% \gdef\func@ph{}% \build@ZPK@plot{\func@mag}{\func@ph}{}{#2}% - \edef\temp@cmd{\noexpand\begin{tikzpicture}[\unexpanded\expandafter{\opt@tikz}]% + \edef\temp@cmd{\noexpand\begin{tikzpicture} [\unexpanded\expandafter{\opt@tikz}]% \noexpand\begin{axis}[% + ph@x@filter, bode@style, domain=#3:#4, height=5cm, - xlabel={Phase (degrees)}, ylabel={Gain (dB)}, samples=500, \unexpanded\expandafter{\opt@axes} @@ -1776,7 +1818,7 @@ Nyquist plots with additional commands, using two different macros \opt@commands \else \stepcounter{gnuplot@id}% - \temp@cmd gnuplot[parametric, gnuplot@degrees, gnuplot@prefix] + \temp@cmd gnuplot[parametric,gnuplot@prefix] { \func@ph , \func@mag }; \opt@commands \fi @@ -1788,12 +1830,12 @@ Nyquist plots with additional commands, using two different macros \gdef\func@mag{}% \gdef\func@ph{}% \build@TF@plot{\func@mag}{\func@ph}{#2}% - \edef\temp@cmd{\noexpand\begin{tikzpicture}[\unexpanded\expandafter{\opt@tikz}]% + \edef\temp@cmd{\noexpand\begin{tikzpicture} [\unexpanded\expandafter{\opt@tikz}]% \noexpand\begin{axis}[% + ph@x@filter, bode@style, domain=#3:#4, height=5cm, - xlabel={Phase (degrees)}, ylabel={Gain (dB)}, samples=500, \unexpanded\expandafter{\opt@axes} @@ -1802,12 +1844,12 @@ Nyquist plots with additional commands, using two different macros \temp@cmd \edef\temp@cmd{\noexpand\addplot[variable=t,thick,\opt@plot]}% \if@pgfarg - \temp@cmd ( {\func@ph} , {\func@mag} ); + \temp@cmd ( {\n@mod{\func@ph}{2*pi}} , {\func@mag} ); \opt@commands \else \stepcounter{gnuplot@id}% - \temp@cmd gnuplot[parametric, gnuplot@degrees, gnuplot@prefix] - { \func@ph , \func@mag }; + \temp@cmd gnuplot[parametric,gnuplot@prefix] + { \n@mod{\func@ph}{2*pi} , \func@mag }; \opt@commands \fi \end{axis} @@ -1815,12 +1857,12 @@ Nyquist plots with additional commands, using two different macros } \newenvironment{NicholsChart}[3][]{% \parse@env@opt{#1}% - \edef\temp@cmd{\noexpand\begin{tikzpicture}[\unexpanded\expandafter{\opt@tikz}]% + \edef\temp@cmd{\noexpand\begin{tikzpicture} [\unexpanded\expandafter{\opt@tikz}]% \noexpand\begin{axis}[% + ph@x@filter, bode@style, domain=#2:#3, height=5cm, - xlabel={Phase (degrees)}, ylabel={Gain (dB)}, \unexpanded\expandafter{\opt@axes} ]% @@ -1838,7 +1880,7 @@ Nyquist plots with additional commands, using two different macros \addplot[variable=t,#1] ( {\func@ph} , {\func@mag} ); \else \stepcounter{gnuplot@id}% - \addplot[variable=t,#1] gnuplot[parametric,gnuplot@degrees,gnuplot@prefix] + \addplot[variable=t,#1] gnuplot[parametric,gnuplot@prefix] {\func@ph , \func@mag}; \fi } @@ -1847,11 +1889,11 @@ Nyquist plots with additional commands, using two different macros \gdef\func@ph{}% \build@TF@plot{\func@mag}{\func@ph}{#2}% \if@pgfarg - \addplot[variable=t,#1] ( {\func@ph} , {\func@mag} ); + \addplot[variable=t,#1] ( {\n@mod{\func@ph}{2*pi}} , {\func@mag} ); \else \stepcounter{gnuplot@id}% - \addplot[variable=t,#1] gnuplot[gnuplot@degrees,gnuplot@prefix] - {\func@ph , \func@mag}; + \addplot[variable=t,#1] gnuplot[gnuplot@prefix] + {\n@mod{\func@ph}{2*pi} , \func@mag}; \fi } % \end{macrocode} diff --git a/graphics/pgf/contrib/bodeplot/bodeplot.pdf b/graphics/pgf/contrib/bodeplot/bodeplot.pdf index 4ccba156a5..1660b2dc51 100644 Binary files a/graphics/pgf/contrib/bodeplot/bodeplot.pdf and b/graphics/pgf/contrib/bodeplot/bodeplot.pdf differ diff --git a/graphics/pgf/contrib/tikzfill/CHANGES.md b/graphics/pgf/contrib/tikzfill/CHANGES.md new file mode 100644 index 0000000000..23037f13d1 --- /dev/null +++ b/graphics/pgf/contrib/tikzfill/CHANGES.md @@ -0,0 +1,23 @@ +# Changelog +All notable changes to this project will be documented in this file. + +The format is based on +[Keep a Changelog](https://keepachangelog.com/en/1.0.0/), +and this project adheres to +[Semantic Versioning](http://semver.org/spec/v2.0.0.html). + +## [Unreleased] + +### Added +### Changed +### Deprecated +### Removed +### Fixed +### Security + + + +## [1.00] - 2022-07-20 + +### Added +- Initial public release diff --git a/graphics/pgf/contrib/tikzfill/README.md b/graphics/pgf/contrib/tikzfill/README.md new file mode 100644 index 0000000000..2ce0a8735a --- /dev/null +++ b/graphics/pgf/contrib/tikzfill/README.md @@ -0,0 +1,56 @@ +# The LaTeX package tikzfill - version 1.0.0 (2022/07/20) + + +> Copyright (c) 2022-2022 by Prof. Dr. Dr. Thomas F. Sturm + +> This work may be distributed and/or modified under the +> conditions of the LaTeX Project Public License, either version 1.3 +> of this license or (at your option) any later version. +> The latest version of this license is in +> http://www.latex-project.org/lppl.txt +> and version 1.3 or later is part of all distributions of LaTeX +> version 2005/12/01 or later. + +> This work has the LPPL maintenance status `author-maintained`. + +> This work consists of all files listed in README.md + + +`tikzfill` is a collection of *TikZ* libraries which add +further options to fill *TikZ* paths with images and +patterns. The libraries comprise fillings with images from +files and from *TikZ* pictures. Also, patterns of hexagons +and of rhombi are provided. + + +## Contents of the package + +- `README.md` this file +- `CHANGES.md` log of changes (history) +- `tikzfill.sty` LaTeX package file (style file) +- `tikzfill-common.sty` LaTeX package file (style file) +- `tikzfill.hexagon.sty` LaTeX package file (style file) +- `tikzfill.image.sty` LaTeX package file (style file) +- `tikzfill.rhombus.sty` LaTeX package file (style file) +- `tikzlibraryfill.hexagon.code.tex` TikZ library file +- `tikzlibraryfill.image.code.tex` TikZ library file +- `tikzlibraryfill.rhombus.code.tex` TikZ library file +- `tikzfill.pdf` Documentation for tikzfill +- `tikzfill.tex` Source code of the documentation +- `tikzfill-doc.sty` Source code of the documentation + + +## Installation + +Copy the contents of the `tikzfill.tds.zip` from CTAN to your local TeX file tree. + +Alternatively, put the files to their respective locations within the TeX installation: + +- `tikzfill.sty` -> /tex/latex/tikzfill +- `tikzfill-common.sty` -> /tex/latex/tikzfill +- `tikzfill.hexagon.sty` -> /tex/latex/tikzfill +- `tikzfill.image.sty` -> /tex/latex/tikzfill +- `tikzfill.rhombus.sty` -> /tex/latex/tikzfill +- `tikzlibraryfill.hexagon.code.tex` -> /tex/latex/tikzfill +- `tikzlibraryfill.image.code.tex` -> /tex/latex/tikzfill +- `tikzlibraryfill.rhombus.code.tex` -> /tex/latex/tikzfill diff --git a/graphics/pgf/contrib/tikzfill/tikzfill-common.sty b/graphics/pgf/contrib/tikzfill/tikzfill-common.sty new file mode 100644 index 0000000000..2adb2a7cea --- /dev/null +++ b/graphics/pgf/contrib/tikzfill/tikzfill-common.sty @@ -0,0 +1,56 @@ +%% The LaTeX package tikzfill - version 1.0.0 (2022/07/20) +%% tikzfill-common.sty: auxiliary code for library loading +%% +%% ------------------------------------------------------------------------------------------- +%% Copyright (c) 2022-2022 by Prof. Dr. Dr. Thomas F. Sturm +%% ------------------------------------------------------------------------------------------- +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3 +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3 or later is part of all distributions of LaTeX +%% version 2005/12/01 or later. +%% +%% This work has the LPPL maintenance status `author-maintained'. +%% +%% This work consists of all files listed in README.md +%% +\NeedsTeXFormat{LaTeX2e}[2020/10/01] +\ProvidesPackage{tikzfill-common}[2022/07/20 v1.0.0 Auxiliary code for tikzfill] +\RequirePackage{tikz} + +\ExplSyntaxOn + +\cs_new_nopar:Npn \__tikzfill_usetikzlibrary:n #1 + { + \cs_if_exist:NTF \tikzfillpkgprefix + { + \bool_set:Nn \l_tmpa_bool { \tl_if_blank_p:V \tikzfillpkgprefix } + } + { + \bool_set_true:N \l_tmpa_bool + } + \bool_if:NTF \l_tmpa_bool + { + \usetikzlibrary{ #1 } + } + { + \cs_if_exist:NF \l__tikzfill_library_seq + { + \seq_new:N \l__tikzfill_library_seq + } + \seq_set_from_clist:Nn \l__tikzfill_library_seq { #1 } + \seq_map_inline:Nn \l__tikzfill_library_seq + { + \cs_if_exist:cF { tikz@library@ ##1 @loaded } + { + \cs_gset:cpn { tikz@library@ ##1 @loaded }{} + \input{ \tikzfillpkgprefix tikzlibrary ##1 .code.tex} + } + } + } + } + +\ExplSyntaxOff diff --git a/graphics/pgf/contrib/tikzfill/tikzfill-doc.sty b/graphics/pgf/contrib/tikzfill/tikzfill-doc.sty new file mode 100644 index 0000000000..60b1320964 --- /dev/null +++ b/graphics/pgf/contrib/tikzfill/tikzfill-doc.sty @@ -0,0 +1,130 @@ +% !TeX encoding=UTF-8 +%% The LaTeX package tikzfill - version 1.0.0 (2022/07/20) +%% tikzfill-doc.sty: style file for the documentation +%% +%% ------------------------------------------------------------------------------------------- +%% Copyright (c) 2022-2022 by Prof. Dr. Dr. Thomas F. Sturm +%% ------------------------------------------------------------------------------------------- +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3 +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3 or later is part of all distributions of LaTeX +%% version 2005/12/01 or later. +%% +%% This work has the LPPL maintenance status `author-maintained'. +%% +%% This work consists of all files listed in README.md +%% +\def\version{1.0.0}% +\def\datum{2022/07/20}% + +\def\tikzfillpkgprefix{} +\IfFileExists{tikzfill-doc.cfg}{\input{tikzfill-doc.cfg}}{} + +% prevent hypdoc from loading (sets hyperindex=false) +%\@namedef{ver@hypdoc.sty}{9999/12/31} +%\@namedef{opt@hypdoc.sty}{hypdoc} + + +\RequirePackage[T1]{fontenc} +\RequirePackage[utf8]{inputenc} +\RequirePackage[english]{babel} +\RequirePackage{lmodern,parskip,array,makeidx} +\RequirePackage{amsmath,amssymb} +\RequirePackage[svgnames,table,hyperref]{xcolor} +\RequirePackage{tikz,siunitx,xfp,tabularray} +\usetikzlibrary{patterns,shadings,fadings} +\RequirePackage{varioref} +\RequirePackage[pdftex,bookmarks,raiselinks,pageanchor,hyperindex,colorlinks]{hyperref} +\urlstyle{sf} +\RequirePackage{cleveref} + +\RequirePackage[a4paper,left=2.5cm,right=2.5cm,top=1.5cm,bottom=1.5cm, + marginparsep=3mm,marginparwidth=18mm, + headheight=0mm,headsep=0cm, + footskip=1.5cm,includeheadfoot]{geometry} +\RequirePackage{fancyhdr} +\fancyhf{} +\fancyfoot[C]{\thepage}% +\renewcommand{\headrulewidth}{0pt} +\renewcommand{\footrulewidth}{0pt} +\pagestyle{fancy} +\tolerance=2000% +\setlength{\emergencystretch}{20pt}% + +\RequirePackage{longtable,booktabs,ifthen,etoolbox} + +\RequirePackage{shortvrb} +\AtBeginDocument{\MakeShortVerb{\|}} + +\RequirePackage{tcolorbox} +\tcbuselibrary{skins,minted,breakable,documentation,raster,hooks} + +\definecolor{Green_Dark}{rgb}{0.078431,0.407843,0.176471} +\definecolor{Blue_Dark}{rgb}{0.090196,0.211765,0.364706} +\definecolor{Blue_Bright}{rgb}{0.858824,0.898039,0.945098} + +\tcbset{skin=enhanced, + sbs/.style={sidebyside,before lower app={\tcbset{sidebyside=false}}}, + minted options={fontsize=\footnotesize}, + doc raster={raster before skip=4mm plus 2mm minus 1mm}, + doc head={colback=yellow!10!white,interior style=fill}, + doc head key={colback=magenta!5!white,interior style=fill}, + color key=DarkViolet, + color value=Teal, + color color=Teal, + color counter=Orange!85!black, + color length=Orange!85!black, + index colorize, + index annotate, + beforeafter example/.style={ + before skip balanced=4pt plus 2pt minus 1pt, + after skip balanced=6pt plus 2pt minus 1pt + }, + docexample/.style={bicolor, + beforeafter example, + arc is angular,fonttitle=\bfseries, + fontlower=\footnotesize, + colframe=green!25!yellow!50!black, + colback=green!25!yellow!7, + colbacklower=white, + drop fuzzy shadow=green!25!yellow!50!black, + listing engine=minted, + documentation minted style=colorful, + documentation minted options={fontsize=\footnotesize}, + }, +} + +\renewcommand*{\tcbdocnew}[1]{\textcolor{green!50!black}{\sffamily\bfseries N} #1} +\renewcommand*{\tcbdocupdated}[1]{\textcolor{blue!75!black}{\sffamily\bfseries U} #1} + +\NewDocumentCommand{\csvsorter}{}{\textsf{\bfseries\color{red!20!black}CSV-Sorter}} + +\newtcbinputlisting{\csvlisting}[1]{docexample,minted options={fontsize=\footnotesize},minted language=latex, + fonttitle=\bfseries,listing only,title={CSV file \flqq\texttt{\detokenize{#1.csv}}\frqq},listing file=#1.csv} + +\newtcbinputlisting{\xmllisting}[1]{docexample,minted options={fontsize=\footnotesize},minted language=xml, + fonttitle=\bfseries,listing only,title={Configuration file \flqq\texttt{\detokenize{#1.xml}}\frqq},listing file=#1.xml} + +\NewTotalTCBox{\verbbox}{m}{enhanced,on line,size=fbox,frame empty,colback=red!5!white, + colupper=red!85!black,fontupper=\bfseries\ttfamily}{\detokenize{"}#1\detokenize{"}} + +\NewDocumentCommand{\ctanpkg}{m} + {% + \href{https://ctan.org/pkg/#1}{\texttt{#1}}% + } + +\def\tikzname{Ti\emph{k}Z} + +\tcbmakedocSubKey{docTikzKey}{tikz} +\tcbmakedocSubKeys{docTikzKeys}{tikz} +\tcbmakedocSubKey{docPatternKey}{pgf/pattern keys} +\tcbmakedocSubKeys{docPatternKeys}{pgf/pattern keys} + + +\makeindex + +\pdfsuppresswarningpagegroup=1 diff --git a/graphics/pgf/contrib/tikzfill/tikzfill.hexagon.sty b/graphics/pgf/contrib/tikzfill/tikzfill.hexagon.sty new file mode 100644 index 0000000000..66ad292e47 --- /dev/null +++ b/graphics/pgf/contrib/tikzfill/tikzfill.hexagon.sty @@ -0,0 +1,24 @@ +%% The LaTeX package tikzfill - version 1.0.0 (2022/07/20) +%% tikzfill.hexagon.sty: filling with hexagon patterns +%% +%% ------------------------------------------------------------------------------------------- +%% Copyright (c) 2022-2022 by Prof. Dr. Dr. Thomas F. Sturm +%% ------------------------------------------------------------------------------------------- +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3 +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3 or later is part of all distributions of LaTeX +%% version 2005/12/01 or later. +%% +%% This work has the LPPL maintenance status `author-maintained'. +%% +%% This work consists of all files listed in README.md +%% +\ProvidesPackage{tikzfill.hexagon}[2022/07/20 v1.0.0 Hexagon pattern library for TikZ] +\RequirePackage{tikzfill-common} +\ExplSyntaxOn +\__tikzfill_usetikzlibrary:n { fill.hexagon } +\ExplSyntaxOff diff --git a/graphics/pgf/contrib/tikzfill/tikzfill.image.sty b/graphics/pgf/contrib/tikzfill/tikzfill.image.sty new file mode 100644 index 0000000000..fb7bb3e030 --- /dev/null +++ b/graphics/pgf/contrib/tikzfill/tikzfill.image.sty @@ -0,0 +1,24 @@ +%% The LaTeX package tikzfill - version 1.0.0 (2022/07/20) +%% tikzfill.image.sty: filling with images +%% +%% ------------------------------------------------------------------------------------------- +%% Copyright (c) 2022-2022 by Prof. Dr. Dr. Thomas F. Sturm +%% ------------------------------------------------------------------------------------------- +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3 +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3 or later is part of all distributions of LaTeX +%% version 2005/12/01 or later. +%% +%% This work has the LPPL maintenance status `author-maintained'. +%% +%% This work consists of all files listed in README.md +%% +\ProvidesPackage{tikzfill.image}[2022/07/20 v1.0.0 Image filling library for TikZ] +\RequirePackage{tikzfill-common} +\ExplSyntaxOn +\__tikzfill_usetikzlibrary:n { fill.image } +\ExplSyntaxOff diff --git a/graphics/pgf/contrib/tikzfill/tikzfill.pdf b/graphics/pgf/contrib/tikzfill/tikzfill.pdf new file mode 100644 index 0000000000..e68d134f78 Binary files /dev/null and b/graphics/pgf/contrib/tikzfill/tikzfill.pdf differ diff --git a/graphics/pgf/contrib/tikzfill/tikzfill.rhombus.sty b/graphics/pgf/contrib/tikzfill/tikzfill.rhombus.sty new file mode 100644 index 0000000000..58deb47655 --- /dev/null +++ b/graphics/pgf/contrib/tikzfill/tikzfill.rhombus.sty @@ -0,0 +1,24 @@ +%% The LaTeX package tikzfill - version 1.0.0 (2022/07/20) +%% tikzfill.rhombus.sty: filling with rhombus patterns +%% +%% ------------------------------------------------------------------------------------------- +%% Copyright (c) 2022-2022 by Prof. Dr. Dr. Thomas F. Sturm +%% ------------------------------------------------------------------------------------------- +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3 +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3 or later is part of all distributions of LaTeX +%% version 2005/12/01 or later. +%% +%% This work has the LPPL maintenance status `author-maintained'. +%% +%% This work consists of all files listed in README.md +%% +\ProvidesPackage{tikzfill.rhombus}[2022/07/20 v1.0.0 Rhombus pattern library for TikZ] +\RequirePackage{tikzfill-common} +\ExplSyntaxOn +\__tikzfill_usetikzlibrary:n { fill.rhombus } +\ExplSyntaxOff diff --git a/graphics/pgf/contrib/tikzfill/tikzfill.sty b/graphics/pgf/contrib/tikzfill/tikzfill.sty new file mode 100644 index 0000000000..c9a622b9e5 --- /dev/null +++ b/graphics/pgf/contrib/tikzfill/tikzfill.sty @@ -0,0 +1,24 @@ +%% The LaTeX package tikzfill - version 1.0.0 (2022/07/20) +%% tikzfill.sty: load all fill libraries +%% +%% ------------------------------------------------------------------------------------------- +%% Copyright (c) 2022-2022 by Prof. Dr. Dr. Thomas F. Sturm +%% ------------------------------------------------------------------------------------------- +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3 +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3 or later is part of all distributions of LaTeX +%% version 2005/12/01 or later. +%% +%% This work has the LPPL maintenance status `author-maintained'. +%% +%% This work consists of all files listed in README.md +%% +\ProvidesPackage{tikzfill}[2022/07/20 v1.0.0 Image and pattern libraries for TikZ] +\RequirePackage{tikzfill-common} +\ExplSyntaxOn +\__tikzfill_usetikzlibrary:n { fill.image, fill.hexagon, fill.rhombus } +\ExplSyntaxOff diff --git a/graphics/pgf/contrib/tikzfill/tikzfill.tex b/graphics/pgf/contrib/tikzfill/tikzfill.tex new file mode 100644 index 0000000000..4762f59771 --- /dev/null +++ b/graphics/pgf/contrib/tikzfill/tikzfill.tex @@ -0,0 +1,1385 @@ +% \LaTeX-Main\ +% !TeX encoding=UTF-8 +%% The LaTeX package tikzfill - version 1.0.0 (2022/07/20) +%% tikzfill.tex: Manual +%% +%% ------------------------------------------------------------------------------------------- +%% Copyright (c) 2022-2022 by Prof. Dr. Dr. Thomas F. Sturm +%% ------------------------------------------------------------------------------------------- +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3 +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3 or later is part of all distributions of LaTeX +%% version 2005/12/01 or later. +%% +%% This work has the LPPL maintenance status `author-maintained'. +%% +%% This work consists of all files listed in README.md +%% +% \RequirePackage[check-declarations,enable-debug]{expl3} +\documentclass[a4paper,11pt]{article} +\usepackage{tikzfill-doc} + +\usepackage{\tikzfillpkgprefix tikzfill} + +\hypersetup{ + pdftitle={Manual for the tikzfill package}, + pdfauthor={Thomas F. Sturm}, + pdfsubject={TikZ libraries for filling with images and patterns}, +} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\begin{document} + +\begin{tcboutputlisting} +% \documentclass[a4paper]{article} +% \usepackage{tikzfill} +% \usetikzlibrary{fadings,shadings} +% \usepackage[skins,breakable]{tcolorbox} +% \usepackage{ninecolors} +% \begin{document} +\begin{tcolorbox}[spread,blankest,phantom={\thispagestyle{empty}}] +\begin{tikzfadingfrompicture}[name=titlepicture] + \path + [ + pattern hexagon cycle = { size=28mm, rings=5 }, + pattern color = white, + ] + (-\tcbtextwidth/2,-\tcbtextheight/2) rectangle + (\tcbtextwidth/2,\tcbtextheight/2); +\end{tikzfadingfrompicture}% +% +\begin{tikzpicture} + \fill + [ + upper left = blue5, upper right = cyan5, + lower left = magenta5, lower right = blue5, + ] + (-\tcbtextwidth/2,-\tcbtextheight/2) rectangle + (\tcbtextwidth/2,\tcbtextheight/2); +\shade + [ + path fading = titlepicture, + fit fading = false, + upper left = blue6, upper right = cyan6, + lower left = magenta6, lower right = blue6, + ] + (-\tcbtextwidth/2,-\tcbtextheight/2) rectangle + (\tcbtextwidth/2,\tcbtextheight/2); +\node[white,font=\Huge\bfseries] (title) at (0,\tcbtextheight/4) + {The \texttt{tikzfill} package}; +\node[white,font=\Large\bfseries,below=8mm] (title) at (title.south) + {Manual for version \version\ (\datum)}; +\node[white,font=\large\bfseries,below=8mm] (title) at (title.south) + {Thomas F.~Sturm}; +\end{tikzpicture} +\end{tcolorbox} +% \end{document} +\end{tcboutputlisting} +\tcbuselistingtext +\tcbinputlisting{title=Cover code,docexample,listing only} + +\clearpage + +\begin{center} +\begin{tcolorbox}[enhanced,hbox,tikznode,left=8mm,right=8mm,boxrule=0.4pt, + colback=white,colframe=black!50!yellow, + drop lifted shadow=black!50!yellow,arc is angular, + before=\par\vspace*{5mm},after=\par\bigskip] +{\bfseries\LARGE The \texttt{tikzfill} package}\\[3mm] +{\large Manual for version \version\ (\datum)} +\end{tcolorbox} +{\large Thomas F.~Sturm% + \footnote{Prof.~Dr.~Dr.~Thomas F.~Sturm, Institut f\"{u}r Mathematik und Informatik, + Universit\"{a}t der Bundeswehr M\"{u}nchen, D-85577 Neubiberg, Germany; + email: \href{mailto:thomas.sturm@unibw.de}{thomas.sturm@unibw.de}}\par\medskip +\normalsize\url{https://www.ctan.org/pkg/tikzfill}\par +\url{https://github.com/T-F-S/tikzfill} +} +\end{center} +\bigskip +\begin{absquote} + \begin{center}\bfseries Abstract\end{center} + |tikzfill| is a collection of \tikzname\ libraries which add further + options to fill \tikzname\ paths with images and patterns. + The libraries comprise fillings with images from files and from \tikzname\ pictures. + Also, patterns of hexagons and of rhombi are provided. +\end{absquote} + +\clearpage +\tableofcontents + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\clearpage +\section{Short Introduction}\label{sec:intro} + +\tikzname\ is a very advanced and comprehensive graphics package for \LaTeX. +The package |tikzfill| comprises a collection of libraries for \tikzname\, which +add further options to fill \tikzname\ paths with images and patterns. + +For \LaTeX, the provided libraries can be loaded using the preferred +\tikzname\ mechanism by +\begin{dispListing*}{} +\usetikzlibrary{fill.***} % LATEX (primary choice) and plain TEX +\end{dispListing*} +where |***| is to be replaced by the actual library name found on the following pages. + +Alternatively, the libraries can be loaded using \LaTeX\ style files +\begin{dispListing*}{} +\usepackage{tikzfill.***} % LATEX (secondary choice) +\end{dispListing*} + +If you want to load all \tikzname\ libraries of this package, you can use +the following \LaTeX\ style file +\begin{dispListing*}{} +\usepackage{tikzfill} % load all libraries +\end{dispListing*} + + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\clearpage +\section{Image and Picture Fill Library}\label{sec:imagefill}% + +\begin{dispListing*}{title=\tikzname\ Library |fill.image|} +\usetikzlibrary{fill.image} % LATEX (primary choice) and plain TEX +\usetikzlibrary[fill.image] % ConTEXt +\usepackage{tikzfill.image} % LATEX (secondary choice) +\end{dispListing*} + +This library defines options to fill graphs with images or arbitray pictures. + +Until |tcolorbox| version 5.1.1 (2022/06/24), the code of this library was part +of |tcolorbox|. Now, on suggestion of +\href{https://github.com/muzimuzhi}{muzimuzhi}, +it is a separate library usable without |tcolorbox|. Also, the code is +completely rewritten with |expl3|. + + + +\subsection{Fill Plain} +\begin{docTikzKey}{fill plain image}{=\meta{file name}}{no default, initially unset} + Fills the current path with an external image referenced by \meta{file name}. + The image is put in the center of the path, but it is not resized to fit into + the path area. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\path[draw,fill plain image=goldshade.png] + (2.75,-0.75) -- (3,0) -- (2.75,0.75) + \foreach \w in {45,90,...,315} + { -- (\w:1.5cm) } -- cycle; +\end{tikzpicture} +\end{dispExample*} +\end{docTikzKey} + + +\begin{docTikzKey}{fill plain image*}{=\meta{file name}}{no default, initially unset} + Fills the current path with an external image referenced by \meta{file name}. + The image is put in the center of the path, but it is not resized to fit into + the path area. + The \meta{graphics options} are given to the underlying \docAuxCommand*{includegraphics} command. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\path[draw, + fill plain image*={width=2.5cm}{goldshade.png}] + (2.75,-0.75) -- (3,0) -- (2.75,0.75) + \foreach \w in {45,90,...,315} + { -- (\w:1.5cm) } -- cycle; +\end{tikzpicture} +\end{dispExample*} +\end{docTikzKey} + +\enlargethispage*{8mm} + +\begin{docTikzKey}{fill plain picture}{=\meta{graphical code}}{no default, initially unset} + Fills the current path with the given \meta{graphical code}. + The result is put in the center of the path, but it is not resized to fit into + the path area. Note that this is almost identical to the standard |path picture| option. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\path[draw,fill plain picture={% + \draw[red!50!yellow,line width=2mm] + (0,0) circle (8mm); + \draw[red,line width=5mm] (-1,-1) -- (1,1); + \draw[red,line width=5mm] (-1,1) -- (1,-1); + }] + (2.75,-0.75) -- (3,0) -- (2.75,0.75) + \foreach \w in {45,90,...,315} + { -- (\w:1.5cm) } -- cycle; +\end{tikzpicture} +\end{dispExample*} +\end{docTikzKey} + + +\clearpage +\subsection{Fill Stretch} +\begin{docTikzKey}{fill stretch image}{=\meta{file name}}{no default, initially unset} + Fills the current path with an external image referenced by \meta{file name}. + The image is stretched to fill the path area. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\path[fill stretch image=goldshade.png] + (2.75,-0.75) -- (3,0) -- (2.75,0.75) + \foreach \w in {45,90,...,315} + { -- (\w:1.5cm) } -- cycle; +\end{tikzpicture} +\end{dispExample*} +\end{docTikzKey} + + +\begin{docTikzKey}{fill stretch image*}{=\marg{graphics options}\marg{file name}}{no default, initially unset} + Fills the current path with an external image referenced by \meta{file name}. + The \meta{graphics options} are given to the underlying \docAuxCommand*{includegraphics} command. + The image is stretched to fill the path area. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\path[fill stretch image*= + {angle=90,origin=c}{goldshade.png}] + (2.75,-0.75) -- (3,0) -- (2.75,0.75) + \foreach \w in {45,90,...,315} + { -- (\w:1.5cm) } -- cycle; +\end{tikzpicture} +\end{dispExample*} +\end{docTikzKey} + + +\begin{docTikzKey}{fill stretch picture}{=\meta{graphical code}}{no default, initially unset} + Fills the current path with the given \meta{graphical code}. + The result is stretched to fill the path area. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\path[draw,fill stretch picture={% + \draw[red!50!yellow,line width=2mm] + (0,0) circle (8mm); + \draw[red,line width=5mm] (-1,-1) -- (1,1); + \draw[red,line width=5mm] (-1,1) -- (1,-1); + }] + (2.75,-0.75) -- (3,0) -- (2.75,0.75) + \foreach \w in {45,90,...,315} + { -- (\w:1.5cm) } -- cycle; +\end{tikzpicture} +\end{dispExample*} +\end{docTikzKey} + + +\clearpage +\subsection{Fill Overzoom} +\begin{docTikzKey}{fill overzoom image}{=\meta{file name}}{no default, initially unset} + Fills the current path with an external image referenced by \meta{file name}. + The image is zoomed such that the path area fills the image. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\path[fill overzoom image=goldshade.png] + (2.75,-0.75) -- (3,0) -- (2.75,0.75) + \foreach \w in {45,90,...,315} + { -- (\w:1.5cm) } -- cycle; +\end{tikzpicture} +\end{dispExample*} +\end{docTikzKey} + + +\begin{docTikzKey}{fill overzoom image*}{=\marg{graphics options}\marg{file name}}{no default, initially unset} + Fills the current path with an external image referenced by \meta{file name}. + The \meta{graphics options} are given to the underlying \docAuxCommand*{includegraphics} command. + The image is zoomed such that the path area fills the image. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\path[fill overzoom image*= + {angle=90,origin=c}{goldshade.png}] + (2.75,-0.75) -- (3,0) -- (2.75,0.75) + \foreach \w in {45,90,...,315} + { -- (\w:1.5cm) } -- cycle; +\end{tikzpicture} +\end{dispExample*} +\end{docTikzKey} + + +\begin{docTikzKey}{fill overzoom picture}{=\meta{graphical code}}{no default, initially unset} + Fills the current path with the given \meta{graphical code}. + The result is zoomed such that the path area fills the image. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\path[draw,fill overzoom picture={% + \draw[red!50!yellow,line width=2mm] + (0,0) circle (8mm); + \draw[red,line width=5mm] (-1,-1) -- (1,1); + \draw[red,line width=5mm] (-1,1) -- (1,-1); + }] + (2.75,-0.75) -- (3,0) -- (2.75,0.75) + \foreach \w in {45,90,...,315} + { -- (\w:1.5cm) } -- cycle; +\end{tikzpicture} +\end{dispExample*} +\end{docTikzKey} + + +\clearpage +\subsection{Fill Zoom} +\begin{docTikzKey}{fill zoom image}{=\meta{file name}}{no default, initially unset} + Fills the current path with an external image referenced by \meta{file name}. + The image is zoomed such that it fits inside the path area. + Typically, some parts of the path area will stay unfilled. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\path[draw,fill zoom image=goldshade.png] + (2.75,-0.75) -- (3,0) -- (2.75,0.75) + \foreach \w in {45,90,...,315} + { -- (\w:1.5cm) } -- cycle; +\end{tikzpicture} +\end{dispExample*} +\end{docTikzKey} + + +\begin{docTikzKey}{fill zoom image*}{=\marg{graphics options}\marg{file name}}{no default, initially unset} + Fills the current path with an external image referenced by \meta{file name}. + The \meta{graphics options} are given to the underlying \docAuxCommand*{includegraphics} command. + The image is zoomed such that it fits inside the path area. + Typically, some parts of the path area will stay unfilled. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\path[draw,fill zoom image*= + {angle=90,origin=c}{goldshade.png}] + (2.75,-0.75) -- (3,0) -- (2.75,0.75) + \foreach \w in {45,90,...,315} + { -- (\w:1.5cm) } -- cycle; +\end{tikzpicture} +\end{dispExample*} +\end{docTikzKey} + + +\begin{docTikzKey}{fill zoom picture}{=\meta{graphical code}}{no default, initially unset} + Fills the current path with the given \meta{graphical code}. + The result is zoomed such that it fits inside the path area. + Typically, some parts of the path area will stay unfilled. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\path[draw,fill zoom picture={% + \draw[red!50!yellow,line width=2mm] + (0,0) circle (8mm); + \draw[red,line width=5mm] (-1,-1) -- (1,1); + \draw[red,line width=5mm] (-1,1) -- (1,-1); + }] + (2.75,-0.75) -- (3,0) -- (2.75,0.75) + \foreach \w in {45,90,...,315} + { -- (\w:1.5cm) } -- cycle; +\end{tikzpicture} +\end{dispExample*} +\end{docTikzKey} + + +\clearpage +\subsection{Fill Shrink} +\begin{docTikzKey}{fill shrink image}{=\meta{file name}}{no default, initially unset} + Fills the current path with an external image referenced by \meta{file name}. + The image is zoomed such that it fits inside the path area, but it never + gets enlarged. + Typically, some parts of the path area will stay unfilled. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\path[draw,fill shrink image=goldshade.png] + (2.75,-0.75) -- (3,0) -- (2.75,0.75) + \foreach \w in {45,90,...,315} + { -- (\w:1.5cm) } -- cycle; +\end{tikzpicture} +\end{dispExample*} +\end{docTikzKey} + + +\begin{docTikzKey}{fill shrink image*}{=\meta{file name}}{no default, initially unset} + Fills the current path with an external image referenced by \meta{file name}. + The \meta{graphics options} are given to the underlying \docAuxCommand*{includegraphics} command. + The image is zoomed such that it fits inside the path area, but it never + gets enlarged. + Typically, some parts of the path area will stay unfilled. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\path[draw, + fill shrink image*={width=1.5cm}{goldshade.png}] + (2.75,-0.75) -- (3,0) -- (2.75,0.75) + \foreach \w in {45,90,...,315} + { -- (\w:1.5cm) } -- cycle; +\end{tikzpicture} +\end{dispExample*} +\end{docTikzKey} + + +\begin{docTikzKey}{fill shrink picture}{=\meta{graphical code}}{no default, initially unset} + Fills the current path with the given \meta{graphical code}. + The result is zoomed such that it fits inside the path area, but it never + gets enlarged. + Typically, some parts of the path area will stay unfilled. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\path[draw,fill shrink picture={% + \draw[red!50!yellow,line width=2mm] + (0,0) circle (8mm); + \draw[red,line width=5mm] (-1,-1) -- (1,1); + \draw[red,line width=5mm] (-1,1) -- (1,-1); + }] + (2.75,-0.75) -- (3,0) -- (2.75,0.75) + \foreach \w in {45,90,...,315} + { -- (\w:1.5cm) } -- cycle; +\end{tikzpicture} +\end{dispExample*} +\end{docTikzKey} + + +\clearpage +\subsection{Fill Tile} +\begin{docTikzKey}{fill tile image}{=\meta{file name}}{no default, initially unset} + Fills the current path with a tile pattern using an external image referenced by \meta{file name}. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\path[fill tile image=pink_marble.png] + (2.75,-0.75) -- (3,0) -- (2.75,0.75) + \foreach \w in {45,90,...,315} + { -- (\w:1.5cm) } -- cycle; +\end{tikzpicture} +\end{dispExample*} +\end{docTikzKey} + + +\begin{docTikzKey}{fill tile image*}{=\marg{graphics options}\marg{file name}}{no default, initially unset} + Fills the current path with a tile pattern using an external image referenced by \meta{file name}. + The \meta{graphics options} are given to the underlying \docAuxCommand*{includegraphics} command. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\path[fill tile image*={width=8mm}{pink_marble.png}] + (2.75,-0.75) -- (3,0) -- (2.75,0.75) + \foreach \w in {45,90,...,315} + { -- (\w:1.5cm) } -- cycle; +\end{tikzpicture} +\end{dispExample*} +\end{docTikzKey} + +\begin{docTikzKey}{fill tile picture}{=\meta{graphical code}}{no default, initially unset} + Fills the current path with a tile pattern using the given \meta{graphical code}. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\path[draw,fill tile picture={% + \draw[red!50!yellow,line width=2mm] + (0,0) circle (8mm); + \draw[red,line width=5mm] (-1,-1) -- (1,1); + \draw[red,line width=5mm] (-1,1) -- (1,-1); + }] + (2.75,-0.75) -- (3,0) -- (2.75,0.75) + \foreach \w in {45,90,...,315} + { -- (\w:1.5cm) } -- cycle; +\end{tikzpicture} +\end{dispExample*} +\end{docTikzKey} + + +\begin{docTikzKey}{fill tile picture*}{=\marg{fraction}\marg{graphical code}}{no default, initially unset} + Fills the current path with a tile pattern using the given \meta{graphical code}. + The graphic is resized by \meta{fraction}. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\path[draw,fill tile picture*={0.25}{% + \draw[red!50!yellow,line width=2mm] + (0,0) circle (8mm); + \draw[red,line width=5mm] (-1,-1) -- (1,1); + \draw[red,line width=5mm] (-1,1) -- (1,-1); + }] + (2.75,-0.75) -- (3,0) -- (2.75,0.75) + \foreach \w in {45,90,...,315} + { -- (\w:1.5cm) } -- cycle; +\end{tikzpicture} +\end{dispExample*} +\end{docTikzKey} + + +\clearpage +\subsection{Filling Options} +\begin{docTikzKey}{fill image opacity}{=\meta{fraction}}{no default, initially |1.0|} + Sets the fill opacity for the image or picture fill options to the given \meta{fraction}. +\begin{dispExample} +\begin{tikzpicture} +\path[fill stretch image=goldshade.png] (0,0) circle (8mm); +\path[fill=red,fill stretch image=goldshade.png,fill image opacity=0.75] + (2,0) circle (8mm); +\path[fill=red,fill stretch image=goldshade.png,fill image opacity=0.5] + (4,0) circle (8mm); +\path[fill=red,fill stretch image=goldshade.png,fill image opacity=0.25] + (6,0) circle (8mm); +\path[fill=red] (8,0) circle (8mm); +\end{tikzpicture} +\end{dispExample} +\end{docTikzKey} + + +\begin{docTikzKey}{fill image scale}{=\meta{fraction}}{no default, initially |1.0|} + Stretches, zooms, overzooms or shrinks the image or picture to the given \meta{fraction} of the + width and height of the current path. +\begin{dispExample} +\begin{tikzpicture} +\path[draw,fill zoom image=goldshade.png] + (0,0) rectangle +(2,2); + +\path[draw,fill zoom image=goldshade.png,fill image scale=0.75] + (3,0) rectangle +(2,2); + +\path[draw,fill zoom image=goldshade.png,fill image scale=1.5] + (6,0) rectangle +(2,2); +\end{tikzpicture} +\end{dispExample} +\end{docTikzKey} + + +\begin{docTikzKey}{fill image options}{=\meta{graphics options}}{no default, initially empty} + The \meta{graphics options} are given to the underlying \docAuxCommand*{includegraphics} command + for the image fill options. This can be just together with + \refKey{/tikz/fill stretch image}, \refKey{/tikz/fill overzoom image}, \refKey{/tikz/fill zoom image}, + and \refKey{/tikz/fill tile image}. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\path[fill image options={width=8mm}, + fill tile image=pink_marble.png] + (2.75,-0.75) -- (3,0) -- (2.75,0.75) + \foreach \w in {45,90,...,315} + { -- (\w:1.5cm) } -- cycle; +\end{tikzpicture} +\end{dispExample*} +\end{docTikzKey} + + +\begin{dispExample*}{sbs,lefthand ratio=0.6,center lower,fonttitle=\bfseries, + title=Image blending example} +\begin{tikzpicture}[every node/.style= + {circle,minimum width=2cm}] +\node[fill stretch image=blueshade.png] + (A) at (120:3cm) {A}; +\node[fill stretch image=goldshade.png] + (B) at (60:3cm) {B}; +\node[ + preaction={fill stretch image=blueshade.png}, + fill stretch image=goldshade.png, + fill image opacity=0.5] (C) {C}; +\path (A) -- node{$+$} (B); +\draw[->,very thick] (A)--(C); +\draw[->,very thick] (B)--(C); +\end{tikzpicture} +\end{dispExample*} + + + + + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\clearpage +\section{Hexagon Pattern Library}\label{sec:hexagon}% + +\begin{dispListing*}{title=\tikzname\ Library |fill.hexagon|} +\usetikzlibrary{fill.hexagon} % LATEX (primary choice) and plain TEX +\usetikzlibrary[fill.hexagon] % ConTEXt +\usepackage{tikzfill.hexagon} % LATEX (secondary choice) +\end{dispListing*} + +Based on |patterns.meta|, this library defines new hexagon patterns to fill graphs. + + + +%------------------------------------------------------------------------------- +\subsection{Hexagon} +The \docValue{hexagon} pattern draws hexagons which may be filled or outlined. +A single pattern is one of two different \emph{bands}, called band 0 and band 1. + +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\draw[ + pattern = { hexagon + [ + size = 5mm, angle = 15, line width = 1mm + ]}, + pattern color=red + ] + (0,0) rectangle (4,4); +\end{tikzpicture} +\end{dispExample*} + +Both bands together build a uniform combined pattern. + +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\draw[ + preaction = { + pattern = { hexagon + [ + size = 5mm, angle = 15, line width = 1mm, band = 1 + ]}, + pattern color=blue }, + pattern = { hexagon + [ + size = 5mm, angle = 15, line width = 1mm, band = 0 + ]}, + pattern color=red + ] + (0,0) rectangle (4,4); +\end{tikzpicture} +\end{dispExample*} + +\begin{docTikzKey}{pattern hexagon}{=\marg{pattern keys}}{style, no default} + Convenience shortcut for setting the combined pattern (in one color). + +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\draw[ + pattern hexagon = + { + size = 5mm, angle = 15, line width = 1mm + }, + pattern color=red + ] + (0,0) rectangle (4,4); +\end{tikzpicture} +\end{dispExample*} +\end{docTikzKey} + +\clearpage + +\begin{docPatternKey}{size}{=\meta{size}}{no default, initially |8mm|} + The given \meta{size} denotes the length of an edge of one hexagonical tile + where the (possibly smaller) hexagon is located in. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\draw[ + pattern hexagon = + { + size = 5mm, + }, + pattern color=red + ] + (0,0) rectangle (4,4); +\end{tikzpicture} +\end{dispExample*} +\end{docPatternKey} + + + +\begin{docPatternKey}{fill}{}{no value, initially set} + Sets the hexagons to be filled. |fill| and |draw| are mutually exclusionary. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\draw[ + pattern hexagon = + { + fill, + }, + pattern color=red + ] + (0,0) rectangle (4,4); +\end{tikzpicture} +\end{dispExample*} +\end{docPatternKey} + + +\begin{docPatternKey}{draw}{}{no value, initially unset} + Sets the hexagons to be outlined. |fill| and |draw| are mutually exclusionary. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\draw[ + pattern hexagon = + { + draw, + }, + pattern color=red + ] + (0,0) rectangle (4,4); +\end{tikzpicture} +\end{dispExample*} +\end{docPatternKey} + + +\begin{docPatternKey}{line width}{=\meta{length}}{no default, initially |0.4pt|} + Sets the \meta{length} value of the line width. + This is only relevant, if the hexagons are not filled. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\draw[ + pattern hexagon = + { + draw, line width = 1mm, + }, + pattern color=red + ] +(0,0) rectangle (4,4); +\end{tikzpicture} +\end{dispExample*} +\end{docPatternKey} + + + +\begin{docPatternKeys} + { + { + doc name = xshift, + doc parameter = {=\meta{xshift}}, + doc description = {no default, initially |0pt|} + }, + { + doc name = yshift, + doc parameter = {=\meta{yshift}}, + doc description = {no default, initially |0pt|} + } + } + The pattern is shifted by \meta{xshift} and \meta{yshift}. + \par + Note that for \docValue*{hexagon} is valid, that a pattern is shifted first and rotated afterwards. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\draw[ + preaction={pattern hexagon grid, pattern color=blue}, + pattern hexagon = + { + xshift=3mm, yshift=1mm, + }, + pattern color=red + ] + (0,0) rectangle (4,4); +\end{tikzpicture} +\end{dispExample*} +\end{docPatternKeys} + + + +\begin{docPatternKey}{angle}{=\meta{angle}}{no default, initially |0|} + The pattern is rotated by the given \meta{angle}. + \par + Note that for \docValue*{hexagon} is valid, that a pattern is shifted first and rotated afterwards. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\draw[ + pattern hexagon = + { + angle = 15, + }, + pattern color=red + ] +(0,0) rectangle (4,4); +\end{tikzpicture} +\end{dispExample*} +\end{docPatternKey} + + + +\begin{docPatternKey}{pos}{=\meta{value}}{no default, initially |0.8|} + Sets the edge position with a \meta{value} between 0 and 1, where $0$ is + the center and $1$ the outer rim of the hexagonical tile. $1$ is a less + efficient way to either fill the whole graph or to draw a \docValue*{hexagon grid}. + +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\draw[ + preaction={ pattern hexagon={pos=0.8}, + pattern color=blue!80!red }, + preaction={ pattern hexagon={pos=0.6}, + pattern color=blue!60!red }, + preaction={ pattern hexagon={pos=0.4}, + pattern color=blue!40!red }, + pattern hexagon={pos=0.2}, + pattern color=blue!20!red, + ] +(0,0) rectangle (4,4); +\end{tikzpicture} +\end{dispExample*} +\end{docPatternKey} + + +\clearpage + + +\begin{docPatternKey}{band}{=\meta{number}}{no default, initially |0|} + \meta{number} can take 0 or 1 and denotes one of two different bands of the pattern. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\draw[ + preaction = { pattern={hexagon[band=1,draw, + line width=1mm]}, + pattern color=blue }, + pattern={hexagon[band=0,pos=0.5]}, + pattern color=red + ] + (0,0) rectangle (4,4); +\end{tikzpicture} +\end{dispExample*} +\end{docPatternKey} + + + +\clearpage +%------------------------------------------------------------------------------- +\subsection{Hexagon Grid} +The \docValue{hexagon grid} pattern draws a grid made of hexagons. It is +a single pattern und more efficient than \docValue*{hexagon} with settings |draw,pos=1|. + +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\draw[ + pattern = { hexagon grid + [ + size = 5mm, angle = 15, line width = 1mm + ]}, + pattern color=red + ] + (0,0) rectangle (4,4); +\end{tikzpicture} +\end{dispExample*} + + +\begin{docTikzKey}{pattern hexagon grid}{=\marg{pattern keys}}{style, no default} + Convenience shortcut for setting the pattern to \docValue{hexagon grid}: +\begin{dispListing} + pattern = { hexagon grid [ ... ] } +\end{dispListing} +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\draw[ + pattern hexagon grid = + { + size = 5mm, angle = 15, line width = 1mm + }, + pattern color=red + ] + (0,0) rectangle (4,4); +\end{tikzpicture} +\end{dispExample*} +\end{docTikzKey} + + + +\begin{docPatternKey}{size}{=\meta{size}}{no default, initially |8mm|} + The given \meta{size} denotes the length of an edge of one hexagon. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\draw[ + pattern hexagon grid = + { + size = 5mm, + }, + pattern color=red + ] + (0,0) rectangle (4,4); +\end{tikzpicture} +\end{dispExample*} +\end{docPatternKey} + +\clearpage + + +\begin{docPatternKeys} + { + { + doc name = xshift, + doc parameter = {=\meta{xshift}}, + doc description = {no default, initially |0pt|} + }, + { + doc name = yshift, + doc parameter = {=\meta{yshift}}, + doc description = {no default, initially |0pt|} + } + } + The pattern is shifted by \meta{xshift} and \meta{yshift}. + \par + Note that for \docValue*{hexagon grid} is valid, that a pattern is shifted first and rotated afterwards. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\draw[ + preaction={pattern={hexagon grid}, pattern color=blue}, + pattern hexagon grid = + { + xshift=3mm, yshift=1mm, + }, + pattern color=red + ] + (0,0) rectangle (4,4); +\end{tikzpicture} +\end{dispExample*} +\end{docPatternKeys} + + +\begin{docPatternKey}{angle}{=\meta{angle}}{no default, initially |0|} + The pattern is rotated by the given \meta{angle}. + \par + Note that for \docValue*{hexagon grid} is valid, that a pattern is shifted first and rotated afterwards. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\draw[ + pattern hexagon grid = + { + angle = 15, + }, + pattern color=red + ] +(0,0) rectangle (4,4); +\end{tikzpicture} +\end{dispExample*} +\end{docPatternKey} + + + +\begin{docPatternKey}{line width}{=\meta{length}}{no default, initially |0.4pt|} + Sets the \meta{length} value of the line width. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\draw[ + pattern hexagon grid = + { + line width = 2mm, + }, + pattern color=red + ] +(0,0) rectangle (4,4); +\end{tikzpicture} +\end{dispExample*} +\end{docPatternKey} + + +\clearpage +%------------------------------------------------------------------------------- +\subsection{Hexagon Cycle} +The \docValue{hexagon cycle} pattern draws several hexagon rings in a cyclic manor. +A single pattern is one of two different \emph{bands}, called band 0 and band 1. + +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\draw[ + pattern = { hexagon cycle + [ + size = 5mm, angle = 15 + ]}, + pattern color=red + ] + (0,0) rectangle (4,4); +\end{tikzpicture} +\end{dispExample*} + +Both bands together build a uniform combined pattern. + +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\draw[ + preaction = { + pattern = { hexagon cycle + [ + size = 5mm, angle = 15, band = 1 + ]}, + pattern color=blue }, + pattern = { hexagon cycle + [ + size = 5mm, angle = 15, band = 0 + ]}, + pattern color=red + ] + (0,0) rectangle (4,4); +\end{tikzpicture} +\end{dispExample*} + +\begin{docTikzKey}{pattern hexagon cycle}{=\marg{pattern keys}}{style, no default} + Convenience shortcut for setting the combined pattern (in one color). + +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\draw[ + pattern hexagon cycle = + { + size = 5mm, angle = 15 + }, + pattern color=red + ] + (0,0) rectangle (4,4); +\end{tikzpicture} +\end{dispExample*} +\end{docTikzKey} + +\clearpage + +\begin{docPatternKey}{size}{=\meta{size}}{no default, initially |8mm|} + The given \meta{size} denotes the length of an edge of one hexagonical tile + where the (smaller) hexagons are located in. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\draw[ + pattern hexagon cycle = + { + size = 5mm, + }, + pattern color=red + ] + (0,0) rectangle (4,4); +\end{tikzpicture} +\end{dispExample*} +\end{docPatternKey} + + +\begin{docPatternKeys} + { + { + doc name = xshift, + doc parameter = {=\meta{xshift}}, + doc description = {no default, initially |0pt|} + }, + { + doc name = yshift, + doc parameter = {=\meta{yshift}}, + doc description = {no default, initially |0pt|} + } + } + The pattern is shifted by \meta{xshift} and \meta{yshift}. + \par + Note that for \docValue*{hexagon cycle} is valid, that a pattern is shifted first and rotated afterwards. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\draw[ + postaction={pattern={hexagon grid}, pattern color=blue}, + pattern hexagon cycle = + { + xshift=3mm, yshift=1mm, + }, + pattern color=red + ] + (0,0) rectangle (4,4); +\end{tikzpicture} +\end{dispExample*} +\end{docPatternKeys} + + +\begin{docPatternKey}{angle}{=\meta{angle}}{no default, initially |0|} + The pattern is rotated by the given \meta{angle}. + \par + Note that for \docValue*{hexagon cycle} is valid, that a pattern is shifted first and rotated afterwards. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\draw[ + pattern hexagon cycle = + { + angle = 15, + }, + pattern color=red + ] +(0,0) rectangle (4,4); +\end{tikzpicture} +\end{dispExample*} +\end{docPatternKey} + + +\clearpage + + +\begin{docPatternKey}{rings}{=\meta{number}}{no default, initially |3|} + Sets the \meta{number} of rings as $0, 1, 2, 3, \ldots$ + +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\draw[ + pattern hexagon cycle = + { + rings = 2, + }, + pattern color=red + ] +(0,0) rectangle (4,4); +\end{tikzpicture} +\end{dispExample*} +\end{docPatternKey} + + +\begin{docPatternKey}{gap}{=\meta{value}}{no default, initially |1|} + Sets the gap between two rings as \meta{value} times the line width of a ring. + \meta{value} has to be greater or equal $0.01$. + +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\draw[ + pattern hexagon cycle = + { + gap = 0.5, + }, + pattern color=red + ] +(0,0) rectangle (4,4); +\end{tikzpicture} +\end{dispExample*} +\end{docPatternKey} + + +\begin{docPatternKey}{band}{=\meta{number}}{no default, initially |0|} + \meta{number} can take 0 or 1 and denotes one of two different bands of the pattern. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\draw[ + preaction = { pattern={hexagon cycle[ + band=1, gap=0.5 ]}, pattern color=blue }, + pattern={hexagon cycle[band=0,rings=2]}, + pattern color=red + ] + (0,0) rectangle (4,4); +\end{tikzpicture} +\end{dispExample*} +\end{docPatternKey} + + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\clearpage +\section{Rhombus Pattern Library}\label{sec:rhombus}% + +\begin{dispListing*}{title=\tikzname\ Library |fill.rhombus|} +\usetikzlibrary{fill.rhombus} % LATEX (primary choice) and plain TEX +\usetikzlibrary[fill.rhombus] % ConTEXt +\usepackage{tikzfill.rhombus} % LATEX (secondary choice) +\end{dispListing*} + +Based on |patterns.meta|, this library defines new rhombus patterns to fill graphs. + +%------------------------------------------------------------------------------- +\subsection{Rhombus} +The \docValue{rhombus} pattern draws rhombi or diamonds. The rhombi may be +filled or outlined and can be arranged in different \emph{bands}, called band 0, band 1, and band 2. + +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\draw[ + pattern = { rhombus + [ + size = 8mm, angle = 15 + ]}, + pattern color=red + ] + (0,0) rectangle (4,4); +\end{tikzpicture} +\end{dispExample*} + + +\begin{docTikzKey}{pattern rhombus}{=\marg{pattern keys}}{style, no default} + Convenience shortcut for setting the pattern to \docValue{rhombus}: +\begin{dispListing} + pattern = { rhombus [ ... ] } +\end{dispListing} +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\draw[ + pattern rhombus = + { + size = 8mm, angle = 15 + }, + pattern color=red + ] + (0,0) rectangle (4,4); +\end{tikzpicture} +\end{dispExample*} +\end{docTikzKey} + + +\begin{docPatternKey}{size}{=\meta{size}}{no default, initially |10mm|} + The given \meta{size} denotes the length of an edge of one rhombical tile + where the (possibly smaller) rhombus is located in. + +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\draw[ + pattern rhombus = + { + size = 5mm, + }, + pattern color=red + ] + (0,0) rectangle (4,4); +\end{tikzpicture} +\end{dispExample*} +\end{docPatternKey} + +\clearpage + +\begin{docPatternKey}{fill}{}{no value, initially set} + Sets the rhombi to be filled. |fill| and |draw| are mutually exclusionary. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\draw[ + pattern rhombus = + { + fill, + }, + pattern color=red + ] + (0,0) rectangle (4,4); +\end{tikzpicture} +\end{dispExample*} +\end{docPatternKey} + + +\begin{docPatternKey}{draw}{}{no value, initially unset} + Sets the rhombi to be outlined. |fill| and |draw| are mutually exclusionary. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\draw[ + pattern rhombus = + { + draw, + }, + pattern color=red + ] + (0,0) rectangle (4,4); +\end{tikzpicture} +\end{dispExample*} +\end{docPatternKey} + + +\begin{docPatternKey}{line width}{=\meta{length}}{no default, initially |0.4pt|} + Sets the \meta{length} value of the line width. This is only relevant, if + the rhombi are not filled. + +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\draw[ + pattern rhombus = + { + line width = 1mm, draw + }, + pattern color=red + ] +(0,0) rectangle (4,4); +\end{tikzpicture} +\end{dispExample*} +\end{docPatternKey} + + +\begin{docPatternKey}{angle}{=\meta{angle}}{no default, initially |-40|} + The pattern is rotated by the given \meta{angle}. + \par + Note that for \docValue*{rhombus} is valid, that a pattern is rotated first and shifted afterwards. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\draw[ + pattern rhombus = + { + angle = 15, + }, + pattern color=red + ] +(0,0) rectangle (4,4); +\end{tikzpicture} +\end{dispExample*} +\end{docPatternKey} + +\clearpage + +\begin{docPatternKeys} + { + { + doc name = xshift, + doc parameter = {=\meta{xshift}}, + doc description = {no default, initially |0pt|} + }, + { + doc name = yshift, + doc parameter = {=\meta{yshift}}, + doc description = {no default, initially |0pt|} + } + } + The pattern is shifted by \meta{xshift} and \meta{yshift}. + \par + Note that for \docValue*{rhombus} is valid, that a pattern is rotated first and shifted afterwards. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\draw[ + preaction={pattern rhombus, pattern color=blue}, + pattern rhombus = + { + xshift=3mm, yshift=1mm, + }, + pattern color=red + ] + (0,0) rectangle (4,4); +\end{tikzpicture} +\end{dispExample*} +\end{docPatternKeys} + + + +\begin{docPatternKey}{ratio}{=\meta{value}}{no default, initially |2|} + Sets the \meta{value} of the ratio + between the longer diagonal and the shorter diagonal. + Therefore, $\text{\meta{value}}\ge 1$. + +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\draw[ + pattern rhombus = + { + ratio = 4 + }, + pattern color=red + ] +(0,0) rectangle (4,4); +\end{tikzpicture} +\end{dispExample*} +\end{docPatternKey} + + + +\begin{docPatternKey}{pos}{=\meta{value}}{no default, initially |1|} + Sets the edge position with a \meta{value} between 0 and 1, where $0$ is + the center and $1$ the outer rim of the rhombical tile. + +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\draw[ + preaction={ pattern rhombus={pos=1}, + pattern color=blue }, + preaction={ pattern rhombus={pos=0.8}, + pattern color=blue!80!red }, + preaction={ pattern rhombus={pos=0.6}, + pattern color=blue!60!red }, + preaction={ pattern rhombus={pos=0.4}, + pattern color=blue!40!red }, + pattern rhombus={pos=0.2}, + pattern color=blue!20!red, + ] +(0,0) rectangle (4,4); +\end{tikzpicture} +\end{dispExample*} +\end{docPatternKey} + +\clearpage + + +\begin{docPatternKey}{band}{=\meta{number}}{no default, initially |0|} + \meta{number} can take 0, 1, or 2. + Here, 0 and 1 denote one of two different bands of the pattern, + while 2 denotes the comination of both. +\begin{dispExample*}{sbs,lefthand ratio=0.66,right=2mm,sidebyside gap=5mm,center lower} +\begin{tikzpicture} +\draw[ + preaction = { + pattern rhombus = { + pos = 0.8, band = 0 }, + pattern color=red }, + pattern rhombus = { + pos = 0.8, band = 1 + }, + pattern color=blue + ] (0,0) rectangle (4,4); +\end{tikzpicture} + +\begin{tikzpicture} +\draw[ + pattern rhombus = { + pos = 0.8, band = 2 + }, + pattern color=red + ] (0,0) rectangle (4,4); +\end{tikzpicture} +\end{dispExample*} +\end{docPatternKey} + +\clearpage + +\printindex + +\end{document} diff --git a/graphics/pgf/contrib/tikzfill/tikzlibraryfill.hexagon.code.tex b/graphics/pgf/contrib/tikzfill/tikzlibraryfill.hexagon.code.tex new file mode 100644 index 0000000000..2fccee15b9 --- /dev/null +++ b/graphics/pgf/contrib/tikzfill/tikzlibraryfill.hexagon.code.tex @@ -0,0 +1,315 @@ +%% The LaTeX package tikzfill - version 1.0.0 (2022/07/20) +%% tikzlibraryfill.hexagon.code.tex: filling with hexagon patterns +%% +%% ------------------------------------------------------------------------------------------- +%% Copyright (c) 2022-2022 by Prof. Dr. Dr. Thomas F. Sturm +%% ------------------------------------------------------------------------------------------- +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3 +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3 or later is part of all distributions of LaTeX +%% version 2005/12/01 or later. +%% +%% This work has the LPPL maintenance status `author-maintained'. +%% +%% This work consists of all files listed in README.md +%% +\ProvidesFile{tikzlibraryfill.hexagon.code.tex}[2022/07/20 v1.0.0 Hexagon pattern library] + +\usetikzlibrary{patterns.meta} + +\ExplSyntaxOn + +\int_new:N \l__tikzfill_hex_ring_int +\tl_new:N \l__tikzfill_hex_a_tl +\tl_new:N \l__tikzfill_hex_as_tl +\tl_new:N \l__tikzfill_hex_b_tl +\tl_new:N \l__tikzfill_hex_bs_tl +\tl_new:N \l__tikzfill_hex_linewidth_tl +\tl_new:N \l__tikzfill_hex_pos_tl + +\pgfdeclarepattern + { + name = hexagon~grid, + parameters = + { + \pgfkeysvalueof{/pgf/pattern~keys/size}, + \pgfkeysvalueof{/pgf/pattern~keys/angle}, + \pgfkeysvalueof{/pgf/pattern~keys/xshift}, + \pgfkeysvalueof{/pgf/pattern~keys/yshift}, + \pgfkeysvalueof{/pgf/pattern~keys/line~width}, + }, + defaults = + { + size /.initial = 8mm, + angle /.initial = 0, + line~width /.initial = 0.4pt, + xshift /.initial = 0pt, + yshift /.initial = 0pt, + }, + set~up~code = + { + \fp_set:Nn \l_tmpa_fp { \pgfkeysvalueof{/pgf/pattern~keys/size} } + \tl_set:Nx \l__tikzfill_hex_a_tl { \fp_to_dim:N \l_tmpa_fp } + \tl_set:Nx \l__tikzfill_hex_b_tl { \fp_to_dim:n { \l_tmpa_fp*sqrt(3)/2 } } + \tl_set:Nx \l__tikzfill_hex_linewidth_tl { \fp_to_dim:n { \pgfkeysvalueof{/pgf/pattern~keys/line~width} } } + }, + bottom~left = + { + \pgfpoint{ -\l__tikzfill_hex_b_tl-.1pt }{ -\l__tikzfill_hex_a_tl-\l__tikzfill_hex_linewidth_tl } + }, + top~right = + { + \pgfpoint{ \l__tikzfill_hex_b_tl+.1pt }{ 2*\l__tikzfill_hex_a_tl+.1pt } + }, + tile~size = + { + \pgfpoint{ 2*\l__tikzfill_hex_b_tl }{ 3*\l__tikzfill_hex_a_tl } + }, + tile~transformation = + { + \pgftransformrotate{ \pgfkeysvalueof{/pgf/pattern~keys/angle} } + \pgftransformshift + { + \pgfpoint{ \pgfkeysvalueof{/pgf/pattern~keys/xshift} } + { \pgfkeysvalueof{/pgf/pattern~keys/yshift} } + } + }, + code= + { + \pgfsetlinewidth{\l__tikzfill_hex_linewidth_tl} + \pgfpathmoveto{\pgfpoint{ 0 }{ 2*\l__tikzfill_hex_a_tl+.1pt }} + \pgfpathlineto{\pgfpoint{ 0 }{ \l__tikzfill_hex_a_tl }} + \pgfpathlineto{\pgfpoint{ -\l__tikzfill_hex_b_tl }{ 0.5*\l__tikzfill_hex_a_tl }} + \pgfpathlineto{\pgfpoint{ -\l__tikzfill_hex_b_tl }{ -0.5*\l__tikzfill_hex_a_tl }} + \pgfpathlineto{\pgfpoint{ 0 }{ -\l__tikzfill_hex_a_tl }} + \pgfpathlineto{\pgfpoint{ \l__tikzfill_hex_b_tl }{ -0.5*\l__tikzfill_hex_a_tl }} + \pgfpathlineto{\pgfpoint{ \l__tikzfill_hex_b_tl }{ 0.5*\l__tikzfill_hex_a_tl }} + \pgfpathlineto{\pgfpoint{ 0 }{ \l__tikzfill_hex_a_tl }} + \pgfusepath{stroke} + } + } + +\tikzset{ + pattern~hexagon~grid /.style = + { + pattern={hexagon~grid[#1]} + } +} + + + +\pgfdeclarepattern + { + name = hexagon, + parameters = + { + \pgfkeysvalueof{/pgf/pattern~keys/size}, + \pgfkeysvalueof{/pgf/pattern~keys/angle}, + \pgfkeysvalueof{/pgf/pattern~keys/xshift}, + \pgfkeysvalueof{/pgf/pattern~keys/yshift}, + \pgfkeysvalueof{/pgf/pattern~keys/line~width}, + \pgfkeysvalueof{/pgf/pattern~keys/pos}, + \pgfkeysvalueof{/pgf/pattern~keys/band}, + \pgfkeysvalueof{/pgf/pattern~keys/_fill_}, + }, + defaults = + { + size /.initial = 8mm, + angle /.initial = 0, + xshift /.initial = 0pt, + yshift /.initial = 0pt, + line~width /.initial = 0.4pt, + pos /.initial = 0.8, + band /.initial = 0, + _fill_ /.initial = 1, + fill /.style = { _fill_=1 }, + draw /.style = { _fill_=0 }, + }, + set~up~code = + { + \fp_set:Nn \l_tmpa_fp { \pgfkeysvalueof{/pgf/pattern~keys/size} } + \tl_set:Nx \l__tikzfill_hex_a_tl { \fp_to_dim:N \l_tmpa_fp } + \tl_set:Nx \l__tikzfill_hex_b_tl { \fp_to_dim:n { \l_tmpa_fp*sqrt(3)/2 } } + \tl_set:Nx \l__tikzfill_hex_linewidth_tl { \fp_to_dim:n { \pgfkeysvalueof{/pgf/pattern~keys/line~width} } } + \tl_set:Nx \l__tikzfill_hex_pos_tl { \fp_to_decimal:n { min ( 1 , max( 0, \pgfkeysvalueof{/pgf/pattern~keys/pos} )) } } + }, + bottom~left = + { + \pgfpoint{ -\l__tikzfill_hex_b_tl-\l__tikzfill_hex_linewidth_tl }{ -\l__tikzfill_hex_a_tl-\l__tikzfill_hex_linewidth_tl } + }, + top~right = + { + \pgfpoint{ \l__tikzfill_hex_b_tl+\l__tikzfill_hex_linewidth_tl }{ 2*\l__tikzfill_hex_a_tl+\l__tikzfill_hex_linewidth_tl } + }, + tile~size = + { + \pgfpoint{ 2*\l__tikzfill_hex_b_tl }{ 3*\l__tikzfill_hex_a_tl } + }, + tile~transformation = + { + \pgftransformrotate{ \pgfkeysvalueof{/pgf/pattern~keys/angle} } + \int_compare:nNnTF { \pgfkeysvalueof{/pgf/pattern~keys/band} } = 0 + { + \pgftransformshift + { + \pgfpoint{ \pgfkeysvalueof{/pgf/pattern~keys/xshift} } + { \pgfkeysvalueof{/pgf/pattern~keys/yshift} } + } + } + { + \pgftransformshift + { + \pgfpoint{ \pgfkeysvalueof{/pgf/pattern~keys/xshift}-\l__tikzfill_hex_b_tl } + { \pgfkeysvalueof{/pgf/pattern~keys/yshift}+1.5*\l__tikzfill_hex_a_tl } + } + } + }, + code= + { + \tl_set:Nx \l__tikzfill_hex_as_tl { \fp_to_dim:n { \l__tikzfill_hex_pos_tl*\l__tikzfill_hex_a_tl } } + \tl_set:Nx \l__tikzfill_hex_bs_tl { \fp_to_dim:n { \l__tikzfill_hex_pos_tl*\l__tikzfill_hex_b_tl } } + \pgfpathmoveto{\pgfpoint{ 0 }{ \l__tikzfill_hex_as_tl }} + \pgfpathlineto{\pgfpoint{ -\l__tikzfill_hex_bs_tl }{ 0.5*\l__tikzfill_hex_as_tl }} + \pgfpathlineto{\pgfpoint{ -\l__tikzfill_hex_bs_tl }{ -0.5*\l__tikzfill_hex_as_tl }} + \pgfpathlineto{\pgfpoint{ 0 }{ -\l__tikzfill_hex_as_tl }} + \pgfpathlineto{\pgfpoint{ \l__tikzfill_hex_bs_tl }{ -0.5*\l__tikzfill_hex_as_tl }} + \pgfpathlineto{\pgfpoint{ \l__tikzfill_hex_bs_tl }{ 0.5*\l__tikzfill_hex_as_tl }} + \pgfpathclose + \int_compare:nNnTF { \pgfkeysvalueof{/pgf/pattern~keys/_fill_} } = 1 + { + \pgfusepath{fill} + } + { + \pgfsetlinewidth{\l__tikzfill_hex_linewidth_tl} + \pgfusepath{stroke} + } + } + } + + +\tikzset{ + pattern~hexagon /.style = + { + preaction={pattern={hexagon[#1,band=1]}}, + pattern={hexagon[#1,band=0]} + } +} + + + +\pgfdeclarepattern + { + name = hexagon~cycle, + parameters = + { + \pgfkeysvalueof{/pgf/pattern~keys/size}, + \pgfkeysvalueof{/pgf/pattern~keys/angle}, + \pgfkeysvalueof{/pgf/pattern~keys/xshift}, + \pgfkeysvalueof{/pgf/pattern~keys/yshift}, + \pgfkeysvalueof{/pgf/pattern~keys/rings}, + \pgfkeysvalueof{/pgf/pattern~keys/gap}, + \pgfkeysvalueof{/pgf/pattern~keys/band}, + }, + defaults = + { + size /.initial = 8mm, + angle /.initial = 0, + xshift /.initial = 0pt, + yshift /.initial = 0pt, + rings /.initial = 3, + gap /.initial = 1, + band /.initial = 0, + }, + set~up~code = + { + \fp_set:Nn \l_tmpa_fp { \pgfkeysvalueof{/pgf/pattern~keys/size} } + \tl_set:Nx \l__tikzfill_hex_a_tl { \fp_to_dim:N \l_tmpa_fp } + \tl_set:Nx \l__tikzfill_hex_b_tl { \fp_to_dim:n { \l_tmpa_fp*sqrt(3)/2 } } + \int_set:Nn \l__tikzfill_hex_ring_int { \fp_to_int:n { max ( 0, \pgfkeysvalueof{/pgf/pattern~keys/rings} ) }} + \fp_set:Nn \l_tmpa_fp { max ( 0.01, \pgfkeysvalueof{/pgf/pattern~keys/gap} ) } + \tl_set:Nx \l__tikzfill_hex_linewidth_tl { \fp_to_dim:n + { + \l__tikzfill_hex_b_tl / (( \l__tikzfill_hex_ring_int + 0.5 )*( 1 + \l_tmpa_fp )) + }} + }, + bottom~left = + { + \pgfpoint{ -\l__tikzfill_hex_b_tl }{ -\l__tikzfill_hex_a_tl } + }, + top~right = + { + \pgfpoint{ \l__tikzfill_hex_b_tl }{ 2*\l__tikzfill_hex_a_tl } + }, + tile~size = + { + \pgfpoint{ 2*\l__tikzfill_hex_b_tl }{ 3*\l__tikzfill_hex_a_tl } + }, + tile~transformation = + { + \pgftransformrotate{ \pgfkeysvalueof{/pgf/pattern~keys/angle} } + \int_compare:nNnTF { \pgfkeysvalueof{/pgf/pattern~keys/band} } = 0 + { + \pgftransformshift + { + \pgfpoint{ \pgfkeysvalueof{/pgf/pattern~keys/xshift} } + { \pgfkeysvalueof{/pgf/pattern~keys/yshift} } + } + } + { + \pgftransformshift + { + \pgfpoint{ \pgfkeysvalueof{/pgf/pattern~keys/xshift}-\l__tikzfill_hex_b_tl } + { \pgfkeysvalueof{/pgf/pattern~keys/yshift}+1.5*\l__tikzfill_hex_a_tl } + } + } + }, + code= + { + \tl_set:Nn \l__tikzfill_hex_pos_tl { \l__tikzfill_hex_linewidth_tl/2/\l__tikzfill_hex_b_tl } + \tl_set:Nx \l__tikzfill_hex_as_tl { \fp_to_dim:n { \l__tikzfill_hex_pos_tl*\l__tikzfill_hex_a_tl } } + \tl_set:Nx \l__tikzfill_hex_bs_tl { \fp_to_dim:n { \l__tikzfill_hex_pos_tl*\l__tikzfill_hex_b_tl } } + \pgfpathmoveto{\pgfpoint{ 0 }{ \l__tikzfill_hex_as_tl }} + \pgfpathlineto{\pgfpoint{ -\l__tikzfill_hex_bs_tl }{ 0.5*\l__tikzfill_hex_as_tl }} + \pgfpathlineto{\pgfpoint{ -\l__tikzfill_hex_bs_tl }{ -0.5*\l__tikzfill_hex_as_tl }} + \pgfpathlineto{\pgfpoint{ 0 }{ -\l__tikzfill_hex_as_tl }} + \pgfpathlineto{\pgfpoint{ \l__tikzfill_hex_bs_tl }{ -0.5*\l__tikzfill_hex_as_tl }} + \pgfpathlineto{\pgfpoint{ \l__tikzfill_hex_bs_tl }{ 0.5*\l__tikzfill_hex_as_tl }} + \pgfpathclose + \pgfusepath{fill} + % + \pgfsetlinewidth{\l__tikzfill_hex_linewidth_tl} + \int_step_function:nN { \l__tikzfill_hex_ring_int } \__tikzfill_hex_draw_ring:n + } + } + + +\cs_set:Npn \__tikzfill_hex_draw_ring:n #1 + { + \tl_set:Nn \l__tikzfill_hex_pos_tl { #1/( \l__tikzfill_hex_ring_int + 0.5 )} + \tl_set:Nx \l__tikzfill_hex_as_tl { \fp_to_dim:n { \l__tikzfill_hex_pos_tl*\l__tikzfill_hex_a_tl } } + \tl_set:Nx \l__tikzfill_hex_bs_tl { \fp_to_dim:n { \l__tikzfill_hex_pos_tl*\l__tikzfill_hex_b_tl } } + \pgfpathmoveto{\pgfpoint{ 0 }{ \l__tikzfill_hex_as_tl }} + \pgfpathlineto{\pgfpoint{ -\l__tikzfill_hex_bs_tl }{ 0.5*\l__tikzfill_hex_as_tl }} + \pgfpathlineto{\pgfpoint{ -\l__tikzfill_hex_bs_tl }{ -0.5*\l__tikzfill_hex_as_tl }} + \pgfpathlineto{\pgfpoint{ 0 }{ -\l__tikzfill_hex_as_tl }} + \pgfpathlineto{\pgfpoint{ \l__tikzfill_hex_bs_tl }{ -0.5*\l__tikzfill_hex_as_tl }} + \pgfpathlineto{\pgfpoint{ \l__tikzfill_hex_bs_tl }{ 0.5*\l__tikzfill_hex_as_tl }} + \pgfpathclose + \pgfusepath{stroke} + } + + +\tikzset{ + pattern~hexagon~cycle /.style = + { + preaction={pattern={hexagon~cycle[#1,band=1]}}, + pattern={hexagon~cycle[#1,band=0]}% + } +} + + +\ExplSyntaxOff diff --git a/graphics/pgf/contrib/tikzfill/tikzlibraryfill.image.code.tex b/graphics/pgf/contrib/tikzfill/tikzlibraryfill.image.code.tex new file mode 100644 index 0000000000..ed20d0e780 --- /dev/null +++ b/graphics/pgf/contrib/tikzfill/tikzlibraryfill.image.code.tex @@ -0,0 +1,400 @@ +%% The LaTeX package tikzfill - version 1.0.0 (2022/07/20) +%% tikzlibraryfill.image.code.tex: filling with images +%% +%% ------------------------------------------------------------------------------------------- +%% Copyright (c) 2022-2022 by Prof. Dr. Dr. Thomas F. Sturm +%% ------------------------------------------------------------------------------------------- +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3 +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3 or later is part of all distributions of LaTeX +%% version 2005/12/01 or later. +%% +%% This work has the LPPL maintenance status `author-maintained'. +%% +%% This work consists of all files listed in README.md +%% +\ProvidesFile{tikzlibraryfill.image.code.tex}[2022/07/20 v1.0.0 Image filling library] + +\ExplSyntaxOn + +\box_new:N \l__tikzfill_img_box + +\tl_new:N \l__tikzfill_img_xa_tl +\tl_new:N \l__tikzfill_img_xb_tl +\tl_new:N \l__tikzfill_img_ya_tl +\tl_new:N \l__tikzfill_img_yb_tl +\tl_new:N \l__tikzfill_img_xc_tl +\tl_new:N \l__tikzfill_img_yc_tl +\tl_new:N \l__tikzfill_img_width_tl +\tl_new:N \l__tikzfill_img_height_tl + +\tl_new:N \l__tikzfill_img_opacity_tl +\tl_new:N \l__tikzfill_img_scale_tl +\tl_new:N \l__tikzfill_img_graphics_options_tl + +\fp_new:N \l__tikzfill_img_scale_x_fp +\fp_new:N \l__tikzfill_img_scale_y_fp + + +\cs_new_nopar:Npn \__tikzfill_img_process_ppbb: + { + \pgf@process{\pgfpointanchor{path~picture~bounding~box}{south~west}} + \tl_set:Nx \l__tikzfill_img_xa_tl { \dim_eval:n { \pgf@x } } + \tl_set:Nx \l__tikzfill_img_ya_tl { \dim_eval:n { \pgf@y } } + \pgf@process{\pgfpointanchor{path~picture~bounding~box}{north~east}} + \tl_set:Nx \l__tikzfill_img_xb_tl { \dim_eval:n { \pgf@x } } + \tl_set:Nx \l__tikzfill_img_yb_tl { \dim_eval:n { \pgf@y } } + \tl_set:Nx \l__tikzfill_img_width_tl { \dim_eval:n { \pgf@x - \l__tikzfill_img_xa_tl } } + \tl_set:Nx \l__tikzfill_img_height_tl { \dim_eval:n { \pgf@y - \l__tikzfill_img_ya_tl } } + \pgfsetfillopacity{\l__tikzfill_img_opacity_tl} + \pgfsetstrokeopacity{\l__tikzfill_img_opacity_tl} + } + + +\cs_new_nopar:Npn \__tikzfill_img_path_picture:n #1 + { + \pgfkeysalso + { + path~picture = + { + \__tikzfill_img_process_ppbb: + #1 + } + } + } + + +\cs_new_nopar:Npn \__tikzfill_img_draw_textbox:n #1 + { + \pgftext + [ + x = \dim_eval:n { \l__tikzfill_img_xa_tl + \l__tikzfill_img_width_tl/2 }, + y = \dim_eval:n { \l__tikzfill_img_ya_tl + \l__tikzfill_img_height_tl/2 } + ]{ #1 } + } + + +\cs_new_nopar:Npn \__tikzfill_img_include_graphics:n #1 + { + \tl_set_eq:NN \l_tmpa_tl \l__tikzfill_img_graphics_options_tl + \tl_if_empty:NTF \l_tmpa_tl + { + \tl_set:Nn \l_tmpa_tl { \includegraphics } + } + { + \tl_put_left:Nn \l_tmpa_tl { \includegraphics[ } + \tl_put_right:Nn \l_tmpa_tl { ] } + } + \l_tmpa_tl { #1 } + } + + +\cs_new_nopar:Npn \__tikzfill_img_set_box_to_image:n #1 + { + \hbox_set:Nn \l__tikzfill_img_box + { + \pgfinterruptpicture + \group_begin: + \__tikzfill_img_include_graphics:n { #1 } + \group_end: + \endpgfinterruptpicture + } + } + + + +\cs_new_nopar:Npn \__tikzfill_img_set_box_to_picture:n #1 + { + \hbox_set:Nn \l__tikzfill_img_box + { + \pgfinterruptpicture + \group_begin: + \pgfsetbaseline{0pt} + \tikzpicture#1\endtikzpicture + \group_end: + \endpgfinterruptpicture + } + } + + +\cs_new_nopar:Npn \__tikzfill_img_draw_box: + { + \__tikzfill_img_draw_textbox:n + { + \box_use_drop:N \l__tikzfill_img_box + } + } + + +\cs_new_nopar:Npn \__tikzfill_img_stretch_draw_box: + { + \box_resize_to_wd_and_ht_plus_dp:Nnn \l__tikzfill_img_box + { \fp_to_dim:n { \l__tikzfill_img_scale_tl*\l__tikzfill_img_width_tl }} + { \fp_to_dim:n { \l__tikzfill_img_scale_tl*\l__tikzfill_img_height_tl }} + \__tikzfill_img_draw_box: + } + + +\cs_new_nopar:Npn \xxxx__tikzfill_img_compute_scales: + { + \fp_set:Nn \l_tmpa_fl { \box_wd:N \l__tikzfill_img_box } + \fp_compare:nNnTF \l_tmpa_fl < {1pt} + { + \fp_set_eq:NN \l__tikzfill_img_scale_x_fp \c_one_fp + } + { + \fp_set:Nn \l__tikzfill_img_scale_x_fp + { + \l__tikzfill_img_scale_tl*\l__tikzfill_img_width_tl / \l_tmpa_fl + } + } + \fp_set:Nn \l_tmpb_fl { \box_ht:N \l__tikzfill_img_box + \box_dp:N \l__tikzfill_img_box } + \fp_compare:nNnTF \l_tmpb_fl < {1pt} + { + \fp_set_eq:NN \l__tikzfill_img_scale_y_fp \c_one_fp + } + { + \fp_set:Nn \l__tikzfill_img_scale_y_fp + { + \l__tikzfill_img_scale_tl*\l__tikzfill_img_height_tl / \l_tmpb_fl + } + } + } + + +\cs_new_nopar:Npn \__tikzfill_img_compute_scales: + { + \dim_set:Nn \l_tmpa_dim { \box_wd:N \l__tikzfill_img_box } + \dim_compare:nNnTF \l_tmpa_dim < {1pt} + { + \fp_set_eq:NN \l__tikzfill_img_scale_x_fp \c_one_fp + } + { + \fp_set:Nn \l__tikzfill_img_scale_x_fp + { + \l__tikzfill_img_scale_tl * \l__tikzfill_img_width_tl / \l_tmpa_dim + } + } + \dim_set:Nn \l_tmpb_dim { \box_ht:N \l__tikzfill_img_box + \box_dp:N \l__tikzfill_img_box } + \dim_compare:nNnTF \l_tmpb_dim < {1pt} + { + \fp_set_eq:NN \l__tikzfill_img_scale_y_fp \c_one_fp + } + { + \fp_set:Nn \l__tikzfill_img_scale_y_fp + { + \l__tikzfill_img_scale_tl * \l__tikzfill_img_height_tl / \l_tmpb_dim + } + } + } + + +\cs_new_nopar:Npn \__tikzfill_img_scale_draw_box: + { + \box_scale:Nnn \l__tikzfill_img_box + { \fp_to_dim:N \l__tikzfill_img_scale_x_fp } + { \fp_to_dim:N \l__tikzfill_img_scale_y_fp } + \__tikzfill_img_draw_box: + } + + +\cs_new_nopar:Npn \__tikzfill_img_overzoom_draw_box: + { + \__tikzfill_img_compute_scales: + \fp_compare:nNnTF \l__tikzfill_img_scale_x_fp > \l__tikzfill_img_scale_y_fp + { \fp_set_eq:NN \l__tikzfill_img_scale_y_fp \l__tikzfill_img_scale_x_fp } + { \fp_set_eq:NN \l__tikzfill_img_scale_x_fp \l__tikzfill_img_scale_y_fp } + \__tikzfill_img_scale_draw_box: + } + + +\cs_new_nopar:Npn \__tikzfill_img_zoom_draw_box: + { + \__tikzfill_img_compute_scales: + \fp_compare:nNnTF \l__tikzfill_img_scale_x_fp > \l__tikzfill_img_scale_y_fp + { \fp_set_eq:NN \l__tikzfill_img_scale_x_fp \l__tikzfill_img_scale_y_fp } + { \fp_set_eq:NN \l__tikzfill_img_scale_y_fp \l__tikzfill_img_scale_x_fp } + \__tikzfill_img_scale_draw_box: + } + + +\cs_new_nopar:Npn \__tikzfill_img_shrink_draw_box: + { + \__tikzfill_img_compute_scales: + \fp_compare:nNnTF \l__tikzfill_img_scale_x_fp > \l__tikzfill_img_scale_y_fp + { \fp_set_eq:NN \l__tikzfill_img_scale_x_fp \l__tikzfill_img_scale_y_fp } + { \fp_set_eq:NN \l__tikzfill_img_scale_y_fp \l__tikzfill_img_scale_x_fp } + \fp_compare:nNnT \l__tikzfill_img_scale_x_fp > 1 + { + \fp_set_eq:NN \l__tikzfill_img_scale_x_fp \c_one_fp + \fp_set_eq:NN \l__tikzfill_img_scale_y_fp \c_one_fp + } + \__tikzfill_img_scale_draw_box: + } + + +\cs_new_nopar:Npn \__tikzfill_img_tile_draw_box: + { + \dim_set:Nn \l_tmpa_dim { \box_wd:N \l__tikzfill_img_box } + \dim_set:Nn \l_tmpb_dim { \box_ht:N \l__tikzfill_img_box + \box_dp:N \l__tikzfill_img_box } + \dim_set:Nn \l_tmpb_dim { -\l_tmpb_dim } + + \dim_step_variable:nnnNn + { \l__tikzfill_img_xa_tl } + { \l_tmpa_dim } + { \l__tikzfill_img_xb_tl } + \l__tikzfill_img_xc_tl + { + \dim_step_variable:nnnNn + { \l__tikzfill_img_yb_tl } + { \l_tmpb_dim } + { \l__tikzfill_img_ya_tl } + \l__tikzfill_img_yc_tl + { + \pgftext + [ + x = \l__tikzfill_img_xc_tl, + y = \l__tikzfill_img_yc_tl, + left, + top + ] + { \box_use:N\l__tikzfill_img_box } + } + } + } + + +\tikzset + { + fill~image~opacity/.store~in=\l__tikzfill_img_opacity_tl, + fill~image~opacity=1, + fill~image~scale/.store~in=\l__tikzfill_img_scale_tl, + fill~image~scale=1, + fill~image~options/.store~in=\l__tikzfill_img_graphics_options_tl, + fill~image~options=, + fill~plain~image/.code= + { + \__tikzfill_img_path_picture:n + { + \__tikzfill_img_draw_textbox:n + { + \__tikzfill_img_include_graphics:n { #1 } + } + } + }, + fill~plain~picture/.code= + { + \__tikzfill_img_set_box_to_picture:n { #1 } + \__tikzfill_img_path_picture:n + { + \__tikzfill_img_draw_box: + } + }, + fill~stretch~image/.code= + { + \__tikzfill_img_set_box_to_image:n { #1 } + \__tikzfill_img_path_picture:n + { + \__tikzfill_img_stretch_draw_box: + } + }, + fill~stretch~picture/.code= + { + \__tikzfill_img_set_box_to_picture:n { #1 } + \__tikzfill_img_path_picture:n + { + \__tikzfill_img_stretch_draw_box: + } + }, + fill~overzoom~image/.code= + { + \__tikzfill_img_set_box_to_image:n { #1 } + \__tikzfill_img_path_picture:n + { + \__tikzfill_img_overzoom_draw_box: + } + }, + fill~overzoom~picture/.code= + { + \__tikzfill_img_set_box_to_picture:n { #1 } + \__tikzfill_img_path_picture:n + { + \__tikzfill_img_overzoom_draw_box: + } + }, + fill~zoom~image/.code= + { + \__tikzfill_img_set_box_to_image:n { #1 } + \__tikzfill_img_path_picture:n + { + \__tikzfill_img_zoom_draw_box: + } + }, + fill~zoom~picture/.code= + { + \__tikzfill_img_set_box_to_picture:n { #1 } + \__tikzfill_img_path_picture:n + { + \__tikzfill_img_zoom_draw_box: + } + }, + fill~shrink~image/.code= + { + \__tikzfill_img_set_box_to_image:n { #1 } + \__tikzfill_img_path_picture:n + { + \__tikzfill_img_shrink_draw_box: + } + }, + fill~shrink~picture/.code= + { + \__tikzfill_img_set_box_to_picture:n { #1 } + \__tikzfill_img_path_picture:n + { + \__tikzfill_img_shrink_draw_box: + } + }, + fill~tile~image/.code= + { + \__tikzfill_img_set_box_to_image:n { #1 } + \__tikzfill_img_path_picture:n + { + \__tikzfill_img_tile_draw_box: + } + }, + fill~tile~picture/.code= + { + \__tikzfill_img_set_box_to_picture:n { #1 } + \__tikzfill_img_path_picture:n + { + \__tikzfill_img_tile_draw_box: + } + }, + fill~tile~picture*/.code~n~args={2} + { + \__tikzfill_img_set_box_to_picture:n { #2 } + \box_scale:Nnn \l__tikzfill_img_box { #1 }{ #1 } + \__tikzfill_img_path_picture:n + { + \__tikzfill_img_tile_draw_box: + } + }, + } + + +\ExplSyntaxOff + +\tikzset + { + fill plain image*/.style n args={2}{fill image options={#1},fill plain image={#2}},% + fill stretch image*/.style n args={2}{fill image options={#1},fill stretch image={#2}},% + fill overzoom image*/.style n args={2}{fill image options={#1},fill overzoom image={#2}},% + fill zoom image*/.style n args={2}{fill image options={#1},fill zoom image={#2}},% + fill shrink image*/.style n args={2}{fill image options={#1},fill shrink image={#2}},% + fill tile image*/.style n args={2}{fill image options={#1},fill tile image={#2}},% + } + diff --git a/graphics/pgf/contrib/tikzfill/tikzlibraryfill.rhombus.code.tex b/graphics/pgf/contrib/tikzfill/tikzlibraryfill.rhombus.code.tex new file mode 100644 index 0000000000..e425470c44 --- /dev/null +++ b/graphics/pgf/contrib/tikzfill/tikzlibraryfill.rhombus.code.tex @@ -0,0 +1,159 @@ +%% The LaTeX package tikzfill - version 1.0.0 (2022/07/20) +%% tikzlibraryfill.rhombus.code.tex: filling with rhombus patterns +%% +%% ------------------------------------------------------------------------------------------- +%% Copyright (c) 2022-2022 by Prof. Dr. Dr. Thomas F. Sturm +%% ------------------------------------------------------------------------------------------- +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3 +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3 or later is part of all distributions of LaTeX +%% version 2005/12/01 or later. +%% +%% This work has the LPPL maintenance status `author-maintained'. +%% +%% This work consists of all files listed in README.md +%% +\ProvidesFile{tikzlibraryfill.rhombus.code.tex}[2022/07/15 v0.0.1 Rhombus pattern library] + +\usetikzlibrary{patterns.meta} + +\ExplSyntaxOn + +\fp_new:N \l__tikzfill_rho_angle_fp +\fp_new:N \l__tikzfill_rho_d_fp +\fp_new:N \l__tikzfill_rho_s_fp + +\tl_new:N \l__tikzfill_rho_dsize_tl +\tl_new:N \l__tikzfill_rho_linewidth_tl +\tl_new:N \l__tikzfill_rho_matrix_a_tl +\tl_new:N \l__tikzfill_rho_matrix_b_tl +\tl_new:N \l__tikzfill_rho_matrix_c_tl +\tl_new:N \l__tikzfill_rho_matrix_d_tl +\tl_new:N \l__tikzfill_rho_poffset_tl +\tl_new:N \l__tikzfill_rho_psize_tl +\tl_new:N \l__tikzfill_rho_size_tl + + +\pgfdeclarepattern + { + name = rhombus, + parameters = + { + \pgfkeysvalueof{/pgf/pattern~keys/size}, + \pgfkeysvalueof{/pgf/pattern~keys/angle}, + \pgfkeysvalueof{/pgf/pattern~keys/ratio}, + \pgfkeysvalueof{/pgf/pattern~keys/xshift}, + \pgfkeysvalueof{/pgf/pattern~keys/yshift}, + \pgfkeysvalueof{/pgf/pattern~keys/line~width}, + \pgfkeysvalueof{/pgf/pattern~keys/pos}, + \pgfkeysvalueof{/pgf/pattern~keys/band}, + \pgfkeysvalueof{/pgf/pattern~keys/_fill_}, + }, + defaults = + { + size /.initial = 10mm, + angle /.initial = -40, + ratio /.initial = 2, + xshift /.initial = 0pt, + yshift /.initial = 0pt, + line~width /.initial = 0.4pt, + pos /.initial = 1, + band /.initial = 0, + _fill_ /.initial = 1, + fill /.style = { _fill_=1 }, + draw /.style = { _fill_=0 }, + }, + set~up~code = + { + \tl_set:Nx \l__tikzfill_rho_linewidth_tl { \fp_to_dim:n { \pgfkeysvalueof{/pgf/pattern~keys/line~width} } } + + \fp_set:Nn \l_tmpa_fp { \pgfkeysvalueof{/pgf/pattern~keys/size} } + \tl_set:Nx \l__tikzfill_rho_size_tl { \fp_to_dim:N \l_tmpa_fp } + \tl_set:Nx \l__tikzfill_rho_dsize_tl { \fp_to_dim:n { 2 * \l_tmpa_fp } } + + \fp_set:Nn \l_tmpb_fp { min ( 1, max( 0, \pgfkeysvalueof{/pgf/pattern~keys/pos} )) } + \tl_set:Nx \l__tikzfill_rho_psize_tl { \fp_to_dim:n { \l_tmpa_fp * \l_tmpb_fp } } + \tl_set:Nx \l__tikzfill_rho_poffset_tl { \fp_to_dim:n { \l_tmpa_fp * (1-\l_tmpb_fp)/2 } } + + \fp_set:Nn \l__tikzfill_rho_angle_fp { \pgfkeysvalueof{/pgf/pattern~keys/angle} } + + \fp_set:Nn \l_tmpa_fp { max( 1 , \pgfkeysvalueof{/pgf/pattern~keys/ratio} ) } + \fp_set:Nn \l_tmpa_fp { \l_tmpa_fp*\l_tmpa_fp } + \fp_set:Nn \l__tikzfill_rho_s_fp{ (\l_tmpa_fp-1)/(\l_tmpa_fp+1) } + + \fp_set:Nn \l__tikzfill_rho_d_fp { sqrt( 1 - \l__tikzfill_rho_s_fp * \l__tikzfill_rho_s_fp ) } + \fp_set:Nn \l_tmpb_fp + { + \l__tikzfill_rho_angle_fp - atand( \l__tikzfill_rho_d_fp / ( 1 + \l__tikzfill_rho_s_fp ) ) + } + \fp_set:Nn \l_tmpa_fp { cosd(\l_tmpb_fp) } + \fp_set:Nn \l_tmpb_fp { sind(\l_tmpb_fp) } + + \tl_set:Nx \l__tikzfill_rho_matrix_a_tl { \fp_to_decimal:N \l_tmpa_fp } + \tl_set:Nx \l__tikzfill_rho_matrix_b_tl { \fp_to_decimal:N \l_tmpb_fp } + \tl_set:Nx \l__tikzfill_rho_matrix_c_tl { \fp_to_decimal:n + { + \l__tikzfill_rho_s_fp * \l_tmpa_fp - \l__tikzfill_rho_d_fp * \l_tmpb_fp + }} + \tl_set:Nx \l__tikzfill_rho_matrix_d_tl { \fp_to_decimal:n + { + \l__tikzfill_rho_s_fp * \l_tmpb_fp + \l__tikzfill_rho_d_fp * \l_tmpa_fp + }} + }, + bottom~left = { \pgfpoint{-\l__tikzfill_rho_linewidth_tl}{-\l__tikzfill_rho_linewidth_tl} }, + top~right = { \pgfpoint{\l__tikzfill_rho_dsize_tl+\l__tikzfill_rho_linewidth_tl} + {\l__tikzfill_rho_dsize_tl+\l__tikzfill_rho_linewidth_tl} }, + tile~size = { \pgfqpoint{\l__tikzfill_rho_dsize_tl}{\l__tikzfill_rho_dsize_tl} }, + tile~transformation = + { + \pgftransformshift + { + \pgfpoint{ \pgfkeysvalueof{/pgf/pattern~keys/xshift} } + { \pgfkeysvalueof{/pgf/pattern~keys/yshift} } + } + \pgftransformcm{\l__tikzfill_rho_matrix_a_tl}{\l__tikzfill_rho_matrix_b_tl} + {\l__tikzfill_rho_matrix_c_tl}{\l__tikzfill_rho_matrix_d_tl} + {\pgfpointorigin} + }, + code = + { + \int_set:Nn \l_tmpa_int { \pgfkeysvalueof{/pgf/pattern~keys/band} } + \int_compare:nNnF \l_tmpa_int = 1 + { + \pgfpathrectangle{\pgfqpoint{\l__tikzfill_rho_poffset_tl}{\l__tikzfill_rho_poffset_tl}} + {\pgfqpoint{\l__tikzfill_rho_psize_tl}{\l__tikzfill_rho_psize_tl}} + \pgfpathrectangle{\pgfpoint{\l__tikzfill_rho_size_tl+\l__tikzfill_rho_poffset_tl}{\l__tikzfill_rho_size_tl+\l__tikzfill_rho_poffset_tl}} + {\pgfqpoint{\l__tikzfill_rho_psize_tl}{\l__tikzfill_rho_psize_tl}} + } + \int_compare:nNnT \l_tmpa_int > 0 + { + \pgfpathrectangle{\pgfpoint{\l__tikzfill_rho_poffset_tl}{\l__tikzfill_rho_size_tl+\l__tikzfill_rho_poffset_tl}} + {\pgfqpoint{\l__tikzfill_rho_psize_tl}{\l__tikzfill_rho_psize_tl}} + \pgfpathrectangle{\pgfpoint{\l__tikzfill_rho_size_tl+\l__tikzfill_rho_poffset_tl}{\l__tikzfill_rho_poffset_tl}} + {\pgfqpoint{\l__tikzfill_rho_psize_tl}{\l__tikzfill_rho_psize_tl}} + } + \int_compare:nNnTF { \pgfkeysvalueof{/pgf/pattern~keys/_fill_} } = 1 + { + \pgfusepath{fill} + } + { + \pgfsetlinewidth{\l__tikzfill_rho_linewidth_tl} + \pgfusepath{draw} + } + } + } + + +\tikzset{ + pattern~rhombus /.style = + { + pattern={rhombus[#1]} + } +} + + +\ExplSyntaxOff diff --git a/language/japanese/README.CJK b/language/japanese/README.CJK deleted file mode 100644 index 432baee019..0000000000 --- a/language/japanese/README.CJK +++ /dev/null @@ -1,5 +0,0 @@ -The CJK package, for setting Chinese, Japanese and Korean, is -available via directory tex-archive/language/japanese/CJK, even -though it does not necessarily show up in via this directory in the -`quote site index' command - diff --git a/language/japanese/jtex/00NEWS b/language/japanese/jtex/00NEWS deleted file mode 100644 index 8cb147d71d..0000000000 --- a/language/japanese/jtex/00NEWS +++ /dev/null @@ -1,148 +0,0 @@ -From: sakurai@math.s.chiba-u.ac.jp (SAKURAI Takafumi) -Newsgroups: fj.comp.texhax,fj.sources.d -Subject: NTT JTeX 1.6 release -Date: 21 Jun 1995 18:48:53 GMT -Organization: Chiba University -Message-ID: - -$B:y0f(B@$B@iMUBg$G$9!#(B - -NTT JTeX 1.6$B$r8x3+$7$^$9!#(B - ftp:/ftp.math.s.chiba-u.ac.jp/tex/jtex-1.6 -$B$+$i(Banonymous ftp$B$G$-$^$9!#$I$N%U%!%$%k$r(Bftp$B$9$l$P$h$$$+$O(BREADME$B$r(B -$BFI$s$G2<$5$$!#(B - JTeX$B$NItJ,$O(B1.6-beta$B$HJQ$o$C$F$J$$!#(B - (TeX 3.1415 / web2c 6.1 $B$r%Y!<%9$K$7$F$$$^$9!#(B) - JLaTeX2e$B$r(B <1994/12/01> patchlevel 3 $B$K4p$E$$$?$b$N$H$7$?!#(B - JBibTeX$B$r2C$($?!#(B -$B$H$J$C$F$$$^$9!#(B -(LaTeX2e <1995/06/01> $B$,$b$&$9$0=P$k$@$m$&$H$$$&$3$N;~4|$K$3$N%"%J%&%s%9(B -$B$r$9$k$N$O%?%$%_%s%0$,0-$$$N$G$9$,!"(BUNIX magazine 7$B7n9f$N!V(BInside DVI -> PS$B!W(B -$B$Ke=\$+$i(BNTT JTeX 1.6$B$r(Banonymous ftp$B$K$R$C$=$jCV$$$F$$$^$7$?!#(B -$B$9$G$K(Bftp$B$5$l$?J}$b$$$i$C$7$c$k$N$G$9$,!"0J2<$G=R$Y$kLdBjE@$,$"$j(B -$B$^$7$?$N$G!"?=$7Lu$"$j$^$;$s$,(B6$B7n(B21$BF|0JA0$K(Bftp$B$5$l$?J}$O!"(B00README$B$r(B -$B$^$:(Bftp$B$7$F$=$l$rFI$_!"(BREADME$B$*$h$SI,MW$J%U%!%$%k$r(Bftp$B$7$F=$@5$r$*4j$$(B -$B$7$^$9!#(B($B$b$A$m$s$3$l$+$i?7$?$K(Bftp$B$9$k>l9g$O!"(BREADME$B$K=q$$$F$"$k%U%!%$%k(B -$B$@$1$G==J,$G$9!#(B) - -$B>/$7A0$K(Bfj.comp.texhax$B$G$bl9g$,$"$j$^$9!#(B -$B$^$?!"(BASCII$BF|K\8l(BTeX$B$H$N(Bcompatibility$B$N$?$a$K(B \min $B$H$$$&(Bcommand$B$r(B -$BDj5A$7$F$*$-$7$?$,!"(Bmath mode$B$K$*$1$k(B \min (minimun) $B$H$V$D$+$k$H$$$&(B -$B%P%0$,$"$j$^$9!#(B(ASCII$BF|K\8l(BTeX$B$G$bF1MM$N;vBV$,5/$3$j$^$9!#(B) -$B$3$l$O>/$7A0$K0k:j$5$s$K;XE&$5$l$?$N$G$9$,!"=$@5$7$?$b$N(B(math mode$B$H(B -$B$=$&$G$J$$$H$-$K1~$8$F?6Iq$$$rJQ$($k(B)$B$r(Bftp$B$KCV$$$F$*$/$N$rK:$l$F(B -$B$$$^$7$?!#(B - - $B:y0f5.J8(B(sakurai@math.s.chiba-u.ac.jp) - --------- -From: sakurai@math.s.chiba-u.ac.jp (SAKURAI Takafumi) -Newsgroups: fj.comp.texhax -Subject: Re: can't install jtex-1.6 -Date: 25 Jul 1995 17:18:45 GMT -Organization: Chiba University -Message-ID: - -$B:y0f(B@$B@iMUBg$G$9!#(B - -In article <3v2a06$mg6@i-group.hokkyodai.ac.jp> SUGAWARA@atson.iwa.hokkyodai.ac.jp - (Sugawara / =?ISO-2022-JP?B?GyRCP3s4NiEhN3IbKEo=?=) writes: - - > unix magazine $B$N#87n9f$r;29M$K$7$J$,$i(Bjtex-1.6$B$r%$%s%9%H!<%k$7$F$$$k$N$G$9$,(B - > web2c-6.1j$B$J$k%G%#%l%/%H%j$K0\F0$7$F(Bmake$B$H$d$j$^$7$?$H$3$m(B - > ......... - > make: $BCWL?E*$J%(%i!<(B: $B%3%^%s%I<:GT!#%?!<%2%C%H(B `kanji.o' - -configure$B$7$J$$$G(Bmake$B$7$^$7$?$M!#2r@b$r$A$c$s$HFI$_$^$7$g$&!#(B -($B$I$&$;(Bconfigure$B$G=q$-$+$($i$l$k$+$i$H;W$C$F8E$$(BMakefile$B$rCV$$$?(B -$B$^$^$K$7$?$N$O$^$:$+$C$?$h$&$G$9!#(B) - -$B$A$J$_$K!"(Bmake clean $B$7$F$b(BSunOS$B$N(Bmake$B$G$O>C$($k$Y$-%U%!%$%k$,A4It$O(B -$B>C$($^$;$s!#(B($BA4It$NHG$K$D$$$F$=$&$G$"$k$+$I$&$+$O$o$+$j$^$;$s$,!"(B -$B>/$J$/$H$b(BSolaris1$B$K$b(B2$B$K$b$=$&$$$&(Bmake$B$r;}$D$b$N$,$"$j$^$9!#(B) -$B$=$&$$$&$H$-$O!"(B - GNU make $B$r;H$&(B ($BB?J,(B4.4BSD$B$N(Bmake$B$b2D(B) - Makefile$B$r8+$FC$9(B - $B%=!<%9$rA4It>C$7$F$b$&0lEYE83+$9$k(B -$B$N$$$:$l$+$r9T$J$C$F2<$5$$!#(B - - $B:y0f5.J8(B(sakurai@math.s.chiba-u.ac.jp) - --------- -From: sakurai@math.s.chiba-u.ac.jp (SAKURAI Takafumi) -Newsgroups: fj.comp.texhax -Subject: jtex-1.6 on Solaris 2.X -Date: 26 Jul 1995 09:01:46 GMT -Organization: Chiba University -Message-ID: - -$B:y0f(B@$B@iMUBg$G$9!#(B - -jtex-1.6$B$,$&$^$/(Bmake$B$G$-$J$$$H$$$&AjCL$r%K%e!<%9$d%a!<%k$Gl9g$O(Bconfigure$B$,$&$^$/$$$+$J$$!"$H$$$&$3$H$,860x$@$C$?$j(B -$B$7$^$9!#$=$7$F$=$N??$N860x$O!"(B - configure$B$OIaDL$N(B(BSD$B%9%?%$%k$N$H$$$&$Y$-$+(B)install$B$,(B - $B$J$$$H$-$O!"<+A0$N(Binstall.sh$B$H$$$&(Bscript$B$r;H$&$h$&$K(B - $B$7$F$$$k$,!"$=$N(Binstall.sh$B$r(Bweb2c-6.1j.tar.gz$B$K(B - $BF~$l$F$J$+$C$?(B -$B$H$$$&$3$H$G$7$?!#?=$7Lu$"$j$^$;$s$G$7$?!#(B($BCf86$5$s(B@$B9-Bg!"8f;XE&(B -$B$"$j$,$H$&$4$6$$$^$7$?!#(B) - -$B$H$$$&$3$H$G!"(Binstall.sh$B$rDI2C$9$k$?$a(B - ftp://ftp.math.s.chiba-u.ac.jp/tex/jtex-1.6/web2c-6.1j-add1.tar.gz -$B$rCV$-$^$7$?!#(Bweb2c-6.1j.tar.gz$B$rE83+$7$?$N$HF1$8(Bdirectory$B$GE83+$7$F(B -$B2<$5$$!#(B(web2c-6.1j.tar.gz$B$b:n$jD>$7!"(Bconfigure$B$K$h$C$F:n$i$l$k(BMakefile$B$O(B -$B=|$$$F$*$-$^$7$?!#(B) autoconf$B$KF~$C$F$$$k(Binstall.sh$B$r(B .../web2c-6.1j/web2c -$B$K%3%T!<$7$F$b$+$^$$$^$;$s!#(B - -Solaris2.X$B$r;H$C$F$$$kJ}!"$^$?(Bconfigure$B$r$7$F$$$k:GCf$K%(%i!<$,=P$?!"(B -$B$H$$$&J}$O>e5-$NBP=h$r$7$?>e$G$d$jD>$7$F2<$5$$!#(Binstall.sh$B$,860x$G(B -configure$B$K<:GT$7$?>l9g!"$?$H$($P(BRANLIB$B$,@_Dj$5$l$F$J$$!"$H$$$&$3$H$b(B -$B5/$3$j$^$9$N$G!"$=$&$$$&>I>u$K?4Ev$?$j$N$"$kJ}$bBP=h$7$F2<$5$$!#(B - -$B$A$J$_$K!"JL5-;v(B()$B$G(B -$B=q$$$?(Bmake$B$N7o$O$3$l$H$OFHN)$G$9!#(Bmake distclean $B$9$k$H$-$K$O5$$rIU$1$F(B -$B2<$5$$!#(B - - $B:y0f5.J8(B(sakurai@math.s.chiba-u.ac.jp) - --------- -From: sakurai@math.s.chiba-u.ac.jp (SAKURAI Takafumi) -Newsgroups: fj.comp.texhax -Subject: Re: jtex-1.6 on Solaris 2.X -Date: 05 Aug 1995 18:20:28 GMT -Organization: Chiba University -Message-ID: - -$B:y0f(B@$B@iMUBg$G$9!#(B - -Solaris2.X$B$G$N(Bjtex-1.6$B$N%3%s%Q%$%k$K4X$7$F0J2<$N$h$&$K=q$-$^$7$?$,!"(B -$BIT==J,$G$7$?!#$9$_$^$;$s!#(B - -In article sakurai@math.s.chiba-u.ac.jp (SAKURAI Takafumi) writes: - - > Solaris2.X$B$N>l9g$O(Bconfigure$B$,$&$^$/$$$+$J$$!"$H$$$&$3$H$,860x$@$C$?$j(B - > $B$7$^$9!#$=$7$F$=$N??$N860x$O!"(B - > configure$B$OIaDL$N(B(BSD$B%9%?%$%k$N$H$$$&$Y$-$+(B)install$B$,(B - > $B$J$$$H$-$O!"<+A0$N(Binstall.sh$B$H$$$&(Bscript$B$r;H$&$h$&$K(B - > $B$7$F$$$k$,!"$=$N(Binstall.sh$B$r(Bweb2c-6.1j.tar.gz$B$K(B - > $BF~$l$F$J$+$C$?(B - > $B$H$$$&$3$H$G$7$?!#(B - -$B$3$l$@$1$G$O(Binstall$B$K4X$9$k(Bconfiguration$B$,$A$c$s$H$G$-$^$;$s!#(B -($B;d$,;H$C$?(Bautoconf 1.11$B$N%P%0$J$N$G$9$,!#(B) -$B$=$l$G>/$7>.:Y9)$N=$@5$J$N$G$9$,!"$H$j$"$($:(B - ftp://ftp.math.s.chiba-u.ac.jp/tex/jtex-1.6/web2c-6.1j-add2.tar.gz -$B$rCV$-$^$7$?!#(B(web2c-6.1j.tar.gz$B$b:n$jD>$7$^$7$?!#(B) -web2c-6.1j.tar.gz$B$rE83+$7$?$N$HF1$8(Bdirectory$B$GE83+$7$F!"(B./configure $B$+$i(B -$B$d$jD>$7$F2<$5$$!#(B - - $B:y0f5.J8(B(sakurai@math.s.chiba-u.ac.jp) ---- Solaris2.X$B$N$J$$Jk$i$7(B diff --git a/language/japanese/jtex/00README b/language/japanese/jtex/00README deleted file mode 100644 index 8b1d1f0bc8..0000000000 --- a/language/japanese/jtex/00README +++ /dev/null @@ -1,28 +0,0 @@ -1995$BG/(B7$B7n(B26$BF|(B17:52$B0JA0$K(Bweb2c-6.1j.tar.gz$B$r(Bftp$B$5$l$?J}$O!"(B -web2c-6.1j-add1.tar.gz$B$r(Bftp$B$7$FF1$8(Bdirectory$B$GE83+$7$F2<$5$$!#(B -(00NEWS$B;2>H!#(B) - -1995$BG/(B6$B7n(B21$BF|0JA0$K$3$N(Bdirectory(jtex-1.6)$B$+$i(Bftp$B$5$l$?J}$O!"(B -$B0J2<$N>r7o$K=>$C$F(B(1),(2),(3)$B$^$?$O(B(2),(3)$B$r(Bftp$B$7$F2<$5$$!#(B -(jtex-1.6-beta$B$+$i(Bftp$B$5$l$?J}$O!"%*%j%8%J%k$N(BTeX$B$N%U%!%$%k0J30$O(B -README$B$rFI$s$G(Bftp$B$7D>$7$F2<$5$$!#(B) - -4$B7n(B27$BF|0JA0$K(Bftp - (1) base.tar.gz $B$^$?$O(B unpacked.tar.gz -6$B7n(B21$BF|0JA0$K(Bftp - (2) lib-6.9.tar.gz $B$*$h$S(B lib-6.9-add1.tar.gz $B$*$h$S(B jlib-add1.tar.gz - (3) jlatex2e-add1.tar.gz - -(1)$B$O(B1994/12/03 patchlevel 3$B$N(BLaTeX2e$B$N%=!<%9$G$9!#(B -(2)$B$O(B3$B$D6&(Blib-6.8.tar.gz$B$HF1$8%G%#%l%/%H%j$GE83+$7$^$9$,!">e=q$-$O(B -$B$7$J$$$[$&$,0BA4$G$9$N$G(B($B$?$@$7K\Ev$KITET9g$J$3$H$,5/$3$k$+$I$&$+$O(B -$BL$3NG'$G$9(B)$B!"$9$G$K?7$?$J%U%!%$%k$r%$%s%9%H!<%k$7$F$$$k>l9g$OLLE]$G$9$,(B -$B$=$l$r%;!<%V$7$F!"4XO"$9$k%U%!%$%k$r$9$Y$F:o=|$7(B - lib-6.9.tar.gz lib-6.9-add1.tar.gz jlib.tar.gz jlib-add1.tar.gz - $B%;!<%V$7$?%U%!%$%k(B -$B$N=g$KE83+$7$F2<$5$$!#(B(jlib.tar.gz$B$O$9$G$K(Bftp$B$7$F$"$k$O$:$N$b$N$G$9!#(B -$B?7$?$K(Bftp$B$9$k$J$i(Bjlib-add1.tar.gz$B$OITMW$G$9!#(B) -(3)$B$O(B \min $B$N%P%0$r=$@5$9$k$b$N$G$9!#(Bjlatex2e.tar.gz$B$rE83+$7$?(B -$B%G%#%l%/%H%j$GE83+$7$F2<$5$$!#(Bjlatex.ltx$B$,>e=q$-$5$l$^$9!#(B - -$B0J>e$N:n6H$r9T$J$C$?8e!"(Bfmt$B%U%!%$%k$r:n$jD>$7$F2<$5$$!#(B diff --git a/language/japanese/jtex/README b/language/japanese/jtex/README deleted file mode 100644 index 0be4ceaab5..0000000000 --- a/language/japanese/jtex/README +++ /dev/null @@ -1,26 +0,0 @@ -JTeX 1.6 (JTeX based on TeX 3.1415 / web2c 6.1) - -web2c-6.1j.tar.gz, jlib.tar.gz, jlatex2e.tar.gz$B$r(Bftp$B$7$F2<$5$$!#(B -$B$=$NB>$K!"%*%j%8%J%k$N(BTeX$B$N%=!<%9$G$"$k(Bweb2c-6.1.tar.gz, web-6.1.tar.gz, -lib-6.9.tar.gz$B$,I,MW$G$9!#;}$C$F$$$J$1$l$P(Bftp$B$7$F2<$5$$!#(B(unixtex.ftp$B;2>H!#(B) -lib-6.9-add1.tar.gz$B$O(Blib-6.9.tar.gz$B$r(Bupdate$B$9$k$?$a$N$b$N$G$9$N$G!"(B -$B$3$l$b(Bftp$B$7$F2<$5$$!#(B - -jlatex2e.tar.gz$B$O(BJLaTeX2e$B$N%=!<%9$G$9!#r7o$K4^$a$F$$$^$9!#>\$7$/$O(Bjlatex2e.tar.gz$B$rE83+$7$FF@$i$l$k(B -jlatex2e/base/jlatex.txt$B$rFI$s$G2<$5$$!#(B -$B%*%j%8%J%k$N(BLaTeX2e$B$N%=!<%9$O(Bbase.tar.gz$B$^$?$O(Bunpacked.tar.gz$B$G$9!#(B -(unpacked.tar.gz$B$O(Bbase.tar.gz$B$+$i@8@.$5$l$k%U%!%$%k$r4^$s$G$$$^$9!#(B) -$B$3$A$i$br7o$K$O4^$^$l$F$J$$$G$9$,!"(B -$B%=!<%9$N$$$:$l$+$b;}$C$F$f$/$3$H$r$*4+$a$7$^$9!#(B -$B$?$@$7!"(Bbase.tar.gz$B$*$h$S(Bunpacked.tar.gz$B$N(BLaTeX2e$B$O(B <1994/12/01> patchlevel 3 -$B$G$9$,!"(Blib-6.9.tar.gz$B$K4^$^$l$k(BLaTeX2e$B$O(B <1994/12/01> $B$G$9!#$=$3$G!"(B -lib-6.9.tar.gz$B$rE83+$7$?(Bdirectory$B$G(Blib-6.9-add1.tar.gz$B$rE83+$9$l$P(B -$BI,MW$J%U%!%$%k$,(Bupdate$B$5$l$k$h$&$K$7$F$*$-$^$7$?!#(B - -$B%*%j%8%J%k$N(BTeX$B$r:n$C$?$3$H$,$"$l$P3F(B.tar.gz$B$r$I$N$h$&$KE83+$9$l$P$h$$$+(B -$B8+Ev$,$D$/$G$7$g$&$,!"$=$&$G$J$$?M$O$^$:(Bweb2c-6.1j.tar.gz$B$rE,Ev$J%G%#%l%/(B -$B%H%j$GE83+$7$F2<$5$$!#$9$k$H(Bweb2c-6.1j$B$H$$$&(Bdirectory$B$,$G$-$k$N$G!"$=$3$K(B -$B$"$k(BREADME.JTeX$B$rFI$s$G2<$5$$!#(B diff --git a/macros/generic/fixjfm/README b/macros/generic/fixjfm/README deleted file mode 100644 index 3b68f21c0b..0000000000 --- a/macros/generic/fixjfm/README +++ /dev/null @@ -1,16 +0,0 @@ - - -The fixjfm package --- Fix JFM (for *pTeX) - -CTAN Homepage: https://ctan.org/pkg/fixjfm - -Repository: https://github.com/Man-Ting-Fang/fixjfm - -Version: 2018-03-24 v0.8 - -Copyright 2017--2018 Yue ZHANG - -License: Knuth License (https://ctan.org/license/knuth) - -This package fixes several bugs in the JFM format. Both LaTeX and plain TeX are -supported. diff --git a/macros/generic/fixjfm/fixjfm-doc.pdf b/macros/generic/fixjfm/fixjfm-doc.pdf deleted file mode 100644 index 43147b99de..0000000000 Binary files a/macros/generic/fixjfm/fixjfm-doc.pdf and /dev/null differ diff --git a/macros/generic/fixjfm/fixjfm-doc.tex b/macros/generic/fixjfm/fixjfm-doc.tex deleted file mode 100644 index d52f836721..0000000000 --- a/macros/generic/fixjfm/fixjfm-doc.tex +++ /dev/null @@ -1,356 +0,0 @@ - - -% fixjfm-doc.tex - -% !TeX encoding = UTF-8 -% !TeX program = pdfLaTeX - -\RequirePackage{fix-cm} - -\documentclass[a4paper]{article} - -\usepackage{amsfonts} -\usepackage[OT1]{fontenc} -\usepackage[utf8]{inputenc} -\usepackage[UKenglish]{babel} -\usepackage[babel]{microtype} -\usepackage{etoolbox} -\usepackage{booktabs} - -\AtBeginEnvironment{verbatim}{\microtypesetup{activate=false}} - -\abovetopsep=\medskipamount - -\newcommand\NormalSans{\normalfont\sffamily} -\newcommand\pkg[1]{{\protect\NormalSans#1}} - -\newcommand\pTeX{p\kern-0.15em\TeX} -\newcommand\e{\ensuremath{\varepsilon}} -\newcommand\epTeX{\e-\pTeX} -\newcommand\ApTeX{A\kern-0.1em\pTeX} -\newcommand\pLaTeX{p\LaTeX} - -\newcommand\FwBox{\ensuremath{\square}\hskip0em plus 0.05em\relax} - -\newbox\fwbox -\setbox\fwbox=\hbox{\FwBox} - -\newcommand\TwoFwBoxes{\FwBox\FwBox} -\newcommand\FourFwBoxes{\TwoFwBoxes\TwoFwBoxes} - -\newcommand\DemoText{% - \FourFwBoxes\FourFwBoxes\FourFwBoxes\FourFwBoxes - \FourFwBoxes\FourFwBoxes\ensuremath{\square}} - -\newcommand\demotext[1]{% - \begin{minipage}{20\wd\fwbox}\centering - \fbox{\begin{minipage}{16\wd\fwbox}% - \hskip2\wd\fwbox\relax\DemoText\par - \leavevmode\hbox to#1\wd\fwbox{\hss``}\DemoText''\par - \hskip2\wd\fwbox\relax\DemoText\par - \end{minipage}}% - \end{minipage}} - -\newcommand\yes{yes} -\newcommand\no{no} - -\newcommand\eclmvtt{test} - -\font\eclmvtt=ec-lmvtt10 at 10pt - -\newcommand\demoinput[2]{\TwoFwBoxes - \hbox to 1\wd\fwbox{\texttt{,}\hss}#1% - \hbox to 1\wd\fwbox{\hss{\eclmvtt``}}\TwoFwBoxes - \hbox to 1\wd\fwbox{{\eclmvtt''}\hss}#2} - -\newcommand\demooutput[2]{% - \TwoFwBoxes\hbox to#1\wd\fwbox{,\hss{#2``}}\TwoFwBoxes{#2''}} - -\newcommand\sans{test} - -\font\sans=SourceSansPro-Semibold-tlf-ot1 at 10pt - -\newenvironment{history}[1]% - {\noindent\textbf{#1}\nopagebreak\relax\begin{itemize}}% - {\end{itemize}} - -\begin{document} - -\title{The \pkg{fixjfm} package% - \thanks{CTAN Homepage: \texttt{https://ctan.org/pkg/fixjfm}} - \thanks{Repository: \texttt{https://github.com/Man-Ting-Fang/fixjfm}}} -\author{Yue \textsc{Zhang}} -\date{2018-03-24\quad v0.8} - -\maketitle - -\begin{abstract} -This package fixes several bugs in the JFM format. Both \LaTeX\ and plain \TeX\ -are supported. -\end{abstract} - -\section{Introduction} - -The JFM format is an extension of the TFM format and is used for typesetting CJK -characters with *\pTeX. It works perfectly under almost all circumstances, but -there are still at least two bugs: -\begin{itemize} -\item Bug 1: the indentation is incorrect if the first character of a paragraph - is an opening fullwidth punctuation mark, see Figure \ref{fig:ind}; -\item Bug 2: the spacing between two consecutive fullwidth punctuation marks - cannot be adjusted if the font is changed there, see Table \ref{tab:adj}. -\end{itemize} -\begin{figure}[!ht]\centering -\demotext{3}\demotext{2.5} -\caption{Comparison of the indentation produced without this package (left) and - with this package (right)} -\label{fig:ind} -\end{figure} -\vskip-20pt\relax -\begin{table}[!ht]\centering -\caption{Comparison of the adjustment of the spacing between two consecutive - fullwidth punctuation marks} -\label{tab:adj} -\begin{tabular}{ccll} -\toprule -Font change & This package & Input & Output \\ -\midrule -\no & either \no\ or \yes & \demoinput{}{} & \demooutput{1.5}{} \\ -\yes & \no & \demoinput{\texttt{\char"5C textgt% - \char"7B}}{\texttt{\char"7D}} - & \demooutput{2}{\sans} \\ -\yes & \yes & \demoinput{\texttt{\char"5C textgt% - \char"7B}}{\texttt{\char"7D}} - & \demooutput{1.5}{\sans} \\ -\bottomrule -\end{tabular} -\end{table} -It seems that macro is the easiest solution to these problems. However, the -second bug can only be fixed when using \e-(u)\pTeX\ or \ApTeX\ (under most, but -not all circumstances), because the primitive \verb|\lastnodechar| which is -introduced by \epTeX\ is required. Anyhow, using this package with \pTeX\ or any -one of its derivatives does not hurt. Please also keep in mind that owing to -technical limitations, this package is not a panacea. - -There is also another improvement: \verb|\leavevmode| is redefined as -\verb|\quitvmode| if the latter is available as a primitive (among all *\pTeX\ -engines to date, only \ApTeX\ has \verb|\quitvmode|). So after loading this -package, you can always use \verb|\leavevmode| and need not worry about -\verb|\quitvmode|. If you are wondering about what the difference between them -is, please see \textit{The pdf\TeX\ user manual}. - -\section{Basic usage} - -This package has no options. It is recommended that this package should be -loaded before any other packages. If you are using \LaTeX, load this package at -the beginning of your preamble: -\begin{verbatim} - \documentclass... - \usepackage{fixjfm} -\end{verbatim} -or even before \verb|\documentclass| (use \verb|\RequirePackage| instead): -\begin{verbatim} - \RequirePackage{fixjfm} - \documentclass... -\end{verbatim} -If you are using plain \TeX, put the following line near the beginning of your -\verb|.tex| file: -\begin{verbatim} - \input fixjfm.sty -\end{verbatim} - -After loading this package, the first bug mentioned above can be automatically -fixed under most (but not all) circumstances. If you find that it cannot be -fixed somewhere, you can add \verb|\<| manually before the opening fullwidth -punctuation mark which begins the paragraph. - -In the case of the second bug mentioned above, the situation is different. If -you are using \LaTeX, \verb|\textmc| and \verb|\textgt| are redefined by default -so that the bug can be automatically fixed (again, under most, but not all -circumstances). However, \verb|\mcfamily| and \verb|\gtfamily| remain unchanged. -The difference here is similar to that between, say, \verb|\textit| and -\verb|\itshape|: \verb|\textit| automatically takes care of any necessary italic -correction on either side of the argument, while \verb|\itshape| does nothing -about that. Just like \verb|\itshape| and \verb|\/|, you should add -\begin{verbatim} - \fixjfmspacing -\end{verbatim} -by yourself after the font change that appears between two consecutive fullwidth -punctuation marks. For example: -\begin{trivlist}\item\relax{\ttfamily\hskip2em}\TwoFwBoxes -\hbox to 1\wd\fwbox{\texttt{,}\hss}\verb|{\gtfamily\fixjfmspacing|% -\hbox to 1\wd\fwbox{\hss{\eclmvtt``}}\TwoFwBoxes -\hbox to 1\wd\fwbox{{\eclmvtt''}\hss}\verb|}\fixjfmspacing|% -\hbox to 1\wd\fwbox{\hss{\eclmvtt``}}\TwoFwBoxes -\hbox to 1\wd\fwbox{{\eclmvtt''}\hss}% -\end{trivlist} -If you are using plain \TeX, you should always add \verb|\fixjfmspacing| by -yourself, because plain (*p)\TeX\ does not have \verb|\textmc|, \verb|\textgt|, -or the like. - -If you are using \LaTeX\ and prefer the standard version\footnote{Since v0.3, -the ``standard version'' is similar to \pkg{jsclasses} and \pkg{bxjscls} rather -than (u)\pLaTeX.} of \verb|\textmc| and \verb|\textgt|, you can declare -\begin{verbatim} - \UseStandardCJKTextFontCommands -\end{verbatim} -In contrast, -\begin{verbatim} - \UseFixJFMCJKTextFontCommands -\end{verbatim} -redefines \verb|\textmc| and \verb|\textgt| and is declared by default. These -two commands are important. Consider the following example: -\begin{trivlist} -\item\relax{\ttfamily\hskip2em}\verb|\textgt{\Large |\TwoFwBoxes\verb|}| -\end{trivlist} -It causes a fatal error when the \pkg{fixjfm} version of \verb|\textgt| is used. -The solution is to change \verb|\textgt| back to the standard version, either -globally or locally: -\begin{trivlist}\itemsep=0pt\relax\parsep=0pt\relax -\item\relax{\ttfamily\hskip2em}% -\verb|\UseFixJFMCJKTextFontCommands \textgt{|\TwoFwBoxes\verb|}| -\item\relax{\ttfamily\hskip2em}% -\verb|\UseStandardCJKTextFontCommands \textgt{\Large |\TwoFwBoxes\verb|}| -\item\relax{\ttfamily\hskip2em}% -\verb|\UseFixJFMCJKTextFontCommands \textgt{|\TwoFwBoxes\verb|}| -\item\relax{\ttfamily\hskip1.5em}% -\verb|{\UseStandardCJKTextFontCommands \textgt{\Large |\TwoFwBoxes\verb|}}| -\end{trivlist} - -\section{Advanced usage} - -The spacing between two consecutive fullwidth punctuation marks is produced by -a glue item specified in the corresponding JFM file. However, if the font is -changed there, the JFM format cannot work correctly, so this package puts -another glue item there to adjust the spacing. The natural width of the new glue -item is calculated according to the corresponding JFM file, so you need not -worry about it. However, the stretch and shrink components cannot be extracted -from JFM, so the following two commands are provided: -\begin{verbatim} - \SetFixJFMSpacingStretch - \SetFixJFMSpacingShrink -\end{verbatim} -They expect an argument specifying how much space to stretch and shrink -respectively. This package sets both of them to \verb|0.05zw| by default. - -Macro writers may want to (re)define commands like the \pkg{fixjfm} version of -\verb|\textmc| and \verb|\textgt| for CJK text fonts, thus the following command -is provided: -\begin{verbatim} - \DeclareFixJFMCJKTextFontCommand -\end{verbatim} -It is similar to \LaTeX's \verb|\DeclareTextFontCommand|. For example, -\verb|\textmc| is redefined by this package as follows: -\begin{verbatim} - \DeclareFixJFMCJKTextFontCommand\textmc{\mcfamily} -\end{verbatim} -and \verb|\textgt| is similar. In contrast, -\begin{verbatim} - \DeclareStandardCJKTextFontCommand -\end{verbatim} -(re)defines a CJK text font command like the standard version of \verb|\textmc| -and \verb|\textgt|. But there is a more convenient way: Suppose that you have a -new CJK text font command \verb|\xyfamily|, then -\begin{verbatim} - \AppendToUseXCJKTextFontCommands{\textxy}{\xyfamily} -\end{verbatim} -will do all you need and makes \verb|\Use...CJKTextFontCommands| also apply to -\verb|\textxy|. This command and \verb|\Use...CJKTextFontCommands| can be given -in any order, so you do not need to redeclare -\verb|\UseFixJFMCJKTextFontCommands| (which is the default behaviour) if that is -what you want. - -Finally, there are several macros that may be useful for \TeX nicians: -\begin{verbatim} - \FixJFMSpacing - \fixjfmparindent - \FixJFMParindent - \EveryparPreHook - \EveryparPostHook - \ifUseFixJFMCJKTextFontCommands - \ifUseStandardCJKTextFontCommands -\end{verbatim} -They are worthless for ordinary use. If you are interested in them, please have -a look at the source code. - -\section{Compatibility} - -The \LaTeX-only package \pkg{bxjaprnind} also focuses on the first bug mentioned -above. It provides some additional functionalities and also supports some other -\TeX\ engines. This package can be used together with \pkg{bxjaprnind}, but -please note that if you prefer \pkg{bxjaprnind}, you have to load it before this -package, and vice versa, in case both of them are loaded. - -\section{Acknowledgements} - -The source code of this package is mostly taken from\footnote{This package also -improves the code slightly.} (in alphabetical order): -\epTeX\ Wiki (Hironori Kitagawa): -\begin{verbatim} - https://ja.osdn.net/projects/eptex/wiki/lastnodechar -\end{verbatim} -\pkg{everyhook} (Stephen Checkoway): -\begin{verbatim} - https://ctan.org/pkg/everyhook -\end{verbatim} -\pkg{jsclasses} (Haruhiko Okumura et al.): -\begin{verbatim} - https://ctan.org/pkg/jsclasses -\end{verbatim} -and \pkg{platex} (Kazuki Maeda \& Japanese \TeX\ Development Community): -\begin{verbatim} - https://ctan.org/pkg/platex -\end{verbatim} -Many thanks to the authors of these packages. I would also like to thank -Hironobu Yamashita, who helped me a lot. - -\section{History} - -\begin{history}{2017-09-02 v0.2} -\item First public version. -\end{history} - -\begin{history}{2017-09-04 v0.3} -\item Fixes. -\item Make \verb|\UseFixJFMCJKTextFontCommands| and - \verb|\UseStandardCJKTextFontCommands| also available after - \verb|\begin{document}|. -\item Add \verb|\DeclareStandardCJKTextFontCommand| and use it for redefining - the standard version of \verb|\textmc| and \verb|\textgt|. -\end{history} -Thanks to Hironobu Yamashita for suggesting all these changes: -\begin{verbatim} - https://github.com/Man-Ting-Fang/fixjfm/pull/1 -\end{verbatim} - -\begin{history}{2017-09-04 v0.4} -\item Bug fix, thanks to Hironobu Yamashita: -\end{history} -\begin{verbatim} - https://github.com/Man-Ting-Fang/fixjfm/pull/2 -\end{verbatim} - -\begin{history}{2017-09-12 v0.5} -\item Bug fix, thanks to Hironobu Yamashita: -\end{history} -\begin{verbatim} - https://github.com/Man-Ting-Fang/fixjfm/issues/3 -\end{verbatim} - -\begin{history}{2017-09-21 v0.6} -\item Bug fix and improvement, thanks to Hironobu Yamashita: -\end{history} -\begin{verbatim} - https://github.com/Man-Ting-Fang/fixjfm/pull/4 -\end{verbatim} - -\begin{history}{2017-12-27 v0.7} -\item Add \verb|\ifUseFixJFMCJKTextFontCommands| and - \verb|\ifUseStandardCJKTextFontCommands|. -\end{history} - -\begin{history}{2018-03-24 v0.8} -\item Add \verb|\AppendToUseXCJKTextFontCommands|. -\end{history} - -\end{document} diff --git a/macros/generic/fixjfm/fixjfm.sty b/macros/generic/fixjfm/fixjfm.sty deleted file mode 100644 index 11887daafc..0000000000 --- a/macros/generic/fixjfm/fixjfm.sty +++ /dev/null @@ -1,278 +0,0 @@ - - -% fixjfm.sty -% Copyright 2017--2018 Yue ZHANG -% License: Knuth License (https://ctan.org/license/knuth) - -\csname ENDINPUTFIXJFMDOTSTY\endcsname - -\let\ENDINPUTFIXJFMDOTSTY=\endinput - -\begingroup\expandafter\expandafter\expandafter\endgroup - \expandafter\ifx\csname ProvidesPackage\endcsname\relax - \else - \ProvidesPackage{fixjfm}[2018/03/24 v0.8 Fix JFM (for *pTeX)]% - \fi - -\edef\FIXJFMDOTSTYRESTORECATCODE{\catcode`\noexpand\@=\the\catcode`\@\relax} - -\catcode`\@=11\relax - -% common utilities - -\def\fixjfm@ifprimitive#1{% - \begingroup - \edef\fixjfm@temp@meaning{\meaning#1}% - \edef\fixjfm@temp@string{\string#1}% - \expandafter - \endgroup - \ifx\fixjfm@temp@meaning\fixjfm@temp@string} - -\fixjfm@ifprimitive\tate -\else - \errmessage{pTeX / e-pTeX / upTeX / e-upTeX / ApTeX is required}% - \FIXJFMDOTSTYRESTORECATCODE - \expandafter\endinput -\fi - -\def\fixjfm@empty{} - -\begingroup - \let\CATCODE=\catcode - \let\RELAX=\relax - \let\GDEF=\gdef - \let\ENDGROUP=\endgroup - \CATCODE`\k=12\RELAX - \CATCODE`\a=12\RELAX - \CATCODE`\n=12\RELAX - \CATCODE`\j=12\RELAX - \CATCODE`\i=12\RELAX - \CATCODE`\c=12\RELAX - \CATCODE`\h=12\RELAX - \CATCODE`\r=12\RELAX - \CATCODE`\t=12\RELAX - \CATCODE`\e=12\RELAX - \GDEF\FIXJFM@KANJICHARACTER{kanji character }% -\ENDGROUP - -\def\fixjfm@get@inhibitxspcode#1{% - \expandafter\expandafter\expandafter\fixjfm@@get@inhibitxspcode - \expandafter\meaning\expandafter#1\FIXJFM@KANJICHARACTER\relax\fixjfm@nil} - -\expandafter\def\expandafter\fixjfm@@get@inhibitxspcode - \expandafter#\expandafter1\FIXJFM@KANJICHARACTER#2#3\fixjfm@nil{% - \count2=-1\relax - \def\fixjfm@temp@tokens{#1}% - \ifx\fixjfm@temp@tokens\fixjfm@empty - \count2=\inhibitxspcode`#2\relax - \fi} - -% \leavevmode - -\fixjfm@ifprimitive\quitvmode - \let\leavevmode=\quitvmode -\fi - -% \fixjfmspacing - -\def\fixjfmspacing{\FixJFMSpacing} - -\newif\iffixjfm@lastnodechar@available@ - -\fixjfm@ifprimitive\lastnodechar - \fixjfm@lastnodechar@available@true -\fi - -\iffixjfm@lastnodechar@available@ - \begingroup - \kansujichar1=\sjis"8ABF\relax % U+6F22: Kanji Han - \kansujichar2=\sjis"82A0\relax % U+3042: Hiragana A - \kansujichar3=\sjis"8142\relax % U+3002: CJK Full Stop - \xdef\fixjfm@kanji{\kansuji1}% - \xdef\fixjfm@kana{\kansuji2}% - \xdef\fixjfm@other{\kansuji3}% - \endgroup - \csname newif\expandafter\endcsname\csname iffixjfm@sp@status@\endcsname - \def\fixjfm@ifautospacing{% - \fixjfm@sp@status@false - \begingroup - \kanjiskip=10pt\relax - \setbox0=\hbox{\fixjfm@kanji\fixjfm@kanji\fixjfm@kanji}% - \dimen4=\wd0\relax - \noautospacing - \setbox0=\hbox{\fixjfm@kanji\fixjfm@kanji\fixjfm@kanji}% - \dimen2=\wd0\relax - \expandafter - \endgroup - \ifdim\dimen4>\dimen2\relax - \fixjfm@sp@status@true - \fi}% - \def\fixjfm@ifautoxspacing{% - \fixjfm@sp@status@false - \begingroup - \xspcode`\A=3\relax - \inhibitxspcode\sjis"8ABF=3\relax % U+6F22: Kanji Han - \xkanjiskip=20pt\relax - \setbox0=\hbox{\fixjfm@kanji A\fixjfm@kanji}% - \dimen4=\wd0\relax - \noautoxspacing - \setbox0=\hbox{\fixjfm@kanji A\fixjfm@kanji}% - \dimen2=\wd0\relax - \expandafter - \endgroup - \ifdim\dimen4>\dimen2\relax - \fixjfm@sp@status@true - \fi}% - \def\FixJFMSpacing{\futurelet\fixjfm@sp@temp@token\fixjfm@fixspacing}% - \def\fixjfm@fixspacing{% - \begingroup - \count0=\lastnodechar - \edef\fixjfm@sp@temp@tokens{\fixjfm@sp@temp@token}% - \expandafter\fixjfm@@fixspacing\fixjfm@sp@temp@tokens\relax\fixjfm@sp@nil - \ifnum\count0>-1\relax - \ifnum\count0<256\relax - \ifnum\xspcode\count0>1\relax - \ifnum\count2>1\relax - \fixjfm@ifautoxspacing - \iffixjfm@sp@status@ - \hskip\xkanjiskip - \fi - \fi - \fi - \else - \fixjfm@ifautospacing - \iffixjfm@sp@status@ - \hskip\kanjiskip - \fi - \fi - \setbox0=\hbox{% - \inhibitglue\char\count0\relax\fixjfm@sp@temp@token\inhibitglue}% - \setbox2=\hbox{% - \inhibitglue\char\count0 \fixjfm@sp@temp@token\inhibitglue}% - \dimen0=\wd2\relax - \advance\dimen0 by -\wd0\relax - \fixjfm@temp@hskip - \fi - \endgroup}% - \long\def\fixjfm@@fixspacing#1#2\fixjfm@sp@nil{% - \count2=1\relax - \ifcat#1\fixjfm@kanji - \else - \ifcat#1\fixjfm@kana - \else - \ifcat#1\fixjfm@other - \else - \count0=-1\relax - \count2=0\relax - \fi - \fi - \fi - \ifnum\count2>0\relax - \fixjfm@get@inhibitxspcode#1\relax - \fi}% - \def\SetFixJFMSpacingStretch#1{\def\fixjfm@temp@hskip@stretch{#1}}% - \def\SetFixJFMSpacingShrink#1{\def\fixjfm@temp@hskip@shrink{#1}}% - \def\fixjfm@temp@hskip{% - \hskip\dimen0 plus \fixjfm@temp@hskip@stretch - minus \fixjfm@temp@hskip@shrink\relax}% - \SetFixJFMSpacingStretch{0.05zw}% - \SetFixJFMSpacingShrink{0.05zw}% -\else - \let\FixJFMSpacing=\fixjfm@empty - \def\SetFixJFMSpacingStretch#1{}% - \def\SetFixJFMSpacingShrink#1{}% -\fi - -\newif\ifUseFixJFMCJKTextFontCommands -\newif\ifUseStandardCJKTextFontCommands - -\begingroup\expandafter\expandafter\expandafter\endgroup - \expandafter\ifx\csname DeclareTextFontCommand\endcsname\relax - \def\DeclareFixJFMCJKTextFontCommand#1#2{}% - \def\DeclareStandardCJKTextFontCommand#1#2{}% - \let\UseFixJFMCJKTextFontCommands=\fixjfm@empty - \let\UseStandardCJKTextFontCommands=\fixjfm@empty - \def\AppendToUseXCJKTextFontCommands#1#2{}% - \else - \def\DeclareFixJFMCJKTextFontCommand#1#2{% - \DeclareRobustCommand#1[1]{% - \relax\ifmmode\expandafter\nfss@text\fi - {#2\fixjfmspacing##1}\fixjfmspacing}}% - \def\DeclareStandardCJKTextFontCommand#1#2{% - \DeclareRobustCommand#1[1]{% - \relax\ifmmode\expandafter\nfss@text\fi{#2##1}}}% - \def\UseFixJFMCJKTextFontCommands{% - \UseFixJFMCJKTextFontCommandstrue - \UseStandardCJKTextFontCommandsfalse - \DeclareFixJFMCJKTextFontCommand\textmc{\mcfamily}% - \DeclareFixJFMCJKTextFontCommand\textgt{\gtfamily}}% - \def\UseStandardCJKTextFontCommands{% - \UseStandardCJKTextFontCommandstrue - \UseFixJFMCJKTextFontCommandsfalse - \DeclareStandardCJKTextFontCommand\textmc{\mcfamily}% - \DeclareStandardCJKTextFontCommand\textgt{\gtfamily}}% - \def\AppendToUseXCJKTextFontCommands#1#2{% - \g@addto@macro\UseFixJFMCJKTextFontCommands{% - \DeclareFixJFMCJKTextFontCommand#1{#2}}% - \g@addto@macro\UseStandardCJKTextFontCommands{% - \DeclareStandardCJKTextFontCommand#1{#2}}% - \ifUseFixJFMCJKTextFontCommands - \DeclareFixJFMCJKTextFontCommand#1{#2}% - \else - \DeclareStandardCJKTextFontCommand#1{#2}% - \fi}% - \UseFixJFMCJKTextFontCommands - \fi - -% \inhibitglue - -\fixjfm@ifprimitive\protected - \protected\def\<{\ifvmode\leavevmode\fi\inhibitglue}% -\else - \def\<{\inhibitglue}% -\fi - -% \fixjfmparindent - -\def\fixjfmparindent{\FixJFMParindent} - -\begingroup - \expandafter\ifx\csname useparheadparenindent\endcsname\relax % bxjaprnind.sty - \else - \global\let\FixJFMParindent=\fixjfm@empty - \global\let\EveryparPreHook=\fixjfm@empty - \global\let\EveryparPostHook=\fixjfm@empty - \aftergroup\FIXJFMDOTSTYRESTORECATCODE - \aftergroup\endinput - \fi -\endgroup - -\def\FixJFMParindent{\futurelet\fixjfm@pi@temp@token\fixjfm@fixparindent} - -\def\fixjfm@fixparindent{% - \begingroup - \fixjfm@get@inhibitxspcode\fixjfm@pi@temp@token - \ifnum\count2=2\relax\inhibitglue\fi - \endgroup} - -\begingroup\expandafter\expandafter\expandafter\endgroup - \expandafter\ifx\csname PushPostHook\endcsname\relax % everyhook.sty - \def\EveryparPreHook{}% - \def\EveryparPostHook{\fixjfmparindent}% - \let\fixjfm@previous@everypar=\everypar - \csname newtoks\expandafter\endcsname\csname everypar\endcsname - \let\fixjfm@private@everypar=\everypar - \fixjfm@private@everypar=\fixjfm@previous@everypar - \fixjfm@previous@everypar={% - \EveryparPreHook - \the\expandafter\fixjfm@private@everypar - \EveryparPostHook}% - \else - \PushPostHook{par}{\fixjfmparindent}% - \let\EveryparPreHook=\fixjfm@empty - \let\EveryparPostHook=\fixjfm@empty - \fi - -\FIXJFMDOTSTYRESTORECATCODE - -\endinput diff --git a/macros/jptex/generic/fixjfm/README b/macros/jptex/generic/fixjfm/README new file mode 100644 index 0000000000..3b68f21c0b --- /dev/null +++ b/macros/jptex/generic/fixjfm/README @@ -0,0 +1,16 @@ + + +The fixjfm package --- Fix JFM (for *pTeX) + +CTAN Homepage: https://ctan.org/pkg/fixjfm + +Repository: https://github.com/Man-Ting-Fang/fixjfm + +Version: 2018-03-24 v0.8 + +Copyright 2017--2018 Yue ZHANG + +License: Knuth License (https://ctan.org/license/knuth) + +This package fixes several bugs in the JFM format. Both LaTeX and plain TeX are +supported. diff --git a/macros/jptex/generic/fixjfm/fixjfm-doc.pdf b/macros/jptex/generic/fixjfm/fixjfm-doc.pdf new file mode 100644 index 0000000000..43147b99de Binary files /dev/null and b/macros/jptex/generic/fixjfm/fixjfm-doc.pdf differ diff --git a/macros/jptex/generic/fixjfm/fixjfm-doc.tex b/macros/jptex/generic/fixjfm/fixjfm-doc.tex new file mode 100644 index 0000000000..d52f836721 --- /dev/null +++ b/macros/jptex/generic/fixjfm/fixjfm-doc.tex @@ -0,0 +1,356 @@ + + +% fixjfm-doc.tex + +% !TeX encoding = UTF-8 +% !TeX program = pdfLaTeX + +\RequirePackage{fix-cm} + +\documentclass[a4paper]{article} + +\usepackage{amsfonts} +\usepackage[OT1]{fontenc} +\usepackage[utf8]{inputenc} +\usepackage[UKenglish]{babel} +\usepackage[babel]{microtype} +\usepackage{etoolbox} +\usepackage{booktabs} + +\AtBeginEnvironment{verbatim}{\microtypesetup{activate=false}} + +\abovetopsep=\medskipamount + +\newcommand\NormalSans{\normalfont\sffamily} +\newcommand\pkg[1]{{\protect\NormalSans#1}} + +\newcommand\pTeX{p\kern-0.15em\TeX} +\newcommand\e{\ensuremath{\varepsilon}} +\newcommand\epTeX{\e-\pTeX} +\newcommand\ApTeX{A\kern-0.1em\pTeX} +\newcommand\pLaTeX{p\LaTeX} + +\newcommand\FwBox{\ensuremath{\square}\hskip0em plus 0.05em\relax} + +\newbox\fwbox +\setbox\fwbox=\hbox{\FwBox} + +\newcommand\TwoFwBoxes{\FwBox\FwBox} +\newcommand\FourFwBoxes{\TwoFwBoxes\TwoFwBoxes} + +\newcommand\DemoText{% + \FourFwBoxes\FourFwBoxes\FourFwBoxes\FourFwBoxes + \FourFwBoxes\FourFwBoxes\ensuremath{\square}} + +\newcommand\demotext[1]{% + \begin{minipage}{20\wd\fwbox}\centering + \fbox{\begin{minipage}{16\wd\fwbox}% + \hskip2\wd\fwbox\relax\DemoText\par + \leavevmode\hbox to#1\wd\fwbox{\hss``}\DemoText''\par + \hskip2\wd\fwbox\relax\DemoText\par + \end{minipage}}% + \end{minipage}} + +\newcommand\yes{yes} +\newcommand\no{no} + +\newcommand\eclmvtt{test} + +\font\eclmvtt=ec-lmvtt10 at 10pt + +\newcommand\demoinput[2]{\TwoFwBoxes + \hbox to 1\wd\fwbox{\texttt{,}\hss}#1% + \hbox to 1\wd\fwbox{\hss{\eclmvtt``}}\TwoFwBoxes + \hbox to 1\wd\fwbox{{\eclmvtt''}\hss}#2} + +\newcommand\demooutput[2]{% + \TwoFwBoxes\hbox to#1\wd\fwbox{,\hss{#2``}}\TwoFwBoxes{#2''}} + +\newcommand\sans{test} + +\font\sans=SourceSansPro-Semibold-tlf-ot1 at 10pt + +\newenvironment{history}[1]% + {\noindent\textbf{#1}\nopagebreak\relax\begin{itemize}}% + {\end{itemize}} + +\begin{document} + +\title{The \pkg{fixjfm} package% + \thanks{CTAN Homepage: \texttt{https://ctan.org/pkg/fixjfm}} + \thanks{Repository: \texttt{https://github.com/Man-Ting-Fang/fixjfm}}} +\author{Yue \textsc{Zhang}} +\date{2018-03-24\quad v0.8} + +\maketitle + +\begin{abstract} +This package fixes several bugs in the JFM format. Both \LaTeX\ and plain \TeX\ +are supported. +\end{abstract} + +\section{Introduction} + +The JFM format is an extension of the TFM format and is used for typesetting CJK +characters with *\pTeX. It works perfectly under almost all circumstances, but +there are still at least two bugs: +\begin{itemize} +\item Bug 1: the indentation is incorrect if the first character of a paragraph + is an opening fullwidth punctuation mark, see Figure \ref{fig:ind}; +\item Bug 2: the spacing between two consecutive fullwidth punctuation marks + cannot be adjusted if the font is changed there, see Table \ref{tab:adj}. +\end{itemize} +\begin{figure}[!ht]\centering +\demotext{3}\demotext{2.5} +\caption{Comparison of the indentation produced without this package (left) and + with this package (right)} +\label{fig:ind} +\end{figure} +\vskip-20pt\relax +\begin{table}[!ht]\centering +\caption{Comparison of the adjustment of the spacing between two consecutive + fullwidth punctuation marks} +\label{tab:adj} +\begin{tabular}{ccll} +\toprule +Font change & This package & Input & Output \\ +\midrule +\no & either \no\ or \yes & \demoinput{}{} & \demooutput{1.5}{} \\ +\yes & \no & \demoinput{\texttt{\char"5C textgt% + \char"7B}}{\texttt{\char"7D}} + & \demooutput{2}{\sans} \\ +\yes & \yes & \demoinput{\texttt{\char"5C textgt% + \char"7B}}{\texttt{\char"7D}} + & \demooutput{1.5}{\sans} \\ +\bottomrule +\end{tabular} +\end{table} +It seems that macro is the easiest solution to these problems. However, the +second bug can only be fixed when using \e-(u)\pTeX\ or \ApTeX\ (under most, but +not all circumstances), because the primitive \verb|\lastnodechar| which is +introduced by \epTeX\ is required. Anyhow, using this package with \pTeX\ or any +one of its derivatives does not hurt. Please also keep in mind that owing to +technical limitations, this package is not a panacea. + +There is also another improvement: \verb|\leavevmode| is redefined as +\verb|\quitvmode| if the latter is available as a primitive (among all *\pTeX\ +engines to date, only \ApTeX\ has \verb|\quitvmode|). So after loading this +package, you can always use \verb|\leavevmode| and need not worry about +\verb|\quitvmode|. If you are wondering about what the difference between them +is, please see \textit{The pdf\TeX\ user manual}. + +\section{Basic usage} + +This package has no options. It is recommended that this package should be +loaded before any other packages. If you are using \LaTeX, load this package at +the beginning of your preamble: +\begin{verbatim} + \documentclass... + \usepackage{fixjfm} +\end{verbatim} +or even before \verb|\documentclass| (use \verb|\RequirePackage| instead): +\begin{verbatim} + \RequirePackage{fixjfm} + \documentclass... +\end{verbatim} +If you are using plain \TeX, put the following line near the beginning of your +\verb|.tex| file: +\begin{verbatim} + \input fixjfm.sty +\end{verbatim} + +After loading this package, the first bug mentioned above can be automatically +fixed under most (but not all) circumstances. If you find that it cannot be +fixed somewhere, you can add \verb|\<| manually before the opening fullwidth +punctuation mark which begins the paragraph. + +In the case of the second bug mentioned above, the situation is different. If +you are using \LaTeX, \verb|\textmc| and \verb|\textgt| are redefined by default +so that the bug can be automatically fixed (again, under most, but not all +circumstances). However, \verb|\mcfamily| and \verb|\gtfamily| remain unchanged. +The difference here is similar to that between, say, \verb|\textit| and +\verb|\itshape|: \verb|\textit| automatically takes care of any necessary italic +correction on either side of the argument, while \verb|\itshape| does nothing +about that. Just like \verb|\itshape| and \verb|\/|, you should add +\begin{verbatim} + \fixjfmspacing +\end{verbatim} +by yourself after the font change that appears between two consecutive fullwidth +punctuation marks. For example: +\begin{trivlist}\item\relax{\ttfamily\hskip2em}\TwoFwBoxes +\hbox to 1\wd\fwbox{\texttt{,}\hss}\verb|{\gtfamily\fixjfmspacing|% +\hbox to 1\wd\fwbox{\hss{\eclmvtt``}}\TwoFwBoxes +\hbox to 1\wd\fwbox{{\eclmvtt''}\hss}\verb|}\fixjfmspacing|% +\hbox to 1\wd\fwbox{\hss{\eclmvtt``}}\TwoFwBoxes +\hbox to 1\wd\fwbox{{\eclmvtt''}\hss}% +\end{trivlist} +If you are using plain \TeX, you should always add \verb|\fixjfmspacing| by +yourself, because plain (*p)\TeX\ does not have \verb|\textmc|, \verb|\textgt|, +or the like. + +If you are using \LaTeX\ and prefer the standard version\footnote{Since v0.3, +the ``standard version'' is similar to \pkg{jsclasses} and \pkg{bxjscls} rather +than (u)\pLaTeX.} of \verb|\textmc| and \verb|\textgt|, you can declare +\begin{verbatim} + \UseStandardCJKTextFontCommands +\end{verbatim} +In contrast, +\begin{verbatim} + \UseFixJFMCJKTextFontCommands +\end{verbatim} +redefines \verb|\textmc| and \verb|\textgt| and is declared by default. These +two commands are important. Consider the following example: +\begin{trivlist} +\item\relax{\ttfamily\hskip2em}\verb|\textgt{\Large |\TwoFwBoxes\verb|}| +\end{trivlist} +It causes a fatal error when the \pkg{fixjfm} version of \verb|\textgt| is used. +The solution is to change \verb|\textgt| back to the standard version, either +globally or locally: +\begin{trivlist}\itemsep=0pt\relax\parsep=0pt\relax +\item\relax{\ttfamily\hskip2em}% +\verb|\UseFixJFMCJKTextFontCommands \textgt{|\TwoFwBoxes\verb|}| +\item\relax{\ttfamily\hskip2em}% +\verb|\UseStandardCJKTextFontCommands \textgt{\Large |\TwoFwBoxes\verb|}| +\item\relax{\ttfamily\hskip2em}% +\verb|\UseFixJFMCJKTextFontCommands \textgt{|\TwoFwBoxes\verb|}| +\item\relax{\ttfamily\hskip1.5em}% +\verb|{\UseStandardCJKTextFontCommands \textgt{\Large |\TwoFwBoxes\verb|}}| +\end{trivlist} + +\section{Advanced usage} + +The spacing between two consecutive fullwidth punctuation marks is produced by +a glue item specified in the corresponding JFM file. However, if the font is +changed there, the JFM format cannot work correctly, so this package puts +another glue item there to adjust the spacing. The natural width of the new glue +item is calculated according to the corresponding JFM file, so you need not +worry about it. However, the stretch and shrink components cannot be extracted +from JFM, so the following two commands are provided: +\begin{verbatim} + \SetFixJFMSpacingStretch + \SetFixJFMSpacingShrink +\end{verbatim} +They expect an argument specifying how much space to stretch and shrink +respectively. This package sets both of them to \verb|0.05zw| by default. + +Macro writers may want to (re)define commands like the \pkg{fixjfm} version of +\verb|\textmc| and \verb|\textgt| for CJK text fonts, thus the following command +is provided: +\begin{verbatim} + \DeclareFixJFMCJKTextFontCommand +\end{verbatim} +It is similar to \LaTeX's \verb|\DeclareTextFontCommand|. For example, +\verb|\textmc| is redefined by this package as follows: +\begin{verbatim} + \DeclareFixJFMCJKTextFontCommand\textmc{\mcfamily} +\end{verbatim} +and \verb|\textgt| is similar. In contrast, +\begin{verbatim} + \DeclareStandardCJKTextFontCommand +\end{verbatim} +(re)defines a CJK text font command like the standard version of \verb|\textmc| +and \verb|\textgt|. But there is a more convenient way: Suppose that you have a +new CJK text font command \verb|\xyfamily|, then +\begin{verbatim} + \AppendToUseXCJKTextFontCommands{\textxy}{\xyfamily} +\end{verbatim} +will do all you need and makes \verb|\Use...CJKTextFontCommands| also apply to +\verb|\textxy|. This command and \verb|\Use...CJKTextFontCommands| can be given +in any order, so you do not need to redeclare +\verb|\UseFixJFMCJKTextFontCommands| (which is the default behaviour) if that is +what you want. + +Finally, there are several macros that may be useful for \TeX nicians: +\begin{verbatim} + \FixJFMSpacing + \fixjfmparindent + \FixJFMParindent + \EveryparPreHook + \EveryparPostHook + \ifUseFixJFMCJKTextFontCommands + \ifUseStandardCJKTextFontCommands +\end{verbatim} +They are worthless for ordinary use. If you are interested in them, please have +a look at the source code. + +\section{Compatibility} + +The \LaTeX-only package \pkg{bxjaprnind} also focuses on the first bug mentioned +above. It provides some additional functionalities and also supports some other +\TeX\ engines. This package can be used together with \pkg{bxjaprnind}, but +please note that if you prefer \pkg{bxjaprnind}, you have to load it before this +package, and vice versa, in case both of them are loaded. + +\section{Acknowledgements} + +The source code of this package is mostly taken from\footnote{This package also +improves the code slightly.} (in alphabetical order): +\epTeX\ Wiki (Hironori Kitagawa): +\begin{verbatim} + https://ja.osdn.net/projects/eptex/wiki/lastnodechar +\end{verbatim} +\pkg{everyhook} (Stephen Checkoway): +\begin{verbatim} + https://ctan.org/pkg/everyhook +\end{verbatim} +\pkg{jsclasses} (Haruhiko Okumura et al.): +\begin{verbatim} + https://ctan.org/pkg/jsclasses +\end{verbatim} +and \pkg{platex} (Kazuki Maeda \& Japanese \TeX\ Development Community): +\begin{verbatim} + https://ctan.org/pkg/platex +\end{verbatim} +Many thanks to the authors of these packages. I would also like to thank +Hironobu Yamashita, who helped me a lot. + +\section{History} + +\begin{history}{2017-09-02 v0.2} +\item First public version. +\end{history} + +\begin{history}{2017-09-04 v0.3} +\item Fixes. +\item Make \verb|\UseFixJFMCJKTextFontCommands| and + \verb|\UseStandardCJKTextFontCommands| also available after + \verb|\begin{document}|. +\item Add \verb|\DeclareStandardCJKTextFontCommand| and use it for redefining + the standard version of \verb|\textmc| and \verb|\textgt|. +\end{history} +Thanks to Hironobu Yamashita for suggesting all these changes: +\begin{verbatim} + https://github.com/Man-Ting-Fang/fixjfm/pull/1 +\end{verbatim} + +\begin{history}{2017-09-04 v0.4} +\item Bug fix, thanks to Hironobu Yamashita: +\end{history} +\begin{verbatim} + https://github.com/Man-Ting-Fang/fixjfm/pull/2 +\end{verbatim} + +\begin{history}{2017-09-12 v0.5} +\item Bug fix, thanks to Hironobu Yamashita: +\end{history} +\begin{verbatim} + https://github.com/Man-Ting-Fang/fixjfm/issues/3 +\end{verbatim} + +\begin{history}{2017-09-21 v0.6} +\item Bug fix and improvement, thanks to Hironobu Yamashita: +\end{history} +\begin{verbatim} + https://github.com/Man-Ting-Fang/fixjfm/pull/4 +\end{verbatim} + +\begin{history}{2017-12-27 v0.7} +\item Add \verb|\ifUseFixJFMCJKTextFontCommands| and + \verb|\ifUseStandardCJKTextFontCommands|. +\end{history} + +\begin{history}{2018-03-24 v0.8} +\item Add \verb|\AppendToUseXCJKTextFontCommands|. +\end{history} + +\end{document} diff --git a/macros/jptex/generic/fixjfm/fixjfm.sty b/macros/jptex/generic/fixjfm/fixjfm.sty new file mode 100644 index 0000000000..11887daafc --- /dev/null +++ b/macros/jptex/generic/fixjfm/fixjfm.sty @@ -0,0 +1,278 @@ + + +% fixjfm.sty +% Copyright 2017--2018 Yue ZHANG +% License: Knuth License (https://ctan.org/license/knuth) + +\csname ENDINPUTFIXJFMDOTSTY\endcsname + +\let\ENDINPUTFIXJFMDOTSTY=\endinput + +\begingroup\expandafter\expandafter\expandafter\endgroup + \expandafter\ifx\csname ProvidesPackage\endcsname\relax + \else + \ProvidesPackage{fixjfm}[2018/03/24 v0.8 Fix JFM (for *pTeX)]% + \fi + +\edef\FIXJFMDOTSTYRESTORECATCODE{\catcode`\noexpand\@=\the\catcode`\@\relax} + +\catcode`\@=11\relax + +% common utilities + +\def\fixjfm@ifprimitive#1{% + \begingroup + \edef\fixjfm@temp@meaning{\meaning#1}% + \edef\fixjfm@temp@string{\string#1}% + \expandafter + \endgroup + \ifx\fixjfm@temp@meaning\fixjfm@temp@string} + +\fixjfm@ifprimitive\tate +\else + \errmessage{pTeX / e-pTeX / upTeX / e-upTeX / ApTeX is required}% + \FIXJFMDOTSTYRESTORECATCODE + \expandafter\endinput +\fi + +\def\fixjfm@empty{} + +\begingroup + \let\CATCODE=\catcode + \let\RELAX=\relax + \let\GDEF=\gdef + \let\ENDGROUP=\endgroup + \CATCODE`\k=12\RELAX + \CATCODE`\a=12\RELAX + \CATCODE`\n=12\RELAX + \CATCODE`\j=12\RELAX + \CATCODE`\i=12\RELAX + \CATCODE`\c=12\RELAX + \CATCODE`\h=12\RELAX + \CATCODE`\r=12\RELAX + \CATCODE`\t=12\RELAX + \CATCODE`\e=12\RELAX + \GDEF\FIXJFM@KANJICHARACTER{kanji character }% +\ENDGROUP + +\def\fixjfm@get@inhibitxspcode#1{% + \expandafter\expandafter\expandafter\fixjfm@@get@inhibitxspcode + \expandafter\meaning\expandafter#1\FIXJFM@KANJICHARACTER\relax\fixjfm@nil} + +\expandafter\def\expandafter\fixjfm@@get@inhibitxspcode + \expandafter#\expandafter1\FIXJFM@KANJICHARACTER#2#3\fixjfm@nil{% + \count2=-1\relax + \def\fixjfm@temp@tokens{#1}% + \ifx\fixjfm@temp@tokens\fixjfm@empty + \count2=\inhibitxspcode`#2\relax + \fi} + +% \leavevmode + +\fixjfm@ifprimitive\quitvmode + \let\leavevmode=\quitvmode +\fi + +% \fixjfmspacing + +\def\fixjfmspacing{\FixJFMSpacing} + +\newif\iffixjfm@lastnodechar@available@ + +\fixjfm@ifprimitive\lastnodechar + \fixjfm@lastnodechar@available@true +\fi + +\iffixjfm@lastnodechar@available@ + \begingroup + \kansujichar1=\sjis"8ABF\relax % U+6F22: Kanji Han + \kansujichar2=\sjis"82A0\relax % U+3042: Hiragana A + \kansujichar3=\sjis"8142\relax % U+3002: CJK Full Stop + \xdef\fixjfm@kanji{\kansuji1}% + \xdef\fixjfm@kana{\kansuji2}% + \xdef\fixjfm@other{\kansuji3}% + \endgroup + \csname newif\expandafter\endcsname\csname iffixjfm@sp@status@\endcsname + \def\fixjfm@ifautospacing{% + \fixjfm@sp@status@false + \begingroup + \kanjiskip=10pt\relax + \setbox0=\hbox{\fixjfm@kanji\fixjfm@kanji\fixjfm@kanji}% + \dimen4=\wd0\relax + \noautospacing + \setbox0=\hbox{\fixjfm@kanji\fixjfm@kanji\fixjfm@kanji}% + \dimen2=\wd0\relax + \expandafter + \endgroup + \ifdim\dimen4>\dimen2\relax + \fixjfm@sp@status@true + \fi}% + \def\fixjfm@ifautoxspacing{% + \fixjfm@sp@status@false + \begingroup + \xspcode`\A=3\relax + \inhibitxspcode\sjis"8ABF=3\relax % U+6F22: Kanji Han + \xkanjiskip=20pt\relax + \setbox0=\hbox{\fixjfm@kanji A\fixjfm@kanji}% + \dimen4=\wd0\relax + \noautoxspacing + \setbox0=\hbox{\fixjfm@kanji A\fixjfm@kanji}% + \dimen2=\wd0\relax + \expandafter + \endgroup + \ifdim\dimen4>\dimen2\relax + \fixjfm@sp@status@true + \fi}% + \def\FixJFMSpacing{\futurelet\fixjfm@sp@temp@token\fixjfm@fixspacing}% + \def\fixjfm@fixspacing{% + \begingroup + \count0=\lastnodechar + \edef\fixjfm@sp@temp@tokens{\fixjfm@sp@temp@token}% + \expandafter\fixjfm@@fixspacing\fixjfm@sp@temp@tokens\relax\fixjfm@sp@nil + \ifnum\count0>-1\relax + \ifnum\count0<256\relax + \ifnum\xspcode\count0>1\relax + \ifnum\count2>1\relax + \fixjfm@ifautoxspacing + \iffixjfm@sp@status@ + \hskip\xkanjiskip + \fi + \fi + \fi + \else + \fixjfm@ifautospacing + \iffixjfm@sp@status@ + \hskip\kanjiskip + \fi + \fi + \setbox0=\hbox{% + \inhibitglue\char\count0\relax\fixjfm@sp@temp@token\inhibitglue}% + \setbox2=\hbox{% + \inhibitglue\char\count0 \fixjfm@sp@temp@token\inhibitglue}% + \dimen0=\wd2\relax + \advance\dimen0 by -\wd0\relax + \fixjfm@temp@hskip + \fi + \endgroup}% + \long\def\fixjfm@@fixspacing#1#2\fixjfm@sp@nil{% + \count2=1\relax + \ifcat#1\fixjfm@kanji + \else + \ifcat#1\fixjfm@kana + \else + \ifcat#1\fixjfm@other + \else + \count0=-1\relax + \count2=0\relax + \fi + \fi + \fi + \ifnum\count2>0\relax + \fixjfm@get@inhibitxspcode#1\relax + \fi}% + \def\SetFixJFMSpacingStretch#1{\def\fixjfm@temp@hskip@stretch{#1}}% + \def\SetFixJFMSpacingShrink#1{\def\fixjfm@temp@hskip@shrink{#1}}% + \def\fixjfm@temp@hskip{% + \hskip\dimen0 plus \fixjfm@temp@hskip@stretch + minus \fixjfm@temp@hskip@shrink\relax}% + \SetFixJFMSpacingStretch{0.05zw}% + \SetFixJFMSpacingShrink{0.05zw}% +\else + \let\FixJFMSpacing=\fixjfm@empty + \def\SetFixJFMSpacingStretch#1{}% + \def\SetFixJFMSpacingShrink#1{}% +\fi + +\newif\ifUseFixJFMCJKTextFontCommands +\newif\ifUseStandardCJKTextFontCommands + +\begingroup\expandafter\expandafter\expandafter\endgroup + \expandafter\ifx\csname DeclareTextFontCommand\endcsname\relax + \def\DeclareFixJFMCJKTextFontCommand#1#2{}% + \def\DeclareStandardCJKTextFontCommand#1#2{}% + \let\UseFixJFMCJKTextFontCommands=\fixjfm@empty + \let\UseStandardCJKTextFontCommands=\fixjfm@empty + \def\AppendToUseXCJKTextFontCommands#1#2{}% + \else + \def\DeclareFixJFMCJKTextFontCommand#1#2{% + \DeclareRobustCommand#1[1]{% + \relax\ifmmode\expandafter\nfss@text\fi + {#2\fixjfmspacing##1}\fixjfmspacing}}% + \def\DeclareStandardCJKTextFontCommand#1#2{% + \DeclareRobustCommand#1[1]{% + \relax\ifmmode\expandafter\nfss@text\fi{#2##1}}}% + \def\UseFixJFMCJKTextFontCommands{% + \UseFixJFMCJKTextFontCommandstrue + \UseStandardCJKTextFontCommandsfalse + \DeclareFixJFMCJKTextFontCommand\textmc{\mcfamily}% + \DeclareFixJFMCJKTextFontCommand\textgt{\gtfamily}}% + \def\UseStandardCJKTextFontCommands{% + \UseStandardCJKTextFontCommandstrue + \UseFixJFMCJKTextFontCommandsfalse + \DeclareStandardCJKTextFontCommand\textmc{\mcfamily}% + \DeclareStandardCJKTextFontCommand\textgt{\gtfamily}}% + \def\AppendToUseXCJKTextFontCommands#1#2{% + \g@addto@macro\UseFixJFMCJKTextFontCommands{% + \DeclareFixJFMCJKTextFontCommand#1{#2}}% + \g@addto@macro\UseStandardCJKTextFontCommands{% + \DeclareStandardCJKTextFontCommand#1{#2}}% + \ifUseFixJFMCJKTextFontCommands + \DeclareFixJFMCJKTextFontCommand#1{#2}% + \else + \DeclareStandardCJKTextFontCommand#1{#2}% + \fi}% + \UseFixJFMCJKTextFontCommands + \fi + +% \inhibitglue + +\fixjfm@ifprimitive\protected + \protected\def\<{\ifvmode\leavevmode\fi\inhibitglue}% +\else + \def\<{\inhibitglue}% +\fi + +% \fixjfmparindent + +\def\fixjfmparindent{\FixJFMParindent} + +\begingroup + \expandafter\ifx\csname useparheadparenindent\endcsname\relax % bxjaprnind.sty + \else + \global\let\FixJFMParindent=\fixjfm@empty + \global\let\EveryparPreHook=\fixjfm@empty + \global\let\EveryparPostHook=\fixjfm@empty + \aftergroup\FIXJFMDOTSTYRESTORECATCODE + \aftergroup\endinput + \fi +\endgroup + +\def\FixJFMParindent{\futurelet\fixjfm@pi@temp@token\fixjfm@fixparindent} + +\def\fixjfm@fixparindent{% + \begingroup + \fixjfm@get@inhibitxspcode\fixjfm@pi@temp@token + \ifnum\count2=2\relax\inhibitglue\fi + \endgroup} + +\begingroup\expandafter\expandafter\expandafter\endgroup + \expandafter\ifx\csname PushPostHook\endcsname\relax % everyhook.sty + \def\EveryparPreHook{}% + \def\EveryparPostHook{\fixjfmparindent}% + \let\fixjfm@previous@everypar=\everypar + \csname newtoks\expandafter\endcsname\csname everypar\endcsname + \let\fixjfm@private@everypar=\everypar + \fixjfm@private@everypar=\fixjfm@previous@everypar + \fixjfm@previous@everypar={% + \EveryparPreHook + \the\expandafter\fixjfm@private@everypar + \EveryparPostHook}% + \else + \PushPostHook{par}{\fixjfmparindent}% + \let\EveryparPreHook=\fixjfm@empty + \let\EveryparPostHook=\fixjfm@empty + \fi + +\FIXJFMDOTSTYRESTORECATCODE + +\endinput diff --git a/macros/jptex/latex/gentombow/LICENSE b/macros/jptex/latex/gentombow/LICENSE new file mode 100644 index 0000000000..9661ce7b8d --- /dev/null +++ b/macros/jptex/latex/gentombow/LICENSE @@ -0,0 +1,27 @@ +Copyright (c) 2016-2020 Hironobu Yamashita +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +* Neither the name of the copyright holder nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/macros/jptex/latex/gentombow/README.md b/macros/jptex/latex/gentombow/README.md new file mode 100644 index 0000000000..94cbdbdac0 --- /dev/null +++ b/macros/jptex/latex/gentombow/README.md @@ -0,0 +1,71 @@ +# gentombow + +This bundle provides a LaTeX package for generating Japanese-style +crop marks (called 'tombow' in Japanese) for practical use in +self-publishing. +The core feature of "gentombow.sty" is based on pLaTeX kernel. + +## Supported engines + +All packages except bounddvi.sty works with the followings: +- LaTeX + dvips/dvipdfmx +- pLaTeX/upLaTeX + dvips/dvipdfmx +- pdfLaTeX +- LuaLaTeX +- XeLaTeX + +## Bundle contents + +- gentombow.sty: + Generate crop marks (called 'tombow' in Japanese) for + practical use in self-publishing. + It provides the core 'tombow' feature if not available. +- pxgentombow.sty: + (Superseded by gentombow.sty; for compatibility only.) +- bounddvi.sty: + Set papersize special to DVI file. + Can be used on LaTeX/pLaTeX/upLaTeX (with DVI output mode) + with dvips or dvipdfmx drivers. + Old version (v6.0) was written by Koichi INOU in 2004 + (https://www.ma.ns.tcu.ac.jp/Pages/TeX/bounddvi.sty.html), + and incorporated into this bundle by his courtesy. + +## Miscellaneous patches + +Some packages are unaware of crop marks defined in "gentombow"; +to cope with those packages, patches are provided here. +- pxtextpos.sty: + Patch for textpos.sty (by Norman Gray). +- pxesopic.sty: + Patch for eso-pic.sty (by Rolf Niepraschk). +- pxpdfpages.sty: + Patch for pdfpages.sty (by Andreas Matthias). + +These patches can also be used independent of "gentombow", +to avoid problems with crop marks on pLaTeX and upLaTeX. + +## Character encoding + +All the package files (.sty) contain ASCII characters only. +All the document files (.tex) are encoded in UTF-8. + +## Installation + +- *.sty -> $TEXMF/tex/latex/gentombow +- *.tex, *.pdf -> $TEXMF/doc/latex/gentombow + +## Repository + +The bundle is maintained on GitHub: + https://github.com/aminophen/gentombow + +## License + +The bundle may be distributed and/or modified under the terms of +the 3-clause BSD license (see [LICENSE](./LICENSE)). + +## Release Date + +2020-10-14 + +Hironobu Yamashita diff --git a/macros/jptex/latex/gentombow/bounddvi-en.pdf b/macros/jptex/latex/gentombow/bounddvi-en.pdf new file mode 100644 index 0000000000..2cf419316e Binary files /dev/null and b/macros/jptex/latex/gentombow/bounddvi-en.pdf differ diff --git a/macros/jptex/latex/gentombow/bounddvi-en.tex b/macros/jptex/latex/gentombow/bounddvi-en.tex new file mode 100644 index 0000000000..82046f888a --- /dev/null +++ b/macros/jptex/latex/gentombow/bounddvi-en.tex @@ -0,0 +1,136 @@ +%# -*- ascii characters only -*- + +% Package v1.0--v6.0: Koichi INOUE +% Package v7.0-- : Hironobu Yamashita +% The package documentation (this file) was +% written by Hironobu Yamashita. + +\documentclass[a4paper]{article} +\usepackage{doc} +\usepackage{bounddvi} +\GetFileInfo{bounddvi.sty} +\title{Package \textsf{bounddvi} \fileversion} +\author{Koichi Inoue \& Hironobu Yamashita} +\date{\filedate} +\begin{document} + +\maketitle + +Package \textsf{bounddvi} sets papersize special into DVI file. +This package can be used in both tate (vertical) and yoko (horizontal) +writing directions of Japanese p\LaTeX/up\LaTeX, and both +\texttt{dvipdfmx} and \texttt{dvips} drivers are supported. +The \texttt{tombow} option defined in Japanese p\LaTeX\ kernel is +also supported. Of course, this package can be used also with the +original \LaTeX\ in DVI output mode. + +This package (since v7.0) is part of \textsf{gentombow} bundle: +\begin{verbatim} + https://github.com/aminophen/gentombow +\end{verbatim} +Originally it was part of \textsf{platex-tools} bundle, +but it has been moved since March 2018. + +\section*{Usage} + +Load this package in preamble. +\begin{verbatim} + \documentclass[a5paper]{article} + \usepackage{bounddvi} + ... +\end{verbatim} +Process the \texttt{.tex} file using \texttt{latex} + +\texttt{dvips} chain or \texttt{latex} + \texttt{dvipdfmx} chain. + +\section*{Known limitations} + +\begin{enumerate} +\item The compatibility with \textsf{geometry} package may not be +perfect, as both \textsf{geometry} and \textsf{bounddvi} embeds +papersize special into a DVI file. The loading order of these +two packages may affect the actual size of output. +\item This package supports ``\textsf{jsclasses}-like employment'' +of \verb+\mag+, because it's more widely used in Japan. This may +be incompatible with some classes or packages which employ +\verb+\mag+ in other ways. +\end{enumerate} +The details are described in the sections below. + +\subsection*{The behavior of multiple papersize specials} + +Sometimes multiple papersize specials may be embedded into a DVI +file. Among these specials, the specification which appears +\emph{at last} in DVI takes effect when \texttt{dvipdfmx} or +\texttt{dvips} (\TeX\ Live 2017 or later) is used\footnote{% +When \texttt{dvips} in \TeX\ Live 2016 or earlier is used, +the specification which appears \emph{first} in DVI took effect, +but the default behavior was changed in \TeX\ Live r42420 to +be compatible with \texttt{dvipdfmx}. The new option \texttt{-L0} +can be used to recover the old behavior.}. For example, when the +following source is processed with \texttt{dvipdfmx}, +\begin{verbatim} + % latex + dvipdfmx + \documentclass{...} + \usepackage{bounddvi} + \usepackage[dvipdfm]{geometry} +\end{verbatim} +the specification by \textsf{geometry} wins. + +\section*{Note about \texttt{\char92mag} handling} + +Among the packages in CTAN, there are two types of implementation +in terms of \verb+\mag+ employment. It seems that there is no +(official or practical) ``standard'' in \verb+\mag+ treatment. + +When the output is going to the physical size of A4 +($210\,\mathrm{mm} \times 297\,\mathrm{mm}$) with the setting of +\verb+\mag=2000+, there are two ways: some classes/packages can set +\begin{quote} + \texttt{\char92mag=2000}\\ + \texttt{\char92paperwidth=210mm} ($= 420\,\mathrm{truemm}$)\\ + \texttt{\char92paperheight=297mm} ($= 594\,\mathrm{truemm}$) +\end{quote} +and others can set +\begin{quote} + \texttt{\char92mag=2000}\\ + \texttt{\char92paperwidth=105mm} ($= 210\,\mathrm{truemm}$)\\ + \texttt{\char92paperheight=148.5mm} ($= 297\,\mathrm{truemm}$) +\end{quote} +The first way is adopted by \textsf{geometry} package etc, and it's +(probably) based on the behavior of the \verb+papersize+ special of +\texttt{dvips}. It does not handle true units properly, and accepts +only non-true units and evaluates them as if they were true units. +The second way is adopted by \textsf{jsclasses} document class etc, +and is also suppoted by \verb+pdf:pagesize+ special of +\texttt{dvipdfm(x)}. This can be more consistent with \LaTeX, since +all other layout parameters (e.g. \verb+\textwidth+) are set +according to the unit truemm. + +The \textsf{bounddvi} supports the latter, so some classes/packages +which are based on the former may or may not work properly when +using \textsf{bounddvi} package. + +\section*{References} + +\begin{itemize} +\item Setting paper size using \texttt{dvips} \& \texttt{dvipdfm} + (description in Japanese)\\ + \texttt{https://www.ma.ns.tcu.ac.jp/Pages/TeX/bounddvi.sty.html} +\end{itemize} + +\section*{ChangeLog} + +\begin{itemize} + \item 2002/03/10 v1.0 (KI) First version + \item 2002/10/30 v2.0 (KI) Add \texttt{dvipdfm} \texttt{pdf:pagesize} special + \item 2003/03/22 v3.2 (KI) Compatibility with \textsf{hyperref} + \item 2004/05/08 v4.0 (KI) Support for $\mathtt{\char92mag} \ne 1000$ + \item 2004/12/08 v5.2 (KI) Compatibility with \textsf{geometry} + \item 2004/12/15 v6.0 (KI) Not to use \texttt{dvipdfm(x)} \texttt{pdf:pagesize special} + \item 2016/10/25 v7.1 (HY) Support for p\LaTeXe\ tombow option, + compatibility with \textsf{graphics}/\textsf{color} packages + \item 2016/12/28 v7.2 (HY) Documentation for the new \texttt{dvips} behavior + \item 2020/09/25 v8.0 (HY) Support for \LaTeXe/p\LaTeXe~2020-10-01 +\end{itemize} + +\end{document} diff --git a/macros/jptex/latex/gentombow/bounddvi.pdf b/macros/jptex/latex/gentombow/bounddvi.pdf new file mode 100644 index 0000000000..57fed9c6c7 Binary files /dev/null and b/macros/jptex/latex/gentombow/bounddvi.pdf differ diff --git a/macros/jptex/latex/gentombow/bounddvi.sty b/macros/jptex/latex/gentombow/bounddvi.sty new file mode 100644 index 0000000000..a70da52c6e --- /dev/null +++ b/macros/jptex/latex/gentombow/bounddvi.sty @@ -0,0 +1,112 @@ +% +% bounddvi.sty +% 2020/10/08 v8.2-v7.0 h.y.acetaminophen [at] gmail.com +% 2004/12/15 v6.0-v1.0 inoue [at] ma.ns.tcu.ac.jp +% +% This package, originally written by Koichi Inoue +% and modified by Hironobu Yamashita, is distributed +% as part of the gentombow bundle. +% https://github.com/aminophen/gentombow +% + +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{bounddvi}[2020/10/08 v8.2 bounddvi] + +% Note: graphics/color drivers +% - dvips.def 2016/07/10 v3.1a or later +% - dvipdfmx.def 2016/07/10 v4.12 or later +% emit papersize special _only_ when \Gin@setpagesizetrue +% and \mag = 1000. When graphicx(s) or color is used with +% setpagesize option (= default since 2016) and \mag equals +% to 1000, we can exploit its routine. +% (they are using \AtBeginDocument{\AtBeginDvi{...}}) +% However, these .def files do _not_ care about tombow; so, +% we set \stock{width,height} to invoke stock test in those +% files (probably meant for memoir.cls). + +% detection of \iftombow status is delayed until \AtBeginDocument, +% to support both (u)pLaTeX kernel and ``gentombow.sty'' +\def\bddv@maybe@ensure@stock{% + \ifx\tombowtrue\@undefined + \let\bddv@ensure@stock\relax % skip if-tokens + \fi + \bddv@ensure@stock} + +% when \iftombow == \iftrue, we also need \stock{width,height} +\def\bddv@ensure@stock{% + \iftombow + % if \stockwidth/\stockheight are not available, + % define them now + \ifx\stockwidth\@undefined \newdimen\stockwidth \fi + \ifx\stockheight\@undefined \newdimen\stockheight \fi + % if \stockwidth already has effective value, do nothing; + % otherwise assume pLaTeX-style tombow and set it to + % \paperwidth + 2in (similar for \stockheight) + \ifdim\stockwidth>\z@\else + \stockwidth\paperwidth \advance\stockwidth2in + \fi + \ifdim\stockheight>\z@\else + \stockheight\paperheight \advance\stockheight2in + \fi + \fi +} + +% prepare actual papersize special +\def\bddv@emit@papersize{% + \begingroup + % if \stockwidth/\stockheight are defined & have effective + % values, copy them to \paperwidth/\paperheight + % for current group + \ifx\stockwidth\@undefined\else \ifdim\stockwidth>\z@ + \paperwidth\stockwidth + \fi\fi + \ifx\stockheight\@undefined\else \ifdim\stockheight>\z@ + \paperheight\stockheight + \fi\fi + % adjust for \mag and emit papersize special + \divide\paperwidth\@m\multiply\paperwidth\mag + \divide\paperheight\@m\multiply\paperheight\mag + \special{papersize=\the\paperwidth,\the\paperheight}% + \endgroup +} + +%% Since LaTeX2e 2020-10-01, \@begindocumenthook is deprecated +%% and \UseHook{begindocument} etc. are used. +%% This code appends papersize special to the _end_ of the hook. +%% (Note: support for old dvips is removed.) +\providecommand\IfFormatAtLeastTF{\@ifl@t@r\fmtversion} +\IfFormatAtLeastTF{2020-10-01}{% + \AtBeginDocument{% + \bddv@maybe@ensure@stock + \AtBeginDvi{\bddv@emit@papersize}}% + \endinput +}{} + +%% The rest of this package is meant for +%% LaTeX2e 2020-02-02 PL5 or older. + +% following code is almost equivalent to +% \AtBeginDocument{\AtBeginDvi{...}} +% however, we put into the _beginning_ of \@begindocumenthook; +% this ensures proper papersize when old dvips +% (TeX Live 2016 or earlier) is used. +% also, note that old pLaTeX (before 2016/07/01) needs \yoko +% at the beginning of \AtBeginDvi. +\begingroup +\def\@prependto@begindocumenthook{% + \bddv@maybe@ensure@stock + \global\setbox\@begindvibox\vbox{% + \csname yoko\endcsname\unvbox\@begindvibox + \bddv@emit@papersize}} +\toks@\expandafter\expandafter\expandafter + {\expandafter\@prependto@begindocumenthook\@begindocumenthook} +\xdef\@begindocumenthook{\the\toks@} +% append papersize special again to the _end_ of the +% current \@begindocumenthook; this will be meaningful e.g. when +% geometry is loaded before bounddvi. +% (geometry adds \AtBeginDocument{\AtBeginDvi{...}} specification) +\expandafter\g@addto@macro\expandafter\@begindocumenthook + \expandafter{\@prependto@begindocumenthook} +\endgroup + +\endinput diff --git a/macros/jptex/latex/gentombow/bounddvi.tex b/macros/jptex/latex/gentombow/bounddvi.tex new file mode 100644 index 0000000000..198bbb7fb9 --- /dev/null +++ b/macros/jptex/latex/gentombow/bounddvi.tex @@ -0,0 +1,149 @@ +%# -*- coding: utf-8 -*- +\ifx\epTeXinputencoding\undefined\else % defined in e-pTeX (> TL2016) + \epTeXinputencoding utf8 % ensure utf-8 encoding for platex +\fi + +% パッケージ作者 (v1.0--v6.0):東京都市大学(旧称・武蔵工業大学)井上浩一 +% 修正版 (v7.0--) および本ドキュメント:山下弘展 (Hironobu Yamashita) + +\documentclass[a4paper]{jsarticle} +\usepackage{doc} +\usepackage{bounddvi} +\GetFileInfo{bounddvi.sty} +\title{Package \textsf{bounddvi} \fileversion} +\author{Koichi Inoue \& Hironobu Yamashita} +\date{\filedate} +\begin{document} + +\maketitle + +DVIファイルは用紙サイズ情報を含みませんが、PostScriptやPDFといった +用紙サイズを規定するフォーマットへ変換するプログラム(\texttt{dvips}や +\texttt{dvipdfmx})は、\verb+\special+命令によってDVIファイルに埋め込ま +れた用紙サイズ情報を解釈します。 +たとえば、幅100mm、高さ200mmの用紙に出力したい場合は +\begin{verbatim} + \special{papersize=100mm,200mm} +\end{verbatim} +のように指定してやることができます。 + +\textsf{bounddvi}パッケージは、クラスファイルなどが想定している用紙 +サイズ情報(\verb+\paperwidth+, \verb+\paperheight+)をDVIファイルに +\verb+\special+命令として埋め込むことで、\texttt{dvips}や +\texttt{dvipdfmx}の出力用紙サイズを指定する機能を提供します。 +\begin{verbatim} + \documentclass[a4j]{jarticle} + \usepackage{bounddvi} + \begin{document} + …本文… + \end{document} +\end{verbatim} +のように使います。p\LaTeX における横組と縦組の両方で使え、また +版面拡大(\verb+\mag+)が使われた場合にも対応しています(詳細は付録 +を参照してください)。また、v7.0以降、p\LaTeX カーネルのトンボ +オプションを使用した場合にも対応しており、p\LaTeX が仮定している +「トンボのノビ(2in)を含めたサイズ」に設定します。 + +本パッケージはv7.0以降、\textsf{gentombow}バンドルの一部として +配布されています: +\begin{verbatim} + https://github.com/aminophen/gentombow +\end{verbatim} +2017年までは\textsf{platex-tools}バンドルの一部でしたが、 +2018年以降は移転しました。 + +\section*{他のパッケージとの互換性} + +用紙サイズ設定機能だけを提供する\textsf{bounddvi}パッケージのほかにも、 +パッケージの機能の一部として用紙サイズ設定を行うものがいくつかあります。 +\begin{itemize} +\item 日本語環境でよく用いられる、p\LaTeX/up\LaTeX 用のクラスファイル + \textsf{jsclasses}(奥村さん作)の\texttt{papersize}オプション + との併用は問題ありません(ただし、このオプションを使用すれば用紙 + サイズ設定には十分ですから、本\textsf{bounddvi}パッケージを併用 + することにも特にメリットはありません)。 +\item 2016年以降の\textsf{graphics/graphicx}パッケージや + \textsf{color}パッケージには用紙サイズ設定機能 + (\texttt{setpagesize}オプション:デフォルトで有効)が + ありますが、併用しても問題は起きないでしょう。 +\item \textsf{hyperref}パッケージも上と同様で、併用しても + 問題は起きないでしょう。 +\item \textsf{geometry}パッケージと併用する場合は、 + 本\textsf{bounddvi}パッケージを\emph{後から}読み込むほうが + 安全でしょう。特に、\texttt{dvipdfmx}を使用して変換する場合に + トンボを付けたいなら、\textsf{bounddvi}を後から読み込むことで + うまくいく可能性があります(付録を参照)。 +\end{itemize} + +\section*{付録:複数の用紙サイズ指定が発行された場合の挙動} + +一つのDVIファイルに複数の用紙サイズ指定\verb+\special+命令が +埋め込まれる場合があります。このうち、\texttt{dvipdfmx}および +\TeX\ Live 2017以降の\texttt{dvips}では、DVIファイルの\emph{最後}に +指定されたものが有効になります\footnote{\TeX\ Live 2016以前の +\texttt{dvips}では、DVIファイルの\emph{最初}に指定されたものが有効 +でしたが、\TeX\ Live r42420で挙動が変更されました。\texttt{-L0}オプ +ションを指定すると従来の挙動に戻ります。}。たとえば\textsf{bounddvi}と +\textsf{geometry}を併用したソース +\begin{verbatim} + \documentclass{...} + \usepackage{bounddvi} + \usepackage[dvipdfm]{geometry} +\end{verbatim} +を\textsf{dvipdfmx}でPDFに変換すると、\textsf{geometry}パッケージの +指定が優先されます。このとき、用紙サイズの設定が正しいかどうかは +\textsf{geometry}パッケージに依存します。 + +\section*{付録:\texttt{\char92mag}の扱いについて} + +本\textsf{bounddvi}パッケージは、日本で広く使われている奥村さんの +\textsf{jsclasses}クラス流の\verb+\mag+の用法をサポートしています。 +しかし、\verb+\mag+の使い方はCTANにある多様なパッケージの中で統一 +されておらず、大きく分けて二通りの使い方があるようです。 + +たとえば、版面を2倍に拡大 (\verb+\mag=2000+) して物理的なA4サイズ +($210\,\mathrm{mm}\times297\,\mathrm{mm}$)の出力を得たい場合 +\begin{quote} + \texttt{\char92mag=2000}\\ + \texttt{\char92paperwidth=210mm} ($= 420\,\mathrm{truemm}$)\\ + \texttt{\char92paperheight=297mm} ($= 594\,\mathrm{truemm}$) +\end{quote} +と設定するものと +\begin{quote} + \texttt{\char92mag=2000}\\ + \texttt{\char92paperwidth=105mm} ($= 210\,\mathrm{truemm}$)\\ + \texttt{\char92paperheight=148.5mm} ($= 297\,\mathrm{truemm}$) +\end{quote} +と設定するものとが存在します。 +前者は\textsf{geometry}パッケージなどの方式で、おそらく\texttt{dvips}の +\verb+papersize+ specialの挙動(truedimenを正しく解釈せず、trueの付か +ない単位だけを受け付けてあたかもtrue付であるかのように評価)に則った +ものでしょう。後者は\textsf{jsclasses}クラスの方式で、これは +\texttt{dvipdfm(x)}の\verb+pdf:pagesize+ specialとも同じです。 +この方式のほうが、truedimenで設定された\LaTeX のほかのレイアウト変数 +(\verb+\textwidth+など)に対して一貫性があると思われます。 +本\textsf{bounddvi}パッケージがサポートしているのは後者の方式です。 + +\section*{参考} + +\begin{itemize} +\item dvipsやdvipdfmなどで用紙サイズを出力\\ + \texttt{https://www.ma.ns.tcu.ac.jp/Pages/TeX/bounddvi.sty.html} +\end{itemize} + +\section*{変更履歴} + +\begin{itemize} + \item 2002/03/10 v1.0 (KI) 最初の公開版 + \item 2002/10/30 v2.0 (KI) \texttt{dvipdfm}の\texttt{pdf:pagesize special}を使用 + \item 2003/03/22 v3.2 (KI) \textsf{hyperref}との互換性を改良 + \item 2004/05/08 v4.0 (KI) $\mathtt{\char92mag} \ne 1000$に対応 + \item 2004/12/08 v5.2 (KI) \texttt{dvips}で\textsf{geometry}との互換性を改良 + \item 2004/12/15 v6.0 (KI) \texttt{dvipdfm(x)}の\texttt{pdf:pagesize special}を不使用に + \item 2016/10/25 v7.1 (HY) p\LaTeXe{}のトンボサポート、 + 2016年の新しい\textsf{graphics}/\textsf{color}に対応 + \item 2016/12/28 v7.2 (HY) 新仕様の\texttt{dvips}をドキュメント化 + \item 2020/09/25 v8.0 (HY) \LaTeXe/p\LaTeXe~2020-10-01(予定)への対応 +\end{itemize} + +\end{document} diff --git a/macros/jptex/latex/gentombow/gentombow-ja.pdf b/macros/jptex/latex/gentombow/gentombow-ja.pdf new file mode 100644 index 0000000000..ee94b6c132 Binary files /dev/null and b/macros/jptex/latex/gentombow/gentombow-ja.pdf differ diff --git a/macros/jptex/latex/gentombow/gentombow-ja.tex b/macros/jptex/latex/gentombow/gentombow-ja.tex new file mode 100644 index 0000000000..411aad1db2 --- /dev/null +++ b/macros/jptex/latex/gentombow/gentombow-ja.tex @@ -0,0 +1,459 @@ +%# -*- coding: utf-8 -*- +\ifx\epTeXinputencoding\undefined\else % defined in e-pTeX (> TL2016) + \epTeXinputencoding utf8 % ensure utf-8 encoding for platex +\fi + +\RequirePackage{plautopatch}% pldocverb +\documentclass[a4paper,dvipdfmx]{jsarticle} +\usepackage{doc} +\makeatletter +\xspcode"5C=3 %% \ +\xspcode"22=3 %% " +%%% dangerous bend +\font\man=manfnt at 10pt +\def\dbend{\leavevmode\raise0pt\hbox{\man\char'177}} +\newenvironment{dangerous}{% + \ifnum\@listdepth>\z@ + \GenericError{}{Do not use `dangerous' environment inside any list}{}{} + \fi + \par\addvspace\medskipamount + \@tempdima=\dimexpr\textwidth-2zw\relax\small + \divide\@tempdima by\dimexpr1zw\relax\@tempcnta=\@tempdima + \leftskip=\dimexpr\textwidth-\@tempcnta zw\relax + \@totalleftmargin\dimexpr\leftskip+0zw + \linewidth=\dimexpr\@tempcnta zw-0zw + \parindent1zw\noindent\kern-\leftskip\hbox to\leftskip{\dbend\hss}% + \everypar{\everypar{}}\ignorespaces +}{\par\addvspace\medskipamount} +%%% logo +\def\pTeX{p\kern-.15em\TeX} +\def\epTeX{$\varepsilon$-\pTeX} +%%% misc +\newcommand{\Meta}[1]{$\langle$\mbox{}\textit{#1}\mbox{}$\rangle$} +\newcommand{\jMeta}[1]{$\langle$\mbox{}\textsf{#1}\mbox{}$\rangle$} +%%% +\makeatother +\usepackage{longtable} +\usepackage[pdfbox]{gentombow} +%\usepackage{bounddvi} +\GetFileInfo{gentombow.sty} +\title{Package \textsf{gentombow} \fileversion} +\author{Hironobu Yamashita} +\date{\filedate} +\begin{document} + +\maketitle + +\begin{center} +English version is available: see \textsf{gentombow.pdf}! +\end{center} + +日本の出版では、たとえば仕上がり寸法がA4サイズの場合、一回り大きな +B4サイズの用紙の中央にトンボ付きで印刷することがあるようです。 +このドキュメントは、実際にA4用紙をB4用紙の中央にトンボ付きで +配置している事例です。 + +\textsf{gentombow}パッケージは、クラスファイルなどが想定している用紙 +サイズ情報(\verb+\paperwidth+, \verb+\paperheight+)を検知し、 +それより一回り大きなサイズの用紙の中央にトンボ付きで出力するために +必要な機能を提供します。使い方の例は +\begin{verbatim} + \documentclass[a4j]{jarticle} + \usepackage{gentombow} + \usepackage{bounddvi} + \begin{document} + …本文… + \end{document} +\end{verbatim} +です。 + +任意の\LaTeX フォーマットで利用可能です。具体的には +\begin{itemize} +\item p\LaTeX, up\LaTeX (縦組にも対応) +\item Lua\LaTeX (Lua\TeX-ja使用の場合は縦組にも対応) +\item pdf\LaTeX +\item Xe\LaTeX +\end{itemize} +での動作を確認しています。また、\textsf{jsclasses}のような +版面拡大(\verb+\mag+)が使われた場合にも対応しています。 + +ただし、本パッケージは実際の出力サイズ指定を発行しませんので、 +以下のいずれかのパッケージと併用するとよいでしょう: +\begin{itemize} +\item \textsf{bounddvi}パッケージ(\textsf{gentombow}バンドル) +\item \textsf{bxpapersize}パッケージ(ZRさん作) +\item \textsf{graphicx}パッケージの2016年以降の版 + (\texttt{setpagesize}機能つきのもの) +\end{itemize} +\textsf{bounddvi}パッケージは本パッケージと同じく +\textsf{gentombow}バンドルに収録されていますが、 +名前のとおりDVIを経由する場合にしか利用できません。 +一方、\textsf{bxpapersize}パッケージは汎用で、Lua\TeX のような +PDF直接出力の場合にも利用できます。また、\textsf{graphicx}パッケージ +は画像挿入用のパッケージですが、2016年以降は自動的に出力サイズ指定も +行うようです($\verb+\mag+ \ne 1000$の場合には機能しません)。 + +本パッケージは、\textsf{gentombow}バンドルの一部として +配布されています: +\begin{verbatim} + https://github.com/aminophen/gentombow +\end{verbatim} +2017年までは\textsf{platex-tools}バンドルの一部でしたが、 +2018年以降は独立させてあります。また、v0.9eまでは +(u)p\LaTeX とLua\TeX-ja専用の\textsf{pxgentombow}パッケージを +用意していましたが、v0.9f以降は\textsf{gentombow}に一本化しました。 + +\section{簡単な使用法} + +はじめに、パッケージをオプション指定なしに使用する場合の機能を +説明します。 + +\subsection{用紙サイズの自動検知による出力サイズ決定} + +パッケージにはあらかじめA系列(\texttt{a0}--\texttt{a10})、 +B系列(\texttt{b0}--\texttt{b10})、C系列(\texttt{c0}--\texttt{c10})と +\texttt{letter}, \texttt{legal}, \texttt{executive}の用紙サイズが +定義されています。ここで、B系列はISOではなくJISです。 +また、変型版として\texttt{a4var}(\texttt{a4}の変型)と +\texttt{b5var}(\texttt{b5}の変型)も定義されています。 + +これらのうちいずれか(ただし\texttt{a0}, \texttt{b0}, \texttt{c0}を +除く)の用紙サイズを検知すると、 +出力サイズが次の規則で自動的に決定されます\footnote{なお、 +C系列と\texttt{letter}, \texttt{legal}, \texttt{executive}については +日本での慣習が不明の +ため、現時点ではA系列のサイズで出力することにしています。}。 +\begin{itemize} +\item 用紙サイズがA系列のとき: + 出力サイズは一回り大きなB系列 +\item 用紙サイズがB, C系列または + \texttt{letter}, \texttt{legal}, \texttt{executive}のとき: + 出力サイズは一回り大きなA系列 +\end{itemize} +この場合、パッケージを読み込んだだけでトンボが付きます。 +なお、用紙サイズが横長の場合は自動的に出力も横長になり、 +縦長の場合は自動的に縦長になります。 + +よく使われる用紙サイズの例を挙げます。 +\begin{longtable}[c]{cc} + \hline + 用紙サイズ & 出力サイズ \\ + \hline + a6 & b6 \\ + b6 & a5 \\ + a5 & b5 \\ + b5 & a4 \\ + a4 & b4 \\ + b4 & a3 \\ + a3 & b3 \\ + b3 & a2 \\ + \hline + c6 & a5 \\ + c5 & a4 \\ + c4 & a3 \\ + c3 & a2 \\ + \hline + letter & a3 \\ + legal & a3 \\ + executive & a4 \\ + \hline +\end{longtable} + +\subsection*{参考:用紙サイズの自動検知に失敗した場合の出力サイズ決定} + +仮に用紙サイズが定義済みのいずれとも異なる場合は、デフォルトでは +用紙の天地左右に1インチずつのノビを付けたサイズで出力します。 +たとえば、幅$100\,\mathrm{mm}$、高さ$200\,\mathrm{mm}$の用紙の場合、 +出力サイズは幅$100\,\mathrm{mm}+2\,\mathrm{in}$、 +高さ$200\,\mathrm{mm}+2\,\mathrm{in}$になります。 + +\subsection{トンボへのバナーの出力} + +デフォルトでは\makeatletter\texttt{\the\@bannertoken}\makeatother +のような形式で、トンボにジョブ情報(処理ファイル名と日付)を示すバナーが +出力されます。これは、\pLaTeX 向けの日本語クラスファイルの多くで +利用可能な\verb+tombow+オプションと同様です。 +ただし、クラスオプションに\verb+tombo+(ジョブ情報を出力しない)または +\verb+mentuke+(トンボの線を表示しない)が指定されている場合は、 +この設定が引き継がれます。 + +\section{パッケージオプション} + +パッケージオプションによって、出力サイズやバナーのジョブ情報の有無を +指定する方法を説明します。 + +\subsection{出力サイズの明示指定} + +自動決定されるサイズと異なるサイズに出力したい場合、 +パッケージオプションで明示的に指定することができます。たとえば +\begin{verbatim} + \documentclass[a4j]{jarticle} + \usepackage[tombow-a3]{gentombow} + \begin{document} + …本文… + \end{document} +\end{verbatim} +とすると、出力サイズは(自動決定のb4は無視されて)a3に変わります。 +指定可能なサイズは、定義済みの用紙サイズと同じものです。すなわち、 +A系列(\texttt{a0}--\texttt{a10})、 +B系列(\texttt{b0}--\texttt{b10})、 +C系列(\texttt{c0}--\texttt{c10})と +\texttt{a4var}, \texttt{b5var}, +\texttt{letter}, \texttt{legal}, \texttt{executive}です。 +なお、ここでも用紙サイズが横長の場合は自動的に出力も横長になり、 +縦長の場合は自動的に縦長になります。 + +オプションは\jMeta{トンボ形式}\texttt{-}\jMeta{出力サイズ}の書式 +\footnote{他のパッケージで見られるようなkey=value形式ではないので +注意してください。このような特殊なオプション書式を用いているのは、 +オプション名が他のクラスファイルやパッケージと衝突する可能性を +小さくするためです。}で与えます。 +トンボ形式は、p\LaTeX の標準クラスと同じで +\verb+tombow+, \verb+tombo+, \verb+mentuke+のいずれかを選びます +(\verb+tombow+はジョブ情報を表示し、\verb+tombo+は表示しません。 +また、\verb+mentuke+はトンボの線を表示しません)。 + +\subsection{トンボに表示するジョブ情報の有無} + +用紙サイズを明示的に指定する場合は、前節のようにトンボ形式と出力サイズを +同時にオプションで与えることができます。 +逆に出力サイズを自動決定に任せつつ、ジョブ情報の有無だけを指定したい +場合は、トンボへのバナー出力を抑制する\verb+notombowbanner+オプションを +使用してください。 + +\section{詳細なカスタマイズ} + +\textsf{gentombow}パッケージは、トンボの見た目やバナーの内容を +カスタマイズする機能も提供します。 + +\subsection{トンボに表示するバナーの内容} + +\verb+\settombowbanner+命令を用います。例えば\epTeX の +\verb+\pdfcreationdate+プリミティブを使って +\begin{verbatim} + \documentclass[a4j]{jarticle} + \usepackage{gentombow} + \settombowbanner{\jobname\space (\pdfcreationdate)} + \begin{document} + …本文… + \end{document} +\end{verbatim} +とすると、バナーの表示内容は +{\settombowbanner{\jobname\space (\pdfcreationdate)}% + \makeatletter\texttt{\the\@bannertoken}\makeatother}になります。 +命令の引数には任意のトークン列を与えることができます。 + +\subsection{バナーの文字のフォント} + +\verb+\settombowbannerfont+命令を用います。例えば +\begin{verbatim} + \settombowbannerfont{cmss10 at 9pt} +\end{verbatim} +のような指定が可能です。内部的には\verb+\font+プリミティブを利用しており、 +使用している\TeX エンジンがサポートする任意のフォントを指定可能です +\footnote{Lua\TeX やXe\TeX (\textsf{gentombow}パッケージの場合)では、 +OpenTypeフォントを直接利用することもできます。}。 + +\subsection{トンボの線の太さ} + +デフォルトではトンボの線の太さは0.1~ptですが、 +\verb+\settombowwidth{1pt}+とすると1~ptになります。 +命令の引数には任意の寸法を与えることができますが、 +実用上は数pt以内が良いでしょう。 + +\subsection{塗り足し(ドブ)の幅} + +デフォルトでは塗り足し(ドブ)の幅は3~mmですが、 +\verb+\settombowbleed{5mm}+とすると5~mmになります。 +命令の引数には任意の寸法を与えることができますが、実用上は数mmでしょう。 + +\subsection{トンボの色} + +トンボの色を指定します。実際に色をつける場合は +\textsf{xcolor}パッケージ(推奨)またはまたは\textsf{color}パッケージが必要です。 +\verb+\settombowcolor{\color[cmyk]{0,1,0,0}}+とするとマゼンタになります。 +CMYKの版ごとにトンボを作成する場合や、特色のトンボが必要な場合に便利です。 + +\section{PDFのデジタルトンボ(page box)の設定} + +この機能はドライバに依存するため、オプション機能としています。 +\textsf{gentombow}パッケージ読み込み時に\verb+pdfbox+オプションを +指定します。DVIを経由する場合は、さらにドライバオプションも必須です +\footnote{例外として、\textsf{gentombow}が読み込まれた時点で +\textsf{graphics}/\textsf{color}のいずれかが読み込まれていた +場合は、そのドライバ設定を引き継ぐことができます。}。 + +この機能を有効化すると、PDFに以下のバウンディングボックス情報 +(いわゆるデジタルトンボ)が書き込まれ、 +さらに用紙サイズ設定(\verb+/MediaBox+相当)も行われます。 +\begin{itemize} +\item \verb+/TrimBox+: 仕上がり紙面サイズ。 +\item \verb+/BleedBox+: 裁ち落とし領域を含んだサイズ。 +\item \verb+/CropBox+, \verb+/ArtBox+: 明示しない。 +\end{itemize} +注意:\textsf{pdfx}パッケージがPDF/Xモードで読み込まれていれば、 +このオプション機能は自動的に有効化されます。 +また、\verb+/CropBox+も明示します。 + +\section{その他の注意点} + +特定のクラスファイルやパッケージと一緒に使用する場合、 +いくつかの注意点があります。 + +\subsection{\textsf{jsclasses}で使用する場合の注意} + +奥村晴彦氏による\textsf{jsclasses}のクラス(2016年以降は日本語\TeX 開発 +コミュニティが管理)を使用していて、10pt以外のサイズオプションを +指定する場合は、以下のいずれかの方法をとってください。 +\begin{itemize} +\item クラスオプションに「トンボオプション」 + (\verb+tombow+または\verb+tombo+)を追加する。 +\item クラスオプションに「\verb+\mag+を使わないオプション」 + (\verb+nomag+または\verb+nomag*+)を追加する。 +\end{itemize} +これは、\textsf{jsclasses}クラス内で行われる\verb+\oddsidemargin+と +\verb+\topmargin+の計算の都合からくる制約です。たとえば +\begin{verbatim} + \documentclass[a4j,14pt]{jsarticle} + \usepackage{gentombow} +\end{verbatim} +という使い方は\emph{誤り}です(このままでは誤った余白設定が +適用されますので、安全のため\textsf{gentombow}パッケージ +がエラーを出すようにしてあります)。代わりに +\begin{verbatim} + \documentclass[a4j,14pt,tombow]{jsarticle} + \usepackage{gentombow} +\end{verbatim} +と書くようにしてください。 + +また、塗り足しの幅などの寸法指定は\verb+true+付きの単位を +使用してください。例えば +\verb+\settombowbleed{3truemm}+と指定すれば、 +\verb+\mag+による版面拡大(縮小)後の塗り足し幅を3~mmにできます。 + +同様に、ZR氏による\textsf{BXjscls}のクラスを使用していて、10pt以外の +サイズオプションを指定する場合は +\begin{itemize} +\item クラスオプションに「\verb+\mag+を使わないオプション」 + (\verb+nomag+または\verb+nomag*+)を追加する。 +\end{itemize} +という対処が必要です(\textsf{BXjscls}クラスでは「トンボオプション」が +機能しないダミーになっていることに注意)。 + +\subsection{レイアウト設定の注意} + +余白などのレイアウト設定でありがちですが、 +\verb+\hoffset+や\verb+\voffset+の値を$0$以外に設定するのは +避けてください。このような設定は\textsf{gentombow}パッケージの +トンボ出力機能と衝突するため、正しい出力が得られません。 +レイアウト設定のために変更すべきなのはこれらの寸法ではなく、 +\verb+\oddsidemargin+や\verb+\topmargin+であることがほとんどです。 +したがって、それらを適切な値に設定するか、レイアウトの設定すべてを +\textsf{geometry}パッケージに任せてしまうのも一つの方法です。 + +\begin{dangerous} +たとえば左右の余白を$25\,\mathrm{mm}$に、上下の余白を +$30\,\mathrm{mm}$にしたいとき\footnote{ここでは「本文の領域以外」を +余白と定義します。すなわち、ヘッダとフッタは余白の一部です。}、 +まず「\TeX の1インチ」を +削除してから\verb+\oddsidemargin+や\verb+\topmargin+を変更すると、 +「見かけ上は」期待どおりの結果になることがあります。 +\begin{verbatim} + \setlength{\hoffset}{-1in}% <== NG + \setlength{\voffset}{-1in}% <== NG + \setlength{\oddsidemargin}{25mm} + \setlength{\topmargin}{30mm} + \setlength{\textwidth}{\paperwidth} + \addtolength{\textwidth}{-2\oddsidemargin} + \setlength{\textheight}{\paperheight} + \addtolength{\textheight}{-2\topmargin} + \addtolength{\topmargin}{-\headheight} + \addtolength{\topmargin}{-\headsep} +\end{verbatim} +しかし、この設定では\textsf{gentombow}パッケージがトンボを +追加するとき、正しい余白を維持することができません。 + +一方、\verb+\hoffset+や\verb+\voffset+は$0$のままで、以下のように +\verb+\oddsidemargin+や\verb+\topmargin+を設定していれば問題ありません。 +\begin{verbatim} + \setlength{\oddsidemargin}{-0.4mm}% 25mm = 1inch - 0.4mm + \setlength{\topmargin}{4.6mm}% 30mm = 1inch + 4.6mm + \setlength{\textwidth}{\paperwidth} + \addtolength{\textwidth}{-50mm} + \addtolength{\topmargin}{-\headheight} + \addtolength{\topmargin}{-\headsep} + \setlength{\textheight}{\paperheight} + \addtolength{\textheight}{-60mm} +\end{verbatim} +これと同等のレイアウト設定は、以下のように\textsf{geometry}パッケージで +行うのが簡単です。 +\begin{verbatim} + \usepackage[lmargin=25mm,rmargin=25mm, + tmargin=30mm,bmargin=30mm]{geometry} +\end{verbatim} +\end{dangerous} + +なお、\textsf{geometry}パッケージは用紙サイズ +(\verb+\paperwidth+, \verb+\paperheight+)を変更する場合もあります。 +こうした場合に備え、\textsf{gentombow}パッケージは +\textsf{geometry}パッケージよりも後に読み込むようにしてください。 + +\section*{雑記} + +発端はこの話です。 +\begin{itemize} +\item 齋藤修三郎 (@psi\_tau) on Twitter, 2017年2月9日\\ + \texttt{https://twitter.com/psi\_tau/status/829873082911248386} +\end{itemize} + +また、現在検討中の事項を挙げておきます。 +\begin{itemize} +\item 現状では、用紙の横長・縦長がそのまま出力に反映されるので、 + これを逆転させるオプションの実装。また、任意の出力サイズを + 指定できるインタフェースの実現。 +\item 自動で決定できる出力サイズの拡張。現状では用紙サイズが + 定義値に完全一致する場合のみ自動決定されるが、中間のサイズでも + その一回り大きなサイズに出力したい場合があるのではないか。 +\item 出版用途ではカラー印刷の場合に、CMYKの版ごとにトンボを作る + 必要がある。\textsf{color}パッケージが利用可能な場合に、 + オプション次第でCKなど必要な色を選べるようにするとよい + のではないか\footnote{ただし作者の本業は出版ではないので、 + 商用を含む実用には程遠いかもしれない。}。 +\item $\verb+\mag+ \ne 1000$の場合について、\textsf{jsclasses}以外での + 動作は未確認。特に、\textsf{geometry}とは共存しない可能性が高い。 +\item \verb+\stockwidth+/\verb+\stockheight+が + \verb+\paperwidth+/\verb+\paperheight+より小さい場合の動作。 + 現在は警告を出すだけとしているが、さらに天地左右1inに + フォールバックしたほうが無難だろうか。 +\end{itemize} + +\section*{変更履歴} + +\begin{itemize} + \item 2017/02/10 v0.1 最初の公開版(\textsf{pxgentombow}として) + \item 2017/03/01 v0.4 トンボ形式の修正など + \item 2017/05/05 v0.5 \textsf{jsclasses}の$\verb+\mag+ \ne 1000$に対応、 + 最初のCTANリリース版 + \item 2017/05/06 v0.6 \textsf{jsclasses}との共存時のチェック強化、 + Lua\TeX-jaでの動作確認 + \item 2017/07/23 v0.7 ドキュメント更新 + \item 2017/12/17 v0.9 \textsf{gentombow}パッケージの新設 + \item 2018/03/16 v0.9e クラスオプションの\verb+tombow+等の引き継ぎ、 + トンボ書式のカスタマイズ機能の追加 + (\verb+\settombowbanner+, + \verb+\settombowbannerfont+, + \verb+\settombowwidth+の各命令) + \item 2018/05/17 v0.9g \textsf{gentombow}に\textsf{pxgentombow}を統合、 + \verb+pdfbox+オプションの追加、 + \verb+\settombowbleed+, \verb+\settombowcolor+の追加 + \item 2018/08/20 v0.9h 用紙サイズ検出に\texttt{hagaki}を追加、 + \textsf{pdfpages}対策の改良 + \item 2018/08/30 v0.9j \textsf{jsclasses}の$\verb+\mag+ \ne 1000$でも + \verb+pdfbox+オプションが正常動作するように改良、 + \verb+\settombowbleed+が\verb+/TrimBox+に反映されな + かったバグの修正 + \item 2019/07/21 v0.9k \textsf{pdfx}パッケージとの整合性をとる改良 + \item 2020/10/14 v0.9l \textsf{plautopatch}からトンボ対策パッチを取り込み +\end{itemize} + +\end{document} diff --git a/macros/jptex/latex/gentombow/gentombow.pdf b/macros/jptex/latex/gentombow/gentombow.pdf new file mode 100644 index 0000000000..178bab4c52 Binary files /dev/null and b/macros/jptex/latex/gentombow/gentombow.pdf differ diff --git a/macros/jptex/latex/gentombow/gentombow.sty b/macros/jptex/latex/gentombow/gentombow.sty new file mode 100644 index 0000000000..bcd8093f50 --- /dev/null +++ b/macros/jptex/latex/gentombow/gentombow.sty @@ -0,0 +1,747 @@ +% +% gentombow.sty +% written by Hironobu Yamashita (@aminophen) +% +% This package is part of the gentombow bundle. +% https://github.com/aminophen/gentombow +% + +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{gentombow} + [2020/10/14 v0.9l Generate crop mark 'tombow'] +\def\pxgtmb@pkgname{gentombow} +\@namedef{ver@pxgentombow.sty}{}% fake + +%% error status +\chardef\pxgtmb@errlevel=\z@ + +%% supported engines +% case 2: pdfLaTeX etc. +% case 1: pLaTeX2e <2018-04-01>+2 or older +% case 0: pLaTeX2e <2018-05-20> or newer +% --- checked plcore.ltx in platex 2020/09/28 v1.3g +\ifx\pfmtname\@undefined + \@ifpackageloaded{luatexja}{}{\chardef\pxgtmb@errlevel=\tw@} +\fi +\ifnum\pxgtmb@errlevel<\tw@ + \ifx\@tombowreset@@paper\@undefined + \chardef\pxgtmb@errlevel=\@ne + \fi +\fi +\ifcase\pxgtmb@errlevel + \let\pxgtmb@sel@twoone\@gobble + \let\pxgtmb@sel@two@one\@gobbletwo + \let\pxgtmb@sel@two\@gobble +\or + \let\pxgtmb@sel@twoone\@firstofone + \let\pxgtmb@sel@two@one\@secondoftwo + \let\pxgtmb@sel@two\@gobble +\or + \let\pxgtmb@sel@twoone\@firstofone + \let\pxgtmb@sel@two@one\@firstoftwo + \let\pxgtmb@sel@two\@firstofone +\else + \PackageError{\pxgtmb@pkgname}{% + This cannot happen! + Please report to package author}\@ehc + \expandafter\endinput +\fi +\@onlypreamble\pxgtmb@sel@twoone +\@onlypreamble\pxgtmb@sel@two@one +\@onlypreamble\pxgtmb@sel@two + +%%%%% EMULATION BEGIN + +% required for patching \@outputpage +\pxgtmb@sel@twoone{\RequirePackage{etoolbox}} + +% patch \@outputpage +\begingroup +\def\pxgtmb@emu@status{0} +\let\pxgtmb@emu@outputpage\@outputpage +\pxgtmb@sel@two@one +{%% case 2 begin + \patchcmd\pxgtmb@emu@outputpage % try first patch + {\reset@font\normalsize\normalsfcodes}% + {\@tombowreset@@paper + \reset@font\normalsize\normalsfcodes}% + {}{\def\pxgtmb@emu@status{1}} + \patchcmd\pxgtmb@emu@outputpage % try second patch + {\@begindvi \vskip \topmargin}% + {\@begindvi \@outputtombow \vskip \@@topmargin}% + {}{\def\pxgtmb@emu@status{1}} +}%% case 2 end +{%% case 1 begin + \patchcmd\pxgtmb@emu@outputpage % try patch + {% + \@@topmargin\topmargin + \iftombow + \@@paperwidth\paperwidth \advance\@@paperwidth 6mm\relax + \@@paperheight\paperheight \advance\@@paperheight 16mm\relax + \advance\@@topmargin 1in\relax \advance\@themargin 1in\relax + \fi + \reset@font\normalsize\normalsfcodes} + {\@tombowreset@@paper + \reset@font\normalsize\normalsfcodes}% + {}{\def\pxgtmb@emu@status{1}} +}%% case 1 end +% commit the change only when successful; otherwise +% tombow feature is never enabled, exit right away +\pxgtmb@sel@twoone +{%% case 2 and 1 begin + \if 0\pxgtmb@emu@status\relax + \global\let\@outputpage\pxgtmb@emu@outputpage + \else + \PackageError{\pxgtmb@pkgname}{% + Failed in patching \string\@outputpage!\MessageBreak + Sorry, I can't proceed anymore...}\@ehc + \expandafter\expandafter\expandafter\endinput\expandafter + \fi +}%% case 2 and 1 end +\endgroup +% + +% provides equivalent for plcore.ltx +\pxgtmb@sel@two +{%% case 2 begin +\newif\iftombow \tombowfalse +\newif\iftombowdate \tombowdatetrue +\newdimen\@tombowwidth +\setlength{\@tombowwidth}{.1\p@} +}%% case 2 end +\pxgtmb@sel@twoone +{%% case 2 and 1 begin +\setlength{\@tombowwidth}{.1\p@} +\def\@tombowbleed{3mm} +\def\@tombowcolor{\normalcolor} +}%% case 2 and 1 end +\pxgtmb@sel@two +{%% case 2 begin +\newbox\@TL\newbox\@Tl +\newbox\@TC +\newbox\@TR\newbox\@Tr +\newbox\@BL\newbox\@Bl +\newbox\@BC +\newbox\@BR\newbox\@Br +\newbox\@CL +\newbox\@CR +\font\@bannerfont=cmtt9 +\newtoks\@bannertoken +\@bannertoken{} +}%% case 2 end +\pxgtmb@sel@twoone +{%% case 2 and 1 begin +\def\maketombowbox{% hide \yoko from all boxes + \setbox\@TL\hbox to\z@{\csname yoko\endcsname\hss + \vrule width\dimexpr 10mm+\@tombowbleed\relax height\@tombowwidth depth\z@ + \vrule height10mm width\@tombowwidth depth\z@ + \iftombowdate + \raise4pt\hbox to\z@{\hskip5mm\@bannerfont\the\@bannertoken\hss}% + \fi}% + \setbox\@Tl\hbox to\z@{\csname yoko\endcsname\hss + \vrule width10mm height\@tombowwidth depth\z@ + \vrule height\dimexpr 10mm+\@tombowbleed\relax width\@tombowwidth depth\z@}% + \setbox\@TC\hbox{\csname yoko\endcsname + \vrule width10mm height\@tombowwidth depth\z@ + \vrule height10mm width\@tombowwidth depth\z@ + \vrule width10mm height\@tombowwidth depth\z@}% + \setbox\@TR\hbox to\z@{\csname yoko\endcsname + \vrule height10mm width\@tombowwidth depth\z@ + \vrule width\dimexpr 10mm+\@tombowbleed\relax height\@tombowwidth depth\z@\hss}% + \setbox\@Tr\hbox to\z@{\csname yoko\endcsname + \vrule height\dimexpr 10mm+\@tombowbleed\relax width\@tombowwidth depth\z@ + \vrule width10mm height\@tombowwidth depth\z@\hss}% + \setbox\@BL\hbox to\z@{\csname yoko\endcsname\hss + \vrule width\dimexpr 10mm+\@tombowbleed\relax depth\@tombowwidth height\z@ + \vrule depth10mm width\@tombowwidth height\z@}% + \setbox\@Bl\hbox to\z@{\csname yoko\endcsname\hss + \vrule width10mm depth\@tombowwidth height\z@ + \vrule depth\dimexpr 10mm+\@tombowbleed\relax width\@tombowwidth height\z@}% + \setbox\@BC\hbox{\csname yoko\endcsname + \vrule width10mm depth\@tombowwidth height\z@ + \vrule depth10mm width\@tombowwidth height\z@ + \vrule width10mm depth\@tombowwidth height\z@}% + \setbox\@BR\hbox to\z@{\csname yoko\endcsname + \vrule depth10mm width\@tombowwidth height\z@ + \vrule width\dimexpr 10mm+\@tombowbleed\relax depth\@tombowwidth height\z@\hss}% + \setbox\@Br\hbox to\z@{\csname yoko\endcsname + \vrule depth\dimexpr 10mm+\@tombowbleed\relax width\@tombowwidth height\z@ + \vrule width10mm depth\@tombowwidth height\z@\hss}% + \setbox\@CL\hbox to\z@{\csname yoko\endcsname\hss + \vrule width10mm height.5\@tombowwidth depth.5\@tombowwidth + \vrule height10mm depth10mm width\@tombowwidth}% + \setbox\@CR\hbox to\z@{\csname yoko\endcsname + \vrule height10mm depth10mm width\@tombowwidth + \vrule height.5\@tombowwidth depth.5\@tombowwidth width10mm\hss}% +} +\def\@outputtombow{% + \iftombow + \vbox to\z@{\kern-\dimexpr 10mm+\@tombowbleed\relax\relax + \boxmaxdepth\maxdimen + \moveleft\@tombowbleed \vbox to\@@paperheight{% + \color@begingroup + \@tombowcolor + \hbox to\@@paperwidth{\hskip\@tombowbleed\relax + \copy\@TL\hfill\copy\@TC\hfill\copy\@TR\hskip\@tombowbleed}% + \kern-10mm + \hbox to\@@paperwidth{\copy\@Tl\hfill\copy\@Tr}% + \vfill + \hbox to\@@paperwidth{\copy\@CL\hfill\copy\@CR}% + \vfill + \hbox to\@@paperwidth{\copy\@Bl\hfill\copy\@Br}% + \kern-10mm + \hbox to\@@paperwidth{\hskip\@tombowbleed\relax + \copy\@BL\hfill\copy\@BC\hfill\copy\@BR\hskip\@tombowbleed}% + \color@endgroup + }\vss + }% + \fi +} +}%% case 2 and 1 end +\pxgtmb@sel@two +{%% case 2 begin +\newdimen\@@paperheight +\newdimen\@@paperwidth +\newdimen\@@topmargin +}%% case 2 end +\pxgtmb@sel@twoone +{%% case 2 and 1 begin +\def\@tombowreset@@paper{% + \@@topmargin\topmargin + \iftombow + \@@paperwidth\paperwidth + \advance\@@paperwidth 2\dimexpr\@tombowbleed\relax + \@@paperheight\paperheight \advance\@@paperheight 10mm\relax + \advance\@@paperheight 2\dimexpr\@tombowbleed\relax + \advance\@@topmargin 1in\relax \advance\@themargin 1in\relax + \fi +} +}%% case 2 and 1 end +\pxgtmb@sel@two +{%% case 2 begin +\newcount\hour +\newcount\minute +}%% case 2 end + +%%%%% EMULATION END + +%% import from jsclasses +\hour\time \divide\hour by 60\relax +\@tempcnta\hour \multiply\@tempcnta 60\relax +\minute\time \advance\minute-\@tempcnta + +\ifnum\mag=\@m\else + % if BXjscls is detected and \mag != 1000, + % the layout will be definitely broken + \ifx\bxjs@param@mag\@undefined\else + \PackageError{\pxgtmb@pkgname}{% + It seems you are using Japanese `BXjscls'\MessageBreak + (bxjsarticle, bxjsbook, bxjsreport, etc.) or\MessageBreak + some derived class. Try adding `nomag' or\MessageBreak + `nomag*' to the class option list}\@ehc + \fi + % if \mag != 1000 and \inv@mag is defined, assume jsclasses-style \mag employment + \ifx\inv@mag\@undefined\else + % \pxgtmb@magscale is almost equivalent to \jsc@magscale (introduced around 2016) + % but defined only when \mag is actually employed + \begingroup + % calculation code borrowed from BXjscls + \@tempcnta=\mag + \advance\@tempcnta100000\relax + \def\pxgtmb@tempa#1#2#3#4\@nil{\@tempdima=#2#3.#4\p@} + \expandafter\pxgtmb@tempa\the\@tempcnta\@nil + \xdef\pxgtmb@magscale{\strip@pt\@tempdima} + \endgroup + \fi +\fi + +%% this package will use tombo feature in pLaTeX kernel +% if tombow-related option is not included in class option list, +% show info and enable it now +\iftombow\else + % if jsclasses is detected and \mag != 1000, it's too late + % -- When a size option other than `10pt' is specified, + % jsclasses uses \mag and calculates \oddsidemargin and \topmargin + % differently, depending on tombow status. + % In order to force `jsclasses' to calculate correctly, + % `tombow' or `tombo' is required as a class option. + % ... or, you may add `nomag' or `nomag*' instead. + \ifx\pxgtmb@magscale\@undefined\else + \PackageError{\pxgtmb@pkgname}{% + It seems you are using Japanese `jsclasses'\MessageBreak + (jsarticle, jsbook, jsreport, etc.) or some\MessageBreak + derived class. Please add `tombow' or `tombo'\MessageBreak + to the class option list}\@ehc + \fi + % BXjscls is already checked above, no check here + \PackageInfo\pxgtmb@pkgname{tombow feature enabled by \pxgtmb@pkgname} +\fi +\tombowtrue %\tombowdatetrue %% enabled by tombowbanner option +\setlength{\@tombowwidth}{.1\p@}% + +%% import from jsclasses +\@bannertoken{% + \jobname\space(\number\year-\two@digits\month-\two@digits\day + \space\two@digits\hour:\two@digits\minute)} + +%% prepare dimension +\ifx\stockwidth\@undefined \newdimen\stockwidth \fi +\ifx\stockheight\@undefined \newdimen\stockheight \fi + +%% prepare flag +\newif\ifpxgtmb@switch \pxgtmb@switchfalse +\newif\ifpxgtmb@landscape \pxgtmb@landscapefalse +\newif\ifpxgtmb@pdfx@x \pxgtmb@pdfx@xfalse + +%% passed from class options +%% should be declared first inside this package (least priority) +\DeclareOption{tombow}{\tombowdatetrue} +\DeclareOption{tombo}{\tombowdatefalse} +\DeclareOption{mentuke}{\tombowdatefalse \setlength{\@tombowwidth}{\z@}} + +%% package options part 1 +\DeclareOption{tombowbanner}{\tombowdatetrue} +\DeclareOption{notombowbanner}{\tombowdatefalse} +\DeclareOption{tombowdate}{% obsolete since v0.9c (2018/01/11) + \PackageWarning{\pxgtmb@pkgname}{% + Option `tombowdate' is renamed;\MessageBreak + use `tombowbanner' instead}% + \tombowdatetrue} +\DeclareOption{notombowdate}{% obsolete since v0.9c (2018/01/11) + \PackageWarning{\pxgtmb@pkgname}{% + Option `notombowdate' is renamed;\MessageBreak + use `notombowbanner' instead}% + \tombowdatefalse} + +%% register a list of candidate papersize +% * \pxgtmb@addpapersize[]{}{}{} +% used for declaration of papersize. +% when no option is specified (that is, \ifpxgtmb@switch = \iffalse), +% also used for automatic stocksize determination. +% * if = \@empty, the next is assumed. +% * if = n, stocksize is set to papersize + 2in. +\def\pxgtmb@addpapersize{\@ifnextchar[{\pxgtmb@addp@persize}{\pxgtmb@addp@persize[\@empty]}} +\def\pxgtmb@addp@persize[#1]#2#3#4{% + % get current papersize and search through known standard in ascending order + \ifx\pxgtmb@guessedtombow\@empty + \ifx\pxgtmb@guessedpaper\@empty + % shorter edge -> \@tempdima, longer edge -> \@tempdimb + \ifdim\paperwidth>\paperheight\relax + \pxgtmb@landscapetrue + \@tempdima\paperheight \@tempdimb\paperwidth + \else + \pxgtmb@landscapefalse + \@tempdima\paperwidth \@tempdimb\paperheight + \fi + % \@ovri and \@ovro are used temporarily (safe enough) + \@ovri=#3\relax + \@ovro=#4\relax + % when jsclasses-style \mag employment is assumed ... + \ifx\pxgtmb@magscale\@undefined\else + \@ovri=\inv@mag\@ovri\relax + \@ovro=\inv@mag\@ovro\relax + \fi + % compare + \ifdim\@tempdima=\@ovri\relax \ifdim\@tempdimb=\@ovro\relax + \def\pxgtmb@guessedpaper{#2}% + \ifx#1\@empty\else + \def\pxgtmb@guessedtombow{#1}% + \if n\pxgtmb@guessedtombow\else + \ExecuteOptions{tombow-#1}% package defaults to tombowdatetrue + \pxgtmb@switchfalse + \fi + \fi + \fi \fi + \else + \def\pxgtmb@guessedtombow{#2}% save for console message + \pxgtmb@setstock{#3}{#4}% set stockwidth/height + \fi\fi + \DeclareOption{tombow-#2}{% + \pxgtmb@switchtrue + \tombowdatetrue + \pxgtmb@setstock{#3}{#4}% + }% + \DeclareOption{tombo-#2}{% + \pxgtmb@switchtrue + \tombowdatefalse + \pxgtmb@setstock{#3}{#4}% + }% + \DeclareOption{mentuke-#2}{% + \pxgtmb@switchtrue + \tombowdatefalse + \setlength{\@tombowwidth}{\z@}% + \pxgtmb@setstock{#3}{#4}% + }% +} +\def\pxgtmb@setstock#1#2{% + \ifpxgtmb@landscape + \setlength\stockwidth{#2}% + \setlength\stockheight{#1}% + \else + \setlength\stockwidth{#1}% + \setlength\stockheight{#2}% + \fi + % when jsclasses-style \mag employment is assumed ... + \ifx\pxgtmb@magscale\@undefined\else + \stockwidth=\inv@mag\stockwidth\relax + \stockheight=\inv@mag\stockheight\relax + \fi +}% +\@onlypreamble\pxgtmb@addpapersize +\@onlypreamble\pxgtmb@addp@persize +\@onlypreamble\pxgtmb@setstock + +%% initialize before search +\def\pxgtmb@guessedpaper{} +\def\pxgtmb@guessedtombow{} +\@onlypreamble\pxgtmb@guessedpaper +\@onlypreamble\pxgtmb@guessedtombow + +%% package options part 2 +% ISO A series <=> JIS B series in the ascending order +\pxgtmb@addpapersize{a10}{26mm}{37mm} +\pxgtmb@addpapersize{b10}{32mm}{45mm} +\pxgtmb@addpapersize{a9}{37mm}{52mm} +\pxgtmb@addpapersize{b9}{45mm}{64mm} +\pxgtmb@addpapersize{a8}{52mm}{74mm} +\pxgtmb@addpapersize{b8}{64mm}{91mm} +\pxgtmb@addpapersize{a7}{74mm}{105mm} +\pxgtmb@addpapersize{b7}{91mm}{128mm} +\pxgtmb@addpapersize{a6}{105mm}{148mm} +\pxgtmb@addpapersize{b6}{128mm}{182mm} +\pxgtmb@addpapersize{a5}{148mm}{210mm} +\pxgtmb@addpapersize{b5}{182mm}{257mm} +\pxgtmb@addpapersize{a4}{210mm}{297mm} +\pxgtmb@addpapersize{b4}{257mm}{364mm} +\pxgtmb@addpapersize{a3}{297mm}{420mm} +\pxgtmb@addpapersize{b3}{364mm}{515mm} +\pxgtmb@addpapersize{a2}{420mm}{594mm} +\pxgtmb@addpapersize{b2}{515mm}{728mm} +\pxgtmb@addpapersize{a1}{594mm}{841mm} +\pxgtmb@addpapersize{b1}{728mm}{1030mm} +\pxgtmb@addpapersize[n]{a0}{841mm}{1189mm} +\pxgtmb@addpapersize[n]{b0}{1030mm}{1456mm} + +%% package options part 3 +% ISO C series +\pxgtmb@addpapersize[a9]{c10}{28mm}{40mm} +\pxgtmb@addpapersize[a8]{c9}{40mm}{57mm} +\pxgtmb@addpapersize[a7]{c8}{57mm}{81mm} +\pxgtmb@addpapersize[a6]{c7}{81mm}{114mm} +\pxgtmb@addpapersize[a5]{c6}{114mm}{162mm} +\pxgtmb@addpapersize[a4]{c5}{162mm}{229mm} +\pxgtmb@addpapersize[a3]{c4}{229mm}{354mm} +\pxgtmb@addpapersize[a2]{c3}{324mm}{458mm} +\pxgtmb@addpapersize[a1]{c2}{458mm}{648mm} +\pxgtmb@addpapersize[a0]{c1}{648mm}{917mm} +\pxgtmb@addpapersize[n]{c0}{917mm}{1297mm} +% misc +\pxgtmb@addpapersize[b4]{a4j}{210mm}{297mm} +\pxgtmb@addpapersize[b5]{a5j}{148mm}{210mm} +\pxgtmb@addpapersize[a3]{b4j}{257mm}{364mm} +\pxgtmb@addpapersize[a4]{b5j}{182mm}{257mm} +\pxgtmb@addpapersize[b4]{a4var}{210mm}{283mm} +\pxgtmb@addpapersize[a4]{b5var}{182mm}{230mm} +\pxgtmb@addpapersize[a3]{letter}{8.5in}{11in} +\pxgtmb@addpapersize[a3]{legal}{8.5in}{14in} +\pxgtmb@addpapersize[a4]{executive}{7.25in}{10.5in} +\pxgtmb@addpapersize[a5]{hagaki}{100mm}{148mm} + +%% package options part 4 +\def\pxgtmb@pdfbox@status{0} +\DeclareOption{pdfbox}{\def\pxgtmb@pdfbox@status{1}} +\DeclareOption{dvips}{\def\pxgtmb@driver{s}} +\DeclareOption{dvipdfmx}{\def\pxgtmb@driver{m}} +\DeclareOption{xetex}{\def\pxgtmb@driver{x}} +\DeclareOption{pdftex}{\def\pxgtmb@driver{p}} +\DeclareOption{luatex}{\def\pxgtmb@driver{l}} + +%% default options +\ExecuteOptions{tombowbanner}% package defaults to tombowdatetrue +\ProcessOptions + +%% display search result +% if any of explicit size option is specified, \ifpxgtmb@switch = \iftrue. +% otherwise, automatic size detection should be successful. +\ifpxgtmb@switch\else + % check status + \@tempcnta=\z@\relax + \ifx\pxgtmb@guessedpaper\@empty + \advance\@tempcnta\@ne\relax + \fi + \ifx\pxgtmb@guessedtombow\@empty + \advance\@tempcnta\tw@\relax + \else\if n\pxgtmb@guessedtombow + \advance\@tempcnta\tw@\relax + \fi\fi + % message + \ifodd\@tempcnta + %\PackageWarningNoLine\pxgtmb@pkgname{% + % No size option specified, and automatic papersize\MessageBreak + % detection also failed} + \else + \typeout{***** Package \pxgtmb@pkgname\space detected \pxgtmb@guessedpaper paper. *****} + \fi + \ifnum\@tempcnta>\@ne\relax + \PackageWarningNoLine\pxgtmb@pkgname{% + Output size cannot be determined. Please add size\MessageBreak + option (e.g. `tombow-a4') to specify output size.\MessageBreak + Falling back to +1in ..} + \stockwidth\paperwidth \advance\stockwidth 2in + \stockheight\paperheight \advance\stockheight 2in + \else + \typeout{***** Now the output size is automatically set to \pxgtmb@guessedtombow. *****} + \fi +\fi + +%% warnings +\ifdim\stockwidth<\paperwidth + \PackageWarningNoLine\pxgtmb@pkgname{% + \string\stockwidth\space is smaller than \string\paperwidth!\MessageBreak + Is this really what you want?} +\fi +\ifdim\stockheight<\paperheight + \PackageWarningNoLine\pxgtmb@pkgname{% + \string\stockheight\space is smaller than \string\paperheight!\MessageBreak + Is this really what you want?} +\fi + +%% pdf "digital tombo" (driver-dependent) +% the box size calculation is delayed until \AtBeginDocument +% to allow users to change \@tombowbleed in the preamble + +% convert pt -> bp +\def\pxgtmb@PDF@setbp#1#2{% + \@tempdima=.996264#2\relax % 0.996264 = 72/72.27 (cf. 1in = 72.27pt = 72bp) + \@tempdima=\pxgtmb@magscale\@tempdima % adjustment for jsclasses-style \mag employment + \edef#1{\strip@pt\@tempdima}} +% calculate and create pdf boxes +\def\pxgtmb@PDF@calcbox{% + \begingroup + % provide fallback definition inside this group + \ifx\pxgtmb@magscale\@undefined + \def\pxgtmb@magscale{1}% + \fi + % set pdf boxes in bp unit + \pxgtmb@PDF@setbp\pxgtmb@PDF@crop@ur@x\stockwidth + \pxgtmb@PDF@setbp\pxgtmb@PDF@crop@ur@y\stockheight + \pxgtmb@PDF@setbp\pxgtmb@PDF@trim@ll@x{\dimexpr(\stockwidth-\paperwidth)/2}% + \pxgtmb@PDF@setbp\pxgtmb@PDF@trim@ll@y{\dimexpr(\stockheight-\paperheight)/2}% + \pxgtmb@PDF@setbp\pxgtmb@PDF@trim@ur@x{\dimexpr(\stockwidth+\paperwidth)/2}% + \pxgtmb@PDF@setbp\pxgtmb@PDF@trim@ur@y{\dimexpr(\stockheight+\paperheight)/2}% + \pxgtmb@PDF@setbp\pxgtmb@PDF@bleed@ll@x{\dimexpr(\stockwidth-\paperwidth)/2-\@tombowbleed}% + \pxgtmb@PDF@setbp\pxgtmb@PDF@bleed@ll@y{\dimexpr(\stockheight-\paperheight)/2-\@tombowbleed}% + \pxgtmb@PDF@setbp\pxgtmb@PDF@bleed@ur@x{\dimexpr(\stockwidth+\paperwidth)/2+\@tombowbleed}% + \pxgtmb@PDF@setbp\pxgtmb@PDF@bleed@ur@y{\dimexpr(\stockheight+\paperheight)/2+\@tombowbleed}% + \xdef\pxgtmb@PDF@CTM{% + %% CropBox: normally implicit (same as MediaBox, large paper size) + %% however, pdfx.sty in PDF/X mode sets /CropBox explicitly, so I need to override it! + \ifpxgtmb@pdfx@x + \noexpand\pxgtmb@PDF@begin + /CropBox [0 0 + \pxgtmb@PDF@crop@ur@x\space + \pxgtmb@PDF@crop@ur@y] \noexpand\pxgtmb@PDF@end + \fi + %% BleedBox: explicit (final paper size + surrounding \@tombowbleed) + \noexpand\pxgtmb@PDF@begin + /BleedBox [\pxgtmb@PDF@bleed@ll@x\space + \pxgtmb@PDF@bleed@ll@y\space + \pxgtmb@PDF@bleed@ur@x\space + \pxgtmb@PDF@bleed@ur@y] \noexpand\pxgtmb@PDF@end + %% TrimBox: explicit (final paper size) + \noexpand\pxgtmb@PDF@begin + /TrimBox [\pxgtmb@PDF@trim@ll@x\space + \pxgtmb@PDF@trim@ll@y\space + \pxgtmb@PDF@trim@ur@x\space + \pxgtmb@PDF@trim@ur@y] \noexpand\pxgtmb@PDF@end + %% ArtBox: implicit + %% [Note] PDF/X requires /TrimBox or /ArtBox but not both! + }% + \endgroup +} + +% do it +\AtBeginDocument{\pxgtmb@PDF@emit} +\def\pxgtmb@PDF@emit{% + % handle compatibility with pdfx.sty here; + % if pdfx.sty with PDF/X mode detected, force [pdfbox] option! + \pxgtmb@handle@pdfx + \ifpxgtmb@pdfx@x\def\pxgtmb@pdfbox@status{1}\fi + % start actual procedure for [pdfbox] option + \if 1\pxgtmb@pdfbox@status +%% supported drivers: dvips, dvipdfmx, XeTeX, pdfTeX, LuaTeX +\ifnum0\ifx\pdfvariable\@undefined\else\the\outputmode\fi=0\relax +\ifnum0\ifx\pdfpageattr\@undefined\else\the\pdfoutput\fi=0\relax + %% for DVI output or XeTeX + \ifx\XeTeXversion\@undefined + \chardef\pxgtmb@errlevel=\z@ + % check graphics/graphicx/color status + \ifx\Gin@driver\@undefined + \ifx\pxgtmb@driver\@undefined % driver option unavailable + \PackageError{\pxgtmb@pkgname}{% + Option `pdfbox' is driver-dependent!\MessageBreak + Please add a driver option}\@ehc + \def\pxgtmb@driver{s}% fallback + \fi + \else + % check consistency + \def\pxgtmb@tempa{dvips.def}\ifx\Gin@driver\pxgtmb@tempa + \ifx\pxgtmb@driver\@undefined + \def\pxgtmb@driver{s}% pass + \else + \if s\pxgtmb@driver\else \chardef\pxgtmb@errlevel=\@ne \fi + \fi + \else\def\pxgtmb@tempa{dvipdfmx.def}\ifx\Gin@driver\pxgtmb@tempa + \ifx\pxgtmb@driver\@undefined + \def\pxgtmb@driver{m}% pass + \else + \if m\pxgtmb@driver\else \chardef\pxgtmb@errlevel=\@ne \fi + \fi + \else + \ifx\pxgtmb@driver\@undefined + \PackageError{\pxgtmb@pkgname}{% + Option `pdfbox' is driver-dependent!\MessageBreak + Please add a driver option}\@ehc + \def\pxgtmb@driver{s}% fallback + \fi + \fi\fi + \ifnum\pxgtmb@errlevel>\z@ + \PackageWarningNoLine{\pxgtmb@pkgname}{% + Inconsistent driver option detected!\MessageBreak + Package `graphics' or `color' already\MessageBreak + loaded with different driver option}\@ehc + \fi + \fi + \else + \def\pxgtmb@driver{x} + \fi + % required for putting \special to every page + \RequirePackage{atbegshi} + \ifx\pfmtname\@undefined\else + \ifx\AtBegShi@Output\@undefined + % LaTeX2e 2020-10-01: an emulation by ``atbegshi-ltx.sty'' + % => pLaTeX2e 2020-10-01 natively supports it + \else + % older: the real ``atbegshi.sty'' is loaded + \IfFileExists{pxatbegshi.sty}{\RequirePackage{pxatbegshi}}{} + \fi + \fi + % do it + \if x\pxgtmb@driver + %% for XeTeX (similar to dvipdfmx, except for paper size) + \AtBeginDocument{% + \pxgtmb@PDF@calcbox + \def\pxgtmb@PDF@begin{}\def\pxgtmb@PDF@end{}% + \edef\pxgtmb@PDF@CTM{{pdf:put @thispage << \pxgtmb@PDF@CTM >>}}} + % force paper size + \pdfpagewidth\stockwidth \pdfpageheight\stockheight + % emit pdf boxes + \AtBeginShipout{\setbox\AtBeginShipoutBox=\vbox{% + \baselineskip\z@skip\lineskip\z@skip\lineskiplimit\z@ + \expandafter\special\pxgtmb@PDF@CTM % here! + \copy\AtBeginShipoutBox}} + \else + \if s\pxgtmb@driver + %% for dvips + \AtBeginDocument{% + \pxgtmb@PDF@calcbox + \def\pxgtmb@PDF@begin{[ }\def\pxgtmb@PDF@end{/PAGE pdfmark }% + \edef\pxgtmb@PDF@CTM{{ps:SDict begin \pxgtmb@PDF@CTM end}}} + \else\if m\pxgtmb@driver + %% for dvipdfmx + \AtBeginDocument{% + \pxgtmb@PDF@calcbox + \def\pxgtmb@PDF@begin{}\def\pxgtmb@PDF@end{}% + \edef\pxgtmb@PDF@CTM{{pdf:put @thispage << \pxgtmb@PDF@CTM >>}}} + \else + %% for others (in case graphics option wrong) + \PackageError{\pxgtmb@pkgname}{Sorry, driver unsupported}\@ehc + \def\pxgtmb@PDF@CTM{{}}% dummy + \fi\fi + %% common + \begingroup + % when jsclasses-style \mag employment is assumed ... + % [Note] \special{papersize=,} accepts only non-true units + % and evaluates them as if they were true units! + \ifx\pxgtmb@magscale\@undefined\else + \stockwidth \pxgtmb@magscale\stockwidth + \stockheight\pxgtmb@magscale\stockheight + \fi + \xdef\pxgtmb@PDF@size{{papersize=\the\stockwidth,\the\stockheight}} + \endgroup + \AtBeginShipout{\setbox\AtBeginShipoutBox=\vbox{% + \baselineskip\z@skip\lineskip\z@skip\lineskiplimit\z@ + % force paper size + \expandafter\special\pxgtmb@PDF@size + % emit pdf boxes + \expandafter\special\pxgtmb@PDF@CTM % here! + \copy\AtBeginShipoutBox}} + \fi +\else + %% for pdfTeX + \def\pxgtmb@driver{p} + % force paper size + \pdfpagewidth\stockwidth \pdfpageheight\stockheight + % emit pdf boxes + \AtBeginDocument{% + \pxgtmb@PDF@calcbox + \def\pxgtmb@PDF@begin{}\def\pxgtmb@PDF@end{}% + \edef\pxgtmb@PDF@CTM{{\pxgtmb@PDF@CTM}}% + \expandafter\pdfpageattr\pxgtmb@PDF@CTM} +\fi\else + %% for LuaTeX + \def\pxgtmb@driver{l} + % force paper size + \pagewidth\stockwidth \pageheight\stockheight + % emit pdf boxes + \AtBeginDocument{% + \pxgtmb@PDF@calcbox + \def\pxgtmb@PDF@begin{}\def\pxgtmb@PDF@end{}% + \edef\pxgtmb@PDF@CTM{pageattr{\pxgtmb@PDF@CTM}}% + \expandafter\pdfvariable\pxgtmb@PDF@CTM} +\fi + \fi +} + +%% make visible tombow box according to the current status of +%% \@bannerfont, \@bannertoken, \@tombowwidth & \@tombowbleed +\maketombowbox + +%% shift amount +\hoffset .5\stockwidth +\advance\hoffset -.5\paperwidth +\advance\hoffset-1truein\relax +\voffset .5\stockheight +\advance\voffset -.5\paperheight +\advance\voffset-1truein\relax + +%% user interface +\newcommand{\settombowbanner}[1]{% + \iftombowdate\else + \PackageWarning{\pxgtmb@pkgname}{% + Package option `tombowbanner' is not effective.\MessageBreak + The banner may be discarded}% + \fi + \@bannertoken{#1}\maketombowbox} +\newcommand{\settombowbannerfont}[1]{% + \font\@bannerfont=#1\relax \maketombowbox} +\newcommand{\settombowwidth}[1]{% + \setlength{\@tombowwidth}{#1}\maketombowbox} +\newcommand{\settombowbleed}[1]{% + \def\@tombowbleed{#1}\maketombowbox} +\newcommand{\settombowcolor}[1]{% + \def\@tombowcolor{#1}} +% forbid changing \@tombowbleed after \begin{document} +% because pdf boxes are calculated only inside \AtBeginDocument +\@onlypreamble\settombowbleed + +%% patch internal of pdfpages.sty to work with tombow +\def\pxgtmb@patch@pdfpages{% + \IfFileExists{pxpdfpages.sty}{\RequirePackage{pxpdfpages}}{}} +\AtBeginDocument{\@ifpackageloaded{pdfpages}{\pxgtmb@patch@pdfpages}{}} + +%% patch pdfx.sty +%% (tested on pdfx 2019/02/27 v1.6.3) +\def\pxgtmb@handle@pdfx{\@ifpackageloaded{pdfx}{\let\ifpxgtmb@pdfx@x\ifpdfx@x}{}} + +\endinput diff --git a/macros/jptex/latex/gentombow/gentombow.tex b/macros/jptex/latex/gentombow/gentombow.tex new file mode 100644 index 0000000000..d0bc4523ab --- /dev/null +++ b/macros/jptex/latex/gentombow/gentombow.tex @@ -0,0 +1,307 @@ +%# -*- ascii characters only -*- + +\documentclass[a4paper]{article} +\usepackage{doc} +\makeatletter +%%% dangerous bend +\font\man=manfnt at 10pt +\def\dbend{\leavevmode\raise0pt\hbox{\man\char'177}} +\newenvironment{dangerous}{% + \ifnum\@listdepth>\z@ + \GenericError{}{Do not use `dangerous' environment inside any list}{}{} + \fi + \par\addvspace\medskipamount + \@tempdima=\dimexpr\textwidth-2zw\relax\small + \divide\@tempdima by\dimexpr1zw\relax\@tempcnta=\@tempdima + \leftskip=\dimexpr\textwidth-\@tempcnta zw\relax + \@totalleftmargin\dimexpr\leftskip+0zw + \linewidth=\dimexpr\@tempcnta zw-0zw + \parindent1zw\noindent\kern-\leftskip\hbox to\leftskip{\dbend\hss}% + \everypar{\everypar{}}\ignorespaces +}{\par\addvspace\medskipamount} +%%% misc +\newcommand{\Meta}[1]{$\langle$\mbox{}\textit{#1}\mbox{}$\rangle$} +%%% +\makeatother +\usepackage{longtable} +\usepackage[pdfbox]{gentombow} +%\usepackage{bxpapersize} +\GetFileInfo{gentombow.sty} +\title{Package \textsf{gentombow} \fileversion} +\author{Hironobu Yamashita} +\date{\filedate} +\begin{document} + +\maketitle + +It is convenient to print documents for final smaller paper sizes +on paper of the printer's standard physical paper size; +it allows printing close to the logical paper edge +and even outside the logical page. + +This package \textsf{gentombow} provides a Japanese-style +crop marks (called `tombow' in Japanese) for trimming paper stacks, +and place the document page at the center of a larger physical +paper sheet. It automatically detects the page size +(\verb+\paperwidth+, \verb+\paperheight+) which is +going to be set by document class. +This document itself is a demonstration of this package, +with final A4 paper printed on B4 (JIS B4; not ISO B4!) paper. + +A basic usage: +\begin{verbatim} + \documentclass[a4paper]{article} + \usepackage{gentombow} + \usepackage{graphicx} + \begin{document} + The content + \end{document} +\end{verbatim} + +Note that this package does nothing about output paper size +specification; use one of the followings to do it. +\begin{itemize} +\item \textsf{graphicx} package + with \texttt{setpagesize} feature added in 2016 + (supports all engines) +\item \textsf{bxpapersize} package + (supports all engines; by Takayuki YATO) +\item \textsf{bounddvi} package + (supports only DVI output mode; part of \textsf{gentombow} bundle) +\end{itemize} + +This package is part of \textsf{gentombow} bundle: +\begin{verbatim} + https://github.com/aminophen/gentombow +\end{verbatim} +Originally it was part of \textsf{platex-tools} bundle, +but it has been moved since March 2018. + +\section{Basic Functions} + +First, I introduce some basic functions of \textsf{gentombow} package. + +\subsection{Automatic Determination of Output Size} + +In this package, +the following printer's standard physical paper sizes are predefined; +A series (\texttt{a0}--\texttt{a10}), +B series (\texttt{b0}--\texttt{b10}), +C series (\texttt{c0}--\texttt{c10}), +\texttt{letter}, \texttt{legal} and \texttt{executive}. +In the current release, `B series' is JIS standard, +not ISO standard (this might be changed in the near future). +Also, some variations \texttt{a4var} and \texttt{b5var} are predefined. + +When one of the above sizes (except \texttt{a0}, \texttt{b0} +and \texttt{c0}) is detected, the output size is +automatically determined along with the following rule: +\begin{itemize} +\item When A series detected: + the output is going to be larger B series +\item When B/C series or + \texttt{letter}, \texttt{legal}, \texttt{executive} detected: + the output is going to be larger A series +\end{itemize} +The crop marks are automatically added. +The orientation (landscape/portrait) of the input paper is +also preserved. + +The following list shows common examples: +\begin{longtable}[c]{cc} + \hline + Detected page size & Output size \\ + \hline + a6 & b6 \\ + b6 & a5 \\ + a5 & b5 \\ + b5 & a4 \\ + a4 & b4 \\ + b4 & a3 \\ + a3 & b3 \\ + b3 & a2 \\ + \hline + c6 & a5 \\ + c5 & a4 \\ + c4 & a3 \\ + c3 & a2 \\ + \hline + letter & a3 \\ + legal & a3 \\ + executive & a4 \\ + \hline +\end{longtable} + +\subsection*{When Automatic Determination Failed} + +When the page size is different from any of the predefined sizes, +the page is placed with the surrounding 1~inch margins. +For example, when the page has $100\,\mathrm{mm}$ width and +$200\,\mathrm{mm}$ height, the output size is going to be +$100\,\mathrm{mm}+2\,\mathrm{in}$ width and +$200\,\mathrm{mm}+2\,\mathrm{in}$ height. + +\subsection{Job Info Printing} + +By default, the crop marks are printed with a banner, which shows +a job info like \makeatletter\texttt{\the\@bannertoken}\makeatother. +The format is similar to \verb+tombow+ option, which is +available in most of the common Japanese classes. +The default also reacts to \verb+tombo+ (without a job info) or +\verb+mentuke+ (do not print actual crop marks) class options. + +\section{Package Options} + +You can specify output size and/or disable job info printing +using package options. + +\subsection{Explicit Specification of Output Size} + +You can also force the output size using package option. +For example, +\begin{verbatim} + \documentclass[a4paper]{article} + \usepackage[tombow-a4]{gentombow} + \begin{document} + The content + \end{document} +\end{verbatim} +forces the output size to be a3 (the automatic determination +`b4' is discarded). Available sizes are the same as +the predefined sizes, that is, +A series (\texttt{a0}--\texttt{a10}), +B series (\texttt{b0}--\texttt{b10}), +C series (\texttt{c0}--\texttt{c10}) and +\texttt{a4var}, \texttt{b5var}, +\texttt{letter}, \texttt{legal}, \texttt{executive}. +The orientation (landscape/portrait) of the input paper is +also preserved again. + +The option format is: +\Meta{crop mark format}\texttt{-}\Meta{output size}. +The crop mark format is one of the following: +\verb+tombow+ (default), \verb+tombo+ (without a job info), +\verb+mentuke+ (do not print actual crop marks). + +\subsection{Disabling Job Info Printing} + +When you specify the output size explicitly, the crop mark format +can be given at the same time, as described previously. +When the output size is automatically determined, you can disable +job info printing by \verb+notombowbanner+ option. + +\section{Customization of Crop Mark} + +The \textsf{pxgentombow} package provides some commands to +customize crop mark format. + +\subsection{Banner content} + +Using \verb+\settombowbanner+, you can set the banner content. +An example using \verb+\pdfcreationdate+ (pdf\TeX\ primitive) +\begin{verbatim} + \documentclass[a4paper]{article} + \usepackage{gentombow} + \settombowbanner{\jobname\space (\pdfcreationdate)} + \begin{document} + The content + \end{document} +\end{verbatim} +will result in +{\settombowbanner{\jobname\space (\pdfcreationdate)}% + \makeatletter\texttt{\the\@bannertoken}\makeatother}. +The argument is an arbitrary token list. + +\subsection{Banner font} + +Using \verb+\settombowbannerfont+, you can change the font +with which the banner is printed. +\begin{verbatim} + \settombowbannerfont{cmss10 at 9pt} +\end{verbatim} +This feature internally calls the \TeX\ primitive \verb+\font+, +and accepts all fonts supported by the engine. When Lua\TeX\ or +Xe\TeX\ is used, a native OpenType font can also be given. + +\subsection{Crop mark line width} + +By default, the line width of crop marks is 0.1~pt. +This can be change to 1~pt by \verb+\settombowwidth{1pt}+. +The argument is an arbitrary dimension. + +\subsection{Bleed margin width} + +By default, the bleed margin width is 3~mm. +This can be change to 5~mm by \verb+\settombowwidth{5mm}+. +The argument is an arbitrary dimension. + +\subsection{Crop mark color} + +Set the color of crop marks. Package \textsf{xcolor} (recommended) or +\textsf{xcolor} is required. +For example, \verb+\settombowcolor{\color[cmyk]{0,1,0,0}}+ sets magenta. + +\section{Setting PDF page box (``digital tombow'')} + +This is an optional driver-dependent feature. +When \textsf{gentombow} is required with the option \verb+pdfbox+, +following page boxes are emitted to the output PDF file. +The paper size (\verb+/MediaBox+) is also corrected. +\begin{itemize} +\item \verb+/TrimBox+: final paper size. +\item \verb+/BleedBox+: paper size plus bleed margin. +\item \verb+/CropBox+ and \verb+/ArtBox+ are not set. +\end{itemize} +Note: if the package \textsf{pdfx} is loaded with PDF/X mode, +this optional feature is automatically enabled. +Also, \verb+/CropBox+ is set explicitly. + +\section{Additional Notes} + +Here is some additional notes for use with several classes/packages. + +\subsection{Note for \textsf{BXjscls} users} + +When using \textsf{BXjscls} (by Takayuki YATO) with size option +other than 10pt, please add \verb+nomag+ or \verb+nomag*+ to the +class option. For example, +\begin{verbatim} + \documentclass[a4paper,14pt]{bxjsarticle} + \usepackage{gentombow} +\end{verbatim} +will not work as expected (\textsf{gentombow} throws an error +for safety). + +\subsection{Note about Layout Settings} + +You should not change \verb+\hoffset+ or \verb+\voffset+ to non-zero +value, for the purpose of layout settings. Such settings will +conflict with the feature of \textsf{gentombow} package. +To set page layout correctly, you should adjust \verb+\oddsidemargin+ +or \verb+\topmargin+, or leave it to \textsf{geometry} package. + +Note: since the package \textsf{geometry} also has a feature to +change the paper size (\verb+\paperwidth+, \verb+\paperheight+), +please load \textsf{gentombow} after \textsf{geometry}. + +\section*{Change History} + +\begin{itemize} + \item 2017/12/17 v0.9 First CTAN release + \item 2018/03/16 v0.9e Add \verb+\settombowbanner+, + \verb+\settombowbannerfont+ and + \verb+\settombowwidth+. + \item 2018/05/17 v0.9g Add \verb+pdfbox+ option, + \verb+\settombowbleed+ and + \verb+\settombowcolor+. + \item 2018/08/20 v0.9h Add \texttt{hagaki} size for paper detection, + improve patches for \textsf{pdfpages}. + \item 2018/08/30 v0.9j Support \textsf{jsclasses}-style \verb+\mag+ employment + also with \verb+pdfbox+ option. + Fix a bug that \verb+\settombowbleed+ is not + considered by \verb+/TrimBox+. + \item 2019/07/21 v0.9k Support \textsf{pdfx} package. + \item 2020/10/14 v0.9l Import tombow-related patches from \textsf{plautopatch}. +\end{itemize} + +\end{document} diff --git a/macros/jptex/latex/gentombow/pxesopic.sty b/macros/jptex/latex/gentombow/pxesopic.sty new file mode 100644 index 0000000000..567b9d0a2d --- /dev/null +++ b/macros/jptex/latex/gentombow/pxesopic.sty @@ -0,0 +1,239 @@ +% +% pxesopic.sty +% written by Hironobu Yamashita (@aminophen) +% +% This package is part of the gentombow bundle. +% https://github.com/aminophen/gentombow +% +% This package is expected to be compatible with +% * eso-pic.sty +% 2015/07/21 v2.0g -- 2020/09/27 v2.0i +% +% -------------------------------------------------------------- +% [Note] +% The package ``pxesopic.sty'' relies heavily on internals +% of ``plautopatch.sty''. +% Also, ``pxesopic.sty'' is incompatible with ``memoir.cls''. +% -------------------------------------------------------------- +% + +%% package declaration +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{pxesopic} + [2020/10/11 v0.4c Patch to eso-pic for tombow] + +%% preparations +\def\pxesop@pkgname{pxesopic} +\def\pxesop@error{\PackageError\pxesop@pkgname} +\def\pxesop@warn{\PackageWarningNoLine\pxesop@pkgname} +\let\pxesop@debug\@gobble +%\def\pxesop@debug#1{\typeout{\pxesop@pkgname: [DEBUG] #1}}% for debug + +\@ifclassloaded{memoir}{% + \pxesop@warn{This package should not be loaded with memoir.cls}}{} + +\@ifpackageloaded{eso-pic}{% + \pxesop@error{% + Package eso-pic is already loaded!\MessageBreak + Load pxesopic earlier}\@ehc +}{} + +%% hooks +\ifx\declare@file@substitution\@undefined + % LaTeX2e 2020-02-02 PL5 or older + \RequirePackage{filehook} + \let\pxesop@ExecuteAfterPackage=\AtEndOfPackageFile + \let\pxesop@ExecuteBeforePackage=\AtBeginOfPackageFile +\else + % LaTeX2e 2020-10-01 or newer + \def\pxesop@ExecuteAfterPackage#1{\AddToHook{package/after/#1}} + \def\pxesop@ExecuteBeforePackage#1{\AddToHook{package/before/#1}} +\fi + +%% the contents of \AtBeginShipout is dependent on \iftombow; +%% delay execution of \AtBeginShipout inside ``eso-pic.sty'' +%% until \AtBeginDocument, to support both (u)pLaTeX kernel +%% and ``gentombow.sty'' +\RequirePackage{atbegshi}% eso-pic requires atbegshi +\ifx\pfmtname\@undefined\else + \ifx\AtBegShi@Output\@undefined + % LaTeX2e 2020-10-01: an emulation by ``atbegshi-ltx.sty'' + % => pLaTeX2e 2020-10-01 natively supports it + \else + % older: the real ``atbegshi.sty'' is loaded + \IfFileExists{pxatbegshi.sty}{\RequirePackage{pxatbegshi}}{} + \fi +\fi +% +\pxesop@ExecuteBeforePackage{eso-pic}{\pxesop@before} +\pxesop@ExecuteAfterPackage{eso-pic}{\pxesop@after} +% +\def\pxesop@before{% + \let\pxesop@AtBeginShipout\AtBeginShipout + \def\AtBeginShipout##1{\def\pxesop@hook{##1}}% hide it + \pxesop@debug{\noexpand\AtBeginShipout disabled}% + \let\pxesop@before\relax +} +\def\pxesop@after{% + \let\AtBeginShipout\pxesop@AtBeginShipout % restore + \let\pxesop@AtBeginShipout\relax + \pxesop@debug{\noexpand\AtBeginShipout restored}% + \let\@unknownoptionerror\relax %% avoid an error + \pxesop@debug{\noexpand\@unknownoptionerror disabled}% + \let\pxesop@after\relax +} +%% + +%% load it; be careful not to cause unknown option error! +\expandafter\ifx\csname @unknownoptionerror\endcsname + \pxesop@error{Failed to save \noexpand\@unknownoptionerror}\@ehc +\fi +\let\pxesop@unknownoptionerror\@unknownoptionerror +% +\chardef\pxesop@status\z@ +\@ifpackageloaded{plautopatch}{% + \expandafter\ifx\csname platpc@begin@eso-pic\endcsname\relax + % ``plautopatch.sty'' is loaded but the macro is \relax + % => means that ``pxesopic.sty'' is automatically loaded + \@ifl@t@r{\fmtversion}{2020/10/01}{% + \chardef\pxesop@status\@ne + }{}% + \fi +}{} +% +%% pass all options to keyval-style ``eso-pic.sty'' +\DeclareOption*{\PassOptionsToPackage{\CurrentOption}{eso-pic}} +\ProcessOptions\relax +\RequirePackage{eso-pic} +% +%% ensure internal dimensions added in ``eso-pic.sty'' v2.0i +\ifx\ESO@tempdima\@undefined \newdimen\ESO@tempdima \fi +\ifx\ESO@tempdimb\@undefined \newdimen\ESO@tempdimb \fi +% +%% recover the error +\ifnum\pxesop@status>\z@ % auto + \def\pxesop@pkgtohook{eso-pic}% + % note that ``plautopatch.sty'' discards the hook + % on LaTeX2e 2020-02-02 PL5 or older + \ifx\declare@file@substitution\@undefined + \let\pxesop@pkgtohook\pxesop@pkgname + % throw an error for unsupported usage + % [FIXME] the error below is actually unnecessary when + % none of ``eso-pic.sty'' options is used; how to detect that? + \pxesop@error{Try loading \pxesop@pkgname\space by hand}\@ehc + \fi +\else + \let\pxesop@pkgtohook\pxesop@pkgname +\fi +\pxesop@ExecuteAfterPackage\pxesop@pkgtohook{% + \let\@unknownoptionerror\pxesop@unknownoptionerror + \pxesop@debug{\noexpand\@unknownoptionerror restored}% +} +%% + +%% do it +%-- similar to bounddvi.sty (checked 2020/10/08 v8.2) +% detection of \iftombow availability is delayed until \AtBeginDocument, +% to support both (u)pLaTeX kernel and ``gentombow.sty'' +% Note: this package does not consider changing \iftombow status +% in the middle of a single document. +\AtBeginDocument{\pxesop@do} +\def\pxesop@do{% + \ifx\tombowtrue\@undefined + \pxesop@debug{Tombow feature unavailable, no patch applied}% + \let\pxesop@switch\pxesop@orig % skip if-tokens and restore + \fi + \pxesop@switch} +% +\def\pxesop@switch{% + \iftombow \pxesop@ensure@stock \pxesop@new + \else \pxesop@orig \fi} +% +\def\pxesop@ensure@stock{% + %\iftombow + % if \stockwidth/\stockheight are not available, + % define them now + \ifx\stockwidth\@undefined \newdimen\stockwidth \fi + \ifx\stockheight\@undefined \newdimen\stockheight \fi + % if \stockwidth already has effective value, do nothing; + % otherwise assume pLaTeX-style tombow and set it to + % \paperwidth + 2in (similar for \stockheight) + \ifdim\stockwidth>\z@\else + \stockwidth\paperwidth \advance\stockwidth2in + \fi + \ifdim\stockheight>\z@\else + \stockheight\paperheight \advance\stockheight2in + \fi + %\fi +} +%-- +% +%% for \iftombow is FALSE => restore from ``eso-pic.sty'' +\expandafter\def\expandafter\pxesop@orig\expandafter{% + \expandafter\AtBeginShipout\expandafter{\pxesop@hook}} +% +%% for \iftombow is TRUE => redefine by ``pxesopic.sty'' +\def\pxesop@new{% + %% \AtStockLowerLeft: based on TRUE of \ESO@isMEMOIR + \renewcommand\AtStockLowerLeft[1]{% + \begingroup + \ESO@tempdima=-\stockwidth + \advance\ESO@tempdima\paperwidth + \ESO@tempdimb=-\stockheight + \advance\ESO@tempdimb\paperheight + %% specific BEGIN + \advance\ESO@tempdima 1in\relax + \advance\ESO@tempdimb 1in\relax + \advance\ESO@tempdima \hoffset\relax + \advance\ESO@tempdimb \voffset\relax + %% specific END + \AtPageLowerLeft{% + \put(\LenToUnit{\ESO@tempdima},\LenToUnit{\ESO@tempdimb}){##1}% + }% + \endgroup + }% === + %% \AtStockUpperLeft: based on TRUE of \ESO@isMEMOIR + \renewcommand\AtStockUpperLeft[1]{% + \AtStockLowerLeft{% + \put(0,\LenToUnit{\stockheight}){##1}% + }% + }% === + %% \AtStockCenter: based on TRUE of \ESO@isMEMOIR + \renewcommand\AtStockCenter[1]{% + \AtStockLowerLeft{% + \put(\LenToUnit{.5\stockwidth},\LenToUnit{.5\stockheight}){##1}% + }% + }% + %% \AtTextUpperLeft: same as FALSE of \ESO@isMEMOIR + % (no change) + % + %% \AtBeginShipout: based on TRUE of \ESO@isMEMOIR + \AtBeginShipout{% + \ESO@tempdima=\dimexpr(\stockwidth-\paperwidth)/2\relax + \ESO@tempdimb=-\dimexpr(\stockheight+\paperheight)/2\relax + \ifESO@texcoord + \advance\ESO@tempdimb\paperheight % [FIXME] not sure! + \fi + %% specific BEGIN + \advance\ESO@tempdima -\hoffset\relax + \advance\ESO@tempdimb \voffset\relax + %% specific END + \nointerlineskip + \AtBeginShipoutUpperLeft{% + \put(\LenToUnit{\ESO@tempdima},\LenToUnit{\ESO@tempdimb}){% + \ESO@HookIIIBG\ESO@HookIBG\ESO@HookIIBG + \global\let\ESO@HookIIBG\@empty + }% + }% + \AtBeginShipoutUpperLeftForeground{% + \put(\LenToUnit{\ESO@tempdima},\LenToUnit{\ESO@tempdimb}){% + \ESO@HookIFG\ESO@HookIIFG\ESO@HookIIIFG + \global\let\ESO@HookIIFG\@empty + }% + }% + }% === +} +%% + +\endinput +%% EOF diff --git a/macros/jptex/latex/gentombow/pxgentombow.pdf b/macros/jptex/latex/gentombow/pxgentombow.pdf new file mode 100644 index 0000000000..d30a4509e4 Binary files /dev/null and b/macros/jptex/latex/gentombow/pxgentombow.pdf differ diff --git a/macros/jptex/latex/gentombow/pxgentombow.sty b/macros/jptex/latex/gentombow/pxgentombow.sty new file mode 100644 index 0000000000..bd94b4bcee --- /dev/null +++ b/macros/jptex/latex/gentombow/pxgentombow.sty @@ -0,0 +1,16 @@ +% +% pxgentombow.sty +% written by Hironobu Yamashita (@aminophen) +% +% This package is part of the gentombow bundle. +% https://github.com/aminophen/gentombow +% + +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{pxgentombow} + [2020/10/14 v0.9l Generate crop mark 'tombow'] +\PackageWarningNoLine{pxgentombow}{% + Package `pxgentombow' is now superseded by\MessageBreak + `gentombow', use `gentombow' instead} +\RequirePackageWithOptions{gentombow}% load it +\endinput diff --git a/macros/jptex/latex/gentombow/pxgentombow.tex b/macros/jptex/latex/gentombow/pxgentombow.tex new file mode 100644 index 0000000000..8a8c2616bd --- /dev/null +++ b/macros/jptex/latex/gentombow/pxgentombow.tex @@ -0,0 +1,25 @@ +%# -*- coding: utf-8 -*- +\ifx\epTeXinputencoding\undefined\else % defined in e-pTeX (> TL2016) + \epTeXinputencoding utf8 % ensure utf-8 encoding for platex +\fi + +\documentclass[a4paper]{jsarticle} +\usepackage{doc} +\usepackage{pxgentombow} +\usepackage{bounddvi} +\GetFileInfo{pxgentombow.sty} +\title{Package \textsf{pxgentombow}} +\author{Hironobu Yamashita} +\date{2018年5月17日} +\begin{document} + +\maketitle + +\begin{center} +The package \textsf{pxgentombow} is now superseded by \textsf{gentombow}! +\end{center} + +\textsf{pxgentombow}パッケージは、上位版である\textsf{gentombow}パッケージに +統一されました。代わりに\textsf{gentombow}パッケージを使用してください。 + +\end{document} diff --git a/macros/jptex/latex/gentombow/pxpdfpages.sty b/macros/jptex/latex/gentombow/pxpdfpages.sty new file mode 100644 index 0000000000..ad86ea819b --- /dev/null +++ b/macros/jptex/latex/gentombow/pxpdfpages.sty @@ -0,0 +1,72 @@ +% +% pxpdfpages.sty +% written by Hironobu Yamashita (@aminophen) +% +% This package is part of the gentombow bundle. +% https://github.com/aminophen/gentombow +% +% This package is expected to be compatible with +% * pdfpages.sty +% (2015/07/19 v0.5a -- 2020/01/28 v0.5q) +% + +%% package declaration +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{pxpdfpages} + [2020/10/11 v0.4c Patch to pdfpages for tombow] + +%% preparations +\def\pxpdpg@pkgname{pxpdfpages} +\def\pxpdpg@warn{\PackageWarningNoLine\pxpdpg@pkgname} +\def\pxpdpg@info{\PackageInfo\pxpdpg@pkgname} +\let\pxpdpg@debug\@gobble +%\def\pxpdpg@debug#1{\typeout{\pxpdpg@pkgname: [DEBUG] #1}}% for debug + +%% load it +\RequirePackageWithOptions{pdfpages}% pdfpages requires atbegshi +\ifx\pfmtname\@undefined\else + \ifx\AtBegShi@Output\@undefined + % LaTeX2e 2020-10-01: an emulation by ``atbegshi-ltx.sty'' + % => pLaTeX2e 2020-10-01 natively supports it + \else + % older: the real ``atbegshi.sty'' is loaded + \IfFileExists{pxatbegshi.sty}{\RequirePackage{pxatbegshi}}{} + \fi +\fi + +%% do it +%-- similar to bounddvi.sty (checked 2020/10/08 v8.2) +% detection of \iftombow availability is delayed until \AtBeginDocument, +% to support both (u)pLaTeX kernel and ``gentombow.sty'' +\AtBeginDocument{\pxpdpg@do} +\def\pxpdpg@do{% + \ifx\tombowtrue\@undefined + \pxpdpg@debug{Tombow feature unavailable, no patch applied}% + \let\pxpdpg@switch\relax % do nothing + \fi + \pxpdpg@switch} +% +\def\pxpdpg@switch{\pxpdpg@patch@pdfpages} + +%% patch internal for pdfpages to work with tombow +%-- Note: this code should be copied to gentombow.sty! +\def\pxpdpg@patch@pdfpages{% + \RequirePackage{etoolbox} + \patchcmd{\AM@output}{% + \setlength{\@tempdima}{\AM@xmargin}% + \edef\AM@xmargin{\the\@tempdima}% + \setlength{\@tempdima}{\AM@ymargin}% + \edef\AM@ymargin{\the\@tempdima}% + }{% + \setlength{\@tempdima}{\AM@xmargin\iftombow+1in\fi}% + \edef\AM@xmargin{\the\@tempdima}% + \setlength{\@tempdima}{\AM@ymargin\iftombow-1in\fi}% + \edef\AM@ymargin{\the\@tempdima}% + }% + {\pxpdpg@info{Patch for pdfpages applied}}% + {\pxpdpg@warn{Patch for pdfpages failed}}% +} + +%% all done + +\endinput diff --git a/macros/jptex/latex/gentombow/pxtextpos.sty b/macros/jptex/latex/gentombow/pxtextpos.sty new file mode 100644 index 0000000000..02cd5202e2 --- /dev/null +++ b/macros/jptex/latex/gentombow/pxtextpos.sty @@ -0,0 +1,108 @@ +% +% pxtextpos.sty +% written by Hironobu Yamashita (@aminophen) +% +% This package is part of the gentombow bundle. +% https://github.com/aminophen/gentombow +% +% This package is expected to be compatible with +% * textpos.sty +% 2005/10/13 v1.6a -- 2019/04/15 v1.9.1 +% + +%% package declaration +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{pxtextpos} + [2020/10/11 v0.4b Patch to textpos for tombow] + +%% preparations +\def\pxtxtpos@pkgname{pxtextpos} +\def\pxtxtpos@warn{\PackageWarningNoLine\pxtxtpos@pkgname} +\let\pxtxtpos@debug\@gobble +%\def\pxtxtpos@debug#1{\typeout{\pxtxtpos@pkgname: [DEBUG] #1}}% for debug + +%% load it +\RequirePackageWithOptions{textpos} +% textpos requires everyshi, only if both conditions are met: +% (1) \fmtversion is **older** than 2020/10/01 +% (2) \ifTP@abspos == \iftrue +% [TODO] tate-mode support is incomplete! +\ifx\pfmtname\@undefined\else + \ifx\@EveryShipout@Output\@undefined + % LaTeX2e 2020-10-01: an emulation by ``everyshi-ltx.sty'' + % => pLaTeX2e 2020-10-01 natively supports it + \else + % older: the real ``everyshi.sty'' is loaded + \IfFileExists{pxeveryshi.sty}{\RequirePackage{pxeveryshi}}{} + \fi +\fi + +%% do it +%-- similar to bounddvi.sty (checked 2020/10/08 v8.2) +% detection of \iftombow availability is delayed until \AtBeginDocument, +% to support both (u)pLaTeX kernel and ``gentombow.sty'' +\AtBeginDocument{\pxtxtpos@do} +\def\pxtxtpos@do{% + \ifx\tombowtrue\@undefined + \pxtxtpos@debug{Tombow feature unavailable, no patch applied}% + \let\pxtxtpos@switch\relax % do nothing + \fi + \pxtxtpos@switch} +% +\def\pxtxtpos@switch{% + \let\textblockorigin\pxtxtpos@textblockorigin + \ifTP@abspos\textblockorigin{0pt}{0pt}\fi %% reset +} + +%% known definition +\def\pxtxtpos@textblockorigin#1#2{% + \ifTP@abspos + \TP@ox=-1in \addtolength\TP@ox{#1} + \TP@oy=-1in \addtolength\TP@oy{#2} + \ifTP@chatter\typeout{TextBlockOrigin set to #1 x #2}\fi + \else + \PackageError{textpos} + {The \protect\textblockorigin\space command\MessageBreak + may only be used if the package was given\MessageBreak + the`absolute' option when it was invoked} + {If you want to use the \protect\textblockorigin\space command, then + \MessageBreak + invoke the package with the syntax\MessageBreak + \protect\usepackage[absolute]{textpos}} + \fi +} +\@onlypreamble\pxtxtpos@textblockorigin + +%% check definition +\ifx\textblockorigin\pxtxtpos@textblockorigin\else + \pxtxtpos@warn{% + Command \noexpand\textblockorigin is beyond my knowledge.\MessageBreak + I will apply the patch anyway, but it may break:\MessageBreak + Please report to the author of `\pxtxtpos@pkgname.sty'} +\fi + +%% new definition +\def\pxtxtpos@textblockorigin#1#2{% + \ifTP@abspos + \TP@ox=-1in \addtolength\TP@ox{#1} + \TP@oy=-1in \addtolength\TP@oy{#2} + %%% addition + \iftombow + \addtolength\TP@ox{1in}\addtolength\TP@oy{1in} + \fi + %%% + \ifTP@chatter\typeout{TextBlockOrigin set to #1 x #2}\fi + \else + \PackageError{textpos} + {The \protect\textblockorigin\space command\MessageBreak + may only be used if the package was given\MessageBreak + the`absolute' option when it was invoked} + {If you want to use the \protect\textblockorigin\space command, then + \MessageBreak + invoke the package with the syntax\MessageBreak + \protect\usepackage[absolute]{textpos}} + \fi +} + +\endinput +%% EOF diff --git a/macros/jptex/latex/jsclasses/LICENSE b/macros/jptex/latex/jsclasses/LICENSE new file mode 100644 index 0000000000..1f8bc0f533 --- /dev/null +++ b/macros/jptex/latex/jsclasses/LICENSE @@ -0,0 +1,25 @@ +Copyright 1995-1999 ASCII MEDIA WORKS +Copyright 1999-2016 Haruhiko Okumura +Copyright 2016-2020 Japanese TeX Development Community +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/macros/jptex/latex/jsclasses/Makefile b/macros/jptex/latex/jsclasses/Makefile new file mode 100644 index 0000000000..3e91b82d58 --- /dev/null +++ b/macros/jptex/latex/jsclasses/Makefile @@ -0,0 +1,89 @@ +STRIPTARGET = jsarticle.cls jslogo.sty okumacro.sty jsverb.sty okuverb.sty +DOCTARGET = jsclasses jslogo okumacro jsverb okuverb +PDFTARGET = $(addsuffix .pdf,$(DOCTARGET)) +DVITARGET = $(addsuffix .dvi,$(DOCTARGET)) +KANJI = -kanji=utf8 +FONTMAP = -f haranoaji.map -f ptex-haranoaji.map +TEXMF = $(shell kpsewhich -var-value=TEXMFHOME) + +default: $(STRIPTARGET) $(DVITARGET) +strip: $(STRIPTARGET) +all: $(STRIPTARGET) $(PDFTARGET) + +JSCLASSES = jsarticle.cls jsbook.cls jsreport.cls jspf.cls kiyou.cls \ + minijs.sty + +# for generating files, we use pdflatex incidentally. +# otherwise, ptexenc might convert U+2212 -> U+FF0D in okumacro.sty +jsarticle.cls: jsclasses.dtx + pdflatex jsclasses.ins + +jslogo.sty: jslogo.dtx + pdflatex jslogo.ins + +okumacro.sty: okumacro.dtx + pdflatex okumacro.ins + +jsverb.sty: jsverb.dtx + pdflatex jsverb.ins + +okuverb.sty: okuverb.dtx + pdflatex okuverb.ins + +.SUFFIXES: .dtx .dvi .pdf +.dtx.dvi: + platex $(KANJI) $< + platex $(KANJI) $< +.dvi.pdf: + dvipdfmx $(FONTMAP) $< + +.PHONY: install clean cleanstrip cleanall cleandoc jisfile +install: + mkdir -p ${TEXMF}/doc/platex/jsclasses + cp ./LICENSE ${TEXMF}/doc/platex/jsclasses/ + cp ./README.md ${TEXMF}/doc/platex/jsclasses/ + cp ./*.pdf ${TEXMF}/doc/platex/jsclasses/ + mkdir -p ${TEXMF}/source/platex/jsclasses + cp ./Makefile ${TEXMF}/source/platex/jsclasses/ + cp ./*.dtx ${TEXMF}/source/platex/jsclasses/ + cp ./*.ins ${TEXMF}/source/platex/jsclasses/ + mkdir -p ${TEXMF}/tex/platex/jsclasses + cp ./*.cls ${TEXMF}/tex/platex/jsclasses/ + cp ./*.sty ${TEXMF}/tex/platex/jsclasses/ +clean: + rm -f $(JSCLASSES) \ + jslogo.sty okumacro.sty jsverb.sty okuverb.sty \ + $(DVITARGET) +cleanstrip: + rm -f $(JSCLASSES) \ + jslogo.sty okumacro.sty jsverb.sty okuverb.sty +cleanall: + rm -f $(JSCLASSES) \ + jslogo.sty okumacro.sty jsverb.sty okuverb.sty \ + $(DVITARGET) $(PDFTARGET) +cleandoc: + rm -f $(DVITARGET) $(PDFTARGET) +jisfile: + mkdir -p jis0 + cp *.{dtx,ins,cls,sty} jis0/ + # GNU iconv can be used to convert UTF-8 -> ISO-2022-JP + for x in jis0/*; do \ + if [ -f "$$x" ]; then \ + iconv -f UTF-8 -t ISO-2022-JP "$$x" >"$$x.conv"; \ + mv "$$x.conv" "$$x"; \ + fi \ + done + # jsclasses and okumacro contain non-ASCII chars also in stripped files + for x in $(addprefix jis0/,$(JSCLASSES) jsclasses.dtx okumacro.dtx okumacro.sty); do \ + perl -pi.bak -0777 -e 's/(%\n)?\\ifx\\epTeXinputencoding\\undefined.*?\n\\fi\n(%\n)?//s' $$x; \ + rm -f $$x.bak; \ + done + # others have no non-ASCII chars in stripped files + for x in $(addprefix jis0/,$(wildcard *.dtx)); do \ + perl -pi.bak -0777 -e 's/(%\n)?% \\ifx\\epTeXinputencoding\\undefined.*?\n% \\fi\n(%\n)?//s' $$x; \ + perl -pi.bak -0777 -e 's/(%\n)?%<\*driver>\n\\ifx\\epTeXinputencoding\\undefined.*?\n\\fi\n%<\/driver>\n//s' $$x; \ + rm -f $$x.bak; \ + done + rm -f jis/*.{dtx,ins,cls,sty} + mv jis0/* jis/ + rmdir jis0 diff --git a/macros/jptex/latex/jsclasses/README.md b/macros/jptex/latex/jsclasses/README.md new file mode 100644 index 0000000000..284efa7815 --- /dev/null +++ b/macros/jptex/latex/jsclasses/README.md @@ -0,0 +1,43 @@ +# jsclasses + +The bundle provides Japanese classes and packages, mainly for use with +pLaTeX and upLaTeX. These were originally written by Haruhiko Okumura, +and currently maintained by the Japanese TeX Development Community +(https://texjp.org) on the GitHub repository: + +- https://github.com/texjporg/jsclasses + +The classes themselves do not automatically enable the support of +Japanese language. You'll need to set up LaTeX environment appropriately +so that it can handle Japanese. + +## Character encoding + +In the above repository, we include the pre-generated cls/sty files to +ensure proper encoding. All files are now encoded in UTF-8, since +recent versions of pLaTeX/upLaTeX recognizes `\epTeXinputencoding` +primitive of e-(u)pTeX. If you are using old (< 2015) pLaTeX/upLaTeX, +please download files in jis/ directory. + +## Contents + +- jsclasses (jsarticle, jsbook, jsreport and miscellaneous) + - Japanese classes for pLaTeX/upLaTeX. +- minijs + - Minimal jsclasses-like settings for pLaTeX/upLaTeX. +- okumacro + - Miscellaneous macros for pLaTeX/upLaTeX, written by H. Okumura. +- jsverb, okuverb + - Extended version of `\verb` and `verbatim` env. for pLaTeX/upLaTeX. +- jslogo + - Extended version of LaTeX-related logos for all *LaTeX engines. + +The package [morisawa](https://github.com/texjporg/morisawa) is now +distributed separately. + +## Release Date + +2021-07-01 + +Haruhiko Okumura, +Japanese TeX Development Community diff --git a/macros/jptex/latex/jsclasses/jsclasses.dtx b/macros/jptex/latex/jsclasses/jsclasses.dtx new file mode 100644 index 0000000000..37567b64d9 --- /dev/null +++ b/macros/jptex/latex/jsclasses/jsclasses.dtx @@ -0,0 +1,6106 @@ +% ^^A -*- japanese-latex -*- +% +\ifx\epTeXinputencoding\undefined\else + \epTeXinputencoding utf8 % ^^A added (2017-10-04) +\fi +% +% \iffalse meta-comment +% +% pLaTeX2ε新ドキュメントクラス(日本語 TeX 開発コミュニティ版) +% 原作者:奥村晴彦 +% +% Copyright 1993-2021 +% The LaTeX3 Project and any individual authors listed elsewhere +% in this file. +% +% Copyright 1995-1999 ASCII Corporation. +% Copyright 1999-2016 Haruhiko Okumura +% Copyright 2016-2021 Japanese TeX Development Community +% +% \fi +% +% \iffalse +% +% \begin{macrocode} +\NeedsTeXFormat{pLaTeX2e} +%
    \ProvidesClass{jsarticle} +%\ProvidesClass{jsbook} +%\ProvidesClass{jsreport} +%\ProvidesClass{jspf} +%\ProvidesClass{kiyou} +%\ProvidesPackage{minijs} +%<*driver> +\ProvidesFile{jsclasses.dtx} +% + [2021/06/28 jsclasses (okumura, texjporg)] +%<*driver> +\documentclass{jsarticle} +\usepackage{doc} +\xspcode"5C=1 %% \ +\xspcode"22=1 %% " +\addtolength{\textwidth}{-1in} +\addtolength{\evensidemargin}{1in} +\addtolength{\oddsidemargin}{1in} +\addtolength{\marginparwidth}{1in} +\setlength\marginparpush{0pt} +% \OnlyDescription +\CodelineNumbered +\DisableCrossrefs +\setcounter{StandardModuleDepth}{1} +\GetFileInfo{jsclasses.dtx} +\begin{document} + \DocInput{jsclasses.dtx} +\end{document} +% +% \end{macrocode} +% +% \fi +% +% \title{\pLaTeXe 新ドキュメントクラス} +% \author{奥村晴彦,日本語\TeX 開発コミュニティ} +% \date{\filedate} +% \maketitle +% +% \MakeShortVerb{\|} +% +% \section{はじめに} +% +% これは\LaTeX3 Projectの \texttt{classes.dtx} と +% 株式会社アスキーの \texttt{jclasses.dtx} に基づいて +% もともと奥村晴彦により作成されたものです。 +% 現在は日本語\TeX 開発コミュニティによりGitHubで管理されています。 +% \begin{quote} +% |https://github.com/texjporg/jsclasses| +% \end{quote} +% +% [2002-12-19] いろいろなものに収録していただく際にライセンスを明確にする +% 必要が生じてきました。アスキーのものが最近はmodified BSDライセンスになっ +% ていますので,私のものもそれに準じてmodified BSDとすることにします。 +% +% [2016-07-13] 日本語\TeX 開発コミュニティによる管理に移行しました。 +% +% [2009-02-22] 田中琢爾氏によるup\LaTeX 対応パッチを取り込みました。 +% +% ここでは次のドキュメントクラス(スタイルファイル)を作ります。 +% +% [2017-02-13] forum:2121の議論を機に,jsreportクラスを新設しました。 +% 従来のjsbookの |report| オプションと比べると,|abstract| 環境の使い方 +% および挙動がアスキーのjreportに近づきました。 +% +% \begin{quote} +% \begin{tabular}{lll} +% $\langle$\textsf{article}$\rangle$ & \texttt{jsarticle.cls} & 論文・レポート用 \\ +% $\langle$\textsf{book}$\rangle$ & \texttt{jsbook.cls} & 書籍用 \\ +% $\langle$\textsf{report}$\rangle$ & \texttt{jsreport.cls} & レポート用 \\ +% $\langle$\textsf{jspf}$\rangle$ & \texttt{jspf.cls} & 某学会誌用 \\ +% $\langle$\textsf{kiyou}$\rangle$ & \texttt{kiyou.cls} & 某紀要用 +% \end{tabular} +% \end{quote} +% +% \LaTeXe あるいは\pLaTeXe 標準のドキュメントクラスとの違いを説明してお +% きます。 +% +% \paragraph{JISフォントメトリックの使用} +% +% ここでは和文TFM(\TeX フォントメトリック)として東京書籍印刷の小林肇さ +% んの作られたJISフォントメトリック \texttt{jis.tfm},\texttt{jisg.tfm} +% を標準で使います。従来のフォントメトリック \texttt{min10.tfm}, +% \texttt{goth10.tfm} の類を使うには +% \begin{quote} +% |\documentclass[mingoth]{jsarticle}| +% \end{quote} +% のように \texttt{mingoth} オプションを付けます。 +% +% \paragraph{サイズオプションの扱いが違う} +% +% 標準のドキュメントクラスでは本文のポイント数を指定するオプションがあり +% ましたが,ポイント数は10,11,12しかなく,それぞれ別のクラスオプション +% ファイルを読み込むようになっていました。しかも,標準の10ポイント以外で +% は多少フォントのバランスが崩れることがあり,あまり便利ではありませんで +% した。ここでは文字サイズを増すとページを小さくし,\TeX の |\mag| プリ +% ミティブで全体的に拡大するという手を使って,9ポイントや21,25,30,36, +% 43ポイント,12Q,14Qの指定を可能にしています。 +% +% \StopEventually{} +% +% 以下では実際のコードに即して説明します。 +% +% \texttt{minijs}は,\texttt{jsclasses}に似た設定を行うパッケージです。 +% +% \begin{macrocode} +%<*minijs> +%% if jsclasses loaded, abort loading this package +\ifx\@jsc@uplatextrue\@undefined\else + \PackageInfo{minijs}{jsclasses does not need minijs, exiting} + \expandafter\endinput +\fi +%% "fake" jsarticle +\expandafter\def\csname ver@jsarticle.cls\endcsname{} +% +% \end{macrocode} +% +% \begin{macro}{\jsc@clsname} +% +% 文書クラスの名前です。エラーメッセージ表示などで使われます。 +% +% \begin{macrocode} +%<*class> +%
    \def\jsc@clsname{jsarticle} +%\def\jsc@clsname{jsbook} +%\def\jsc@clsname{jsreport} +%\def\jsc@clsname{jspf} +%\def\jsc@clsname{kiyou} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\ifjsc@needsp@tch} +% +% [2016-08-22] 従来\texttt{jsclasses}では,\pLaTeX や\LaTeX の +% 不都合な点に対して,クラスファイル内で独自に対策を施していま +% した。しかし,2016年以降,コミュニティ版\pLaTeX が次第に対策 +% コードをカーネル内に取り込むようになりました。そこで,新しい +% \pLaTeX カーネルと衝突しないように,日付が古い場合だけパッチ +% をあてる場合があります。この処理に使用するフラグを定義します。 +% +% \begin{macrocode} +% +%<*class|minijs> +\newif\ifjsc@needsp@tch +\jsc@needsp@tchfalse +% +%<*class> +% \end{macrocode} +% \end{macro} +% +% \section{オプション} +% +% これらのクラスは |\documentclass{jsarticle}| +% あるいは |\documentclass[オプション]{jsarticle}| +% のように呼び出します。 +% +% まず,オプションに関連するいくつかのコマンドやスイッチ(論理変数)を定 +% 義します。 +% +% \begin{macro}{\if@restonecol} +% +% 段組のときに真になる論理変数です。 +% +% \begin{macrocode} +\newif\if@restonecol +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\if@titlepage} +% +% これを真にすると表題,概要を独立したページに出力します。 +% +% \begin{macrocode} +\newif\if@titlepage +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\if@openright} +% +% |\chapter|,|\part| を右ページ起こしにするかどうかです。 +% 横組の書籍では真が標準で,要するに片起こし,奇数ページ起こしになります。 +% +% \begin{macrocode} +%\newif\if@openright +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\if@openleft} +% +% [2017-02-24] |\chapter|,|\part| を左ページ起こしにするかどうかです。 +% +% \begin{macrocode} +%\newif\if@openleft +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\if@mainmatter} +% +% 真なら本文,偽なら前付け・後付けです。 +% 偽なら |\chapter| で章番号が出ません。 +% +% \begin{macrocode} +%\newif\if@mainmatter \@mainmattertrue +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\if@enablejfam} +% +% 和文フォントを数式フォントとして登録するかどうかを示すスイッチです。 +% +% \begin{macrocode} +\newif\if@enablejfam \@enablejfamtrue +% \end{macrocode} +% \end{macro} +% +% 以下で各オプションを宣言します。 +% +% \paragraph{用紙サイズ} +% +% JISやISOのA0判は面積 $1\,\mathrm{m}^2$,縦横比 $1:\sqrt{2}$ +% の長方形の辺の長さを mm 単位に切り捨てたものです。 +% これを基準として順に半截しては mm 単位に切り捨てたものがA1,A2,…です。 +% +% B判はJISとISOで定義が異なります。 +% JISではB0判の面積が $1.5\,\mathrm{m}^2$ ですが, +% ISOではB1判の辺の長さがA0判とA1判の辺の長さの幾何平均です。 +% したがってISOのB0判は $1000\,\mathrm{mm} \times 1414\,\mathrm{mm}$ です。 +% このため,\LaTeXe の \texttt{b5paper} +% は $250\,\mathrm{mm} \times 176\,\mathrm{mm}$ ですが, +% \pLaTeXe の \texttt{b5paper} +% は $257\,\mathrm{mm} \times 182\,\mathrm{mm}$ になっています。 +% ここでは\pLaTeXe にならってJISに従いました。 +% +% デフォルトは \texttt{a4paper} です。 +% +% \texttt{b5var}(B5変形,182mm×230mm), +% \texttt{a4var}(A4変形,210mm×283mm)を追加しました。 +% +% \begin{macrocode} +\DeclareOption{a3paper}{% + \setlength\paperheight {420mm}% + \setlength\paperwidth {297mm}} +\DeclareOption{a4paper}{% + \setlength\paperheight {297mm}% + \setlength\paperwidth {210mm}} +\DeclareOption{a5paper}{% + \setlength\paperheight {210mm}% + \setlength\paperwidth {148mm}} +\DeclareOption{a6paper}{% + \setlength\paperheight {148mm}% + \setlength\paperwidth {105mm}} +\DeclareOption{b4paper}{% + \setlength\paperheight {364mm}% + \setlength\paperwidth {257mm}} +\DeclareOption{b5paper}{% + \setlength\paperheight {257mm}% + \setlength\paperwidth {182mm}} +\DeclareOption{b6paper}{% + \setlength\paperheight {182mm}% + \setlength\paperwidth {128mm}} +\DeclareOption{a4j}{% + \setlength\paperheight {297mm}% + \setlength\paperwidth {210mm}} +\DeclareOption{a5j}{% + \setlength\paperheight {210mm}% + \setlength\paperwidth {148mm}} +\DeclareOption{b4j}{% + \setlength\paperheight {364mm}% + \setlength\paperwidth {257mm}} +\DeclareOption{b5j}{% + \setlength\paperheight {257mm}% + \setlength\paperwidth {182mm}} +\DeclareOption{a4var}{% + \setlength\paperheight {283mm}% + \setlength\paperwidth {210mm}} +\DeclareOption{b5var}{% + \setlength\paperheight {230mm}% + \setlength\paperwidth {182mm}} +\DeclareOption{letterpaper}{% + \setlength\paperheight {11in}% + \setlength\paperwidth {8.5in}} +\DeclareOption{legalpaper}{% + \setlength\paperheight {14in}% + \setlength\paperwidth {8.5in}} +\DeclareOption{executivepaper}{% + \setlength\paperheight {10.5in}% + \setlength\paperwidth {7.25in}} +% \end{macrocode} +% +% \paragraph{横置き} +% +% 用紙の縦と横の長さを入れ換えます。 +% +% \begin{macrocode} +\newif\if@landscape +\@landscapefalse +\DeclareOption{landscape}{\@landscapetrue} +% \end{macrocode} +% +% \paragraph{slide} +% +% オプション \texttt{slide} を新設しました。 +% +% [2016-10-08] \texttt{slide} オプションは article 以外では使い物にならなかったので, +% 簡単のため article のみで使えるオプションとしました。 +% +% \begin{macrocode} +\newif\if@slide +\@slidefalse +% \end{macrocode} +% +% \paragraph{サイズオプション} +% +% 10pt,11pt,12pt のほかに,8pt,9pt,14pt,17pt,21pt,25pt,30pt,36pt,43pt を追加しました。 +% これは等比数列になるように選んだものです(従来の 20pt も残しました)。 +% |\@ptsize| の定義が変だったのでご迷惑をおかけしましたが, +% 標準的なドキュメントクラスと同様にポイント数から10を引いたものに直しました。 +% +% [2003-03-22] 14Qオプションを追加しました。 +% +% [2003-04-18] 12Qオプションを追加しました。 +% +% [2016-07-08] |\mag| を使わずに各種寸法をスケールさせるためのオプション \texttt{nomag} を新設しました。 +% \texttt{usemag} オプションの指定で従来通りの動作となります。デフォルトは \texttt{usemag} です。 +% +% [2016-07-24] オプティカルサイズを調整するためにNFSSへパッチを当てるオプション \texttt{nomag*} を新設しました。 +% +% \begin{macrocode} +\newcommand{\@ptsize}{0} +\newif\ifjsc@mag\jsc@magtrue +\newif\ifjsc@mag@xreal\jsc@mag@xrealfalse +\def\jsc@magscale{1} +%<*article> +\DeclareOption{slide}{% + \@slidetrue\def\jsc@magscale{3.583} + \renewcommand{\@ptsize}{26} + \@landscapetrue\@titlepagetrue} +%
    +\DeclareOption{8pt}{\def\jsc@magscale{0.833}\renewcommand{\@ptsize}{-2}} +\DeclareOption{9pt}{\def\jsc@magscale{0.913}\renewcommand{\@ptsize}{-1}} +\DeclareOption{10pt}{\def\jsc@magscale{1}\renewcommand{\@ptsize}{0}} +\DeclareOption{11pt}{\def\jsc@magscale{1.095}\renewcommand{\@ptsize}{1}} +\DeclareOption{12pt}{\def\jsc@magscale{1.200}\renewcommand{\@ptsize}{2}} +\DeclareOption{14pt}{\def\jsc@magscale{1.440}\renewcommand{\@ptsize}{4}} +\DeclareOption{17pt}{\def\jsc@magscale{1.728}\renewcommand{\@ptsize}{7}} +\DeclareOption{20pt}{\def\jsc@magscale{2}\renewcommand{\@ptsize}{10}} +\DeclareOption{21pt}{\def\jsc@magscale{2.074}\renewcommand{\@ptsize}{11}} +\DeclareOption{25pt}{\def\jsc@magscale{2.488}\renewcommand{\@ptsize}{15}} +\DeclareOption{30pt}{\def\jsc@magscale{2.986}\renewcommand{\@ptsize}{20}} +\DeclareOption{36pt}{\def\jsc@magscale{3.583}\renewcommand{\@ptsize}{26}} +\DeclareOption{43pt}{\def\jsc@magscale{4.300}\renewcommand{\@ptsize}{33}} +\DeclareOption{12Q}{\def\jsc@magscale{0.923}\renewcommand{\@ptsize}{1200}} +\DeclareOption{14Q}{\def\jsc@magscale{1.077}\renewcommand{\@ptsize}{1400}} +\DeclareOption{10ptj}{\def\jsc@magscale{1.085}\renewcommand{\@ptsize}{1001}} +\DeclareOption{10.5ptj}{\def\jsc@magscale{1.139}\renewcommand{\@ptsize}{1051}} +\DeclareOption{11ptj}{\def\jsc@magscale{1.194}\renewcommand{\@ptsize}{1101}} +\DeclareOption{12ptj}{\def\jsc@magscale{1.302}\renewcommand{\@ptsize}{1201}} +\DeclareOption{usemag}{\jsc@magtrue\jsc@mag@xrealfalse} +\DeclareOption{nomag}{\jsc@magfalse\jsc@mag@xrealfalse} +\DeclareOption{nomag*}{\jsc@magfalse\jsc@mag@xrealtrue} +% \end{macrocode} +% +% +% \paragraph{トンボオプション} +% +% トンボ(crop marks)を出力します。 +% 実際の処理は\pLaTeXe 本体で行います(\texttt{plcore.dtx} 参照)。 +% オプション \texttt{tombow} で日付付きのトンボ, +% オプション \texttt{tombo} で日付なしのトンボを出力します。 +% これらはアスキー版のままです。 +% カウンタ |\hour|,|\minute| はp\LaTeXe 本体で宣言されています。 +% +% \begin{macrocode} +\hour\time \divide\hour by 60\relax +\@tempcnta\hour \multiply\@tempcnta 60\relax +\minute\time \advance\minute-\@tempcnta +\DeclareOption{tombow}{% + \tombowtrue \tombowdatetrue + \setlength{\@tombowwidth}{.1\p@}% + \@bannertoken{% + \jobname\space(\number\year-\two@digits\month-\two@digits\day + \space\two@digits\hour:\two@digits\minute)}% + \maketombowbox} +\DeclareOption{tombo}{% + \tombowtrue \tombowdatefalse + \setlength{\@tombowwidth}{.1\p@}% + \maketombowbox} +% \end{macrocode} +% +% \paragraph{面付け} +% +% オプション \texttt{mentuke} で幅ゼロのトンボを出力します。 +% 面付けに便利です。これもアスキー版のままです。 +% +% \begin{macrocode} +\DeclareOption{mentuke}{% + \tombowtrue \tombowdatefalse + \setlength{\@tombowwidth}{\z@}% + \maketombowbox} +% \end{macrocode} +% +% \paragraph{両面,片面オプション} +% +% \texttt{twoside} で奇数ページ・偶数ページのレイアウトが変わります。 +% +% [2003-04-29] \texttt{vartwoside} でどちらのページも傍注が右側になります。 +% +% \begin{macrocode} +\DeclareOption{oneside}{\@twosidefalse \@mparswitchfalse} +\DeclareOption{twoside}{\@twosidetrue \@mparswitchtrue} +\DeclareOption{vartwoside}{\@twosidetrue \@mparswitchfalse} +% \end{macrocode} +% +% \paragraph{二段組} +% +% \texttt{twocolumn} で二段組になります。 +% +% \begin{macrocode} +\DeclareOption{onecolumn}{\@twocolumnfalse} +\DeclareOption{twocolumn}{\@twocolumntrue} +% \end{macrocode} +% +% \paragraph{表題ページ} +% +% \texttt{titlepage} で表題・概要を独立したページに出力します。 +% +% \begin{macrocode} +\DeclareOption{titlepage}{\@titlepagetrue} +\DeclareOption{notitlepage}{\@titlepagefalse} +% \end{macrocode} +% +% \paragraph{右左起こし} +% +% 書籍では章は通常は奇数ページ起こしになりますが,横組ではこれを +% \texttt{openright} と表すことにしてあります。 +% \texttt{openany} で偶数ページからでも始まるようになります。 +% +% [2017-02-24] \texttt{openright} は横組では奇数ページ起こし,縦組では +% 偶数ページ起こしを表します。ややこしいですが,これは\LaTeX の標準クラスが +% 西欧の横組事情しか考慮せずに,奇数ページ起こしと右起こしを一緒にしてしまっ +% たせいです。縦組での奇数ページ起こしと横組での偶数ページ起こしも表現したい +% ので,jsclassesでは新たに \texttt{openleft} も追加しました。 +% +% \begin{macrocode} +%\DeclareOption{openright}{\@openrighttrue\@openleftfalse} +%\DeclareOption{openleft}{\@openlefttrue\@openrightfalse} +%\DeclareOption{openany}{\@openrightfalse\@openleftfalse} +% \end{macrocode} +% +% \paragraph{eqnarray環境と数式の位置} +% +% 森本さんのご教示にしたがって前に移動しました。 +% +% \begin{environment}{eqnarray} +% +% \LaTeX の |eqnarray| 環境では |&| でできるアキが大きすぎる +% ようですので,少し小さくします。 +% また,中央の要素も |\displaystyle| にします。 +% +% \begin{macrocode} +\def\eqnarray{% + \stepcounter{equation}% + \def\@currentlabel{\p@equation\theequation}% + \global\@eqnswtrue + \m@th + \global\@eqcnt\z@ + \tabskip\@centering + \let\\\@eqncr + $$\everycr{}\halign to\displaywidth\bgroup + \hskip\@centering$\displaystyle\tabskip\z@skip{##}$\@eqnsel + &\global\@eqcnt\@ne \hfil$\displaystyle{{}##{}}$\hfil + &\global\@eqcnt\tw@ $\displaystyle{##}$\hfil\tabskip\@centering + &\global\@eqcnt\thr@@ \hb@xt@\z@\bgroup\hss##\egroup + \tabskip\z@skip + \cr} +% \end{macrocode} +% \end{environment} +% +% \texttt{leqno} で数式番号が左側になります。 +% \texttt{fleqn} で数式が本文左端から一定距離のところに出力されます。 +% 森本さんにしたがって訂正しました。 +% +% \begin{macrocode} +\DeclareOption{leqno}{\input{leqno.clo}} +\DeclareOption{fleqn}{\input{fleqn.clo}% +% fleqn用のeqnarray環境の再定義 + \def\eqnarray{% + \stepcounter{equation}% + \def\@currentlabel{\p@equation\theequation}% + \global\@eqnswtrue\m@th + \global\@eqcnt\z@ + \tabskip\mathindent + \let\\=\@eqncr + \setlength\abovedisplayskip{\topsep}% + \ifvmode + \addtolength\abovedisplayskip{\partopsep}% + \fi + \addtolength\abovedisplayskip{\parskip}% + \setlength\belowdisplayskip{\abovedisplayskip}% + \setlength\belowdisplayshortskip{\abovedisplayskip}% + \setlength\abovedisplayshortskip{\abovedisplayskip}% + $$\everycr{}\halign to\linewidth% $$ + \bgroup + \hskip\@centering$\displaystyle\tabskip\z@skip{##}$\@eqnsel + &\global\@eqcnt\@ne \hfil$\displaystyle{{}##{}}$\hfil + &\global\@eqcnt\tw@ + $\displaystyle{##}$\hfil \tabskip\@centering + &\global\@eqcnt\thr@@ \hb@xt@\z@\bgroup\hss##\egroup + \tabskip\z@skip\cr + }} +% \end{macrocode} +% +% \paragraph{文献リスト} +% +% 文献リストをopen形式(著者名や書名の後に改行が入る)で出力します。 +% これは使われることはないのでコメントアウトしてあります。 +% +% \begin{macrocode} +% \DeclareOption{openbib}{% +% \AtEndOfPackage{% +% \renewcommand\@openbib@code{% +% \advance\leftmargin\bibindent +% \itemindent -\bibindent +% \listparindent \itemindent +% \parsep \z@}% +% \renewcommand\newblock{\par}}} +% \end{macrocode} +% +% \paragraph{数式フォントとして和文フォントを登録しないオプション} +% +% 数式中では16通りのフォントしか使えません。 +% AMSFontsや \texttt{mathptmx} パッケージを使って数式フォントを +% たくさん使うと ``Too many math alphabets \ldots'' というエラーが +% 起こってしまいます。\texttt{disablejfam} オプションを付ければ, +% 明朝・ゴシックを数式用フォントとして登録するのをやめますので, +% 数式用フォントが二つ節約できます。 +% いずれにしても |\textmc| や |\mbox| や \texttt{amsmath} +% パッケージの |\text| を使えば数式中で和文フォントが使えますので, +% この新ドキュメントクラスでは標準で和文フォントを数式用に登録 +% しないことにしていたのですが,従来のドキュメントクラスの仕様に +% 合わせることにしました。 +% +% \begin{macrocode} +\DeclareOption{disablejfam}{\@enablejfamfalse} +% \end{macrocode} +% +% \paragraph{ドラフト} +% +% \texttt{draft} でoverfull boxの起きた行末に5ptの罫線を引きます。 +% +% [2016-07-13] |\ifdraft| を定義するのをやめました。 +% +% \begin{macrocode} +\DeclareOption{draft}{\setlength\overfullrule{5pt}} +\DeclareOption{final}{\setlength\overfullrule{0pt}} +% \end{macrocode} +% +% \paragraph{和文フォントメトリックの選択} +% +% このクラスファイルでは,和文TFMとして東京書籍印刷の小林肇さんの +% 作られたJISフォントメトリック(\texttt{jis},\texttt{jisg}) +% を標準で使うことにしますが, +% 従来の \texttt{min10},\texttt{goth10} などを使いたいときは +% \texttt{mingoth} というオプションを指定します。 +% また,\texttt{winjis} オプションで \texttt{winjis} メトリック +% (OTFパッケージと同じpsitauさん作;ソースに書かれたWindowsの +% 機種依存文字がdvips, dvipdfmxなどで出力出来るようになる)が使えます。 +% +% [2018-02-04] \texttt{winjis} オプションはコッソリ削除しました。 +% 代替として,同等なものをパッケージ化(winjis.sty)して, +% GitHubにはコッソリ置いておきます。 +% +% \begin{macrocode} +\newif\ifmingoth +\mingothfalse +\newif\ifjisfont +\jisfontfalse +\newif\if@jsc@uplatex +\@jsc@uplatexfalse +\newif\if@jsc@autodetect +\@jsc@autodetectfalse +\DeclareOption{winjis}{% + \ClassWarningNoLine{\jsc@clsname}{% + The option `winjis' has been removed;\MessageBreak + Use `\string\usepackage{winjis}' instead}} +\DeclareOption{mingoth}{\mingothtrue} +\DeclareOption{jis}{\jisfonttrue} +\DeclareOption{uplatex}{\@jsc@uplatextrue} +\DeclareOption{autodetect-engine}{\@jsc@autodetecttrue} +\def\jsc@JYn{\if@jsc@uplatex JY2\else JY1\fi} +\def\jsc@JTn{\if@jsc@uplatex JT2\else JT1\fi} +\def\jsc@pfx@{\if@jsc@uplatex u\else \fi} +% \end{macrocode} +% +% \paragraph{papersizeスペシャルの利用} +% +% dvipsやdvioutで用紙設定を自動化するには +% オプション \texttt{papersize} を与えます。 +% +% \begin{macrocode} +\newif\ifpapersize +\papersizefalse +\DeclareOption{papersize}{\papersizetrue} +% \end{macrocode} +% +% \paragraph{英語化} +% +% オプション \texttt{english} を新設しました。 +% +% \begin{macrocode} +\newif\if@english +\@englishfalse +\DeclareOption{english}{\@englishtrue} +% \end{macrocode} +% +% \paragraph{jsbookをjsreportもどきに} +% +% オプション \texttt{report} を新設しました。 +% +% [2017-02-13] 従来は「jsreport相当」をjsbookの \texttt{report} オプションで提供して +% いましたが,新しくjsreportクラスも作りました。どちらでもお好きな方を使ってください。 +% +% \begin{macrocode} +%<*book> +\newif\if@report +\@reportfalse +\DeclareOption{report}{\@reporttrue\@openrightfalse\@twosidefalse\@mparswitchfalse} +%
    +% \end{macrocode} +% +% \paragraph{\texttt{jslogo}パッケージの読み込み} +% +% \LaTeX 関連のロゴを再定義する\texttt{jslogo}パッケージを +% 読み込まないオプション\texttt{nojslogo}を新設しました。 +% \texttt{jslogo}オプションの指定で従来どおりの動作となります。 +% デフォルトは\texttt{jslogo}で,すなわちパッケージを読み込みます。 +% \begin{macrocode} +\newif\if@jslogo \@jslogotrue +\DeclareOption{jslogo}{\@jslogotrue} +\DeclareOption{nojslogo}{\@jslogofalse} +% \end{macrocode} +% +% \paragraph{オプションの実行} +% +% デフォルトのオプションを実行します。 +% |multicols| や |url| を |\RequirePackage| するのはやめました。 +% +% \begin{macrocode} +%
    \ExecuteOptions{a4paper,oneside,onecolumn,notitlepage,final} +%\ExecuteOptions{a4paper,twoside,onecolumn,titlepage,openright,final} +%\ExecuteOptions{a4paper,oneside,onecolumn,titlepage,openany,final} +%\ExecuteOptions{a4paper,twoside,twocolumn,notitlepage,fleqn,final} +%\ExecuteOptions{a4paper,twoside,twocolumn,notitlepage,final} +\ProcessOptions +% \end{macrocode} +% +% 後処理 +% +% \begin{macrocode} +\if@slide + \def\maybeblue{\@ifundefined{ver@color.sty}{}{\color{blue}}} +\fi +\if@landscape + \setlength\@tempdima {\paperheight} + \setlength\paperheight{\paperwidth} + \setlength\paperwidth {\@tempdima} +\fi +% \end{macrocode} +% +% \paragraph{使用エンジンの検査・自動判定} +% +% ユーザが |uplatex| オプションの有無により指定したエンジンが,実際に +% 使われているものと一致しているかを検査し,一致しない場合はエラー +% メッセージを表示します。 +% +% [2016-11-09] p\LaTeX / up\LaTeX を自動判別するオプション |autodetect-engine| を新設しました。 +% up\LaTeX の場合は,グローバルオプションに |uplatex| を追加することで, +% 自動判定に応じて |otf| パッケージにも |uplatex| オプションが渡るようにします。 +% +% \begin{macrocode} +\ifnum \ifx\ucs\@undefined\z@\else\ucs"3000 \fi ="3000 + \if@jsc@autodetect + \ClassInfo\jsc@clsname{Autodetected engine: upLaTeX} + \@jsc@uplatextrue + \g@addto@macro\@classoptionslist{,uplatex} + \fi + \if@jsc@uplatex\else + \ClassError\jsc@clsname + {You are running upLaTeX.\MessageBreak + Please use pLaTeX instead, or add 'uplatex' to\MessageBreak + the class option list} + {\@ehc} + \@jsc@uplatextrue + \fi +% \end{macrocode} +% +% [2016-11-11] p\LaTeX の場合は,オプション |uplatex| が指定されていれば必ずエラーを出します。 +% |autodetect-engine| が有効になっていてもエラーを出しますが,これは |otf| パッケージに +% |uplatex| オプションが渡ってしまうのを防ぐためです。 +% +% \begin{macrocode} +\else + \if@jsc@uplatex + \ClassError\jsc@clsname + {You are running pLaTeX.\MessageBreak + Please use upLaTeX instead, or remove 'uplatex' from\MessageBreak + the class option list} + {\@ehc} + \@jsc@uplatexfalse + \fi + \if@jsc@autodetect + \ClassInfo\jsc@clsname{Autodetected engine: pLaTeX} + \@jsc@uplatexfalse + \fi +\fi +% \end{macrocode} +% +% \paragraph{papersizeスペシャルの出力} +% +% |dvi| ファイルの先頭にdvipsのpapersize specialを書き込むことで, +% 出力用紙サイズを設定します。これはdvipdfmxや最近のdvioutにも有効です。 +% どうやらpapersize specialにはtrue付の単位は許されず,かつ単位は +% 常にtrueなものと扱われるようです。 +% そこで,後で出てくる(☆)の部分,「|\mag|にあわせてスケール」よりも +% 手前で実行しておくことになります。 +% +% トンボの付いたときの用紙サイズは無意味ですが, +% いわゆる「ノビ」サイズという縦横1インチずつ長い用紙に出力することを考えて, +% 1インチずつ加えました。 +% ところが\pLaTeXe はトンボ出力幅を両側に1インチとっていますので, +% dvips使用時に +% \begin{quote} +% |-O -0.5in,-0.5in| +% \end{quote} +% というオプションを与えて両側0.5インチのトンボにするといいでしょう。 +% +% [2003-05-17] トンボをプレビューに使うことを考えて1インチを2インチにしました。 +% +% [2016-07-11] memoirクラスのマニュアルによると,トンボを含めた用紙の寸法は +% |\stockwidth|,|\stockheight|と呼ぶようですので,これを使うことにしました。 +% +% [2017-01-11] トンボオプションが指定されているとき「だけ」|\stockwidth|, +% |\stockheight|を定義するようにしました。 +% +% [2020-10-04] \LaTeXe~2020-10-01でカーネルの |\shipout| コードが拡張され +% |\AtBeginDvi| の実行タイミングが変化したので,この時点で +% 発行する |\special| の中身を展開しておくようにしました。 +% こうしないと,用紙サイズ設定を間違ってしまいます(Issue \#72)。 +% +% \begin{macrocode} +\iftombow + \newdimen\stockwidth \newdimen\stockheight + \setlength{\stockwidth}{\paperwidth} + \setlength{\stockheight}{\paperheight} + \advance \stockwidth 2in + \advance \stockheight 2in +\fi +\ifpapersize + \iftombow + \edef\jsc@papersize@special{papersize=\the\stockwidth,\the\stockheight} + \else + \edef\jsc@papersize@special{papersize=\the\paperwidth,\the\paperheight} + \fi + \AtBeginDvi{\special{\jsc@papersize@special}} +\fi +% \end{macrocode} +% +% \paragraph{基準となる行送り} +% +% \begin{macro}{\n@baseline} +% +% 基準となる行送りをポイント単位で表したものです。 +% +% \begin{macrocode} +%\if@slide\def\n@baseline{13}\else\def\n@baseline{16}\fi +%\def\n@baseline{14.554375} +%\def\n@baseline{14.897} +% \end{macrocode} +% \end{macro} +% +% \paragraph{拡大率の設定} +% +% サイズの変更は\TeX のプリミティブ |\mag| を使って行います。 +% 9ポイントについては行送りも若干縮めました。 +% サイズについては全面的に見直しました。 +% +% [2008-12-26] 1000 / |\mag| に相当する |\inv@mag| を定義しました。 +% |truein| を使っていたところを |\inv@mag in| に直しましたので, +% |geometry| パッケージと共存できると思います。 +% なお,新ドキュメントクラス側で |10pt| 以外にする場合の注意: +% \begin{itemize} +% \item |geometry| 側でオプション |truedimen| を指定してください。 +% \item |geometry| 側でオプション |mag| は使えません。 +% \end{itemize} +% +% [2016-07-08] |\jsc@mpt| および |\jsc@mmm| に,それぞれ1ptおよび1mmを拡大させた値を格納します。 +% 以降のレイアウト指定ではこちらを使います。 +% +% \begin{macrocode} +\newdimen\jsc@mpt +\newdimen\jsc@mmm +\def\inv@mag{1} +\ifjsc@mag + \jsc@mpt=1\p@ + \jsc@mmm=1mm + \ifnum\@ptsize=-2 + \mag 833 + \def\inv@mag{1.20048} + \def\n@baseline{15}% + \fi + \ifnum\@ptsize=-1 + \mag 913 % formerly 900 + \def\inv@mag{1.09529} + \def\n@baseline{15}% + \fi + \ifnum\@ptsize=1 + \mag 1095 % formerly 1100 + \def\inv@mag{0.913242} + \fi + \ifnum\@ptsize=2 + \mag 1200 + \def\inv@mag{0.833333} + \fi + \ifnum\@ptsize=4 + \mag 1440 + \def\inv@mag{0.694444} + \fi + \ifnum\@ptsize=7 + \mag 1728 + \def\inv@mag{0.578704} + \fi + \ifnum\@ptsize=10 + \mag 2000 + \def\inv@mag{0.5} + \fi + \ifnum\@ptsize=11 + \mag 2074 + \def\inv@mag{0.48216} + \fi + \ifnum\@ptsize=15 + \mag 2488 + \def\inv@mag{0.401929} + \fi + \ifnum\@ptsize=20 + \mag 2986 + \def\inv@mag{0.334896} + \fi + \ifnum\@ptsize=26 + \mag 3583 + \def\inv@mag{0.279096} + \fi + \ifnum\@ptsize=33 + \mag 4300 + \def\inv@mag{0.232558} + \fi + \ifnum\@ptsize=1200 + \mag 923 + \def\inv@mag{1.0834236} + \fi + \ifnum\@ptsize=1400 + \mag 1077 + \def\inv@mag{0.928505} + \fi + \ifnum\@ptsize=1001 + \mag 1085 + \def\inv@mag{0.921659} + \fi + \ifnum\@ptsize=1051 + \mag 1139 + \def\inv@mag{0.877963} + \fi + \ifnum\@ptsize=1101 + \mag 1194 + \def\inv@mag{0.837521} + \fi + \ifnum\@ptsize=1201 + \mag 1302 + \def\inv@mag{0.768049} + \fi +\else + \jsc@mpt=\jsc@magscale\p@ + \jsc@mmm=\jsc@magscale mm + \def\inv@mag{1} + \ifnum\@ptsize=-2 + \def\n@baseline{15}% + \fi + \ifnum\@ptsize=-1 + \def\n@baseline{15}% + \fi +\fi +%<*kiyou> +\def\jsc@magscale{0.9769230} +\ifjsc@mag + \mag 977 + \def\inv@mag{1.02354} + \jsc@mpt=1\p@ + \jsc@mmm=1mm +\else + \jsc@mpt=\jsc@magscale\p@ + \jsc@mmm=\jsc@magscale mm + \def\inv@mag{1} +\fi +% +\ifjsc@mag@xreal + \RequirePackage{type1cm} + \mathchardef\jsc@csta=259 + \def\jsc@invscale#1#2{% + \begingroup \@tempdima=#1\relax \@tempdimb#2\p@\relax + \@tempcnta\@tempdima \multiply\@tempcnta\@cclvi + \divide\@tempcnta\@tempdimb \multiply\@tempcnta\@cclvi + \@tempcntb\p@ \divide\@tempcntb\@tempdimb + \advance\@tempcnta-\@tempcntb \advance\@tempcnta-\tw@ + \@tempdimb\@tempcnta\@ne + \advance\@tempcnta\@tempcntb \advance\@tempcnta\@tempcntb + \advance\@tempcnta\jsc@csta \@tempdimc\@tempcnta\@ne + \@whiledim\@tempdimb<\@tempdimc\do{% + \@tempcntb\@tempdimb \advance\@tempcntb\@tempdimc + \advance\@tempcntb\@ne \divide\@tempcntb\tw@ + \ifdim #2\@tempcntb>\@tempdima + \advance\@tempcntb\m@ne \@tempdimc=\@tempcntb\@ne + \else \@tempdimb=\@tempcntb\@ne \fi}% + \xdef\jsc@gtmpa{\the\@tempdimb}% + \endgroup #1=\jsc@gtmpa\relax} + \expandafter\let\csname OT1/cmr/m/n/10\endcsname\relax + \expandafter\let\csname OMX/cmex/m/n/10\endcsname\relax + \let\jsc@get@external@font\get@external@font + \def\get@external@font{% + \jsc@preadjust@extract@font + \jsc@get@external@font} + \def\jsc@fstrunc#1{% + \edef\jsc@tmpa{\strip@pt#1}% + \expandafter\jsc@fstrunc@a\jsc@tmpa.****\@nil} + \def\jsc@fstrunc@a#1.#2#3#4#5#6\@nil{% + \if#5*\else + \edef\jsc@tmpa{#1% + \ifnum#2#3>\z@ .#2\ifnum#3>\z@ #3\fi\fi}% + \fi} + \def\jsc@preadjust@extract@font{% + \let\jsc@req@size\f@size + \dimen@\f@size\p@ \jsc@invscale\dimen@\jsc@magscale + \advance\dimen@.005pt\relax \jsc@fstrunc\dimen@ + \let\jsc@ref@size\jsc@tmpa + \let\f@size\jsc@ref@size} + \def\execute@size@function#1{% + \let\jsc@cref@size\f@size + \let\f@size\jsc@req@size + \csname s@fct@#1\endcsname} + \let\jsc@DeclareErrorFont\DeclareErrorFont + \def\DeclareErrorFont#1#2#3#4#5{% + \@tempdimc#5\p@ \@tempdimc\jsc@magscale\@tempdimc + \edef\jsc@tmpa{{#1}{#2}{#3}{#4}{\strip@pt\@tempdimc}} + \expandafter\jsc@DeclareErrorFont\jsc@tmpa} + \def\gen@sfcnt{% + \edef\mandatory@arg{\mandatory@arg\jsc@cref@size}% + \empty@sfcnt} + \def\genb@sfcnt{% + \edef\mandatory@arg{% + \mandatory@arg\expandafter\genb@x\jsc@cref@size..\@@}% + \empty@sfcnt} + \DeclareErrorFont{OT1}{cmr}{m}{n}{10} +\fi +% \end{macrocode} +% +% [2016-11-16] latex.ltx (ltspace.dtx)で定義されている |\smallskip| の, +% 単位 |pt| を |\jsc@mpt| に置き換えた |\jsc@smallskip| を定義します。 +% これは |\maketitle| で用いられます。 +% |\jsc@medskip| と |\jsc@bigskip| は必要ないのでコメントアウトしています。 +% +% \begin{macro}{\jsc@smallskip} +% \begin{macro}{\jsc@medskip} +% \begin{macro}{\jsc@bigskip} +% \begin{macrocode} +\def\jsc@smallskip{\vspace\jsc@smallskipamount} +%\def\jsc@medskip{\vspace\jsc@medskipamount} +%\def\jsc@bigskip{\vspace\jsc@bigskipamount} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\jsc@smallskipamount} +% \begin{macro}{\jsc@medskipamount} +% \begin{macro}{\jsc@bigskipamount} +% \begin{macrocode} +\newskip\jsc@smallskipamount +\jsc@smallskipamount=3\jsc@mpt plus 1\jsc@mpt minus 1\jsc@mpt +%\newskip\jsc@medskipamount +%\jsc@medskipamount =6\jsc@mpt plus 2\jsc@mpt minus 2\jsc@mpt +%\newskip\jsc@bigskipamount +%\jsc@bigskipamoun =12\jsc@mpt plus 4\jsc@mpt minus 4\jsc@mpt +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% +% |\paperwidth|,|\paperheight|を|\mag|にあわせてスケールしておきます(☆)。 +% +% [2016-07-11] 新しく追加した|\stockwidth|,|\stockheight|も|\mag|にあわせて +% スケールします。 +% +% [2017-01-11] トンボオプションが指定されているとき「だけ」|\stockwidth|, +% |\stockheight|が定義されています。 +% +% \begin{macrocode} +\setlength\paperwidth{\inv@mag\paperwidth}% +\setlength\paperheight{\inv@mag\paperheight}% +\iftombow + \setlength\stockwidth{\inv@mag\stockwidth}% + \setlength\stockheight{\inv@mag\stockheight}% +\fi +% \end{macrocode} +% +% \paragraph{pagesizeスペシャルの出力} +% +% [2003-05-17] dvipdfm(x)のpagesizeスペシャルを出力します。 +% +% [2004-08-08] 今のdvipdfmxはdvips用スペシャルを理解するようなので外しました。 +% +% \begin{macrocode} +% \ifpapersize +% \setlength{\@tempdima}{\paperwidth} +% \setlength{\@tempdimb}{\paperheight} +% \iftombow +% \advance \@tempdima 2truein +% \advance \@tempdimb 2truein +% \fi +% \AtBeginDvi{\special{pdf: pagesize width \the\@tempdima\space height \the\@tempdimb}} +% \fi +% \end{macrocode} +% +% \section{和文フォントの変更} +% +% JISの1ポイントは0.3514mm(約1/72.28インチ), +% PostScriptの1ポイントは1/72インチですが, +% \TeX では1/72.27インチを1pt(ポイント), +% 1/72インチを1bp(ビッグポイント)と表します。 +% QuarkXPressなどのDTPソフトは標準で1/72インチを1ポイント +% としますが,以下ではすべて1/72.27インチを1ptとしています。 +% 1インチは定義により25.4mmです。 +% +% さらにややこしいことに,\pTeX (アスキーが日本語化した\TeX ) +% の公称10ポイントの和文フォント(\texttt{min10} など)は, +% 実寸(標準の字送り量)が9.62216ptです。 +% これは3.3818mm,写研の写植機の単位では13.527級, +% PostScriptの単位では9.5862ポイントになります。 +% \texttt{jis} フォントなどもこの値を踏襲しています。 +% +% この公称10ポイントのフォントを,ここでは13級に縮小して +% 使うことにします。そのためには,$13/13.527 = 0.961$ 倍 +% すればいいことになります(\texttt{min10} や \texttt{jis} の場合)。 +% 9.62216ポイントの和文フォントをさらに0.961倍したことにより, +% 約9.25ポイント, +% DTPで使う単位(1/72インチ)では9.21ポイントということになり, +% 公称10ポイントといっても実は9ポイント強になります。 +% +% [2018-02-04] 上記のとおりの「クラスファイルが意図する +% 和文スケール値($1\,\mathrm{zw} \div \textmc{要求サイズ}$)」を +% 表す実数値マクロ |\Cjascale| を定義します。このマクロが定義されて +% いる場合,OTFパッケージ(2018/02/01以降のバージョン)はこれに +% 従います。jsarticle, jsbook, jsreportでは, +% $9.62216\,\mathrm{pt} * 0.961 / 10\,\mathrm{pt} = 0.924690$ です。 +% +% \begin{macrocode} +% +%<*minijs> +%% min/goth -> jis/jisg (for pLaTeX only) +\ifnum\jis"2121="3000 \else +\@for\@tempa:=5,6,7,8,9,10,10.95,12,14.4,17.28,20.74,24.88\do{% + \expandafter\let\csname JY1/mc/m/n/\@tempa\endcsname\relax + \expandafter\let\csname JY1/gt/m/n/\@tempa\endcsname\relax + \expandafter\let\csname JT1/mc/m/n/\@tempa\endcsname\relax + \expandafter\let\csname JT1/gt/m/n/\@tempa\endcsname\relax +} +\def\Cjascale{0.924690} +\DeclareFontShape{JY1}{mc}{m}{n}{<-> s * [0.961] jis}{} +\DeclareFontShape{JY1}{gt}{m}{n}{<-> s * [0.961] jisg}{} +\DeclareFontShape{JT1}{mc}{m}{n}{<-> s * [0.961] tmin10}{} +\DeclareFontShape{JT1}{gt}{m}{n}{<-> s * [0.961] tgoth10}{} +\fi +% +%<*class> +%<*!jspf> +\def\Cjascale{0.924690} +\ifmingoth + \DeclareFontShape{\jsc@JYn}{mc}{m}{n}{<-> s * [0.961] \jsc@pfx@ min10}{} + \DeclareFontShape{\jsc@JYn}{gt}{m}{n}{<-> s * [0.961] \jsc@pfx@ goth10}{} + \DeclareFontShape{\jsc@JTn}{mc}{m}{n}{<-> s * [0.961] \jsc@pfx@ tmin10}{} + \DeclareFontShape{\jsc@JTn}{gt}{m}{n}{<-> s * [0.961] \jsc@pfx@ tgoth10}{} +\else + \ifjisfont + \DeclareFontShape{\jsc@JYn}{mc}{m}{n}{<-> s * [0.961] \jsc@pfx@ jis}{} + \DeclareFontShape{\jsc@JYn}{gt}{m}{n}{<-> s * [0.961] \jsc@pfx@ jisg}{} + \DeclareFontShape{\jsc@JTn}{mc}{m}{n}{<-> s * [0.961] \jsc@pfx@ tmin10}{} + \DeclareFontShape{\jsc@JTn}{gt}{m}{n}{<-> s * [0.961] \jsc@pfx@ tgoth10}{} + \else + \if@jsc@uplatex + \DeclareFontShape{JY2}{mc}{m}{n}{<-> s * [0.924690] upjisr-h}{} + \DeclareFontShape{JY2}{gt}{m}{n}{<-> s * [0.924690] upjisg-h}{} + \DeclareFontShape{JT2}{mc}{m}{n}{<-> s * [0.924690] upjisr-v}{} + \DeclareFontShape{JT2}{gt}{m}{n}{<-> s * [0.924690] upjisg-v}{} + \else + \DeclareFontShape{\jsc@JYn}{mc}{m}{n}{<-> s * [0.961] \jsc@pfx@ jis}{} + \DeclareFontShape{\jsc@JYn}{gt}{m}{n}{<-> s * [0.961] \jsc@pfx@ jisg}{} + \DeclareFontShape{\jsc@JTn}{mc}{m}{n}{<-> s * [0.961] \jsc@pfx@ tmin10}{} + \DeclareFontShape{\jsc@JTn}{gt}{m}{n}{<-> s * [0.961] \jsc@pfx@ tgoth10}{} + \fi + \fi +\fi +% +% \end{macrocode} +% +% 某学会誌では, +% 和文フォントをPostScriptの9ポイントにするために, +% $9/(9.62216*72/72.27) = 0.93885$ 倍します。 +% +% [2018-02-04] 和文スケール値 |\Cjascale| は +% $9.62216\,\mathrm{pt} * 0.93885 / 10\,\mathrm{pt} = 0.903375$ です。 +% +% \begin{macrocode} +%<*jspf> +\def\Cjascale{0.903375} +\ifmingoth + \DeclareFontShape{\jsc@JYn}{mc}{m}{n}{<-> s * [0.93885] \jsc@pfx@ min10}{} + \DeclareFontShape{\jsc@JYn}{gt}{m}{n}{<-> s * [0.93885] \jsc@pfx@ goth10}{} + \DeclareFontShape{\jsc@JTn}{mc}{m}{n}{<-> s * [0.93885] \jsc@pfx@ tmin10}{} + \DeclareFontShape{\jsc@JTn}{gt}{m}{n}{<-> s * [0.93885] \jsc@pfx@ tgoth10}{} +\else + \ifjisfont + \DeclareFontShape{\jsc@JYn}{mc}{m}{n}{<-> s * [0.93885] \jsc@pfx@ jis}{} + \DeclareFontShape{\jsc@JYn}{gt}{m}{n}{<-> s * [0.93885] \jsc@pfx@ jisg}{} + \DeclareFontShape{\jsc@JTn}{mc}{m}{n}{<-> s * [0.93885] \jsc@pfx@ tmin10}{} + \DeclareFontShape{\jsc@JTn}{gt}{m}{n}{<-> s * [0.93885] \jsc@pfx@ tgoth10}{} + \else + \if@jsc@uplatex + \DeclareFontShape{JY2}{mc}{m}{n}{<-> s * [0.903375] upjisr-h}{} + \DeclareFontShape{JY2}{gt}{m}{n}{<-> s * [0.903375] upjisg-h}{} + \DeclareFontShape{JT2}{mc}{m}{n}{<-> s * [0.903375] upjisr-v}{} + \DeclareFontShape{JT2}{gt}{m}{n}{<-> s * [0.903375] upjisg-v}{} + \else + \DeclareFontShape{\jsc@JYn}{mc}{m}{n}{<-> s * [0.93885] \jsc@pfx@ jis}{} + \DeclareFontShape{\jsc@JYn}{gt}{m}{n}{<-> s * [0.93885] \jsc@pfx@ jisg}{} + \DeclareFontShape{\jsc@JTn}{mc}{m}{n}{<-> s * [0.93885] \jsc@pfx@ tmin10}{} + \DeclareFontShape{\jsc@JTn}{gt}{m}{n}{<-> s * [0.93885] \jsc@pfx@ tgoth10}{} + \fi + \fi +\fi +% +% \end{macrocode} +% +% 和文でイタリック体,斜体,サンセリフ体, +% タイプライタ体の代わりにゴシック体を使うことにします。 +% +% [2003-03-16] イタリック体,斜体について,和文でゴシックを当てていましたが, +% 数学の定理環境などで多量のイタリック体を使うことがあり,ゴシックに +% すると黒々となってしまうという弊害がありました。 +% |amsthm| を使わない場合は定理の本文が明朝になるように |\newtheorem| +% 環境を手直ししてしのいでいましたが, +% \TeX が数学で多用されることを考えると,イタリック体に明朝体を +% 当てたほうがいいように思えてきましたので, +% イタリック体・斜体に対応する和文を明朝体に変えることにしました。 +% +% [2004-11-03] |\rmfamily| も和文対応にしました。 +% +% \begin{macrocode} +% \DeclareFontShape{\jsc@JYn}{mc}{bx}{n}{<->ssub*gt/m/n}{} % in \jsc@JYnmc +% \DeclareFontShape{\jsc@JYn}{gt}{bx}{n}{<->ssub*gt/m/n}{} % in \jsc@JYngt +\DeclareFontShape{\jsc@JYn}{mc}{m}{it}{<->ssub*mc/m/n}{} +\DeclareFontShape{\jsc@JYn}{mc}{m}{sl}{<->ssub*mc/m/n}{} +\DeclareFontShape{\jsc@JYn}{mc}{m}{sc}{<->ssub*mc/m/n}{} +\DeclareFontShape{\jsc@JYn}{gt}{m}{it}{<->ssub*gt/m/n}{} +\DeclareFontShape{\jsc@JYn}{gt}{m}{sl}{<->ssub*gt/m/n}{} +\DeclareFontShape{\jsc@JYn}{mc}{bx}{it}{<->ssub*gt/m/n}{} +\DeclareFontShape{\jsc@JYn}{mc}{bx}{sl}{<->ssub*gt/m/n}{} +% \DeclareFontShape{\jsc@JTn}{mc}{bx}{n}{<->ssub*gt/m/n}{} % in \jsc@JTnmc +% \DeclareFontShape{\jsc@JTn}{gt}{bx}{n}{<->ssub*gt/m/n}{} % in \jsc@JTngt +\DeclareFontShape{\jsc@JTn}{mc}{m}{it}{<->ssub*mc/m/n}{} +\DeclareFontShape{\jsc@JTn}{mc}{m}{sl}{<->ssub*mc/m/n}{} +\DeclareFontShape{\jsc@JTn}{mc}{m}{sc}{<->ssub*mc/m/n}{} +\DeclareFontShape{\jsc@JTn}{gt}{m}{it}{<->ssub*gt/m/n}{} +\DeclareFontShape{\jsc@JTn}{gt}{m}{sl}{<->ssub*gt/m/n}{} +\DeclareFontShape{\jsc@JTn}{mc}{bx}{it}{<->ssub*gt/m/n}{} +\DeclareFontShape{\jsc@JTn}{mc}{bx}{sl}{<->ssub*gt/m/n}{} +% \end{macrocode} +% +% [2020-02-02] \LaTeXe~2020-02-02でNFSSが拡張され, +% それに伴いオリジナルの |\rmfamily| などの定義が変化しました。 +% |\DeclareRobustCommand| で直接定義すると,これを上書きして +% NFSSの拡張部分を壊してしまいますので, +% 新たに提供されたフックにコードを挿入します。 +% 従来のコードも\LaTeXe~2019-10-01以前のために残してありますが, +% \texttt{mweights}パッケージ対策も施しました(forum:2763)。 +% +% [2020-10-04] \LaTeXe~2020-10-01では |\AddToHook| を利用します。 +% +% ^^A Note that |\AddToHook| is defined as follows: +% ^^A \begin{itemize} +% ^^A \item Format date 2020-02-02 or older: undefined +% ^^A \item Format date 2020-10-01 or newer: available +% ^^A \item ... under \texttt{latexrelease} rollback: defined but no-op +% ^^A \end{itemize} +% +% \begin{macrocode} +% +%<*class|minijs> +%% ad-hoc "relation font" +\@ifl@t@r\fmtversion{2020/10/01} + {\jsc@needsp@tchfalse}{\jsc@needsp@tchtrue} +\ifjsc@needsp@tch % --- for 2020-02-02 or older BEGIN +\ifx\@rmfamilyhook\@undefined % old +\DeclareRobustCommand\rmfamily + {\not@math@alphabet\rmfamily\mathrm + \romanfamily\rmdefault\kanjifamily\mcdefault\selectfont} +\DeclareRobustCommand\sffamily + {\not@math@alphabet\sffamily\mathsf + \romanfamily\sfdefault\kanjifamily\gtdefault\selectfont} +\DeclareRobustCommand\ttfamily + {\not@math@alphabet\ttfamily\mathtt + \romanfamily\ttdefault\kanjifamily\gtdefault\selectfont} +\AtBeginDocument{% + \ifx\mweights@init\@undefined\else % mweights.sty is loaded + % my definitions above should have been overwritten, recover it! + % \selectfont is executed twice but I don't care about speed... + \expandafter\g@addto@macro\csname rmfamily \endcsname + {\kanjifamily\mcdefault\selectfont}% + \expandafter\g@addto@macro\csname sffamily \endcsname + {\kanjifamily\gtdefault\selectfont}% + \expandafter\g@addto@macro\csname ttfamily \endcsname + {\kanjifamily\gtdefault\selectfont}% + \fi} +\else % 2020-02-02 +\g@addto@macro\@rmfamilyhook + {\prepare@family@series@update@kanji{mc}\mcdefault} +\g@addto@macro\@sffamilyhook + {\prepare@family@series@update@kanji{gt}\gtdefault} +\g@addto@macro\@ttfamilyhook + {\prepare@family@series@update@kanji{gt}\gtdefault} +\fi +\else % --- for 2020-02-02 or older END & for 2020-10-01 BEGIN +\AddToHook{rmfamily}% + {\prepare@family@series@update@kanji{mc}\mcdefault} +\AddToHook{sffamily}% + {\prepare@family@series@update@kanji{gt}\gtdefault} +\AddToHook{ttfamily}% + {\prepare@family@series@update@kanji{gt}\gtdefault} +\fi % --- for 2020-10-01 END +% +%<*class> +% \end{macrocode} +% +% \begin{macro}{\textmc} +% \begin{macro}{\textgt} +% +% 次のコマンドはイタリック補正なども含めて定義されていますが, +% 和文ではイタリック補正はあまり役に立たず, +% 欧文・和文間のグルーが入らないという副作用もありますので, +% 単純な定義に直します。 +% +% [2016-08-26] 和欧文間の |\xkanjiskip| が入らない問題は, +% plfonts.dtx v1.3i (2000/07/13) +% の時点で修正されていました。逆に,\texttt{amsmath}パッケージを +% 読み込んだ場合に,数式内の添字で文字サイズが変化するようになる +% はずのところが,変わらなくなっていましたので,修正しました。 +% +% [2017-09-03] Yue ZHANGさん作の\texttt{fixjfm}パッケージが +% |\documentclass| より前に |\RequirePackage{fixjfm}| として +% 読み込まれていた場合には,その定義を優先するため, +% このクラスファイルでは再定義しません。 +% +% [2017-09-19] 2010年の\pTeX の修正で,イタリック補正と和欧文間の +% |\xkanjiskip| の衝突が起きなくなっていますから,もうここにある +% ような単純化は必要ありません。ただし,このクラスファイルが +% 古い\TeX 環境で利用される可能性も捨てきれないので,とりあえず +% 残しておきます。 +% +% \begin{macrocode} +\ifx\DeclareFixJFMCJKTextFontCommand\@undefined +\DeclareRobustCommand\textmc[1]{% + \relax\ifmmode \expandafter\nfss@text \fi{\mcfamily #1}} +\DeclareRobustCommand\textgt[1]{% + \relax\ifmmode \expandafter\nfss@text \fi{\gtfamily #1}} +\fi +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% 新クラスでも \texttt{disablejfam} オプションを与えなければ数式内で +% 日本語が使えるようにしました。 +% +% さらに2005/12/01版のLaTeXに対応したpLaTeXに対応しました +% (Thanks: ymtさん)。 +% +% [2010-03-14] |http://oku.edu.mie-u.ac.jp/tex/mod/forum/discuss.php?d=411| +% での山本さんのご指摘に従って修正しました。 +% +% \begin{macrocode} +\def\reDeclareMathAlphabet#1#2#3{% + \edef\@tempa{\expandafter\@gobble\string#2}% + \edef\@tempb{\expandafter\@gobble\string#3}% + \edef\@tempc{\string @\expandafter\@gobbletwo\string#2}% + \ifx\@tempc\@tempa% + \edef\@tempa{\expandafter\@gobbletwo\string#2}% + \edef\@tempb{\expandafter\@gobbletwo\string#3}% + \fi + \begingroup + \let\protect\noexpand + \def\@tempaa{\relax}% + \expandafter\ifx\csname RDMAorg@\@tempa\endcsname\relax + \edef\@tempaa{\expandafter\def\expandafter\noexpand% + \csname RDMAorg@\@tempa\endcsname{% + \expandafter\noexpand\csname\@tempa\endcsname}}% + \fi + \def\@tempbb{\relax}% + \expandafter\ifx\csname RDMAorg@\@tempb\endcsname\relax + \edef\@tempbb{\expandafter\def\expandafter\noexpand% + \csname RDMAorg@\@tempb\endcsname{% + \expandafter\noexpand\csname\@tempb\endcsname}}% + \fi + \edef\@tempc{\@tempaa\@tempbb}% + \expandafter\endgroup\@tempc% + \edef#1{\noexpand\protect\expandafter\noexpand\csname% + \expandafter\@gobble\string#1\space\space\endcsname}% + \expandafter\edef\csname\expandafter\@gobble\string#1\space\space\endcsname% + {\noexpand\DualLang@mathalph@bet% + {\expandafter\noexpand\csname RDMAorg@\@tempa\endcsname}% + {\expandafter\noexpand\csname RDMAorg@\@tempb\endcsname}% + }% +} +\@onlypreamble\reDeclareMathAlphabet +\def\DualLang@mathalph@bet#1#2{% + \relax\ifmmode + \ifx\math@bgroup\bgroup% 2e normal style (\mathrm{...}) + \bgroup\let\DualLang@Mfontsw\DLMfontsw@standard + \else + \ifx\math@bgroup\relax% 2e two letter style (\rm->\mathrm) + \let\DualLang@Mfontsw\DLMfontsw@oldstyle + \else + \ifx\math@bgroup\@empty% 2.09 oldlfont style ({\mathrm ...}) + \let\DualLang@Mfontsw\DLMfontsw@oldlfont + \else% panic! assume 2e normal style + \bgroup\let\DualLang@Mfontsw\DLMfontsw@standard + \fi + \fi + \fi + \else + \let\DualLang@Mfontsw\@firstoftwo + \fi + \DualLang@Mfontsw{#1}{#2}% +} +\def\DLMfontsw@standard#1#2#3{#1{#2{#3}}\egroup} +\def\DLMfontsw@oldstyle#1#2{#1\relax\@fontswitch\relax{#2}} +\def\DLMfontsw@oldlfont#1#2{#1\relax#2\relax} +\if@enablejfam + \DeclareSymbolFont{mincho}{\jsc@JYn}{mc}{m}{n} + \DeclareSymbolFontAlphabet{\mathmc}{mincho} + \SetSymbolFont{mincho}{bold}{\jsc@JYn}{gt}{m}{n} + \jfam\symmincho + \DeclareMathAlphabet{\mathgt}{\jsc@JYn}{gt}{m}{n} + \AtBeginDocument{% + \reDeclareMathAlphabet{\mathrm}{\@mathrm}{\@mathmc} + \reDeclareMathAlphabet{\mathbf}{\@mathbf}{\@mathgt}} +\fi +% \end{macrocode} +% +% \begin{macro}{\textsterling} +% +% これは |\pounds| 命令で実際に呼び出される文字です。 +% 従来からのOT1エンコーディングでは |\$| のイタリック体が |\pounds| +% なので \texttt{cmti} が使われていましたが, +% 1994年春からは \texttt{cmu}(upright italic,直立イタリック体) +% に変わりました。 +% しかし \texttt{cmu} はその性格からして実験的なものであり, +% |\pounds| 以外で使われるとは思えないので, +% ここでは \texttt{cmti} に戻してしまいます。 +% +% [2003-08-20] Computer Modernフォントを使う機会も減り,T1エンコーディング +% が一般的になってきました。この定義はもうあまり意味がないので消します。 +% +% \begin{macrocode} +% \DeclareTextCommand{\textsterling}{OT1}{{\itshape\char`\$}} +% \end{macrocode} +% \end{macro} +% +% 禁則パラメータも若干修正します。 +% +% アスキーの \texttt{kinsoku.dtx} では次の三つが5000に設定されています。 +% これを10000に再設定します。 +% +% \begin{macrocode} +\prebreakpenalty\jis"2147=10000 % 5000 ’ +\postbreakpenalty\jis"2148=10000 % 5000 “ +\prebreakpenalty\jis"2149=10000 % 5000 ” +% \end{macrocode} +% +% 「\TeX!」「〒515」の記号と数字の間に四分アキが入らないようにします。 +% +% \begin{macrocode} +\inhibitxspcode`!=1 +\inhibitxspcode`〒=2 +% \end{macrocode} +% +% 以前の版では,たとえば「ベース名.拡張子」のように和文文字で書いたとき, +% ピリオドの後に四分アキが入らないようにするために +% \begin{macrocode} +% \xspcode`.=0 +% \end{macrocode} +% のようにしていました。ただ,「Foo Inc.は……」のように書いたときにも +% スペースが入らなくなるので,ちょっとまずい修正だったかもしれません。 +% 元に戻しました。 +% +% とりあえず「|ベース名.\mbox{}拡張子|」と書いてください。 +% +% 「CやC++では……」と書くと,C++の直後に四分アキが入らないのでバランスが悪くなります。 +% 四分アキが入るようにしました。\% の両側も同じです。 +% +% \begin{macrocode} +\xspcode`+=3 +\xspcode`\%=3 +% \end{macrocode} +% +% これ以外にT1エンコーディングで80〜ffの文字もすべて欧文文字ですので, +% 両側の和文文字との間にスペースが入らなければなりません。 +% +% \begin{macrocode} +\xspcode`^^80=3 +\xspcode`^^81=3 +\xspcode`^^82=3 +\xspcode`^^83=3 +\xspcode`^^84=3 +\xspcode`^^85=3 +\xspcode`^^86=3 +\xspcode`^^87=3 +\xspcode`^^88=3 +\xspcode`^^89=3 +\xspcode`^^8a=3 +\xspcode`^^8b=3 +\xspcode`^^8c=3 +\xspcode`^^8d=3 +\xspcode`^^8e=3 +\xspcode`^^8f=3 +\xspcode`^^90=3 +\xspcode`^^91=3 +\xspcode`^^92=3 +\xspcode`^^93=3 +\xspcode`^^94=3 +\xspcode`^^95=3 +\xspcode`^^96=3 +\xspcode`^^97=3 +\xspcode`^^98=3 +\xspcode`^^99=3 +\xspcode`^^9a=3 +\xspcode`^^9b=3 +\xspcode`^^9c=3 +\xspcode`^^9d=3 +\xspcode`^^9e=3 +\xspcode`^^9f=3 +\xspcode`^^a0=3 +\xspcode`^^a1=3 +\xspcode`^^a2=3 +\xspcode`^^a3=3 +\xspcode`^^a4=3 +\xspcode`^^a5=3 +\xspcode`^^a6=3 +\xspcode`^^a7=3 +\xspcode`^^a8=3 +\xspcode`^^a9=3 +\xspcode`^^aa=3 +\xspcode`^^ab=3 +\xspcode`^^ac=3 +\xspcode`^^ad=3 +\xspcode`^^ae=3 +\xspcode`^^af=3 +\xspcode`^^b0=3 +\xspcode`^^b1=3 +\xspcode`^^b2=3 +\xspcode`^^b3=3 +\xspcode`^^b4=3 +\xspcode`^^b5=3 +\xspcode`^^b6=3 +\xspcode`^^b7=3 +\xspcode`^^b8=3 +\xspcode`^^b9=3 +\xspcode`^^ba=3 +\xspcode`^^bb=3 +\xspcode`^^bc=3 +\xspcode`^^bd=3 +\xspcode`^^be=3 +\xspcode`^^bf=3 +\xspcode`^^c0=3 +\xspcode`^^c1=3 +\xspcode`^^c2=3 +\xspcode`^^c3=3 +\xspcode`^^c4=3 +\xspcode`^^c5=3 +\xspcode`^^c6=3 +\xspcode`^^c7=3 +\xspcode`^^c8=3 +\xspcode`^^c9=3 +\xspcode`^^ca=3 +\xspcode`^^cb=3 +\xspcode`^^cc=3 +\xspcode`^^cd=3 +\xspcode`^^ce=3 +\xspcode`^^cf=3 +\xspcode`^^d0=3 +\xspcode`^^d1=3 +\xspcode`^^d2=3 +\xspcode`^^d3=3 +\xspcode`^^d4=3 +\xspcode`^^d5=3 +\xspcode`^^d6=3 +\xspcode`^^d7=3 +\xspcode`^^d8=3 +\xspcode`^^d9=3 +\xspcode`^^da=3 +\xspcode`^^db=3 +\xspcode`^^dc=3 +\xspcode`^^dd=3 +\xspcode`^^de=3 +\xspcode`^^df=3 +\xspcode`^^e0=3 +\xspcode`^^e1=3 +\xspcode`^^e2=3 +\xspcode`^^e3=3 +\xspcode`^^e4=3 +\xspcode`^^e5=3 +\xspcode`^^e6=3 +\xspcode`^^e7=3 +\xspcode`^^e8=3 +\xspcode`^^e9=3 +\xspcode`^^ea=3 +\xspcode`^^eb=3 +\xspcode`^^ec=3 +\xspcode`^^ed=3 +\xspcode`^^ee=3 +\xspcode`^^ef=3 +\xspcode`^^f0=3 +\xspcode`^^f1=3 +\xspcode`^^f2=3 +\xspcode`^^f3=3 +\xspcode`^^f4=3 +\xspcode`^^f5=3 +\xspcode`^^f6=3 +\xspcode`^^f7=3 +\xspcode`^^f8=3 +\xspcode`^^f9=3 +\xspcode`^^fa=3 +\xspcode`^^fb=3 +\xspcode`^^fc=3 +\xspcode`^^fd=3 +\xspcode`^^fe=3 +\xspcode`^^ff=3 +% \end{macrocode} +% +% \begin{macro}{\@} +% +% 欧文といえば,\LaTeX の |\def\@{\spacefactor\@m}| という定義(|\@m| は1000) +% では |I watch TV\@.| と書くと V とピリオドのペアカーニングが効かなくなります。 +% そこで,次のような定義に直し,|I watch TV.\@| と書くことにします。 +% +% [2016-07-14] 2015-01-01の\LaTeX で,auxiliary filesに書き出されたときに +% スペースが食われないようにする修正が入りました。これに合わせて |{}| を補いました。 +% +% \begin{macrocode} +\def\@{\spacefactor3000{}} +% \end{macrocode} +% \end{macro} +% +% \section{フォントサイズ} +% +% フォントサイズを変える命令(|\normalsize|,|\small| など) +% の実際の挙動の設定は,三つの引数をとる命令 |\@setfontsize| を使って, +% たとえば +% \begin{quote} +% |\@setfontsize{\normalsize}{10}{16}| +% \end{quote} +% のようにして行います。これは +% \begin{quote} +% |\normalsize| は10ポイントのフォントを使い,行送りは16ポイントである +% \end{quote} +% という意味です。 +% ただし,処理を速くするため, +% 以下では10と同義の\LaTeX の内部命令 |\@xpt| を使っています。 +% この |\@xpt| の類は次のものがあり,\LaTeX 本体で定義されています。 +%\begin{verbatim} +% \@vpt 5 \@vipt 6 \@viipt 7 +% \@viiipt 8 \@ixpt 9 \@xpt 10 +% \@xipt 10.95 \@xiipt 12 \@xivpt 14.4 +%\end{verbatim} +% +% \begin{macro}{\@setfontsize} +% +% ここでは |\@setfontsize| の定義を少々変更して, +% 段落の字下げ |\parindent|, +% 和文文字間のスペース |\kanjiskip|, +% 和文・欧文間のスペース |\xkanjiskip| を変更しています。 +% +% |\kanjiskip| は\pLaTeXe で |0pt plus .4pt minus .5pt| に設定していますが, +% これはそもそも文字サイズの変更に応じて変わるべきものです。 +% それに,プラスになったりマイナスになったりするのは, +% 追い出しと追い込みの混在が生じ,統一性を欠きます。 +% なるべく追い出しになるようにプラスの値だけにしたいところですが, +% ごくわずかなマイナスは許すことにしました。 +% +% |\xkanjiskip| については,四分つまり全角の1/4を標準として, +% 追い出すために三分あるいは二分まで延ばすのが一般的ですが, +% ここではTimesやPalatinoのスペースがほぼ四分であることに着目して, +% これに一致させています。これなら書くときにスペースを空けても +% 空けなくても同じ出力になります。 +% +% |\parindent| については,0(以下)でなければ全角幅(1zw)に直します。 +% +% [2008-02-18] |english| オプションで |\parindent| を 1em にしました。 +% +% \begin{macrocode} +% +%<*class|minijs> +%% \@setfontsize with \parindent and \(x)kanjiskip settings +\def\@setfontsize#1#2#3{% +% \@nomath#1% + \ifx\protect\@typeset@protect + \let\@currsize#1% + \fi + \fontsize{#2}{#3}\selectfont + \ifdim\parindent>\z@ +% \if@english +% \parindent=1em +% \else + \parindent=1zw +% \fi + \fi + \kanjiskip=0zw plus .1zw minus .01zw +% \ifdim\xkanjiskip>\z@ +% \if@slide \xkanjiskip=0.1em \else + \xkanjiskip=0.25em plus 0.15em minus 0.06em +% \fi +% \fi +} +% +%<*class> +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\jsc@setfontsize} +% クラスファイルの内部では,拡大率も考慮した |\jsc@setfontsize| を +% |\@setfontsize| の変わりに用いることにします。 +% \begin{macrocode} +\def\jsc@setfontsize#1#2#3{% + \@setfontsize#1{#2\jsc@mpt}{#3\jsc@mpt}} +% \end{macrocode} +% \end{macro} +% +% これらのグルーをもってしても行分割ができない場合は, +% |\emergencystretch| に訴えます。 +% +% \begin{macrocode} +\emergencystretch 3zw +% \end{macrocode} +% +% \begin{macro}{\ifnarrowbaselines} +% \begin{macro}{\narrowbaselines} +% \begin{macro}{\widebaselines} +% +% 欧文用に行間を狭くする論理変数と,それを真・偽にするためのコマンドです。 +% +% [2003-06-30] 数式に入るところで |\narrowbaselines| +% を実行しているので |\abovedisplayskip| 等が初期化 +% されてしまうというshintokさんのご指摘に対して, +% しっぽ愛好家さんが次の修正を教えてくださいました。 +% +% [2008-02-18] |english| オプションで最初の段落のインデントをしないようにしました。 +% +% TODO: Hasumiさん [qa:54539] のご指摘は考慮中です。 +% +% \begin{macrocode} +\newif\ifnarrowbaselines +\if@english + \narrowbaselinestrue +\fi +\def\narrowbaselines{% + \narrowbaselinestrue + \skip0=\abovedisplayskip + \skip2=\abovedisplayshortskip + \skip4=\belowdisplayskip + \skip6=\belowdisplayshortskip + \@currsize\selectfont + \abovedisplayskip=\skip0 + \abovedisplayshortskip=\skip2 + \belowdisplayskip=\skip4 + \belowdisplayshortskip=\skip6\relax} +\def\widebaselines{\narrowbaselinesfalse\@currsize\selectfont} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\normalsize} +% +% 標準のフォントサイズと行送りを選ぶコマンドです。 +% +% 本文10ポイントのときの行送りは, +% 欧文の標準クラスファイルでは12ポイント, +% アスキーの和文クラスファイルでは15ポイントになっていますが, +% ここでは16ポイントにしました。 +% ただし |\narrowbaselines| で欧文用の12ポイントになります。 +% +% 公称10ポイントの和文フォントが約9.25ポイント +% (アスキーのものの0.961倍)であることもあり, +% 行送りがかなりゆったりとしたと思います。 +% 実際,$16/9.25 \approx 1.73$ であり, +% 和文の推奨値の一つ「二分四分」(1.75) +% に近づきました。 +% +% \begin{macrocode} +\renewcommand{\normalsize}{% + \ifnarrowbaselines + \jsc@setfontsize\normalsize\@xpt\@xiipt + \else + \jsc@setfontsize\normalsize\@xpt{\n@baseline}% + \fi +% \end{macrocode} +% +% 数式の上のアキ(|\abovedisplayskip|), +% 短い数式の上のアキ(|\abovedisplayshortskip|), +% 数式の下のアキ(|\belowdisplayshortskip|)の設定です。 +% +% [2003-02-16] ちょっと変えました。 +% +% [2009-08-26] \TeX\ Q\,\&\,A 52569から始まる議論について逡巡して +% いましたが,結局,微調節してみることにしました。 +% +% \begin{macrocode} + \abovedisplayskip 11\jsc@mpt \@plus3\jsc@mpt \@minus4\jsc@mpt + \abovedisplayshortskip \z@ \@plus3\jsc@mpt + \belowdisplayskip 9\jsc@mpt \@plus3\jsc@mpt \@minus4\jsc@mpt + \belowdisplayshortskip \belowdisplayskip +% \end{macrocode} +% +% 最後に,リスト環境のトップレベルのパラメータ |\@listI| を, +% |\@listi| にコピーしておきます。|\@listI| の設定は後で出てきます。 +% +% \begin{macrocode} + \let\@listi\@listI} +% \end{macrocode} +% +% ここで実際に標準フォントサイズで初期化します。 +% +% \begin{macrocode} +% +%<*class|minijs> +%% initialize +\normalsize +% +%<*class> +% \end{macrocode} +% +% \end{macro} +% +% \begin{macro}{\Cht} +% \begin{macro}{\Cdp} +% \begin{macro}{\Cwd} +% \begin{macro}{\Cvs} +% \begin{macro}{\Chs} +% +% 基準となる長さの設定をします。 +% \pLaTeXe カーネル(\texttt{plfonts.dtx})で宣言されている +% パラメータに実際の値を設定します。 +% たとえば |\Cwd| は |\normalfont| の全角幅(1zw)です。 +% +% [2017-08-31] 基準とする文字を「全角空白」(EUCコード\texttt{0xA1A1})から +% 「漢」(JISコード\texttt{0x3441})へ変更しました。 +% +% [2017-09-19] 内部的に使った |\box0| を空にします。 +% \begin{macrocode} +\setbox0\hbox{\char\jis"3441}% +\setlength\Cht{\ht0} +\setlength\Cdp{\dp0} +\setlength\Cwd{\wd0} +\setlength\Cvs{\baselineskip} +\setlength\Chs{\wd0} +\setbox0=\box\voidb@x +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\small} +% +% |\small| も |\normalsize| と同様に設定します。 +% 行送りは,|\normalsize| が16ポイントなら, +% 割合からすれば$16 \times 0.9 = 14.4$ポイントになりますが, +% |\small| の使われ方を考えて,ここでは和文13ポイント, +% 欧文11ポイントとします。 +% また,|\topsep| と |\parsep| は,元はそれぞれ$4 \pm 2$,$2 \pm 1$ +% ポイントでしたが,ここではゼロ(|\z@|)にしました。 +% +% \begin{macrocode} +\newcommand{\small}{% + \ifnarrowbaselines +% \jsc@setfontsize\small\@ixpt{11}% +% \jsc@setfontsize\small{8.8888}{11}% + \else +% \jsc@setfontsize\small\@ixpt{13}% +% \jsc@setfontsize\small{8.8888}{13.2418}% + \fi + \abovedisplayskip 9\jsc@mpt \@plus3\jsc@mpt \@minus4\jsc@mpt + \abovedisplayshortskip \z@ \@plus3\jsc@mpt + \belowdisplayskip \abovedisplayskip + \belowdisplayshortskip \belowdisplayskip + \def\@listi{\leftmargin\leftmargini + \topsep \z@ + \parsep \z@ + \itemsep \parsep}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\footnotesize} +% +% |\footnotesize| も同様です。 +% |\topsep| と |\parsep| は,元はそれぞれ$3 \pm 1$,$2 \pm 1$ +% ポイントでしたが,ここではゼロ(|\z@|)にしました。 +% +% \begin{macrocode} +\newcommand{\footnotesize}{% + \ifnarrowbaselines +% \jsc@setfontsize\footnotesize\@viiipt{9.5}% +% \jsc@setfontsize\footnotesize{8.8888}{11}% + \else +% \jsc@setfontsize\footnotesize\@viiipt{11}% +% \jsc@setfontsize\footnotesize{8.8888}{13.2418}% + \fi + \abovedisplayskip 6\jsc@mpt \@plus2\jsc@mpt \@minus3\jsc@mpt + \abovedisplayshortskip \z@ \@plus2\jsc@mpt + \belowdisplayskip \abovedisplayskip + \belowdisplayshortskip \belowdisplayskip + \def\@listi{\leftmargin\leftmargini + \topsep \z@ + \parsep \z@ + \itemsep \parsep}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\scriptsize} +% \begin{macro}{\tiny} +% \begin{macro}{\large} +% \begin{macro}{\Large} +% \begin{macro}{\LARGE} +% \begin{macro}{\huge} +% \begin{macro}{\Huge} +% \begin{macro}{\HUGE} +% +% それ以外のサイズは,本文に使うことがないので, +% 単にフォントサイズと行送りだけ変更します。 +% 特に注意すべきは |\large| で, +% これは二段組のときに節見出しのフォントとして使い, +% 行送りを |\normalsize| と同じにすることによって, +% 節見出しが複数行にわたっても段間で行が揃うようにします。 +% +% [2004-11-03] |\HUGE| を追加。 +% +% \begin{macrocode} +\newcommand{\scriptsize}{\jsc@setfontsize\scriptsize\@viipt\@viiipt} +\newcommand{\tiny}{\jsc@setfontsize\tiny\@vpt\@vipt} +\if@twocolumn +% \newcommand{\large}{\jsc@setfontsize\large\@xiipt{\n@baseline}} +% \newcommand{\large}{\jsc@setfontsize\large{11.111}{\n@baseline}} +\else +% \newcommand{\large}{\jsc@setfontsize\large\@xiipt{17}} +% \newcommand{\large}{\jsc@setfontsize\large{11.111}{17}} +\fi +%\newcommand{\Large}{\jsc@setfontsize\Large\@xivpt{21}} +%\newcommand{\Large}{\jsc@setfontsize\Large{12.222}{21}} +\newcommand{\LARGE}{\jsc@setfontsize\LARGE\@xviipt{25}} +\newcommand{\huge}{\jsc@setfontsize\huge\@xxpt{28}} +\newcommand{\Huge}{\jsc@setfontsize\Huge\@xxvpt{33}} +\newcommand{\HUGE}{\jsc@setfontsize\HUGE{30}{40}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% 別行立て数式の中では |\narrowbaselines| にします。 +% 和文の行送りのままでは,行列や場合分けの行送り, +% 連分数の高さなどが不釣合いに大きくなるためです。 +% +% 本文中の数式の中では |\narrowbaselines| にしていません。 +% 本文中ではなるべく行送りが変わるような大きいものを使わず, +% 行列は |amsmath| の |smallmatrix| 環境を使うのがいいでしょう。 +% +% \begin{macrocode} +\everydisplay=\expandafter{\the\everydisplay \narrowbaselines} +% \end{macrocode} +% +% しかし,このおかげで別行数式の上下のスペースが少し違ってしまいました。 +% とりあえず |amsmath| の |equation| 関係は |okumacro| のほうで逃げていますが, +% もっとうまい逃げ道があればお教えください。 +% +% 見出し用のフォントは |\bfseries| 固定ではなく,|\headfont| +% という命令で定めることにします。 +% これは太ゴシックが使えるときは |\sffamily| |\bfseries| +% でいいと思いますが,通常の中ゴシックでは単に |\sffamily| +% だけのほうがよさそうです。 +% 『p\LaTeXe 美文書作成入門』(1997年)では |\sffamily| +% |\fontseries{sbc}| として新ゴMと合わせましたが, +% |\fontseries{sbc}| はちょっと幅が狭いように感じました。 +% +% \begin{macrocode} +% \newcommand{\headfont}{\bfseries} +\newcommand{\headfont}{\gtfamily\sffamily} +% \newcommand{\headfont}{\sffamily\fontseries{sbc}\selectfont} +% \end{macrocode} +% +% \section{レイアウト} +% +% \paragraph{二段組} +% +% \begin{macro}{\columnsep} +% \begin{macro}{\columnseprule} +% +% |\columnsep| は二段組のときの左右の段間の幅です。 +% 元は10ptでしたが,2zwにしました。 +% このスペースの中央に |\columnseprule| の幅の罫線が引かれます。 +% +% \begin{macrocode} +%\setlength\columnsep{2zw} +%\setlength\columnsep{28truebp} +\setlength\columnseprule{\z@} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \paragraph{段落} +% +% \begin{macro}{\lineskip} +% \begin{macro}{\normallineskip} +% \begin{macro}{\lineskiplimit} +% \begin{macro}{\normallineskiplimit} +% +% 上下の行の文字が |\lineskiplimit| より接近したら, +% |\lineskip| より近づかないようにします。 +% 元は0ptでしたが1ptに変更しました。 +% \texttt{normal...} の付いた方は保存用です。 +% +% \begin{macrocode} +\setlength\lineskip{1\jsc@mpt} +\setlength\normallineskip{1\jsc@mpt} +\setlength\lineskiplimit{1\jsc@mpt} +\setlength\normallineskiplimit{1\jsc@mpt} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\baselinestretch} +% +% 実際の行送りが |\baselineskip| の何倍かを表すマクロです。たとえば +% \begin{quote} +% |\renewcommand{\baselinestretch}{2}| +% \end{quote} +% とすると,行送りが通常の2倍になります。ただし, +% これを設定すると,たとえ |\baselineskip| が伸縮するように +% 設定しても,行送りの伸縮ができなくなります。 +% 行送りの伸縮はしないのが一般的です。 +% +% \begin{macrocode} +\renewcommand{\baselinestretch}{} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\parskip} +% \begin{macro}{\parindent} +% +% |\parskip| は段落間の追加スペースです。 +% 元は 0pt plus 1pt になっていましたが,ここではゼロにしました。 +% |\parindent| は段落の先頭の字下げ幅です。 +% +% \begin{macrocode} +\setlength\parskip{\z@} +\if@slide + \setlength\parindent{0zw} +\else + \setlength\parindent{1zw} +\fi +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\@lowpenalty} +% \begin{macro}{\@medpenalty} +% \begin{macro}{\@highpenalty} +% +% |\nopagebreak|,|\nolinebreak| は引数に応じて次のペナルティ値 +% のうちどれかを選ぶようになっています。 +% ここはオリジナル通りです。 +% +% \begin{macrocode} +\@lowpenalty 51 +\@medpenalty 151 +\@highpenalty 301 +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\interlinepenalty} +% +% 段落中の改ページのペナルティです。デフォルトは 0 です。 +% +% \begin{macrocode} +% \interlinepenalty 0 +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\brokenpenalty} +% +% ページの最後の行がハイフンで終わる際のペナルティです。 +% デフォルトは100です。 +% +% \begin{macrocode} +% \brokenpenalty 100 +% \end{macrocode} +% \end{macro} +% +% \subsection{ページレイアウト} +% +% \paragraph{縦方向のスペース} +% +% \begin{macro}{\headheight} +% \begin{macro}{\topskip} +% +% |\topskip| は本文領域上端と本文1行目のベースラインとの距離です。 +% あまりぎりぎりの値にすると,本文中に $\int$ のような高い文字が +% 入ったときに1行目のベースラインが他のページより下がってしまいます。 +% ここでは本文の公称フォントサイズ(10pt)にします。 +% +% [2003-06-26] |\headheight| はヘッダの高さで, +% 元は12ptでしたが,新ドキュメントクラスでは |\topskip| +% と等しくしていました。ところが,|fancyhdr| パッケージ +% で |\headheight| が小さいとおかしいことになるようです +% ので,2倍に増やしました。代わりに,版面の上下揃えの +% 計算では |\headheight| ではなく |\topskip| を使う +% ことにしました。 +% +% [2016-08-17] 圏点やルビが一行目に来た場合に下がるのを防ぐた +% め,|\topskip| を10ptから1.38zwに増やしました。 +% |\headheight| は従来と同じ20ptのままとします。 +% +% \begin{macrocode} +\setlength\topskip{1.38zw}%% from 10\jsc@mpt (2016-08-17) +\if@slide + \setlength\headheight{0\jsc@mpt} +\else + \setlength\headheight{20\jsc@mpt}%% from 2\topskip (2016-08-17); from \topskip (2003-06-26) +\fi +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\footskip} +% +% |\footskip| は本文領域下端とフッタ下端との距離です。 +% 標準クラスファイルでは,book で0.35in(約8.89mm), +% book 以外で30pt(約10.54mm)となっていましたが, +% ここではA4判のときちょうど1cmとなるように, +% |\paperheight| の0.03367倍(最小 |\baselineskip|)としました。 +% 書籍については,フッタは使わないことにして,ゼロにしました。 +% +% \begin{macrocode} +%<*article|kiyou> +\if@slide + \setlength\footskip{0pt} +\else + \setlength\footskip{0.03367\paperheight} + \ifdim\footskip<\baselineskip + \setlength\footskip{\baselineskip} + \fi +\fi +% +%\setlength\footskip{9\jsc@mmm} +%<*book> +\if@report + \setlength\footskip{0.03367\paperheight} + \ifdim\footskip<\baselineskip + \setlength\footskip{\baselineskip} + \fi +\else + \setlength\footskip{0pt} +\fi +% +%<*report> +\setlength\footskip{0.03367\paperheight} +\ifdim\footskip<\baselineskip + \setlength\footskip{\baselineskip} +\fi +% +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\headsep} +% +% |\headsep| はヘッダ下端と本文領域上端との距離です。 +% 元は book で18pt(約6.33mm), +% それ以外で25pt(約8.79mm)になっていました。 +% ここでは article は |\footskip| $-$ |\topskip| としました。 +% +% [2016-10-08] article の \texttt{slide} のとき, +% および book の非 \texttt{report} と kiyou のときに |\headsep| を +% 減らしそこねていたのを修正しました(2016-08-17での修正漏れ)。 +% +% \begin{macrocode} +%<*article> +\if@slide + \setlength\headsep{0\jsc@mpt} + \addtolength\headsep{-\topskip}%% added (2016-10-08) + \addtolength\headsep{10\jsc@mpt}%% added (2016-10-08) +\else + \setlength\headsep{\footskip} + \addtolength\headsep{-\topskip} +\fi +%
    +%<*book> +\if@report + \setlength\headsep{\footskip} + \addtolength\headsep{-\topskip} +\else + \setlength\headsep{6\jsc@mmm} + \addtolength\headsep{-\topskip}%% added (2016-10-08) + \addtolength\headsep{10\jsc@mpt}%% added (2016-10-08) +\fi +% +%<*report> +\setlength\headsep{\footskip} +\addtolength\headsep{-\topskip} +% +%<*jspf> +\setlength\headsep{9\jsc@mmm} +\addtolength\headsep{-\topskip} +% +%<*kiyou> +\setlength\headheight{0\jsc@mpt} +\setlength\headsep{0\jsc@mpt} +\addtolength\headsep{-\topskip}%% added (2016-10-08) +\addtolength\headsep{10\jsc@mpt}%% added (2016-10-08) +% +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\maxdepth} +% +% |\maxdepth| は本文最下行の最大の深さで, +% plain \TeX や\LaTeX~2.09では4ptに固定でした。 +% \LaTeX2e では |\maxdepth| $+$ |\topskip| を本文フォントサイズ +% の1.5倍にしたいのですが,|\topskip| は本文フォントサイズ +% (ここでは10pt)に等しいので,結局 |\maxdepth| は |\topskip| +% の半分の値(具体的には5pt)にします。 +% +% \begin{macrocode} +\setlength\maxdepth{.5\topskip} +% \end{macrocode} +% \end{macro} +% +% \paragraph{本文の幅と高さ} +% +% \begin{macro}{\fullwidth} +% +% 本文の幅が全角40文字を超えると読みにくくなります。 +% そこで,書籍の場合に限って, +% 紙の幅が広いときは外側のマージンを余分にとって全角40文字に押え, +% ヘッダやフッタは本文領域より広く取ることにします。 +% このときヘッダやフッタの幅を表す |\fullwidth| という長さを定義します。 +% +% \begin{macrocode} +\newdimen\fullwidth +% \end{macrocode} +% +% この |\fullwidth| は article では紙幅 |\paperwidth|の0.76倍を超えない +% 全角幅の整数倍(二段組では全角幅の偶数倍)にします。0.76倍という数値は +% A4縦置きの場合に紙幅から約2インチを引いた値になるように選びました。 +% book では紙幅から36ミリを引いた値にしました。 +% +% \begin{macro}{\textwidth} +% +% 書籍以外では本文領域の幅 |\textwidth| は |\fullwidth| と等しくします。 +% |article| ではA4縦置きで49文字となります。 +% 某学会誌スタイルでは50zw(25文字×2段)+段間8mmとします。 +% +% \begin{macrocode} +%<*article> +\if@slide + \setlength\fullwidth{0.9\paperwidth} +\else + \setlength\fullwidth{0.76\paperwidth} +\fi +\if@twocolumn \@tempdima=2zw \else \@tempdima=1zw \fi +\divide\fullwidth\@tempdima \multiply\fullwidth\@tempdima +\setlength\textwidth{\fullwidth} +%
    +%<*book> +\if@report + \setlength\fullwidth{0.76\paperwidth} +\else + \setlength\fullwidth{\paperwidth} + \addtolength\fullwidth{-36\jsc@mmm} +\fi +\if@twocolumn \@tempdima=2zw \else \@tempdima=1zw \fi +\divide\fullwidth\@tempdima \multiply\fullwidth\@tempdima +\setlength\textwidth{\fullwidth} +\if@report \else + \if@twocolumn \else + \ifdim \fullwidth>40zw + \setlength\textwidth{40zw} + \fi + \fi +\fi +% +%<*report> +\setlength\fullwidth{0.76\paperwidth} +\if@twocolumn \@tempdima=2zw \else \@tempdima=1zw \fi +\divide\fullwidth\@tempdima \multiply\fullwidth\@tempdima +\setlength\textwidth{\fullwidth} +% +%<*jspf> +\setlength\fullwidth{50zw} +\addtolength\fullwidth{8\jsc@mmm} +\setlength\textwidth{\fullwidth} +% +%<*kiyou> +\setlength\fullwidth{48zw} +\addtolength\fullwidth{\columnsep} +\setlength\textwidth{\fullwidth} +% +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\textheight} +% +% 紙の高さ |\paperheight| は,1インチと |\topmargin| +% と |\headheight| と |\headsep| と |\textheight| +% と |\footskip| とページ下部の余白を加えたものです。 +% +% 本文部分の高さ |\textheight| は, +% 紙の高さ |\paperheight| の0.83倍から, +% ヘッダの高さ,ヘッダと本文の距離,本文とフッタ下端の距離, +% |\topskip| を引き, +% それを |\baselineskip| の倍数に切り捨て, +% 最後に |\topskip| を加えます。 +% 念のため0.1ポイント余分に加えておきます。 +% 0.83倍という数値は,A4縦置きの場合に紙の高さから +% 上下マージン各約1インチを引いた値になるように選びました。 +% +% 某学会誌スタイルでは44行にします。 +% +% [2003-06-26] |\headheight| を |\topskip| に直しました。 +% 以前はこの二つは値が同じであったので,変化はないはずです。 +% +% [2016-08-26] |\topskip| を10ptから1.38zwに増やしましたので, +% その分 |\textheight| を増やします(2016-08-17での修正漏れ)。 +% +% [2016-10-08] article の slide のときに |\headheight| はゼロ +% なので,さらに修正しました(2016-08-17での修正漏れ)。 +% +% \begin{macrocode} +%<*article|book|report> +\if@slide + \setlength{\textheight}{0.95\paperheight} +\else + \setlength{\textheight}{0.83\paperheight} +\fi +\addtolength{\textheight}{-10\jsc@mpt}%% from -\topskip (2016-10-08); from -\headheight (2003-06-26) +\addtolength{\textheight}{-\headsep} +\addtolength{\textheight}{-\footskip} +\addtolength{\textheight}{-\topskip} +\divide\textheight\baselineskip +\multiply\textheight\baselineskip +% +%\setlength{\textheight}{51\baselineskip} +%\setlength{\textheight}{47\baselineskip} +\addtolength{\textheight}{\topskip} +\addtolength{\textheight}{0.1\jsc@mpt} +%\setlength{\mathindent}{10\jsc@mmm} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\flushbottom} +% +% [2016-07-18] |\textheight| に念のため0.1ポイント余裕を持たせて +% いるのと同様に,|\flushbottom| にも余裕を持たせます。 +% 元の\LaTeXe での完全な |\flushbottom| の定義は +%\begin{verbatim} +% \def\flushbottom{% +% \let\@textbottom\relax \let\@texttop\relax} +%\end{verbatim} +% ですが,次のようにします。 +% +% \begin{macrocode} +\def\flushbottom{% + \def\@textbottom{\vskip \z@ \@plus.1\jsc@mpt}% + \let\@texttop\relax} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\marginparsep} +% \begin{macro}{\marginparpush} +% +% |\marginparsep| は欄外の書き込みと本文との間隔です。 +% |\marginparpush| は欄外の書き込みどうしの最小の間隔です。 +% +% \begin{macrocode} +\setlength\marginparsep{\columnsep} +\setlength\marginparpush{\baselineskip} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\oddsidemargin} +% \begin{macro}{\evensidemargin} +% +% それぞれ奇数ページ,偶数ページの左マージンから1インチ引いた値です。 +% 片面印刷では |\oddsidemargin| が使われます。 +% \TeX は上・左マージンに |1truein| を挿入しますが, +% トンボ関係のオプションが指定されるとp\LaTeXe (|plcore.ltx|) +% はトンボの内側に |1in| のスペース(|1truein| ではなく)を挿入するので, +% 場合分けしています。 +% +% \begin{macrocode} +\setlength{\oddsidemargin}{\paperwidth} +\addtolength{\oddsidemargin}{-\fullwidth} +\setlength{\oddsidemargin}{.5\oddsidemargin} +\iftombow + \addtolength{\oddsidemargin}{-1in} +\else + \addtolength{\oddsidemargin}{-\inv@mag in} +\fi +\setlength{\evensidemargin}{\oddsidemargin} +\if@mparswitch + \addtolength{\evensidemargin}{\fullwidth} + \addtolength{\evensidemargin}{-\textwidth} +\fi +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\marginparwidth} +% +% |\marginparwidth| は欄外の書き込みの横幅です。 +% 外側マージンの幅(|\evensidemargin| $+$ 1インチ)から1センチを引き, +% さらに |\marginparsep|(欄外の書き込みと本文のアキ)を引いた値に +% しました。最後に1\,zwの整数倍に切り捨てます。 +% +% \begin{macrocode} +\setlength\marginparwidth{\paperwidth} +\addtolength\marginparwidth{-\oddsidemargin} +\addtolength\marginparwidth{-\inv@mag in} +\addtolength\marginparwidth{-\textwidth} +\addtolength\marginparwidth{-10\jsc@mmm} +\addtolength\marginparwidth{-\marginparsep} +\@tempdima=1zw +\divide\marginparwidth\@tempdima +\multiply\marginparwidth\@tempdima +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\topmargin} +% +% 上マージン(紙の上端とヘッダ上端の距離) +% から1インチ引いた値です。 +% +% [2003-06-26] |\headheight| を |\topskip| に直しました。 +% 以前はこの二つは値が同じであったので,変化はないはずです。 +% +% [2016-08-17] |\topskip| を10ptから1.38zwに直しましたが, +% |\topmargin| は従来の値から変わらないように調節しました。 +% …のつもりでしたが,|\textheight| を増やし忘れていたので +% 変わってしまっていました(2016-08-26修正済み)。 +% +% \begin{macrocode} +\setlength\topmargin{\paperheight} +\addtolength\topmargin{-\textheight} +\if@slide + \addtolength\topmargin{-\headheight} +\else + \addtolength\topmargin{-10\jsc@mpt}%% from -\topskip (2016-10-08); from -\headheight (2003-06-26) +\fi +\addtolength\topmargin{-\headsep} +\addtolength\topmargin{-\footskip} +\setlength\topmargin{0.5\topmargin} +%\setlength\topmargin{81truebp} +\iftombow + \addtolength\topmargin{-1in} +\else + \addtolength\topmargin{-\inv@mag in} +\fi +% \end{macrocode} +% \end{macro} +% +% \paragraph{脚注} +% +% \begin{macro}{\footnotesep} +% +% 各脚注の頭に入る支柱(strut)の高さです。 +% 脚注間に余分のアキが入らないように, +% |\footnotesize| の支柱の高さ(行送りの0.7倍)に等しくします。 +% +% \begin{macrocode} +{\footnotesize\global\setlength\footnotesep{\baselineskip}} +\setlength\footnotesep{0.7\footnotesep} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\footins} +% +% |\skip\footins| は本文の最終行と最初の脚注との間の距離です。 +% 標準の10ポイントクラスでは 9 plus 4 minus 2 ポイントになっていますが, +% 和文の行送りを考えてもうちょっと大きくします。 +% +% \begin{macrocode} +\setlength{\skip\footins}{16\jsc@mpt \@plus 5\jsc@mpt \@minus 2\jsc@mpt} +% \end{macrocode} +% \end{macro} +% +% \paragraph{フロート関連} +% +% フロート(図,表)関連のパラメータは\LaTeXe 本体で定義されていますが, +% ここで設定変更します。本文ページ(本文とフロートが共存するページ) +% とフロートだけのページで設定が異なります。 +% ちなみに,カウンタは内部では |\c@| を名前に冠したマクロになっています。 +% +% \begin{macro}{\c@topnumber} +% +% |topnumber| カウンタは本文ページ上部のフロートの最大数です。 +% +% [2003-08-23] ちょっと増やしました。 +% +% \begin{macrocode} +\setcounter{topnumber}{9} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\topfraction} +% +% 本文ページ上部のフロートが占有できる最大の割合です。 +% フロートが入りやすいように,元の値 0.7 を 0.8 [2003-08-23: 0.85] に変えてあります。 +% +% \begin{macrocode} +\renewcommand{\topfraction}{.85} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\c@bottomnumber} +% +% |bottomnumber| カウンタは本文ページ下部のフロートの最大数です。 +% +% [2003-08-23] ちょっと増やしました。 +% +% \begin{macrocode} +\setcounter{bottomnumber}{9} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\bottomfraction} +% +% 本文ページ下部のフロートが占有できる最大の割合です。元は 0.3 でした。 +% +% \begin{macrocode} +\renewcommand{\bottomfraction}{.8} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\c@totalnumber} +% +% |totalnumber| カウンタは本文ページに入りうるフロートの最大数です。 +% +% [2003-08-23] ちょっと増やしました。 +% +% \begin{macrocode} +\setcounter{totalnumber}{20} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\textfraction} +% +% 本文ページに最低限入らなければならない本文の割合です。 +% フロートが入りやすいように元の 0.2 を 0.1 に変えました。 +% +% \begin{macrocode} +\renewcommand{\textfraction}{.1} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\floatpagefraction} +% +% フロートだけのページでのフロートの最小割合です。 +% これも 0.5 を 0.8 に変えてあります。 +% +% \begin{macrocode} +\renewcommand{\floatpagefraction}{.8} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\c@dbltopnumber} +% +% 二段組のとき本文ページ上部に出力できる +% 段抜きフロートの最大数です。 +% +% [2003-08-23] ちょっと増やしました。 +% +% \begin{macrocode} +\setcounter{dbltopnumber}{9} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\dbltopfraction} +% +% 二段組のとき本文ページ上部に出力できる +% 段抜きフロートが占めうる最大の割合です。 +% 0.7 を 0.8 に変えてあります。 +% +% \begin{macrocode} +\renewcommand{\dbltopfraction}{.8} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\dblfloatpagefraction} +% +% 二段組のときフロートだけのページに入るべき +% 段抜きフロートの最小割合です。 +% 0.5 を 0.8 に変えてあります。 +% +% \begin{macrocode} +\renewcommand{\dblfloatpagefraction}{.8} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\floatsep} +% \begin{macro}{\textfloatsep} +% \begin{macro}{\intextsep} +% +% |\floatsep| はページ上部・下部のフロート間の距離です。 +% |\textfloatsep| はページ上部・下部のフロートと本文との距離です。 +% |\intextsep| は本文の途中に出力されるフロートと本文との距離です。 +% +% \begin{macrocode} +\setlength\floatsep {12\jsc@mpt \@plus 2\jsc@mpt \@minus 2\jsc@mpt} +\setlength\textfloatsep{20\jsc@mpt \@plus 2\jsc@mpt \@minus 4\jsc@mpt} +\setlength\intextsep {12\jsc@mpt \@plus 2\jsc@mpt \@minus 2\jsc@mpt} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\dblfloatsep} +% \begin{macro}{\dbltextfloatsep} +% +% 二段組のときの段抜きのフロートについての値です。 +% +% \begin{macrocode} +\setlength\dblfloatsep {12\jsc@mpt \@plus 2\jsc@mpt \@minus 2\jsc@mpt} +\setlength\dbltextfloatsep{20\jsc@mpt \@plus 2\jsc@mpt \@minus 4\jsc@mpt} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\@fptop} +% \begin{macro}{\@fpsep} +% \begin{macro}{\@fpbot} +% +% フロートだけのページに入るグルーです。 +% |\@fptop| はページ上部, +% |\@fpbot| はページ下部, +% |\@fpsep| はフロート間に入ります。 +% +% \begin{macrocode} +\setlength\@fptop{0\jsc@mpt \@plus 1fil} +\setlength\@fpsep{8\jsc@mpt \@plus 2fil} +\setlength\@fpbot{0\jsc@mpt \@plus 1fil} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\@dblfptop} +% \begin{macro}{\@dblfpsep} +% \begin{macro}{\@dblfpbot} +% +% 段抜きフロートについての値です。 +% +% \begin{macrocode} +\setlength\@dblfptop{0\jsc@mpt \@plus 1fil} +\setlength\@dblfpsep{8\jsc@mpt \@plus 2fil} +\setlength\@dblfpbot{0\jsc@mpt \@plus 1fil} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \section{改ページ(日本語\TeX{}開発コミュニティ版のみ)}\label{sec:cleardoublepage} +% +% \begin{macro}{\pltx@cleartorightpage} +% \begin{macro}{\pltx@cleartoleftpage} +% \begin{macro}{\pltx@cleartooddpage} +% \begin{macro}{\pltx@cleartoevenpage} +% [2017-02-24] コミュニティ版\pLaTeX の標準クラス2017/02/15に合わせて, +% 同じ命令を追加しました。 +% \begin{enumerate} +% \item|\pltx@cleartorightpage|:右ページになるまでページを繰る命令 +% \item|\pltx@cleartoleftpage|:左ページになるまでページを繰る命令 +% \item|\pltx@cleartooddpage|:奇数ページになるまでページを繰る命令 +% \item|\pltx@cleartoevenpage|:偶数ページになるまでページを繰る命令 +% \end{enumerate} +% となっています。 +% +% \begin{macrocode} +%<*article|book|report> +\def\pltx@cleartorightpage{\clearpage\if@twoside + \ifodd\c@page + \iftdir + \hbox{}\thispagestyle{empty}\newpage + \if@twocolumn\hbox{}\newpage\fi + \fi + \else + \ifydir + \hbox{}\thispagestyle{empty}\newpage + \if@twocolumn\hbox{}\newpage\fi + \fi + \fi\fi} +\def\pltx@cleartoleftpage{\clearpage\if@twoside + \ifodd\c@page + \ifydir + \hbox{}\thispagestyle{empty}\newpage + \if@twocolumn\hbox{}\newpage\fi + \fi + \else + \iftdir + \hbox{}\thispagestyle{empty}\newpage + \if@twocolumn\hbox{}\newpage\fi + \fi + \fi\fi} +\def\pltx@cleartooddpage{\clearpage\if@twoside + \ifodd\c@page\else + \hbox{}\thispagestyle{empty}\newpage + \if@twocolumn\hbox{}\newpage\fi + \fi\fi} +\def\pltx@cleartoevenpage{\clearpage\if@twoside + \ifodd\c@page + \hbox{}\thispagestyle{empty}\newpage + \if@twocolumn\hbox{}\newpage\fi + \fi\fi} +% +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\cleardoublepage} +% [2017-02-24] コミュニティ版\pLaTeX の標準クラス2017/02/15に合わせて, +% reportとbookクラスの場合に|\cleardoublepage|を再定義します。 +% \begin{macrocode} +%<*book|report> +\if@openleft + \let\cleardoublepage\pltx@cleartoleftpage +\else\if@openright + \let\cleardoublepage\pltx@cleartorightpage +\fi\fi +% +% \end{macrocode} +% \end{macro} +% +% \section{ページスタイル}\label{sec:pagestyle} +% +% ページスタイルとして,\LaTeXe (欧文版)の標準クラス +% では |empty|,|plain|,|headings|,|myheadings| があります。 +% このうち |empty|,|plain| スタイルは\LaTeXe 本体 +% で定義されています。 +% +% アスキーのクラスファイルでは |headnombre|,|footnombre|, +% |bothstyle|,|jpl@in| が追加されていますが, +% ここでは欧文標準のものだけにしました。 +% +% ページスタイルは |\ps@...| の形のマクロで定義されています。 +% +% \begin{macro}{\@evenhead} +% \begin{macro}{\@oddhead} +% \begin{macro}{\@evenfoot} +% \begin{macro}{\@oddfoot} +% +% |\@oddhead|,|\@oddfoot|,|\@evenhead|,|\@evenfoot| は +% 偶数・奇数ページの柱(ヘッダ,フッタ)を出力する命令です。 +% これらは |\fullwidth| 幅の |\hbox| の中で呼び出されます。 +% |\ps@...| の中で定義しておきます。 +% +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% 柱の内容は,|\chapter| が呼び出す |\chaptermark{何々}|, +% |\section| が呼び出す |\sectionmark{何々}| で設定します。 +% 柱を扱う命令には次のものがあります。 +% +% \begin{quote} +% \begin{tabbing} +% |\markboth{左}{右} | \= 両方の柱を設定します。\\ +% |\markright{右}| \> 右の柱を設定します。\\ +% |\leftmark| \> 左の柱を出力します。\\ +% |\rightmark| \> 右の柱を出力します。 +% \end{tabbing} +% \end{quote} +% +% 柱を設定する命令は,右の柱が左の柱の下位にある場合は十分まともに +% 動作します。たとえば左マークを |\chapter|,右マークを |\section| +% で変更する場合がこれにあたります。 +% しかし,同一ページに複数の |\markboth| があると, +% おかしな結果になることがあります。 +% +% |\tableofcontents| のような命令で使われる |\@mkboth| は, +% |\ps@...| コマンド中で |\markboth| か |\@gobbletwo|(何もしない) +% に |\let| されます。 +% +% \begin{macro}{\ps@empty} +% +% |empty| ページスタイルの定義です。 +% \LaTeX 本体で定義されているものをコメントアウトした形で +% 載せておきます。 +% +% \begin{macrocode} +% \def\ps@empty{% +% \let\@mkboth\@gobbletwo +% \let\@oddhead\@empty +% \let\@oddfoot\@empty +% \let\@evenhead\@empty +% \let\@evenfoot\@empty} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\ps@plainhead} +% \begin{macro}{\ps@plainfoot} +% \begin{macro}{\ps@plain} +% +% |plainhead| はシンプルなヘッダだけのページスタイルです。 +% +% |plainfoot| はシンプルなフッタだけのページスタイルです。 +% +% |plain| は |book| では |plainhead|,それ以外では |plainfoot| になります。 +% +% \begin{macrocode} +\def\ps@plainfoot{% + \let\@mkboth\@gobbletwo + \let\@oddhead\@empty + \def\@oddfoot{\normalfont\hfil\thepage\hfil}% + \let\@evenhead\@empty + \let\@evenfoot\@oddfoot} +\def\ps@plainhead{% + \let\@mkboth\@gobbletwo + \let\@oddfoot\@empty + \let\@evenfoot\@empty + \def\@evenhead{% + \if@mparswitch \hss \fi + \hbox to \fullwidth{\textbf{\thepage}\hfil}% + \if@mparswitch\else \hss \fi}% + \def\@oddhead{% + \hbox to \fullwidth{\hfil\textbf{\thepage}}\hss}} +%\if@report \let\ps@plain\ps@plainfoot \else \let\ps@plain\ps@plainhead \fi +%\let\ps@plain\ps@plainfoot +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\ps@headings} +% +% |headings| スタイルはヘッダに見出しとページ番号を出力します。 +% ここではヘッダにアンダーラインを引くようにしてみました。 +% +% まず article の場合です。 +% +% \begin{macrocode} +%<*article|kiyou> +\if@twoside + \def\ps@headings{% + \let\@oddfoot\@empty + \let\@evenfoot\@empty + \def\@evenhead{\if@mparswitch \hss \fi + \underline{\hbox to \fullwidth{\textbf{\thepage}\hfil\leftmark}}% + \if@mparswitch\else \hss \fi}% + \def\@oddhead{% + \underline{% + \hbox to \fullwidth{{\rightmark}\hfil\textbf{\thepage}}}\hss}% + \let\@mkboth\markboth + \def\sectionmark##1{\markboth{% + \ifnum \c@secnumdepth >\z@ \thesection \hskip1zw\fi + ##1}{}}% + \def\subsectionmark##1{\markright{% + \ifnum \c@secnumdepth >\@ne \thesubsection \hskip1zw\fi + ##1}}% + } +\else % if not twoside + \def\ps@headings{% + \let\@oddfoot\@empty + \def\@oddhead{% + \underline{% + \hbox to \fullwidth{{\rightmark}\hfil\textbf{\thepage}}}\hss}% + \let\@mkboth\markboth + \def\sectionmark##1{\markright{% + \ifnum \c@secnumdepth >\z@ \thesection \hskip1zw\fi + ##1}}} +\fi +% +% \end{macrocode} +% +% 次は book および report の場合です。 +% [2011-05-10] しっぽ愛好家さん [qa:6370] のパッチを取り込ませていただきました +% (北見さん [qa:55896] のご指摘ありがとうございます)。 +% +% \begin{macrocode} +%<*book|report> +\newif\if@omit@number +\def\ps@headings{% + \let\@oddfoot\@empty + \let\@evenfoot\@empty + \def\@evenhead{% + \if@mparswitch \hss \fi + \underline{\hbox to \fullwidth{\autoxspacing + \textbf{\thepage}\hfil\leftmark}}% + \if@mparswitch\else \hss \fi}% + \def\@oddhead{\underline{\hbox to \fullwidth{\autoxspacing + {\if@twoside\rightmark\else\leftmark\fi}\hfil\textbf{\thepage}}}\hss}% + \let\@mkboth\markboth + \def\chaptermark##1{\markboth{% + \ifnum \c@secnumdepth >\m@ne +% \if@mainmatter + \if@omit@number\else + \@chapapp\thechapter\@chappos\hskip1zw + \fi +% \fi + \fi + ##1}{}}% + \def\sectionmark##1{\markright{% + \ifnum \c@secnumdepth >\z@ \thesection \hskip1zw\fi + ##1}}}% +% +% \end{macrocode} +% +% 最後は学会誌の場合です。 +% +% \begin{macrocode} +%<*jspf> +\def\ps@headings{% + \def\@oddfoot{\normalfont\hfil\thepage\hfil} + \def\@evenfoot{\normalfont\hfil\thepage\hfil} + \def\@oddhead{\normalfont\hfil \@title \hfil} + \def\@evenhead{\normalfont\hfil プラズマ・核融合学会誌\hfil}} +% +% \end{macrocode} +% +% \end{macro} +% +% \begin{macro}{\ps@myheadings} +% +% |myheadings| ページスタイルではユーザが |\markboth| や |\markright| で +% 柱を設定するため,ここでの定義は非常に簡単です。 +% +% [2004-01-17] 渡辺徹さんのパッチを適用しました。 +% +% \begin{macrocode} +\def\ps@myheadings{% + \let\@oddfoot\@empty\let\@evenfoot\@empty + \def\@evenhead{% + \if@mparswitch \hss \fi% + \hbox to \fullwidth{\thepage\hfil\leftmark}% + \if@mparswitch\else \hss \fi}% + \def\@oddhead{% + \hbox to \fullwidth{\rightmark\hfil\thepage}\hss}% + \let\@mkboth\@gobbletwo +% \let\chaptermark\@gobble + \let\sectionmark\@gobble +% \let\subsectionmark\@gobble +} +% \end{macrocode} +% \end{macro} +% +% \section{文書のマークアップ} +% +% \subsection{表題} +% +% \begin{macro}{\title} +% \begin{macro}{\author} +% \begin{macro}{\date} +% +% これらは\LaTeX 本体で次のように定義されています。 +% ここではコメントアウトした形で示します。 +% +% \begin{macrocode} +% \newcommand*{\title}[1]{\gdef\@title{#1}} +% \newcommand*{\author}[1]{\gdef\@author{#1}} +% \newcommand*{\date}[1]{\gdef\@date{#1}} +% \date{\today} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\etitle} +% \begin{macro}{\eauthor} +% \begin{macro}{\keywords} +% +% 某学会誌スタイルで使う英語のタイトル,英語の著者名,キーワード,メールアドレスです。 +% +% \begin{macrocode} +%<*jspf> +\newcommand*{\etitle}[1]{\gdef\@etitle{#1}} +\newcommand*{\eauthor}[1]{\gdef\@eauthor{#1}} +\newcommand*{\keywords}[1]{\gdef\@keywords{#1}} +\newcommand*{\email}[1]{\gdef\authors@mail{#1}} +\newcommand*{\AuthorsEmail}[1]{\gdef\authors@mail{author's e-mail:\ #1}} +% +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\plainifnotempty} +% +% 従来の標準クラスでは,文書全体のページスタイルを |empty| に +% しても表題のあるページだけ |plain| になってしまうことが +% ありました。これは |\maketitle| の定義中 +% に |\thispagestyle|\hspace{0pt}|{plain}| が入っている +% ためです。この問題を解決するために, +% 「全体のページスタイルが |empty| でないなら +% このページのスタイルを |plain| にする」という次の +% 命令を作ることにします。 +% +% \begin{macrocode} +\def\plainifnotempty{% + \ifx \@oddhead \@empty + \ifx \@oddfoot \@empty + \else + \thispagestyle{plainfoot}% + \fi + \else + \thispagestyle{plainhead}% + \fi} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\maketitle} +% +% 表題を出力します。 +% 著者名を出力する部分は,欧文の標準クラスファイルでは |\large|, +% 和文のものでは |\Large| になっていましたが,ここでは |\large| +% にしました。 +% +% [2016-11-16] 新設された \texttt{nomag} および \texttt{nomag*} オプション +% の場合をデフォルト(\texttt{usemag} 相当)に合わせるため,|\smallskip| を +% |\jsc@smallskip| に置き換えました。|\smallskip| のままでは +% \texttt{nomag(*)} の場合にスケールしなくなり,レイアウトが変わってしまいます。 +% +% \begin{macrocode} +%<*article|book|report|kiyou> +\if@titlepage + \newcommand{\maketitle}{% + \begin{titlepage}% + \let\footnotesize\small + \let\footnoterule\relax + \let\footnote\thanks + \null\vfil + \if@slide + {\footnotesize \@date}% + \begin{center} + \mbox{} \\[1zw] + \large + {\maybeblue\hrule height0\jsc@mpt depth2\jsc@mpt\relax}\par + \jsc@smallskip + \@title + \jsc@smallskip + {\maybeblue\hrule height0\jsc@mpt depth2\jsc@mpt\relax}\par + \vfill + {\small \@author}% + \end{center} + \else + \vskip 60\jsc@mpt + \begin{center}% + {\LARGE \@title \par}% + \vskip 3em% + {\large + \lineskip .75em + \begin{tabular}[t]{c}% + \@author + \end{tabular}\par}% + \vskip 1.5em + {\large \@date \par}% + \end{center}% + \fi + \par + \@thanks\vfil\null + \end{titlepage}% + \setcounter{footnote}{0}% + \global\let\thanks\relax + \global\let\maketitle\relax + \global\let\@thanks\@empty + \global\let\@author\@empty + \global\let\@date\@empty + \global\let\@title\@empty + \global\let\title\relax + \global\let\author\relax + \global\let\date\relax + \global\let\and\relax + }% +\else + \newcommand{\maketitle}{\par + \begingroup + \renewcommand\thefootnote{\@fnsymbol\c@footnote}% + \def\@makefnmark{\rlap{\@textsuperscript{\normalfont\@thefnmark}}}% + \long\def\@makefntext##1{\advance\leftskip 3zw + \parindent 1zw\noindent + \llap{\@textsuperscript{\normalfont\@thefnmark}\hskip0.3zw}##1}% + \if@twocolumn + \ifnum \col@number=\@ne + \@maketitle + \else + \twocolumn[\@maketitle]% + \fi + \else + \newpage + \global\@topnum\z@ % Prevents figures from going at top of page. + \@maketitle + \fi + \plainifnotempty + \@thanks + \endgroup + \setcounter{footnote}{0}% + \global\let\thanks\relax + \global\let\maketitle\relax + \global\let\@thanks\@empty + \global\let\@author\@empty + \global\let\@date\@empty + \global\let\@title\@empty + \global\let\title\relax + \global\let\author\relax + \global\let\date\relax + \global\let\and\relax + } +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@maketitle} +% +% 独立した表題ページを作らない場合の表題の出力形式です。 +% +% \begin{macrocode} + \def\@maketitle{% + \newpage\null + \vskip 2em + \begin{center}% + \let\footnote\thanks + {\LARGE \@title \par}% + \vskip 1.5em + {\large + \lineskip .5em + \begin{tabular}[t]{c}% + \@author + \end{tabular}\par}% + \vskip 1em + {\large \@date}% + \end{center}% + \par\vskip 1.5em +% \ifvoid\@abstractbox\else\centerline{\box\@abstractbox}\vskip1.5em\fi + } +\fi +% +%<*jspf> +\newcommand{\maketitle}{\par + \begingroup + \renewcommand\thefootnote{\@fnsymbol\c@footnote}% + \def\@makefnmark{\rlap{\@textsuperscript{\normalfont\@thefnmark}}}% + \long\def\@makefntext##1{\advance\leftskip 3zw + \parindent 1zw\noindent + \llap{\@textsuperscript{\normalfont\@thefnmark}\hskip0.3zw}##1}% + \twocolumn[\@maketitle]% + \plainifnotempty + \@thanks + \endgroup + \setcounter{footnote}{0}% + \global\let\thanks\relax + \global\let\maketitle\relax + \global\let\@thanks\@empty + \global\let\@author\@empty + \global\let\@date\@empty +% \global\let\@title\@empty % \@title は柱に使う + \global\let\title\relax + \global\let\author\relax + \global\let\date\relax + \global\let\and\relax + \ifx\authors@mail\@undefined\else{% + \def\@makefntext{\advance\leftskip 3zw \parindent -3zw}% + \footnotetext[0]{\itshape\authors@mail}% + }\fi + \global\let\authors@mail\@undefined} +\def\@maketitle{% + \newpage\null + \vskip 6em % used to be 2em + \begin{center} + \let\footnote\thanks + \ifx\@title\@undefined\else{\LARGE\headfont\@title\par}\fi + \lineskip .5em + \ifx\@author\@undefined\else + \vskip 1em + \begin{tabular}[t]{c}% + \@author + \end{tabular}\par + \fi + \ifx\@etitle\@undefined\else + \vskip 1em + {\large \@etitle \par}% + \fi + \ifx\@eauthor\@undefined\else + \vskip 1em + \begin{tabular}[t]{c}% + \@eauthor + \end{tabular}\par + \fi + \vskip 1em + \@date + \end{center} + \vskip 1.5em + \centerline{\box\@abstractbox} + \ifx\@keywords\@undefined\else + \vskip 1.5em + \centerline{\parbox{157\jsc@mmm}{\textsf{Keywords:}\\ \small\@keywords}} + \fi + \vskip 1.5em} +% +% \end{macrocode} +% \end{macro} +% +% \subsection{章・節} +% +% \paragraph{構成要素} +% +% |\@startsection| マクロは6個の必須引数と,オプションとして |*| と +% 1個のオプション引数と1個の必須引数をとります。 +% +% \begin{quote} +% |\@startsection{名}{レベル}{字下げ}{前アキ}{後アキ}{スタイル}| \\ +% | *[別見出し]{見出し}| +% \end{quote} +% +% それぞれの引数の意味は次の通りです。 +% +% \begin{description} +% \item[名] ユーザレベルコマンドの名前です(例: section)。 +% \item[レベル] 見出しの深さを示す数値です +% (chapter=1, section=2, \ldots )。 +% この数値が |secnumdepth| 以下のとき見出し番号を出力します。 +% \item[字下げ] 見出しの字下げ量です。 +% \item[前アキ] この値の絶対値が見出し上側の空きです。 +% 負の場合は,見出し直後の段落をインデントしません。 +% \item[後アキ] 正の場合は,見出しの下の空きです。 +% 負の場合は,絶対値が見出しの右の空きです +% (見出しと同じ行から本文を始めます)。 +% \item[スタイル] 見出しの文字スタイルの設定です。 +% \item[\texttt{*}] この \texttt{*} 印がないと,見出し番号を付け, +% 見出し番号のカウンタに1を加算します。 +% \item[別見出し] 目次や柱に出力する見出しです。 +% \item[見出し] 見出しです。 +% \end{description} +% +% 見出しの命令は通常 |\@startsection| とその最初の6個の引数として +% 定義されます。 +% +% 次は |\@startsection| の定義です。 +% 情報処理学会論文誌スタイルファイル(\texttt{ipsjcommon.sty}) +% を参考にさせていただきましたが,完全に行送りが |\baselineskip| +% の整数倍にならなくてもいいから前の行と重ならないようにしました。 +% +% \begin{macrocode} +\def\@startsection#1#2#3#4#5#6{% + \if@noskipsec \leavevmode \fi + \par +% 見出し上の空きを \@tempskipa にセットする + \@tempskipa #4\relax +% \@afterindent は見出し直後の段落を字下げするかどうかを表すスイッチ + \if@english \@afterindentfalse \else \@afterindenttrue \fi +% 見出し上の空きが負なら見出し直後の段落を字下げしない + \ifdim \@tempskipa <\z@ + \@tempskipa -\@tempskipa \@afterindentfalse + \fi + \if@nobreak +% \everypar{\everyparhook}% これは間違い + \everypar{}% + \else + \addpenalty\@secpenalty +% 次の行は削除 +% \addvspace\@tempskipa +% 次の \noindent まで追加 + \ifdim \@tempskipa >\z@ + \if@slide\else + \null + \vspace*{-\baselineskip}% + \fi + \vskip\@tempskipa + \fi + \fi + \noindent +% 追加終わり + \@ifstar + {\@ssect{#3}{#4}{#5}{#6}}% + {\@dblarg{\@sect{#1}{#2}{#3}{#4}{#5}{#6}}}} +% \end{macrocode} +% +% |\@sect| と |\@xsect| は, +% 前のアキがちょうどゼロの場合にもうまくいくように,多少変えてあります。 +% |\everyparhook| も挿入しています。 +% +% \begin{macrocode} +\def\@sect#1#2#3#4#5#6[#7]#8{% + \ifnum #2>\c@secnumdepth + \let\@svsec\@empty + \else + \refstepcounter{#1}% + \protected@edef\@svsec{\@seccntformat{#1}\relax}% + \fi +% 見出し後の空きを \@tempskipa にセット + \@tempskipa #5\relax +% 条件判断の順序を入れ換えました + \ifdim \@tempskipa<\z@ + \def\@svsechd{% + #6{\hskip #3\relax + \@svsec #8}% + \csname #1mark\endcsname{#7}% + \addcontentsline{toc}{#1}{% + \ifnum #2>\c@secnumdepth \else + \protect\numberline{\csname the#1\endcsname}% + \fi + #7}}% 目次にフルネームを載せるなら #8 + \else + \begingroup + \interlinepenalty \@M % 下から移動 + #6{% + \@hangfrom{\hskip #3\relax\@svsec}% +% \interlinepenalty \@M % 上に移動 + #8\@@par}% + \endgroup + \csname #1mark\endcsname{#7}% + \addcontentsline{toc}{#1}{% + \ifnum #2>\c@secnumdepth \else + \protect\numberline{\csname the#1\endcsname}% + \fi + #7}% 目次にフルネームを載せるならここは #8 + \fi + \@xsect{#5}} +% \end{macrocode} +% +% 二つ挿入した |\everyparhook| のうち後者が |\paragraph| 類の後で2回実行され, +% それ以降は前者が実行されます。 +% +% [2016-07-28] \texttt{slide}オプションと\texttt{twocolumn}オプションを +% 同時に指定した場合の罫線の位置を微調整しました。 +% +% \begin{macrocode} +\def\@xsect#1{% +% 見出しの後ろの空きを \@tempskipa にセット + \@tempskipa #1\relax +% 条件判断の順序を変えました + \ifdim \@tempskipa<\z@ + \@nobreakfalse + \global\@noskipsectrue + \everypar{% + \if@noskipsec + \global\@noskipsecfalse + {\setbox\z@\lastbox}% + \clubpenalty\@M + \begingroup \@svsechd \endgroup + \unskip + \@tempskipa #1\relax + \hskip -\@tempskipa + \else + \clubpenalty \@clubpenalty + \everypar{\everyparhook}% + \fi\everyparhook}% + \else + \par \nobreak + \vskip \@tempskipa + \@afterheading + \fi + \if@slide + {\vskip\if@twocolumn-5\jsc@mpt\else-6\jsc@mpt\fi + \maybeblue\hrule height0\jsc@mpt depth1\jsc@mpt + \vskip\if@twocolumn 4\jsc@mpt\else 7\jsc@mpt\fi\relax}% + \fi + \par % 2000-12-18 + \ignorespaces} +\def\@ssect#1#2#3#4#5{% + \@tempskipa #3\relax + \ifdim \@tempskipa<\z@ + \def\@svsechd{#4{\hskip #1\relax #5}}% + \else + \begingroup + #4{% + \@hangfrom{\hskip #1}% + \interlinepenalty \@M #5\@@par}% + \endgroup + \fi + \@xsect{#3}} +% \end{macrocode} +% +% \paragraph{柱関係の命令} +% +% \begin{macro}{\chaptermark} +% \begin{macro}{\sectionmark} +% \begin{macro}{\subsectionmark} +% \begin{macro}{\subsubsectionmark} +% \begin{macro}{\paragraphmark} +% \begin{macro}{\subparagraphmark} +% +% |\...mark| の形の命令を初期化します(第\ref{sec:pagestyle}節参照)。 +% |\chaptermark| 以外は\LaTeX 本体で定義済みです。 +% +% \begin{macrocode} +\newcommand*\chaptermark[1]{} +% \newcommand*{\sectionmark}[1]{} +% \newcommand*{\subsectionmark}[1]{} +% \newcommand*{\subsubsectionmark}[1]{} +% \newcommand*{\paragraphmark}[1]{} +% \newcommand*{\subparagraphmark}[1]{} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \paragraph{カウンタの定義} +% +% \begin{macro}{\c@secnumdepth} +% +% |secnumdepth| は第何レベルの見出しまで +% 番号を付けるかを決めるカウンタです。 +% +% \begin{macrocode} +%\setcounter{secnumdepth}{3} +%\setcounter{secnumdepth}{2} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\c@chapter} +% \begin{macro}{\c@section} +% \begin{macro}{\c@subsection} +% \begin{macro}{\c@subsubsection} +% \begin{macro}{\c@paragraph} +% \begin{macro}{\c@subparagraph} +% +% 見出し番号のカウンタです。 +% |\newcounter| の第1引数が新たに作るカウンタです。 +% これは第2引数が増加するたびに 0 に戻されます。 +% 第2引数は定義済みのカウンタです。 +% +% \begin{macrocode} +\newcounter{part} +%\newcounter{chapter} +%\newcounter{section}[chapter] +%\newcounter{section} +\newcounter{subsection}[section] +\newcounter{subsubsection}[subsection] +\newcounter{paragraph}[subsubsection] +\newcounter{subparagraph}[paragraph] +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\thepart} +% \begin{macro}{\thechapter} +% \begin{macro}{\thesection} +% \begin{macro}{\thesubsection} +% \begin{macro}{\thesubsubsection} +% \begin{macro}{\theparagraph} +% \begin{macro}{\thesubparagraph} +% +% カウンタの値を出力する命令 |\the何々| を定義します。 +% +% カウンタを出力するコマンドには次のものがあります。 +% +% \begin{quote} +% |\arabic{COUNTER} | 1, 2, 3, \ldots \\ +% |\roman{COUNTER} | i, ii, iii, \ldots \\ +% |\Roman{COUNTER} | I, II, III, \ldots \\ +% |\alph{COUNTER} | a, b, c, \ldots \\ +% |\Alph{COUNTER} | A, B, C, \ldots \\ +% |\kansuji{COUNTER} | 一, 二, 三, \ldots +% \end{quote} +% +% 以下ではスペース節約のため |@| の付いた内部表現を多用しています。 +% +% \begin{macrocode} +\renewcommand{\thepart}{\@Roman\c@part} +%% \renewcommand{\thesection}{\@arabic\c@section} +%\renewcommand{\thesection}{\presectionname\@arabic\c@section\postsectionname} +%\renewcommand{\thesubsection}{\@arabic\c@section.\@arabic\c@subsection} +%<*book|report> +\renewcommand{\thechapter}{\@arabic\c@chapter} +\renewcommand{\thesection}{\thechapter.\@arabic\c@section} +\renewcommand{\thesubsection}{\thesection.\@arabic\c@subsection} +% +\renewcommand{\thesubsubsection}{% + \thesubsection.\@arabic\c@subsubsection} +\renewcommand{\theparagraph}{% + \thesubsubsection.\@arabic\c@paragraph} +\renewcommand{\thesubparagraph}{% + \theparagraph.\@arabic\c@subparagraph} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\@chapapp} +% \begin{macro}{\@chappos} +% +% |\@chapapp| の初期値は |\prechaptername|(第)です。 +% +% |\@chappos| の初期値は |\postchaptername|(章)です。 +% +% |\appendix| は |\@chapapp| を |\appendixname| に, +% |\@chappos| を空に再定義します。 +% +% [2003-03-02] |\@secapp| は外しました。 +% +% \begin{macrocode} +%\newcommand{\@chapapp}{\prechaptername} +%\newcommand{\@chappos}{\postchaptername} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \paragraph{前付,本文,後付} +% +% 本のうち章番号があるのが「本文」, +% それ以外が「前付」「後付」です。 +% +% \begin{macro}{\frontmatter} +% +% ページ番号をローマ数字にし,章番号を付けないようにします。 +% +% [2017-03-05] |\frontmatter| と |\mainmatter| の2つの命令は, +% 改丁または改ページした後で |\pagenumbering{...}| でノンブルを1に +% リセットします。長い間 |\frontmatter| は \texttt{openany} のときに +% 単なる改ページとしていましたが,これではノンブルをリセットする際に +% 偶奇逆転が起こる場合がありました。\texttt{openany} かどうかに依らず +% 奇数ページまで繰るように修正することで,問題を解消しました。 +% 実は,\LaTeX の標準クラスでは1998年に修正されていた問題です +% (コミュニティ版\pLaTeX の標準クラス2017/03/05も参照)。 +% +% \begin{macrocode} +%<*book> +\newcommand\frontmatter{% + \pltx@cleartooddpage + \@mainmatterfalse + \pagenumbering{roman}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\mainmatter} +% +% ページ番号を算用数字にし,章番号を付けるようにします。 +% +% \begin{macrocode} +\newcommand\mainmatter{% + \pltx@cleartooddpage + \@mainmattertrue + \pagenumbering{arabic}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\backmatter} +% +% 章番号を付けないようにします。ページ番号の付け方は変わりません。 +% +% \begin{macrocode} +\newcommand\backmatter{% + \if@openleft + \cleardoublepage + \else\if@openright + \cleardoublepage + \else + \clearpage + \fi\fi + \@mainmatterfalse} +% +% \end{macrocode} +% \end{macro} +% +% \paragraph{部} +% +% \begin{macro}{\part} +% +% 新しい部を始めます。 +% +% |\secdef| を使って見出しを定義しています。 +% このマクロは二つの引数をとります。 +% +% \begin{quote} +% |\secdef{星なし}{星あり}| +% \end{quote} +% +% \begin{description} +% \item[星なし] \texttt{*} のない形の定義です。 +% \item[星あり] \texttt{*} のある形の定義です。 +% \end{description} +% +% |\secdef| は次のようにして使います。 +% +%\begin{verbatim} +% \def\chapter { ... \secdef \CMDA \CMDB } +% \def\CMDA [#1]#2{....} % \chapter[...]{...} の定義 +% \def\CMDB #1{....} % \chapter*{...} の定義 +%\end{verbatim} +% +% まず |book| と |report| のクラス以外です。 +% +% \begin{macrocode} +%<*!book&!report> +\newcommand\part{% + \if@noskipsec \leavevmode \fi + \par + \addvspace{4ex}% + \if@english \@afterindentfalse \else \@afterindenttrue \fi + \secdef\@part\@spart} +% +% \end{macrocode} +% +% |book| および |report| クラスの場合は,少し複雑です。 +% +% \begin{macrocode} +%<*book|report> +\newcommand\part{% + \if@openleft + \cleardoublepage + \else\if@openright + \cleardoublepage + \else + \clearpage + \fi\fi + \thispagestyle{empty}% 欧文用標準スタイルでは plain + \if@twocolumn + \onecolumn + \@restonecoltrue + \else + \@restonecolfalse + \fi + \null\vfil + \secdef\@part\@spart} +% +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@part} +% +% 部の見出しを出力します。 +% |\bfseries| を |\headfont| に変えました。 +% +% |book| および |report| クラス以外では |secnumdepth| が $-1$ より大きいとき +% 部番号を付けます。 +% +% \begin{macrocode} +%<*!book&!report> +\def\@part[#1]#2{% + \ifnum \c@secnumdepth >\m@ne + \refstepcounter{part}% + \addcontentsline{toc}{part}{% + \prepartname\thepart\postpartname\hspace{1zw}#1}% + \else + \addcontentsline{toc}{part}{#1}% + \fi + \markboth{}{}% + {\parindent\z@ + \raggedright + \interlinepenalty \@M + \normalfont + \ifnum \c@secnumdepth >\m@ne + \Large\headfont\prepartname\thepart\postpartname + \par\nobreak + \fi + \huge \headfont #2% + \markboth{}{}\par}% + \nobreak + \vskip 3ex + \@afterheading} +% +% \end{macrocode} +% +% |book| および |report| クラスでは |secnumdepth| が $-2$ より大きいとき部番号を付けます。 +% +% \begin{macrocode} +%<*book|report> +\def\@part[#1]#2{% + \ifnum \c@secnumdepth >-2\relax + \refstepcounter{part}% + \addcontentsline{toc}{part}{% + \prepartname\thepart\postpartname\hspace{1zw}#1}% + \else + \addcontentsline{toc}{part}{#1}% + \fi + \markboth{}{}% + {\centering + \interlinepenalty \@M + \normalfont + \ifnum \c@secnumdepth >-2\relax + \huge\headfont \prepartname\thepart\postpartname + \par\vskip20\jsc@mpt + \fi + \Huge \headfont #2\par}% + \@endpart} +% +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@spart} +% +% 番号を付けない部です。 +% +% \begin{macrocode} +%<*!book&!report> +\def\@spart#1{{% + \parindent \z@ \raggedright + \interlinepenalty \@M + \normalfont + \huge \headfont #1\par}% + \nobreak + \vskip 3ex + \@afterheading} +% +%<*book|report> +\def\@spart#1{{% + \centering + \interlinepenalty \@M + \normalfont + \Huge \headfont #1\par}% + \@endpart} +% +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@endpart} +% +% |\@part| と |\@spart| の最後で実行されるマクロです。 +% 両面印刷のときは白ページを追加します。 +% 二段組のときには,二段組に戻します。 +% +% [2016-12-13] \texttt{openany} のときには白ページが追加されるのは変なので, +% その場合は追加しないようにしました。このバグは\LaTeX では +% classes.dtx v1.4b (2000/05/19) +% で修正されています。 +% +% \begin{macrocode} +%<*book|report> +\def\@endpart{\vfil\newpage + \if@twoside + \if@openleft %% added (2017/02/24) + \null\thispagestyle{empty}\newpage + \else\if@openright %% added (2016/12/13) + \null\thispagestyle{empty}\newpage + \fi\fi %% added (2016/12/13, 2017/02/24) + \fi + \if@restonecol + \twocolumn + \fi} +% +% \end{macrocode} +% \end{macro} +% +% \paragraph{章} +% +% \begin{macro}{\chapter} +% +% 章の最初のページスタイルは,全体が |empty| でなければ |plain| に +% します。 +% また,|\@topnum| を 0 にして, +% 章見出しの上に図や表が来ないようにします。 +% +% \begin{macrocode} +%<*book|report> +\newcommand{\chapter}{% + \if@openleft\cleardoublepage\else + \if@openright\cleardoublepage\else\clearpage\fi\fi + \plainifnotempty % 元: \thispagestyle{plain} + \global\@topnum\z@ + \if@english \@afterindentfalse \else \@afterindenttrue \fi + \secdef + {\@omit@numberfalse\@chapter}% + {\@omit@numbertrue\@schapter}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@chapter} +% +% 章見出しを出力します。 +% |secnumdepth| が0以上かつ |\@mainmatter| が真のとき章番号を出力します。 +% +% \begin{macrocode} +\def\@chapter[#1]#2{% + \ifnum \c@secnumdepth >\m@ne +% \if@mainmatter + \refstepcounter{chapter}% + \typeout{\@chapapp\thechapter\@chappos}% + \addcontentsline{toc}{chapter}% + {\protect\numberline + % {\if@english\thechapter\else\@chapapp\thechapter\@chappos\fi}% + {\@chapapp\thechapter\@chappos}% + #1}% +% \else\addcontentsline{toc}{chapter}{#1}\fi + \else + \addcontentsline{toc}{chapter}{#1}% + \fi + \chaptermark{#1}% + \addtocontents{lof}{\protect\addvspace{10\jsc@mpt}}% + \addtocontents{lot}{\protect\addvspace{10\jsc@mpt}}% + \if@twocolumn + \@topnewpage[\@makechapterhead{#2}]% + \else + \@makechapterhead{#2}% + \@afterheading + \fi} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@makechapterhead} +% +% 実際に章見出しを組み立てます。 +% |\bfseries| を |\headfont| に変えました。 +% +% \begin{macrocode} +\def\@makechapterhead#1{% + \vspace*{2\Cvs}% 欧文は50pt + {\parindent \z@ \raggedright \normalfont + \ifnum \c@secnumdepth >\m@ne +% \if@mainmatter + \huge\headfont \@chapapp\thechapter\@chappos + \par\nobreak + \vskip \Cvs % 欧文は20pt +% \fi + \fi + \interlinepenalty\@M + \Huge \headfont #1\par\nobreak + \vskip 3\Cvs}} % 欧文は40pt +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@schapter} +% +% |\chapter*{...}| コマンドの本体です。 +% |\chaptermark| を補いました。 +% +% \begin{macrocode} +\def\@schapter#1{% + \chaptermark{#1}% + \if@twocolumn + \@topnewpage[\@makeschapterhead{#1}]% + \else + \@makeschapterhead{#1}\@afterheading + \fi} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@makeschapterhead} +% +% 番号なしの章見出しです。 +% +% \begin{macrocode} +\def\@makeschapterhead#1{% + \vspace*{2\Cvs}% 欧文は50pt + {\parindent \z@ \raggedright + \normalfont + \interlinepenalty\@M + \Huge \headfont #1\par\nobreak + \vskip 3\Cvs}} % 欧文は40pt +% +% \end{macrocode} +% \end{macro} +% +% \paragraph{下位レベルの見出し} +% +% \begin{macro}{\section} +% +% 欧文版では |\@startsection| の第4引数を負にして最初の段落の +% 字下げを禁止していますが, +% 和文版では正にして字下げするようにしています。 +% +% 段組のときはなるべく左右の段が狂わないように工夫しています。 +% +% \begin{macrocode} +\if@twocolumn + \newcommand{\section}{% +%\ifx\maketitle\relax\else\maketitle\fi + \@startsection{section}{1}{\z@}% +% {0.6\Cvs}{0.4\Cvs}% +% {\Cvs}{0.5\Cvs}% +% {\normalfont\large\headfont\@secapp}} + {\normalfont\large\headfont\raggedright}} +\else + \newcommand{\section}{% + \if@slide\clearpage\fi + \@startsection{section}{1}{\z@}% + {\Cvs \@plus.5\Cdp \@minus.2\Cdp}% 前アキ + {.5\Cvs \@plus.3\Cdp}% 後アキ +% {\normalfont\Large\headfont\@secapp}} + {\normalfont\Large\headfont\raggedright}} +\fi +% \end{macrocode} +% +% \end{macro} +% +% \begin{macro}{\subsection} +% +% 同上です。 +% +% \begin{macrocode} +\if@twocolumn + \newcommand{\subsection}{\@startsection{subsection}{2}{\z@}% + {\z@}{\if@slide .4\Cvs \else \z@ \fi}% + {\normalfont\normalsize\headfont}} +\else + \newcommand{\subsection}{\@startsection{subsection}{2}{\z@}% + {\Cvs \@plus.5\Cdp \@minus.2\Cdp}% 前アキ + {.5\Cvs \@plus.3\Cdp}% 後アキ + {\normalfont\large\headfont}} +\fi +% \end{macrocode} +% +% \end{macro} +% +% \begin{macro}{\subsubsection} +% +% [2016-07-22] \texttt{slide}オプション指定時に |\subsubsection| の文字列 +% と罫線が重なる問題に対処しました(forum:1982)。 +% +% \begin{macrocode} +\if@twocolumn + \newcommand{\subsubsection}{\@startsection{subsubsection}{3}{\z@}% + {\z@}{\if@slide .4\Cvs \else \z@ \fi}% + {\normalfont\normalsize\headfont}} +\else + \newcommand{\subsubsection}{\@startsection{subsubsection}{3}{\z@}% + {\Cvs \@plus.5\Cdp \@minus.2\Cdp}% + {\if@slide .5\Cvs \@plus.3\Cdp \else \z@ \fi}% + {\normalfont\normalsize\headfont}} +\fi +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\paragraph} +% \begin{macro}{\jsParagraphMark} +% +% 見出しの後ろで改行されません。 +% +% [2016-11-16] 従来は |\paragraph| の最初に出るマークを「■」に固定して +% いましたが,このマークを変更可能にするため |\jsParagraphMark| というマクロ +% に切り出しました。これで,たとえば +%\begin{verbatim} +% \renewcommand{\jsParagraphMark}{★} +%\end{verbatim} +% とすれば「★」に変更できますし,マークを空にすることも容易です。 +% なお,某学会クラスでは従来どおりマークは付きません。 +% +% \begin{macrocode} +%\newcommand{\jsParagraphMark}{■} +\if@twocolumn + \newcommand{\paragraph}{\@startsection{paragraph}{4}{\z@}% + {\z@}{\if@slide .4\Cvs \else -1zw\fi}% 改行せず 1zw のアキ +% {\normalfont\normalsize\headfont}} +% {\normalfont\normalsize\headfont\jsParagraphMark}} +\else + \newcommand{\paragraph}{\@startsection{paragraph}{4}{\z@}% + {0.5\Cvs \@plus.5\Cdp \@minus.2\Cdp}% + {\if@slide .5\Cvs \@plus.3\Cdp \else -1zw\fi}% 改行せず 1zw のアキ +% {\normalfont\normalsize\headfont}} +% {\normalfont\normalsize\headfont\jsParagraphMark}} +\fi +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\subparagraph} +% +% 見出しの後ろで改行されません。 +% +% \begin{macrocode} +\if@twocolumn + \newcommand{\subparagraph}{\@startsection{subparagraph}{5}{\z@}% + {\z@}{\if@slide .4\Cvs \@plus.3\Cdp \else -1zw\fi}% + {\normalfont\normalsize\headfont}} +\else + \newcommand{\subparagraph}{\@startsection{subparagraph}{5}{\z@}% + {\z@}{\if@slide .5\Cvs \@plus.3\Cdp \else -1zw\fi}% + {\normalfont\normalsize\headfont}} +\fi +% \end{macrocode} +% \end{macro} +% +% \subsection{リスト環境} +% +% 第 $k$ レベルのリストの初期化をするのが |\@list|$k$ です +% ($k = \mathtt{i}, \mathtt{ii}, \mathtt{iii}, \mathtt{iv}$)。 +% |\@list|$k$ は |\leftmargin| を |\leftmargin|$k$ に設定します。 +% +% \begin{macro}{\leftmargini} +% +% 二段組であるかないかに応じてそれぞれ 2em,2.5em でしたが, +% ここでは全角幅の2倍にしました。 +% +% [2002-05-11] 3zw に変更しました。 +% +% [2005-03-19] 二段組は 2zw に戻しました。 +% +% \begin{macrocode} +\if@slide + \setlength\leftmargini{1zw} +\else + \if@twocolumn + \setlength\leftmargini{2zw} + \else + \setlength\leftmargini{3zw} + \fi +\fi +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\leftmarginii} +% \begin{macro}{\leftmarginiii} +% \begin{macro}{\leftmarginiv} +% \begin{macro}{\leftmarginv} +% \begin{macro}{\leftmarginvi} +% +% |ii|,|iii|,|iv| は |\labelsep| と +% それぞれ `(m)',`vii.',`M.' の幅との和より大きくする +% ことになっています。ここでは全角幅の整数倍に丸めました。 +% +% \begin{macrocode} +\if@slide + \setlength\leftmarginii {1zw} + \setlength\leftmarginiii{1zw} + \setlength\leftmarginiv {1zw} + \setlength\leftmarginv {1zw} + \setlength\leftmarginvi {1zw} +\else + \setlength\leftmarginii {2zw} + \setlength\leftmarginiii{2zw} + \setlength\leftmarginiv {2zw} + \setlength\leftmarginv {1zw} + \setlength\leftmarginvi {1zw} +\fi +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\labelsep} +% \begin{macro}{\labelwidth} +% +% |\labelsep| はラベルと本文の間の距離です。 +% |\labelwidth| はラベルの幅です。 +% これは二分に変えました。 +% +% \begin{macrocode} +\setlength \labelsep {0.5zw} % .5em +\setlength \labelwidth{\leftmargini} +\addtolength\labelwidth{-\labelsep} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\partopsep} +% +% リスト環境の前に空行がある場合, +% |\parskip| と |\topsep| に |\partopsep| を +% 加えた値だけ縦方向の空白ができます。 +% 0 に改変しました。 +% +% \begin{macrocode} +\setlength\partopsep{\z@} % {2\p@ \@plus 1\p@ \@minus 1\p@} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@beginparpenalty} +% \begin{macro}{\@endparpenalty} +% \begin{macro}{\@itempenalty} +% +% リストや段落環境の前後,リスト項目間に挿入されるペナルティです。 +% +% \begin{macrocode} +\@beginparpenalty -\@lowpenalty +\@endparpenalty -\@lowpenalty +\@itempenalty -\@lowpenalty +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\@listi} +% \begin{macro}{\@listI} +% +% |\@listi| は |\leftmargin|,|\parsep|,|\topsep|,|\itemsep| などの +% トップレベルの定義をします。 +% この定義は,フォントサイズコマンドによって変更されます +% (たとえば |\small| の中では小さい値に設定されます)。 +% このため,|\normalsize| がすべてのパラメータを戻せるように, +% |\@listI| で |\@listi| のコピーを保存します。 +% 元の値はかなり複雑ですが,ここでは簡素化してしまいました。 +% 特に最初と最後に行送りの半分の空きが入るようにしてあります。 +% アスキーの標準スタイルでは +% トップレベルの |itemize|,|enumerate| 環境でだけ +% 最初と最後に行送りの半分の空きが入るようになっていました。 +% +% [2004-09-27] |\topsep| のグルー $_{-0.1}^{+0.2}$ |\baselineskip| +% を思い切って外しました。 +% +% \begin{macrocode} +\def\@listi{\leftmargin\leftmargini + \parsep \z@ + \topsep 0.5\baselineskip + \itemsep \z@ \relax} +\let\@listI\@listi +% \end{macrocode} +% +% 念のためパラメータを初期化します(実際には不要のようです)。 +% +% \begin{macrocode} +\@listi +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\@listii} +% \begin{macro}{\@listiii} +% \begin{macro}{\@listiv} +% \begin{macro}{\@listv} +% \begin{macro}{\@listvi} +% +% 第2〜6レベルのリスト環境のパラメータの設定です。 +% +% \begin{macrocode} +\def\@listii{\leftmargin\leftmarginii + \labelwidth\leftmarginii \advance\labelwidth-\labelsep + \topsep \z@ + \parsep \z@ + \itemsep\parsep} +\def\@listiii{\leftmargin\leftmarginiii + \labelwidth\leftmarginiii \advance\labelwidth-\labelsep + \topsep \z@ + \parsep \z@ + \itemsep\parsep} +\def\@listiv {\leftmargin\leftmarginiv + \labelwidth\leftmarginiv + \advance\labelwidth-\labelsep} +\def\@listv {\leftmargin\leftmarginv + \labelwidth\leftmarginv + \advance\labelwidth-\labelsep} +\def\@listvi {\leftmargin\leftmarginvi + \labelwidth\leftmarginvi + \advance\labelwidth-\labelsep} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \paragraph{enumerate環境} +% +% |enumerate| 環境はカウンタ |enumi|,|enumii|,|enumiii|, +% |enumiv| を使います。|enum|$n$ は第 $n$ レベルの番号です。 +% +% \begin{macro}{\theenumi} +% \begin{macro}{\theenumii} +% \begin{macro}{\theenumiii} +% \begin{macro}{\theenumiv} +% +% 出力する番号の書式を設定します。 +% これらは\LaTeX 本体(\texttt{ltlists.dtx} 参照)で定義済みですが, +% ここでは表し方を変えています。 +% |\@arabic|,|\@alph|,|\@roman|,|\@Alph| はそれぞれ +% 算用数字,小文字アルファベット,小文字ローマ数字,大文字アルファベット +% で番号を出力する命令です。 +% +% \begin{macrocode} +\renewcommand{\theenumi}{\@arabic\c@enumi} +\renewcommand{\theenumii}{\@alph\c@enumii} +\renewcommand{\theenumiii}{\@roman\c@enumiii} +\renewcommand{\theenumiv}{\@Alph\c@enumiv} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\labelenumi} +% \begin{macro}{\labelenumii} +% \begin{macro}{\labelenumiii} +% \begin{macro}{\labelenumiv} +% +% |enumerate| 環境の番号を出力する命令です。 +% 第2レベル以外は最後に欧文のピリオドが付きますが, +% これは好みに応じて取り払ってください。 +% 第2レベルの番号のかっこは和文用に換え, +% その両側に入る余分なグルーを |\inhibitglue| で +% 取り除いています。 +% +% \begin{macrocode} +\newcommand{\labelenumi}{\theenumi.} +\newcommand{\labelenumii}{\inhibitglue (\theenumii )\inhibitglue} +\newcommand{\labelenumiii}{\theenumiii.} +\newcommand{\labelenumiv}{\theenumiv.} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\p@enumii} +% \begin{macro}{\p@enumiii} +% \begin{macro}{\p@enumiv} +% +% |\p@enum|$n$ は |\ref| コマンドで |enumerate| 環境の第 $n$ レベルの +% 項目が参照されるときの書式です。 +% これも第2レベルは和文用かっこにしました。 +% +% \begin{macrocode} +\renewcommand{\p@enumii}{\theenumi} +\renewcommand{\p@enumiii}{\theenumi\inhibitglue (\theenumii )} +\renewcommand{\p@enumiv}{\p@enumiii\theenumiii} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \paragraph{itemize環境} +% +% \begin{macro}{\labelitemi} +% \begin{macro}{\labelitemii} +% \begin{macro}{\labelitemiii} +% \begin{macro}{\labelitemiv} +% |itemize| 環境の第 $n$ レベルのラベルを作るコマンドです。 +% \begin{macrocode} +\newcommand\labelitemi{\textbullet} +\newcommand\labelitemii{\normalfont\bfseries \textendash} +\newcommand\labelitemiii{\textasteriskcentered} +\newcommand\labelitemiv{\textperiodcentered} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \paragraph{description環境} +% +% \begin{environment}{description} +% +% 本来の |description| 環境では,項目名が短いと,説明部分の頭が +% それに引きずられて左に出てしまいます。 +% これを解決した新しい |description| の実装です。 +% +% \begin{macrocode} +\newenvironment{description}{% + \list{}{% + \labelwidth=\leftmargin + \labelsep=1zw + \advance \labelwidth by -\labelsep + \let \makelabel=\descriptionlabel}}{\endlist} +% \end{macrocode} +% \end{environment} +% +% \begin{macro}{\descriptionlabel} +% +% |description| 環境のラベルを出力するコマンドです。 +% 好みに応じて |#1| の前に適当な空き +% (たとえば |\hspace{1zw}|)を入れるのもいいと思います。 +% +% \begin{macrocode} +\newcommand*\descriptionlabel[1]{\normalfont\headfont #1\hfil} +% \end{macrocode} +% \end{macro} +% +% \paragraph{概要} +% +% \begin{environment}{abstract} +% +% 概要(要旨,梗概)を出力する環境です。 +% |book| クラスでは各章の初めにちょっとしたことを書くのに使います。 +% |titlepage| オプション付きの |article| クラスでは, +% 独立したページに出力されます。 +% |abstract| 環境は元は |quotation| 環境で作られていましたが, +% |quotation| 環境の右マージンをゼロにしたので, +% |list| 環境で作り直しました。 +% +% JSPFスタイルでは実際の出力は |\maketitle| で行われます。 +% +% \begin{macrocode} +%<*book> +\newenvironment{abstract}{% + \begin{list}{}{% + \listparindent=1zw + \itemindent=\listparindent + \rightmargin=0pt + \leftmargin=5zw}\item[]}{\end{list}\vspace{\baselineskip}} +% +%<*article|report|kiyou> +\newbox\@abstractbox +\if@titlepage + \newenvironment{abstract}{% + \titlepage + \null\vfil + \@beginparpenalty\@lowpenalty + \begin{center}% + \headfont \abstractname + \@endparpenalty\@M + \end{center}}% + {\par\vfil\null\endtitlepage} +\else + \newenvironment{abstract}{% + \if@twocolumn + \ifx\maketitle\relax + \section*{\abstractname}% + \else + \global\setbox\@abstractbox\hbox\bgroup + \begin{minipage}[b]{\textwidth} + \small\parindent1zw + \begin{center}% + {\headfont \abstractname\vspace{-.5em}\vspace{\z@}}% + \end{center}% + \list{}{% + \listparindent\parindent + \itemindent \listparindent + \rightmargin \leftmargin}% + \item\relax + \fi + \else + \small + \begin{center}% + {\headfont \abstractname\vspace{-.5em}\vspace{\z@}}% + \end{center}% + \list{}{% + \listparindent\parindent + \itemindent \listparindent + \rightmargin \leftmargin}% + \item\relax + \fi}{\if@twocolumn + \ifx\maketitle\relax + \else + \endlist\end{minipage}\egroup + \fi + \else + \endlist + \fi} +\fi +% +%<*jspf> +\newbox\@abstractbox +\newenvironment{abstract}{% + \global\setbox\@abstractbox\hbox\bgroup + \begin{minipage}[b]{157\jsc@mmm}{\sffamily Abstract}\par + \small + \if@english \parindent6\jsc@mmm \else \parindent1zw \fi}% + {\end{minipage}\egroup} +% +% \end{macrocode} +% \end{environment} +% +% \paragraph{キーワード} +% +% \begin{environment}{keywords} +% +% キーワードを準備する環境です。 +% 実際の出力は |\maketitle| で行われます。 +% +% \begin{macrocode} +%<*jspf> +%\newbox\@keywordsbox +%\newenvironment{keywords}{% +% \global\setbox\@keywordsbox\hbox\bgroup +% \begin{minipage}[b]{1570\jsc@mmm}{\sffamily Keywords:}\par +% \small\parindent0zw}% +% {\end{minipage}\egroup} +% +% \end{macrocode} +% \end{environment} +% +% \paragraph{verse環境} +% +% \begin{environment}{verse} +% +% 詩のための |verse| 環境です。 +% +% \begin{macrocode} +\newenvironment{verse}{% + \let \\=\@centercr + \list{}{% + \itemsep \z@ + \itemindent -2zw % 元: -1.5em + \listparindent\itemindent + \rightmargin \z@ + \advance\leftmargin 2zw}% 元: 1.5em + \item\relax}{\endlist} +% \end{macrocode} +% \end{environment} +% +% \paragraph{quotation環境} +% +% \begin{environment}{quotation} +% +% 段落の頭の字下げ量を1.5emから |\parindent| に変えました。 +% また,右マージンを 0 にしました。 +% +% \begin{macrocode} +\newenvironment{quotation}{% + \list{}{% + \listparindent\parindent + \itemindent\listparindent + \rightmargin \z@}% + \item\relax}{\endlist} +% \end{macrocode} +% \end{environment} +% +% \paragraph{quote環境} +% +% \begin{environment}{quote} +% +% |quote| 環境は,段落がインデントされないことを除き, +% |quotation| 環境と同じです。 +% +% \begin{macrocode} +\newenvironment{quote}% + {\list{}{\rightmargin\z@}\item\relax}{\endlist} +% \end{macrocode} +% \end{environment} +% +% \paragraph{定理など} +% +% |ltthm.dtx| 参照。たとえば次のように定義します。 +%\begin{verbatim} +% \newtheorem{definition}{定義} +% \newtheorem{axiom}{公理} +% \newtheorem{theorem}{定理} +%\end{verbatim} +% +% [2001-04-26] 定理の中はイタリック体になりましたが, +% これでは和文がゴシック体になってしまうので, +% |\itshape| を削除しました。 +% +% [2009-08-23] |\bfseries| を |\headfont| に直し, +% |\labelsep| を 1\,zw にし,括弧を全角にしました。 +% +% \begin{macrocode} +\def\@begintheorem#1#2{\trivlist\labelsep=1zw + \item[\hskip \labelsep{\headfont #1\ #2}]} +\def\@opargbegintheorem#1#2#3{\trivlist\labelsep=1zw + \item[\hskip \labelsep{\headfont #1\ #2(#3)}]} +% \end{macrocode} +% +% \begin{environment}{titlepage} +% +% タイトルを独立のページに出力するのに使われます。 +% +% [2017-02-24] コミュニティ版\pLaTeX の標準クラス2017/02/15に合わせて, +% bookクラスでタイトルを必ず奇数ページに送るようにしました。といっても, +% 横組クラスしかありませんでしたので,従来の挙動は何も変わっていません。 +% また,book以外の場合のページ番号のリセットもコミュニティ版\pLaTeX の +% 標準クラス2017/02/15に合わせましたが,こちらも片面印刷あるいは +% 独立のタイトルページを作らないクラスばかりでしたので,従来の挙動は +% 何も変わらずに済みました。 +% +% \begin{macrocode} +\newenvironment{titlepage}{% +% \pltx@cleartooddpage %% 2017-02-24 + \if@twocolumn + \@restonecoltrue\onecolumn + \else + \@restonecolfalse\newpage + \fi + \thispagestyle{empty}% + \ifodd\c@page\setcounter{page}\@ne\else\setcounter{page}\z@\fi %% 2017-02-24 + }% + {\if@restonecol\twocolumn \else \newpage \fi + \if@twoside\else + \setcounter{page}\@ne + \fi} +% \end{macrocode} +% \end{environment} +% +% \paragraph{付録} +% +% \begin{macro}{\appendix} +% +% 本文と付録を分離するコマンドです。 +% +% \begin{macrocode} +%<*!book&!report> +\newcommand{\appendix}{\par + \setcounter{section}{0}% + \setcounter{subsection}{0}% + \gdef\presectionname{\appendixname}% + \gdef\postsectionname{}% +% \gdef\thesection{\@Alph\c@section}% [2003-03-02] + \gdef\thesection{\presectionname\@Alph\c@section\postsectionname}% + \gdef\thesubsection{\@Alph\c@section.\@arabic\c@subsection}} +% +%<*book|report> +\newcommand{\appendix}{\par + \setcounter{chapter}{0}% + \setcounter{section}{0}% + \gdef\@chapapp{\appendixname}% + \gdef\@chappos{}% + \gdef\thechapter{\@Alph\c@chapter}} +% +% \end{macrocode} +% \end{macro} +% +% \subsection{パラメータの設定} +% +% \paragraph{arrayとtabular環境} +% +% \begin{macro}{\arraycolsep} +% +% |array| 環境の列間には |\arraycolsep| の2倍の幅の空きが入ります。 +% +% \begin{macrocode} +\setlength\arraycolsep{5\jsc@mpt} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\tabcolsep} +% +% |tabular| 環境の列間には |\tabcolsep| の2倍の幅の空きが入ります。 +% +% \begin{macrocode} +\setlength\tabcolsep{6\jsc@mpt} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\arrayrulewidth} +% +% |array|,|tabular| 環境内の罫線の幅です。 +% +% \begin{macrocode} +\setlength\arrayrulewidth{.4\jsc@mpt} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\doublerulesep} +% +% |array|,|tabular| 環境での二重罫線間のアキです。 +% +% \begin{macrocode} +\setlength\doublerulesep{2\jsc@mpt} +% \end{macrocode} +% \end{macro} +% +% \paragraph{tabbing環境} +% +% \begin{macro}{\tabbingsep} +% +% |\'| コマンドで入るアキです。 +% +% \begin{macrocode} +\setlength\tabbingsep{\labelsep} +% \end{macrocode} +% \end{macro} +% +% \paragraph{minipage環境} +% +% \begin{macro}{\@mpfootins} +% +% |minipage| 環境の脚注の |\skip|\hspace{0pt}|\@mpfootins| +% は通常のページの |\skip|\hspace{0pt}|\footins| +% と同じ働きをします。 +% +% \begin{macrocode} +\skip\@mpfootins = \skip\footins +% \end{macrocode} +% \end{macro} +% +% \paragraph{framebox環境} +% +% \begin{macro}{\fboxsep} +% +% |\fbox|,|\framebox| で内側のテキストと枠との間の空きです。 +% +% \begin{macro}{\fboxrule} +% +% |\fbox|,|\framebox| の罫線の幅です。 +% +% \begin{macrocode} +\setlength\fboxsep{3\jsc@mpt} +\setlength\fboxrule{.4\jsc@mpt} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \paragraph{equationとeqnarray環境} +% +% \begin{macro}{\theequation} +% +% 数式番号を出力するコマンドです。 +% +% \begin{macrocode} +%\renewcommand \theequation {\@arabic\c@equation} +%<*book|report> +\@addtoreset{equation}{chapter} +\renewcommand\theequation + {\ifnum \c@chapter>\z@ \thechapter.\fi \@arabic\c@equation} +% +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\jot} +% +% |eqnarray| の行間に余分に入るアキです。 +% デフォルトの値をコメントアウトして示しておきます。 +% +% \begin{macrocode} +% \setlength\jot{3pt} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@eqnnum} +% +% 数式番号の形式です。 +% デフォルトの値をコメントアウトして示しておきます。 +% +% |\inhibitglue (\theequation )\inhibitglue| のように和文かっこ +% を使うことも可能です。 +% +% \begin{macrocode} +% \def\@eqnnum{(\theequation)} +% \end{macrocode} +% \end{macro} +% +% |amsmath| パッケージを使う場合は |\tagform@| を次のように修正します。 +% +% \begin{macrocode} +% \def\tagform@#1{\maketag@@@{(\ignorespaces#1\unskip\@@italiccorr )}} +% \end{macrocode} +% +% \subsection{フロート} +% +% タイプ \texttt{TYPE} のフロートオブジェクトを +% 扱うには,次のマクロを定義します。 +% \begin{description} +% \item[\texttt{\bslash fps@TYPE}] +% フロートを置く位置(float placement specifier)です。 +% \item[\texttt{\bslash ftype@TYPE}] +% フロートの番号です。2の累乗(1,2,4,\ldots )でなければなりません。 +% \item[\texttt{\bslash ext@TYPE}] +% フロートの目次を出力するファイルの拡張子です。 +% \item[\texttt{\bslash fnum@TYPE}] +% キャプション用の番号を生成するマクロです。 +% \item[\texttt{\bslash @makecaption}{\meta{num}}{\meta{text}}] +% キャプションを出力するマクロです。 +% \meta{num} は |\fnum@...| の生成する番号, +% \meta{text} はキャプションのテキストです。 +% テキストは適当な幅の |\parbox| に入ります。 +% \end{description} +% +% \paragraph{figure環境} +% +% \begin{macro}{\c@figure} +% +% 図番号のカウンタです。 +% +% \begin{macro}{\thefigure} +% +% 図番号を出力するコマンドです。 +% +% \begin{macrocode} +%<*!book&!report> +\newcounter{figure} +\renewcommand \thefigure {\@arabic\c@figure} +% +%<*book|report> +\newcounter{figure}[chapter] +\renewcommand \thefigure + {\ifnum \c@chapter>\z@ \thechapter.\fi \@arabic\c@figure} +% +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\fps@figure} +% \begin{macro}{\ftype@figure} +% \begin{macro}{\ext@figure} +% \begin{macro}{\fnum@figure} +% +% |figure| のパラメータです。 +% |\figurename| の直後に |~| が入っていましたが, +% ここでは外しました。 +% +% \begin{macrocode} +\def\fps@figure{tbp} +\def\ftype@figure{1} +\def\ext@figure{lof} +\def\fnum@figure{\figurename\nobreak\thefigure} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{environment}{figure} +% \begin{environment}{figure*} +% +% |*| 形式は段抜きのフロートです。 +% +% \begin{macrocode} +\newenvironment{figure}% + {\@float{figure}}% + {\end@float} +\newenvironment{figure*}% + {\@dblfloat{figure}}% + {\end@dblfloat} +% \end{macrocode} +% \end{environment} +% \end{environment} +% +% \paragraph{table環境} +% +% \begin{macro}{\c@table} +% \begin{macro}{\thetable} +% +% 表番号カウンタと表番号を出力するコマンドです。 +% アスキー版では |\thechapter.| が |\thechapter{}・| になっていますが, +% ここではオリジナルのままにしています。 +% +% \begin{macrocode} +%<*!book&!report> +\newcounter{table} +\renewcommand\thetable{\@arabic\c@table} +% +%<*book|report> +\newcounter{table}[chapter] +\renewcommand \thetable + {\ifnum \c@chapter>\z@ \thechapter.\fi \@arabic\c@table} +% +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\fps@table} +% \begin{macro}{\ftype@table} +% \begin{macro}{\ext@table} +% \begin{macro}{\fnum@table} +% +% |table| のパラメータです。 +% |\tablename| の直後に |~| が入っていましたが, +% ここでは外しました。 +% +% \begin{macrocode} +\def\fps@table{tbp} +\def\ftype@table{2} +\def\ext@table{lot} +\def\fnum@table{\tablename\nobreak\thetable} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{environment}{table} +% \begin{environment}{table*} +% +% |*| は段抜きのフロートです。 +% +% \begin{macrocode} +\newenvironment{table}% + {\@float{table}}% + {\end@float} +\newenvironment{table*}% + {\@dblfloat{table}}% + {\end@dblfloat} +% \end{macrocode} +% \end{environment} +% \end{environment} +% +% \subsection{キャプション} +% +% \begin{macro}{\@makecaption} +% +% |\caption| コマンドにより呼び出され, +% 実際にキャプションを出力するコマンドです。 +% 第1引数はフロートの番号, +% 第2引数はテキストです。 +% +% \begin{macro}{\abovecaptionskip} +% \begin{macro}{\belowcaptionskip} +% +% それぞれキャプションの前後に挿入されるスペースです。 +% |\belowcaptionskip| が0になっていましたので, +% キャプションを表の上につけた場合にキャプションと表が +% くっついてしまうのを直しました。 +% +% \begin{macrocode} +\newlength\abovecaptionskip +\newlength\belowcaptionskip +\setlength\abovecaptionskip{5\jsc@mpt} % 元: 10\p@ +\setlength\belowcaptionskip{5\jsc@mpt} % 元: 0\p@ +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% 実際のキャプションを出力します。 +% オリジナルと異なり,文字サイズを |\small| にし, +% キャプションの幅を2cm狭くしました。 +% +% [2003-11-05] ロジックを少し変えてみました。 +% +% [2018-12-11] 遅くなりましたが,|listings| パッケージを使うときに +% |title| を指定すると ``1zw'' が出力されてしまう +% 問題 (forum:1543,Issue \#71) に対処しました。 +% +% \begin{macrocode} +%<*!jspf> +% \long\def\@makecaption#1#2{{\small +% \advance\leftskip10\jsc@mmm +% \advance\rightskip10\jsc@mmm +% \vskip\abovecaptionskip +% \sbox\@tempboxa{#1\hskip1zw\relax #2}% +% \ifdim \wd\@tempboxa >\hsize +% #1\hskip1zw\relax #2\par +% \else +% \global \@minipagefalse +% \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}% +% \fi +% \vskip\belowcaptionskip}} +\long\def\@makecaption#1#2{{\small + \advance\leftskip .0628\linewidth + \advance\rightskip .0628\linewidth + \vskip\abovecaptionskip + \sbox\@tempboxa{#1\hskip1zw\relax #2}% + \ifdim \wd\@tempboxa <\hsize \centering \fi + #1{\hskip1zw\relax}#2\par + \vskip\belowcaptionskip}} +% +%<*jspf> +\long\def\@makecaption#1#2{% + \vskip\abovecaptionskip + \sbox\@tempboxa{\small\sffamily #1\quad #2}% + \ifdim \wd\@tempboxa >\hsize + {\small\sffamily + \list{#1}{% + \renewcommand{\makelabel}[1]{##1\hfil} + \itemsep \z@ + \itemindent \z@ + \labelsep \z@ + \labelwidth 11\jsc@mmm + \listparindent\z@ + \leftmargin 11\jsc@mmm}\item\relax #2\endlist} + \else + \global \@minipagefalse + \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}% + \fi + \vskip\belowcaptionskip} +% +% \end{macrocode} +% \end{macro} +% +% \section{フォントコマンド} +% +% ここでは\LaTeX~2.09で使われていたコマンドを定義します。 +% これらはテキストモードと数式モードのどちらでも動作します。 +% これらは互換性のためのもので, +% できるだけ |\text...| と |\math...| を使ってください。 +% +% \begin{macro}{\mc} +% \begin{macro}{\gt} +% \begin{macro}{\rm} +% \begin{macro}{\sf} +% \begin{macro}{\tt} +% +% フォントファミリを変更します。 +% +% \begin{macrocode} +\DeclareOldFontCommand{\mc}{\normalfont\mcfamily}{\mathmc} +\DeclareOldFontCommand{\gt}{\normalfont\gtfamily}{\mathgt} +\DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm} +\DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf} +\DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\bf} +% +% ボールドシリーズにします。通常のミーディアムシリーズに戻す +% コマンドは |\mdseries| です。 +% +% \begin{macrocode} +\DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\it} +% \begin{macro}{\sl} +% \begin{macro}{\sc} +% +% フォントシェイプを変えるコマンドです。 +% 斜体とスモールキャップスは数式中では何もしません +% (警告メッセージを出力します)。 +% 通常のアップライト体に戻すコマンドは |\upshape| です。 +% +% \begin{macrocode} +\DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit} +\DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl} +\DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\cal} +% \begin{macro}{\mit} +% +% 数式モード以外では何もしません(警告を出します)。 +% +% \begin{macrocode} +\DeclareRobustCommand*{\cal}{\@fontswitch\relax\mathcal} +\DeclareRobustCommand*{\mit}{\@fontswitch\relax\mathnormal} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \section{相互参照} +% +% \subsection{目次の類} +% +% |\section| コマンドは |.toc| ファイルに次のような行を出力します。 +% \begin{quote} +% |\contentsline{section}{タイトル}{ページ}| +% \end{quote} +% たとえば |\section| に見出し番号が付く場合,上の「タイトル」は +% \begin{quote} +% |\numberline{番号}{見出し}| +% \end{quote} +% となります。 +% この「番号」は |\thesection| コマンドで生成された見出し番号です。 +% +% |figure| 環境の |\caption| コマンドは |.lof| ファイルに +% 次のような行を出力します。 +% \begin{quote} +% |\contentsline{figure}{\numberline{番号}{キャプション}{ページ}| +% \end{quote} +% この「番号」は |\thefigure| コマンドで生成された図番号です。 +% +% |table| 環境も同様です。 +% +% |\contentsline{...}| は |\l@...| というコマンドを実行するので, +% あらかじめ |\l@chapter|,|\l@section|,|\l@figure| などを +% 定義しておかなければなりません。 +% これらの多くは |\@dottedtocline| コマンドを使って定義します。 +% これは +% \begin{quote} +% |\@dottedtocline{レベル}{インデント}{幅}{タイトル}{ページ}| +% \end{quote} +% という書式です。 +% \begin{description} +% \item[レベル] この値が |tocdepth| 以下のときだけ出力されます。 +% |\chapter| はレベル0,|\section| はレベル1,等々です。 +% \item[インデント] 左側の字下げ量です。 +% \item[幅] 「タイトル」に |\numberline| コマンドが含まれる場合, +% 節番号が入る箱の幅です。 +% \end{description} +% +% \begin{macro}{\@pnumwidth} +% +% ページ番号の入る箱の幅です。 +% +% \begin{macro}{\@tocrmarg} +% +% 右マージンです。 +% |\@tocrmarg| $\ge$ |\@pnumwidth| とします。 +% +% \begin{macro}{\@dotsep} +% +% 点の間隔です(単位 mu)。 +% +% \begin{macro}{\c@tocdepth} +% +% 目次ページに出力する見出しレベルです。 +% 元は \texttt{article} で3,その他で2でしたが, +% ここでは一つずつ減らしています。 +% +% \begin{macrocode} +\newcommand\@pnumwidth{1.55em} +\newcommand\@tocrmarg{2.55em} +\newcommand\@dotsep{4.5} +%\setcounter{tocdepth}{2} +%\setcounter{tocdepth}{1} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \paragraph{目次} +% +% \begin{macro}{\tableofcontents} +% +% 目次を生成します。 +% +% \begin{macro}{\jsc@tocl@width} +% +% [2013-12-30] |\prechaptername| などから見積もった目次のラベルの長さです。(by ts) +% +% \begin{macrocode} +\newdimen\jsc@tocl@width +\newcommand{\tableofcontents}{% +%<*book|report> + \settowidth\jsc@tocl@width{\headfont\prechaptername\postchaptername}% + \settowidth\@tempdima{\headfont\appendixname}% + \ifdim\jsc@tocl@width<\@tempdima \setlength\jsc@tocl@width{\@tempdima}\fi + \ifdim\jsc@tocl@width<2zw \divide\jsc@tocl@width by 2 \advance\jsc@tocl@width 1zw\fi + \if@twocolumn + \@restonecoltrue\onecolumn + \else + \@restonecolfalse + \fi + \chapter*{\contentsname}% + \@mkboth{\contentsname}{}% +% +%<*!book&!report> + \settowidth\jsc@tocl@width{\headfont\presectionname\postsectionname}% + \settowidth\@tempdima{\headfont\appendixname}% + \ifdim\jsc@tocl@width<\@tempdima\relax\setlength\jsc@tocl@width{\@tempdima}\fi + \ifdim\jsc@tocl@width<2zw \divide\jsc@tocl@width by 2 \advance\jsc@tocl@width 1zw\fi + \section*{\contentsname}% + \@mkboth{\contentsname}{\contentsname}% +% + \@starttoc{toc}% +% \if@restonecol\twocolumn\fi +} +% \end{macrocode} +% \end{macro}\end{macro} +% +% \begin{macro}{\l@part} +% +% 部の目次です。 +% +% \begin{macrocode} +\newcommand*{\l@part}[2]{% + \ifnum \c@tocdepth >-2\relax +% \addpenalty\@secpenalty +% \addpenalty{-\@highpenalty}% + \addvspace{2.25em \@plus\jsc@mpt}% + \begingroup + \parindent \z@ +% \@pnumwidth should be \@tocrmarg +% \rightskip \@pnumwidth + \rightskip \@tocrmarg + \parfillskip -\rightskip + {\leavevmode + \large \headfont + \setlength\@lnumwidth{4zw}% + #1\hfil \hb@xt@\@pnumwidth{\hss #2}}\par + \nobreak +% \global\@nobreaktrue +% \everypar{\global\@nobreakfalse\everypar{}}% + \endgroup + \fi} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\l@chapter} +% +% 章の目次です。|\@lnumwidth| を4.683zwに増やしました。 +% +% [2013-12-30] |\@lnumwidth| を |\jsc@tocl@width| から +% 決めるようにしてみました。(by ts) +% +% \begin{macrocode} +%<*book|report> +\newcommand*{\l@chapter}[2]{% + \ifnum \c@tocdepth >\m@ne + \addpenalty{-\@highpenalty}% + \addvspace{1.0em \@plus\jsc@mpt} +% \vskip 1.0em \@plus\p@ % book.clsでは↑がこうなっている + \begingroup + \parindent\z@ +% \rightskip\@pnumwidth + \rightskip\@tocrmarg + \parfillskip-\rightskip + \leavevmode\headfont + % \if@english\setlength\@lnumwidth{5.5em}\else\setlength\@lnumwidth{4.683zw}\fi + \setlength\@lnumwidth{\jsc@tocl@width}\advance\@lnumwidth 2.683zw + \advance\leftskip\@lnumwidth \hskip-\leftskip + #1\nobreak\hfil\nobreak\hbox to\@pnumwidth{\hss#2}\par + \penalty\@highpenalty + \endgroup + \fi} +% +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\l@section} +% +% 節の目次です。 +% +% \begin{macrocode} +%<*!book&!report> +\newcommand*{\l@section}[2]{% + \ifnum \c@tocdepth >\z@ + \addpenalty{\@secpenalty}% + \addvspace{1.0em \@plus\jsc@mpt}% + \begingroup + \parindent\z@ +% \rightskip\@pnumwidth + \rightskip\@tocrmarg + \parfillskip-\rightskip + \leavevmode\headfont + %\setlength\@lnumwidth{4zw}% 元1.5em [2003-03-02] + \setlength\@lnumwidth{\jsc@tocl@width}\advance\@lnumwidth 2zw + \advance\leftskip\@lnumwidth \hskip-\leftskip + #1\nobreak\hfil\nobreak\hbox to\@pnumwidth{\hss#2}\par + \endgroup + \fi} +% +% \end{macrocode} +% +% インデントと幅はそれぞれ1.5em,2.3emでしたが, +% 1zw,3.683zwに変えました。 +% \begin{macrocode} +% % \newcommand*{\l@section}{\@dottedtocline{1}{1zw}{3.683zw}} +% \end{macrocode} +% +% [2013-12-30] 上のインデントは |\jsc@tocl@width| から決めるように +% しました。(by ts) +% +% \end{macro} +% +% \begin{macro}{\l@subsection} +% \begin{macro}{\l@subsubsection} +% \begin{macro}{\l@paragraph} +% \begin{macro}{\l@subparagraph} +% +% さらに下位レベルの目次項目の体裁です。 +% あまり使ったことがありませんので,要修正かもしれません。 +% +% [2013-12-30] ここも |\jsc@tocl@width| から決めるように +% してみました。(by ts) +% +% \begin{macrocode} +%<*!book&!report> +% \newcommand*{\l@subsection} {\@dottedtocline{2}{1.5em}{2.3em}} +% \newcommand*{\l@subsubsection}{\@dottedtocline{3}{3.8em}{3.2em}} +% \newcommand*{\l@paragraph} {\@dottedtocline{4}{7.0em}{4.1em}} +% \newcommand*{\l@subparagraph} {\@dottedtocline{5}{10em}{5em}} +% +% \newcommand*{\l@subsection} {\@dottedtocline{2}{1zw}{3zw}} +% \newcommand*{\l@subsubsection}{\@dottedtocline{3}{2zw}{3zw}} +% \newcommand*{\l@paragraph} {\@dottedtocline{4}{3zw}{3zw}} +% \newcommand*{\l@subparagraph} {\@dottedtocline{5}{4zw}{3zw}} +% +\newcommand*{\l@subsection}{% + \@tempdima\jsc@tocl@width \advance\@tempdima -1zw + \@dottedtocline{2}{\@tempdima}{3zw}} +\newcommand*{\l@subsubsection}{% + \@tempdima\jsc@tocl@width \advance\@tempdima 0zw + \@dottedtocline{3}{\@tempdima}{4zw}} +\newcommand*{\l@paragraph}{% + \@tempdima\jsc@tocl@width \advance\@tempdima 1zw + \@dottedtocline{4}{\@tempdima}{5zw}} +\newcommand*{\l@subparagraph}{% + \@tempdima\jsc@tocl@width \advance\@tempdima 2zw + \@dottedtocline{5}{\@tempdima}{6zw}} +% +%<*book|report> +% \newcommand*{\l@subsection} {\@dottedtocline{2}{3.8em}{3.2em}} +% \newcommand*{\l@subsubsection}{\@dottedtocline{3}{7.0em}{4.1em}} +% \newcommand*{\l@paragraph} {\@dottedtocline{4}{10em}{5em}} +% \newcommand*{\l@subparagraph} {\@dottedtocline{5}{12em}{6em}} +\newcommand*{\l@section}{% + \@tempdima\jsc@tocl@width \advance\@tempdima -1zw + \@dottedtocline{1}{\@tempdima}{3.683zw}} +\newcommand*{\l@subsection}{% + \@tempdima\jsc@tocl@width \advance\@tempdima 2.683zw + \@dottedtocline{2}{\@tempdima}{3.5zw}} +\newcommand*{\l@subsubsection}{% + \@tempdima\jsc@tocl@width \advance\@tempdima 6.183zw + \@dottedtocline{3}{\@tempdima}{4.5zw}} +\newcommand*{\l@paragraph}{% + \@tempdima\jsc@tocl@width \advance\@tempdima 10.683zw + \@dottedtocline{4}{\@tempdima}{5.5zw}} +\newcommand*{\l@subparagraph}{% + \@tempdima\jsc@tocl@width \advance\@tempdima 16.183zw + \@dottedtocline{5}{\@tempdima}{6.5zw}} +% +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\numberline} +% \begin{macro}{\@lnumwidth} +% +% 欧文版\LaTeX では |\numberline{...}| は幅 |\@tempdima| の箱に左詰め +% で出力する命令ですが, +% アスキー版では |\@tempdima| の代わりに |\@lnumwidth| という変数 +% で幅を決めるように再定義しています。 +% 後続文字が全角か半角かでスペースが変わらないように |\hspace| +% を入れておきました。 +% +% \begin{macrocode} +\newdimen\@lnumwidth +\def\numberline#1{\hb@xt@\@lnumwidth{#1\hfil}\hspace{0pt}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\@dottedtocline} +% \begin{macro}{\jsTocLine} +% +% \LaTeX 本体(\texttt{ltsect.dtx} 参照)での定義と同じですが, +% |\@tempdima| を |\@lnumwidth| に変えています。 +% +% [2018-06-23] デフォルトでは\jsTocLine のようにベースラインになります。\par +% これを変更可能にするため,|\jsTocLine| というマクロに切り出しました。 +% 例えば,仮想ボディの中央 +% {\renewcommand{\jsTocLine}{\leaders \hbox {\hss ・\hss}\hfill}\jsTocLine} +% に変更したい場合は +%\begin{verbatim} +% \renewcommand{\jsTocLine}{\leaders \hbox {\hss ・\hss}\hfill} +%\end{verbatim} +% とします。 +% +% \begin{macrocode} +\def\jsTocLine{\leaders\hbox{% + $\m@th \mkern \@dotsep mu\hbox{.}\mkern \@dotsep mu$}\hfill} +\def\@dottedtocline#1#2#3#4#5{\ifnum #1>\c@tocdepth \else + \vskip \z@ \@plus.2\jsc@mpt + {\leftskip #2\relax \rightskip \@tocrmarg \parfillskip -\rightskip + \parindent #2\relax\@afterindenttrue + \interlinepenalty\@M + \leavevmode + \@lnumwidth #3\relax + \advance\leftskip \@lnumwidth \null\nobreak\hskip -\leftskip + {#4}\nobreak + \jsTocLine \nobreak\hb@xt@\@pnumwidth{% + \hfil\normalfont \normalcolor #5}\par}\fi} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \paragraph{図目次と表目次} +% +% \begin{macro}{\listoffigures} +% +% 図目次を出力します。 +% +% \begin{macrocode} +\newcommand{\listoffigures}{% +%<*book|report> + \if@twocolumn\@restonecoltrue\onecolumn + \else\@restonecolfalse\fi + \chapter*{\listfigurename}% + \@mkboth{\listfigurename}{}% +% +%<*!book&!report> + \section*{\listfigurename}% + \@mkboth{\listfigurename}{\listfigurename}% +% + \@starttoc{lof}% +% \if@restonecol\twocolumn\fi +} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\l@figure} +% +% 図目次の項目を出力します。 +% +% \begin{macrocode} +\newcommand*{\l@figure}{\@dottedtocline{1}{1zw}{3.683zw}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\listoftables} +% +% 表目次を出力します。 +% +% \begin{macrocode} +\newcommand{\listoftables}{% +%<*book|report> + \if@twocolumn\@restonecoltrue\onecolumn + \else\@restonecolfalse\fi + \chapter*{\listtablename}% + \@mkboth{\listtablename}{}% +% +%<*!book&!report> + \section*{\listtablename}% + \@mkboth{\listtablename}{\listtablename}% +% + \@starttoc{lot}% +% \if@restonecol\twocolumn\fi +} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\l@table} +% +% 表目次は図目次と同じです。 +% +% \begin{macrocode} +\let\l@table\l@figure +% \end{macrocode} +% \end{macro} +% +% \subsection{参考文献} +% +% \begin{macro}{\bibindent} +% +% オープンスタイルの参考文献で使うインデント幅です。 +% 元は 1.5em でした。 +% +% \begin{macrocode} +\newdimen\bibindent +\setlength\bibindent{2zw} +% \end{macrocode} +% \end{macro} +% +% \begin{environment}{thebibliography} +% +% 参考文献リストを出力します。 +% +% \begin{macrocode} +\newenvironment{thebibliography}[1]{% + \global\let\presectionname\relax + \global\let\postsectionname\relax +% \section*{\refname}\@mkboth{\refname}{\refname}% +%<*kiyou> + \vspace{1.5\baselineskip} + \subsubsection*{\refname}\@mkboth{\refname}{\refname}% + \vspace{0.5\baselineskip} +% +% \chapter*{\bibname}\@mkboth{\bibname}{}% +% \addcontentsline{toc}{chapter}{\bibname}% + \list{\@biblabel{\@arabic\c@enumiv}}% + {\settowidth\labelwidth{\@biblabel{#1}}% + \leftmargin\labelwidth + \advance\leftmargin\labelsep + \@openbib@code + \usecounter{enumiv}% + \let\p@enumiv\@empty + \renewcommand\theenumiv{\@arabic\c@enumiv}}% +% \small + \sloppy + \clubpenalty4000 + \@clubpenalty\clubpenalty + \widowpenalty4000% + \sfcode`\.\@m} + {\def\@noitemerr + {\@latex@warning{Empty `thebibliography' environment}}% + \endlist} +% \end{macrocode} +% \end{environment} +% +% \begin{macro}{\newblock} +% +% |\newblock| はデフォルトでは小さなスペースを生成します。 +% +% \begin{macrocode} +\newcommand{\newblock}{\hskip .11em\@plus.33em\@minus.07em} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@openbib@code} +% +% |\@openbib@code| はデフォルトでは何もしません。 +% この定義は |openbib| オプションによって変更されます。 +% +% \begin{macrocode} +\let\@openbib@code\@empty +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@biblabel} +% +% |\bibitem[...]| のラベルを作ります。 +% \texttt{ltbibl.dtx} の定義の半角 [] を全角[]に変え, +% 余分なスペースが入らないように |\inhibitglue| ではさみました。 +% とりあえずコメントアウトしておきますので,必要に応じて生かしてください。 +% +% \begin{macrocode} +% \def\@biblabel#1{\inhibitglue [#1]\inhibitglue} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\cite} +% \begin{macro}{\@cite} +% \begin{macro}{\@citex} +% +% 文献の番号を出力する部分は \texttt{ltbibl.dtx} で定義されていますが, +% コンマとかっこを和文フォントにするには次のようにします。 +% とりあえずコメントアウトしておきましたので,必要に応じて生かしてください。 +% かっこの前後に入るグルーを |\inhibitglue| で取っていますので, +% オリジナル同様,\verb*+Knuth~\cite{knu} + のように半角空白 +% で囲んでください。 +% +% \begin{macrocode} +% \def\@citex[#1]#2{\leavevmode +% \let\@citea\@empty +% \@cite{\@for\@citeb:=#2\do +% {\@citea\def\@citea{,\inhibitglue\penalty\@m\ }% +% \edef\@citeb{\expandafter\@firstofone\@citeb\@empty}% +% \if@filesw\immediate\write\@auxout{\string\citation{\@citeb}}\fi +% \@ifundefined{b@\@citeb}{\mbox{\normalfont\bfseries ?}% +% \G@refundefinedtrue +% \@latex@warning +% {Citation `\@citeb' on page \thepage \space undefined}}% +% {\@cite@ofmt{\csname b@\@citeb\endcsname}}}}{#1}} +% \def\@cite#1#2{\inhibitglue [{#1\if@tempswa ,#2\fi}]\inhibitglue} +% \end{macrocode} +% +% 引用番号を上ツキの 1)のようなスタイルにするには次のようにします。 +% |\cite| の先頭に |\unskip| を付けて先行のスペース(\verb|~| も) +% を帳消しにしています。 +% +% \begin{macrocode} +% \DeclareRobustCommand\cite{\unskip +% \@ifnextchar [{\@tempswatrue\@citex}{\@tempswafalse\@citex[]}} +% \def\@cite#1#2{$^{\hbox{\scriptsize{#1\if@tempswa +% ,\inhibitglue\ #2\fi})}}$} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \subsection{索引} +% +% \begin{environment}{theindex} +% +% 2〜3段組の索引を作成します。 +% 最後が偶数ページのときにマージンがずれる現象を直しました(Thanks: 藤村さん)。 +% +% \begin{macrocode} +\newenvironment{theindex}{% 索引を3段組で出力する環境 + \if@twocolumn + \onecolumn\@restonecolfalse + \else + \clearpage\@restonecoltrue + \fi + \columnseprule.4pt \columnsep 2zw + \ifx\multicols\@undefined +% \twocolumn[\@makeschapterhead{\indexname}% +% \addcontentsline{toc}{chapter}{\indexname}]% +% \def\presectionname{}\def\postsectionname{}% +% \twocolumn[\section*{\indexname}]% + \else + \ifdim\textwidth<\fullwidth + \setlength{\evensidemargin}{\oddsidemargin} + \setlength{\textwidth}{\fullwidth} + \setlength{\linewidth}{\fullwidth} +% \begin{multicols}{3}[\chapter*{\indexname}% +% \addcontentsline{toc}{chapter}{\indexname}]% +% \def\presectionname{}\def\postsectionname{}% +% \begin{multicols}{3}[\section*{\indexname}]% + \else +% \begin{multicols}{2}[\chapter*{\indexname}% +% \addcontentsline{toc}{chapter}{\indexname}]% +% \def\presectionname{}\def\postsectionname{}% +% \begin{multicols}{2}[\section*{\indexname}]% + \fi + \fi +% \@mkboth{\indexname}{}% +% \@mkboth{\indexname}{\indexname}% + \plainifnotempty % \thispagestyle{plain} + \parindent\z@ + \parskip\z@ \@plus .3\jsc@mpt\relax + \let\item\@idxitem + \raggedright + \footnotesize\narrowbaselines + }{ + \ifx\multicols\@undefined + \if@restonecol\onecolumn\fi + \else + \end{multicols} + \fi + \clearpage + } +% \end{macrocode} +% \end{environment} +% +% \begin{macro}{\@idxitem} +% \begin{macro}{\subitem} +% \begin{macro}{\subsubitem} +% +% 索引項目の字下げ幅です。|\@idxitem| は |\item| の項目の字下げ幅です。 +% +% \begin{macrocode} +\newcommand{\@idxitem}{\par\hangindent 4zw} % 元 40pt +\newcommand{\subitem}{\@idxitem \hspace*{2zw}} % 元 20pt +\newcommand{\subsubitem}{\@idxitem \hspace*{3zw}} % 元 30pt +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\indexspace} +% +% 索引で先頭文字ごとのブロックの間に入るスペースです。 +% +% \begin{macrocode} +\newcommand{\indexspace}{\par \vskip 10\jsc@mpt \@plus5\jsc@mpt \@minus3\jsc@mpt\relax} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\seename} +% \begin{macro}{\alsoname} +% +% 索引の |\see|,|\seealso| コマンドで出力されるものです。 +% デフォルトはそれぞれ \emph{see},\emph{see also} という英語ですが, +% ここではとりあえず両方とも「→」に変えました。 +% $\Rightarrow$(|$\Rightarrow$|)などでもいいでしょう。 +% +% \begin{macrocode} +\newcommand\seename{\if@english see\else →\fi} +\newcommand\alsoname{\if@english see also\else →\fi} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \subsection{脚注} +% +% \begin{macro}{\footnote} +% \begin{macro}{\footnotemark} +% +% 和文の句読点・閉じかっこ類の直後で用いた際に +% 余分なアキが入るのを防ぐため, +% |\inhibitglue| を入れることにします。 +% p\LaTeX の日付が2016/09/03より新しい場合は,このパッチが不要なのであてません。 +% +% \begin{macrocode} +\@ifl@t@r\pfmtversion{2016/09/03} + {\jsc@needsp@tchfalse}{\jsc@needsp@tchtrue} +\ifjsc@needsp@tch + \let\footnotes@ve=\footnote + \def\footnote{\inhibitglue\footnotes@ve} + \let\footnotemarks@ve=\footnotemark + \def\footnotemark{\inhibitglue\footnotemarks@ve} +\fi +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\@makefnmark} +% +% 脚注番号を付ける命令です。 +% ここでは脚注番号の前に記号 $*$ を付けています。 +% 「注1」の形式にするには |\textasteriskcentered| +% を |注\kern0.1em| にしてください。 +% |\@xfootnotenext| と合わせて, +% もし脚注番号が空なら記号も出力しないようにしてあります。 +% +% [2002-04-09] インプリメントの仕方を変えたため消しました。 +% +% [2013-04-23] 新しい\pTeX では脚注番号のまわりにスペースが入りすぎることを防ぐため, +% 北川さんのパッチ [qa:57090] を取り込みました。 +% +% [2013-05-14] plcore.ltx に倣った形に書き直しました(Thanks: 北川さん)。 +% +% [2016-07-11] コミュニティ版p\LaTeX の変更に追随しました(Thanks: 角藤さん)。 +% p\LaTeX の日付が2016/04/17より新しい場合は,このパッチが不要なのであてません。 +% +% \begin{macrocode} +\@ifl@t@r\pfmtversion{2016/04/17} + {\jsc@needsp@tchfalse}{\jsc@needsp@tchtrue} +\ifjsc@needsp@tch +\renewcommand\@makefnmark{% + \ifydir \hbox{}\hbox{\@textsuperscript{\normalfont\@thefnmark}}\hbox{}% + \else\hbox{\yoko\@textsuperscript{\normalfont\@thefnmark}}\fi} +\fi +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\thefootnote} +% +% 脚注番号に * 印が付くようにしました。 +% ただし,番号がゼロのときは * 印も脚注番号も付きません。 +% +% [2003-08-15] |\textasteriskcentered| ではフォントによって +% 下がりすぎるので変更しました。 +% +% [2016-10-08] TODO: 脚注番号が |newtxtext| や |newpxtext| の使用時に +% おかしくなってしまいます。これらのパッケージは内部で |\thefootnote| を +% 再定義していますので,気になる場合はパッケージを読み込むときに +% \texttt{defaultsups} オプションを付けてください(qa:57284, qa:57287)。 +% +% \begin{macrocode} +\def\thefootnote{\ifnum\c@footnote>\z@\leavevmode\lower.5ex\hbox{*}\@arabic\c@footnote\fi} +% \end{macrocode} +% +% 「注1」の形式にするには次のようにしてください。 +% +% \begin{macrocode} +% \def\thefootnote{\ifnum\c@footnote>\z@ 注\kern0.1zw\@arabic\c@footnote\fi} +% \end{macrocode} +% +% \end{macro} +% +% \begin{macro}{\footnoterule} +% +% 本文と脚注の間の罫線です。 +% +% \begin{macrocode} +\renewcommand{\footnoterule}{% + \kern-3\jsc@mpt + \hrule width .4\columnwidth height 0.4\jsc@mpt + \kern 2.6\jsc@mpt} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\c@footnote} +% +% 脚注番号は章ごとにリセットされます。 +% +% \begin{macrocode} +%\@addtoreset{footnote}{chapter} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@footnotetext} +% +% 脚注で |\verb| が使えるように改変してあります。 +% Jeremy Gibbons, \textit{\TeX\ and TUG NEWS}, +% Vol.~2, No.~4 (1993), p.~9) +% +% [2016-08-25] コミュニティ版\pLaTeX の「閉じ括弧類の直後に +% |\footnotetext| が続く場合に改行が起きることがある問題に対処」 +% と同等のコードを追加しました。 +% +% [2016-09-08] コミュニティ版\pLaTeX のバグ修正に追随しました。 +% +% [2016-11-29] 古い\pLaTeX で使用された場合を考慮してコードを改良。 +% ^^A 脚注直後に改行を可能にするために|\null|を入れる場合, +% ^^A 同時にペナルティも考慮しなければ誤った改行が起きる可能性がある。 +% ^^A このため,|\ifhmode\null\fi|は +% ^^A |\ifx\pltx@foot@penalty\@undefined\else ... \fi| +% ^^A 条件の内側に置いておくのが安全。 +% +% [2018-03-11] |\next|などいくつかの内部命令を |\jsc@...| 付きの +% ユニークな名前にしました。 +% \begin{macrocode} +\long\def\@footnotetext{% + \insert\footins\bgroup + \normalfont\footnotesize + \interlinepenalty\interfootnotelinepenalty + \splittopskip\footnotesep + \splitmaxdepth \dp\strutbox \floatingpenalty \@MM + \hsize\columnwidth \@parboxrestore + \protected@edef\@currentlabel{% + \csname p@footnote\endcsname\@thefnmark + }% + \color@begingroup + \@makefntext{% + \rule\z@\footnotesep\ignorespaces}% + \futurelet\jsc@next\jsc@fo@t} +\def\jsc@fo@t{\ifcat\bgroup\noexpand\jsc@next \let\jsc@next\jsc@f@@t + \else \let\jsc@next\jsc@f@t\fi \jsc@next} +\def\jsc@f@@t{\bgroup\aftergroup\jsc@@foot\let\jsc@next} +\def\jsc@f@t#1{#1\jsc@@foot} +\def\jsc@@foot{\@finalstrut\strutbox\color@endgroup\egroup + \ifx\pltx@foot@penalty\@undefined\else + \ifhmode\null\fi + \ifnum\pltx@foot@penalty=\z@\else + \penalty\pltx@foot@penalty + \pltx@foot@penalty\z@ + \fi + \fi} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@makefntext} +% +% 実際に脚注を出力する命令です。 +% |\@makefnmark| は脚注の番号を出力する命令です。 +% ここでは脚注が左端から一定距離に来るようにしてあります。 +% +% \begin{macrocode} +\newcommand\@makefntext[1]{% + \advance\leftskip 3zw + \parindent 1zw + \noindent + \llap{\@makefnmark\hskip0.3zw}#1} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@xfootnotenext} +% +% 最初の |\footnotetext{...}| は番号が付きません。 +% 著者の所属などを脚注の欄に書くときに便利です。 +% +% すでに |\footnote| を使った後なら |\footnotetext[0]{...}| +% とすれば番号を付けない脚注になります。 +% ただし,この場合は脚注番号がリセットされてしまうので, +% 工夫が必要です。 +% +% [2002-04-09] インプリメントの仕方を変えたため消しました。 +% +% \begin{macrocode} +% \def\@xfootnotenext[#1]{% +% \begingroup +% \ifnum#1>\z@ +% \csname c@\@mpfn\endcsname #1\relax +% \unrestored@protected@xdef\@thefnmark{\thempfn}% +% \else +% \unrestored@protected@xdef\@thefnmark{}% +% \fi +% \endgroup +% \@footnotetext} +% \end{macrocode} +% \end{macro} +% +% \section{段落の頭へのグルー挿入禁止} +% +% 段落頭のかぎかっこなどを見かけ1字半下げから全角1字下げに直します。 +% +% [2016-07-18] |\inhibitglue| の発行対象を |\inhibitxspcode| が2に +% 設定されているものすべてに拡大しました。 +% +% [2016-12-01] すぐ上の変更で |\@tempa| を使っていたのがよくなかった +% ので,プレフィックスを付けて |\jsc@tempa| にしました(forum:2085)。 +% +% [2017-02-13] |\jsc@tempa| は実はテンポラリではなく「この処理専用の +% ユニーク制御綴」である必要があります。間違って別の箇所で使う危険性が +% 高いので,専用の命令 |\jsc@ig@temp| に置き換えました(Issue \#54)。 +% +% \begin{macrocode} +\def\@inhibitglue{% + \futurelet\@let@token\@@inhibitglue} +\begingroup +\let\GDEF=\gdef +\let\CATCODE=\catcode +\let\ENDGROUP=\endgroup +\CATCODE`k=12 +\CATCODE`a=12 +\CATCODE`n=12 +\CATCODE`j=12 +\CATCODE`i=12 +\CATCODE`c=12 +\CATCODE`h=12 +\CATCODE`r=12 +\CATCODE`t=12 +\CATCODE`e=12 +\GDEF\KANJI@CHARACTER{kanji character } +\ENDGROUP +\def\@@inhibitglue{% + \expandafter\expandafter\expandafter\jsc@inhibitglue\expandafter\meaning\expandafter\@let@token\KANJI@CHARACTER\relax\jsc@end} +\expandafter\def\expandafter\jsc@inhibitglue\expandafter#\expandafter1\KANJI@CHARACTER#2#3\jsc@end{% + \def\jsc@ig@temp{#1}% + \ifx\jsc@ig@temp\@empty + \ifnum\the\inhibitxspcode`#2=2\relax + \inhibitglue + \fi + \fi} +\let\everyparhook=\@inhibitglue +\AtBeginDocument{\everypar{\everyparhook}} +% \end{macrocode} +% +% これだけではいけないようです。あちこちに |\everypar| を初期化するコマンドが +% 隠されていました。 +% +% まず,環境の直後の段落です。 +% +% [2016-11-19] ltlists.dtx 2015/05/10 v1.0tの変更に追随して |\clubpenalty| の +% リセットを追加しました。 +% +% \begin{macrocode} +\def\@doendpe{% + \@endpetrue + \def\par{% + \@restorepar\clubpenalty\@clubpenalty\everypar{\everyparhook}\par\@endpefalse}% + \everypar{{\setbox\z@\lastbox}\everypar{\everyparhook}\@endpefalse\everyparhook}} +% \end{macrocode} +% +% [2017-08-31] minipage環境にも対策します。 +% +% \begin{macrocode} +\def\@setminipage{% + \@minipagetrue + \everypar{\@minipagefalse\everypar{\everyparhook}}% +} +% \end{macrocode} +% +% |\item| 命令の直後です。 +% +% \begin{macrocode} +\def\@item[#1]{% + \if@noparitem + \@donoparitem + \else + \if@inlabel + \indent \par + \fi + \ifhmode + \unskip\unskip \par + \fi + \if@newlist + \if@nobreak + \@nbitem + \else + \addpenalty\@beginparpenalty + \addvspace\@topsep + \addvspace{-\parskip}% + \fi + \else + \addpenalty\@itempenalty + \addvspace\itemsep + \fi + \global\@inlabeltrue + \fi + \everypar{% + \@minipagefalse + \global\@newlistfalse + \if@inlabel + \global\@inlabelfalse + {\setbox\z@\lastbox + \ifvoid\z@ + \kern-\itemindent + \fi}% + \box\@labels + \penalty\z@ + \fi + \if@nobreak + \@nobreakfalse + \clubpenalty \@M + \else + \clubpenalty \@clubpenalty + \everypar{\everyparhook}% + \fi\everyparhook}% + \if@noitemarg + \@noitemargfalse + \if@nmbrlist + \refstepcounter\@listctr + \fi + \fi + \sbox\@tempboxa{\makelabel{#1}}% + \global\setbox\@labels\hbox{% + \unhbox\@labels + \hskip \itemindent + \hskip -\labelwidth + \hskip -\labelsep + \ifdim \wd\@tempboxa >\labelwidth + \box\@tempboxa + \else + \hbox to\labelwidth {\unhbox\@tempboxa}% + \fi + \hskip \labelsep}% + \ignorespaces} +% \end{macrocode} +% +% 二つ挿入した |\everyparhook| のうち後者が |\section| 類の直後に2回, +% 前者が3回目以降に実行されます。 +% +% \begin{macrocode} +\def\@afterheading{% + \@nobreaktrue + \everypar{% + \if@nobreak + \@nobreakfalse + \clubpenalty \@M + \if@afterindent \else + {\setbox\z@\lastbox}% + \fi + \else + \clubpenalty \@clubpenalty + \everypar{\everyparhook}% + \fi\everyparhook}} +% \end{macrocode} +% +% |\@gnewline| についてはちょっと複雑な心境です。 +% もともとのp\LaTeXe は段落の頭にグルーが入る方で統一されていました。 +% しかし |\\| の直後にはグルーが入らず,不統一でした。 +% そこで |\\| の直後にもグルーを入れるように直していただいた経緯があります。 +% しかし,ここでは逆にグルーを入れない方で統一したいので, +% また元に戻してしまいました。 +% +% しかし単に戻すだけでも駄目みたいなので,ここでも最後にグルーを消しておきます。 +% +% \begin{macrocode} +\def\@gnewline #1{% + \ifvmode + \@nolnerr + \else + \unskip \reserved@e {\reserved@f#1}\nobreak \hfil \break \null + \inhibitglue \ignorespaces + \fi} +% \end{macrocode} +% +% \section{いろいろなロゴ} +% +% \LaTeX 関連のロゴを作り直します。 +% +% [2016-07-14] ロゴの定義は\texttt{jslogo}パッケージに移転しました。 +% 後方互換のため,\texttt{jsclasses}ではデフォルトでこれを読み込みます。 +% \texttt{nojslogo}オプションが指定されている場合は読み込みません。 +% +% \begin{macro}{\小} +% \begin{macro}{\上小} +% +% 文字を小さめに出したり上寄りに小さめに出したりする命令を, +% \texttt{jslogo.sty}では名称変更してありますので,コピーします。 +% \begin{macrocode} +\if@jslogo + \IfFileExists{jslogo.sty}{% + \RequirePackage{jslogo}% + \def\小{\jslg@small}% + \def\上小{\jslg@uppersmall}% + }{% + \ClassWarningNoLine{\jsc@clsname}{% + The redefinitions of LaTeX-related logos has\MessageBreak + been moved to jslogo.sty since 2016, but\MessageBreak + jslogo.sty not found. Current release of\MessageBreak + 'jsclasses' includes it, so please check\MessageBreak + the installation}% + } +\fi +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% +% \section{\texttt{amsmath} との衝突の回避} +% +% \begin{macro}{\ltx@ifnextchar} +% \begin{macro}{\ProvidesFile} +% +% \texttt{amsmath} パッケージでは行列中で |\@ifnextchar| +% を再定義していますが,これが\LaTeX の |\ProvidesFile| +% で悪さをする例がFTeXで報告されています。 +% これを避けるためのtDBさんのフィックスを挿入しておきます。 +% 副作用がありましたらお知らせください。 +% +% この現象については私のTeX掲示板 4273〜,16058〜 で議論がありました。 +% なお,AMS関係のパッケージを読み込む際に psamsfonts オプションを +% 与えても回避できます(Thanks: しっぽ愛好家さん)。 +% +% [2016-11-19] 本家の ltclass.dtx 2004/01/28 v1.1g で修正されているので +% コメントアウトしました。 +% +% \begin{macrocode} +%\let\ltx@ifnextchar\@ifnextchar +%\def\ProvidesFile#1{% +% \begingroup +% \catcode`\ 10 % +% \ifnum \endlinechar<256 % +% \ifnum \endlinechar>\m@ne +% \catcode\endlinechar 10 % +% \fi +% \fi +% \@makeother\/% +% \@makeother\&% +% \ltx@ifnextchar[{\@providesfile{#1}}{\@providesfile{#1}[]}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \section{初期設定} +% +% \paragraph{いろいろな語} +% +% \begin{macro}{\prepartname} +% \begin{macro}{\postpartname} +% \begin{macro}{\prechaptername} +% \begin{macro}{\postchaptername} +% \begin{macro}{\presectionname} +% \begin{macro}{\postsectionname} +% \begin{macrocode} +\newcommand{\prepartname}{\if@english Part~\else 第\fi} +\newcommand{\postpartname}{\if@english\else 部\fi} +%\newcommand{\prechaptername}{\if@english Chapter~\else 第\fi} +%\newcommand{\postchaptername}{\if@english\else 章\fi} +\newcommand{\presectionname}{}% 第 +\newcommand{\postsectionname}{}% 節 +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\contentsname} +% \begin{macro}{\listfigurename} +% \begin{macro}{\listtablename} +% \begin{macrocode} +\newcommand{\contentsname}{\if@english Contents\else 目次\fi} +\newcommand{\listfigurename}{\if@english List of Figures\else 図目次\fi} +\newcommand{\listtablename}{\if@english List of Tables\else 表目次\fi} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\refname} +% \begin{macro}{\bibname} +% \begin{macro}{\indexname} +% \begin{macrocode} +\newcommand{\refname}{\if@english References\else 参考文献\fi} +\newcommand{\bibname}{\if@english Bibliography\else 参考文献\fi} +\newcommand{\indexname}{\if@english Index\else 索引\fi} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\figurename} +% \begin{macro}{\tablename} +% \begin{macrocode} +%\newcommand{\figurename}{\if@english Fig.~\else 図\fi} +%\newcommand{\figurename}{Fig.~} +%\newcommand{\tablename}{\if@english Table~\else 表\fi} +%\newcommand{\tablename}{Table~} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\appendixname} +% \begin{macro}{\abstractname} +% \begin{macrocode} +% \newcommand{\appendixname}{\if@english Appendix~\else 付録\fi} +\newcommand{\appendixname}{\if@english \else 付録\fi} +%\newcommand{\abstractname}{\if@english Abstract\else 概要\fi} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \paragraph{今日の日付} +% +% \LaTeX で処理した日付を出力します。 +% ^^A |jarticle| などと違って,標準を西暦にし, +% ^^A 余分な空白が入らないように改良しました。 +% ^^A -- 2018年7月以降は |jarticle| なども標準が西暦, +% ^^A -- 2019年4月以降は余分な空白が入らなくなっています。 +% 和暦にするには |\和暦| と書いてください。 +% ちなみにこの文章の作成日は西暦では{\西暦\today}で, +% 和暦では{\和暦\today}です。 +% +% \begin{macro}{\today} +% \begin{macrocode} +\newif\if西暦 \西暦true +\def\西暦{\西暦true} +\def\和暦{\西暦false} +\newcount\heisei \heisei\year \advance\heisei-1988\relax +\def\pltx@today@year@#1{% + \ifnum\numexpr\year-#1=1 元\else + \ifnum1=\iftdir\ifmdir0\else1\fi\else0\fi + \kansuji\numexpr\year-#1\relax + \else + \number\numexpr\year-#1\relax\nobreak + \fi + \fi 年 +} +\def\pltx@today@year{% + \ifnum\numexpr\year*10000+\month*100+\day<19890108 + 昭和\pltx@today@year@{1925}% + \else\ifnum\numexpr\year*10000+\month*100+\day<20190501 + 平成\pltx@today@year@{1988}% + \else + 令和\pltx@today@year@{2018}% + \fi\fi} +\def\today{% + \if@english + \ifcase\month\or + January\or February\or March\or April\or May\or June\or + July\or August\or September\or October\or November\or December\fi + \space\number\day, \number\year + \else\if西暦 + \ifnum1=\iftdir\ifmdir0\else1\fi\else0\fi \kansuji\year + \else\number\year\nobreak\fi 年 + \else + \pltx@today@year + \fi + \ifnum1=\iftdir\ifmdir0\else1\fi\else0\fi + \kansuji\month 月 + \kansuji\day 日 + \else + \number\month\nobreak 月 + \number\day\nobreak 日 + \fi\fi} +% \end{macrocode} +% \end{macro} +% +% \paragraph{ハイフネーション例外} +% +% \TeX のハイフネーションルールの補足です(ペンディング:eng-lish) +% +% \begin{macrocode} +\hyphenation{ado-be post-script ghost-script phe-nom-e-no-log-i-cal man-u-script} +% \end{macrocode} +% +% \paragraph{ページ設定} +% +% ページ設定の初期化です。 +% +% \begin{macrocode} +%
    \if@slide \pagestyle{empty} \else \pagestyle{plain} \fi +%\if@report \pagestyle{plain} \else \pagestyle{headings} \fi +%\pagestyle{plain} +%\pagestyle{headings} +\pagenumbering{arabic} +\if@twocolumn + \twocolumn + \sloppy + \flushbottom +\else + \onecolumn + \raggedbottom +\fi +\if@slide + \renewcommand\kanjifamilydefault{\gtdefault} + \renewcommand\familydefault{\sfdefault} + \raggedright + \xkanjiskip=0.1em\relax +\fi +% \end{macrocode} +% +% +% \section{実験的コード} +% +% [2016-11-29] コミュニティ版p\LaTeX で新設されたテスト用パッケージ +% (\texttt{exppl2e}パッケージ)が文書クラスより先に読み込まれていた +% 場合は,jsclassesもテスト版として動作します。この処置は +% jsarticle,jsbook,jsreportにのみ行い,jspfとkiyouは除外しておきます。 +% exppl2eパッケージが読みこまれていない場合は通常版として動作しますので, +% ここで終了します。 +% +% \begin{macrocode} +%<*article|book|report> +\@ifpackageloaded{exppl2e}{\jsc@needsp@tchtrue}{\jsc@needsp@tchfalse} +\ifjsc@needsp@tch\else + \expandafter\endinput +\fi +% \end{macrocode} +% +% 以下は実験的コードです。具体的には,2016/11/29の\texttt{exppl2e}パッケージ +% で説明されている|\@gnewline|のパッチを入れてあります。 +% +% \begin{macro}{\@gnewline} +% \begin{macrocode} +\def\@gnewline #1{% + \ifvmode + \@nolnerr + \else + \unskip \reserved@e {\reserved@f#1}\nobreak \hfil \break \hskip \z@ + \ignorespaces + \fi} +% +% +% \end{macrocode} +% \end{macro} +% +% 以上です。 +% +% \Finale +% +\endinput diff --git a/macros/jptex/latex/jsclasses/jsclasses.ins b/macros/jptex/latex/jsclasses/jsclasses.ins new file mode 100644 index 0000000000..b7e4ca24ab --- /dev/null +++ b/macros/jptex/latex/jsclasses/jsclasses.ins @@ -0,0 +1,18 @@ +\input docstrip +\preamble + +Maintained on GitHub: https://github.com/texjporg/jsclasses + +\endpreamble + +\def\batchfile{jsclasses.ins} +\input docstrip.tex +\keepsilent +\generateFile{jsarticle.cls}{f}{\from{jsclasses.dtx}{class,article}} +\generateFile{jsbook.cls}{f}{\from{jsclasses.dtx}{class,book}} +\generateFile{jsreport.cls}{f}{\from{jsclasses.dtx}{class,report}} +\generateFile{jspf.cls}{f}{\from{jsclasses.dtx}{class,jspf}} +\generateFile{kiyou.cls}{f}{\from{jsclasses.dtx}{class,kiyou}} +\generateFile{minijs.sty}{f}{\from{jsclasses.dtx}{minijs}} + +\endbatchfile diff --git a/macros/jptex/latex/jsclasses/jsclasses.pdf b/macros/jptex/latex/jsclasses/jsclasses.pdf new file mode 100644 index 0000000000..f41951d9e6 Binary files /dev/null and b/macros/jptex/latex/jsclasses/jsclasses.pdf differ diff --git a/macros/jptex/latex/jsclasses/jslogo.dtx b/macros/jptex/latex/jsclasses/jslogo.dtx new file mode 100644 index 0000000000..e8350bdb61 --- /dev/null +++ b/macros/jptex/latex/jsclasses/jslogo.dtx @@ -0,0 +1,424 @@ +% ^^A -*- japanese-latex -*- +% +% \ifx\epTeXinputencoding\undefined\else +% \epTeXinputencoding utf8 % ^^A added (2017-10-04) +% \fi +% +% \iffalse meta-comment +% +%<*driver> +\ifx\epTeXinputencoding\undefined\else + \epTeXinputencoding utf8 +\fi +% +% +% LaTeX 関連のロゴ(pLaTeX2ε新ドキュメントクラス付録) +% +% Copyright 1999-2016 Haruhiko Okumura +% Copyright 2016-2019 Japanese TeX Development Community +% +% \fi +% +% \iffalse +% +% \begin{macrocode} +%\NeedsTeXFormat{LaTeX2e} +%\ProvidesPackage{jslogo} +%<*driver> +\ProvidesFile{jslogo.dtx} +% + [2019/07/25 okumura, texjporg] +%<*driver> +\documentclass{jsarticle} +\usepackage{doc} +\xspcode"5C=1 %% \ +\xspcode"22=1 %% " +\addtolength{\textwidth}{-1in} +\addtolength{\evensidemargin}{1in} +\addtolength{\oddsidemargin}{1in} +\addtolength{\marginparwidth}{1in} +\setlength\marginparpush{0pt} +% \OnlyDescription +\CodelineNumbered +\DisableCrossrefs +\setcounter{StandardModuleDepth}{1} +\GetFileInfo{jslogo.dtx} +\begin{document} + \DocInput{jslogo.dtx} +\end{document} +% +% \end{macrocode} +% +% \fi +% +% \title{\pLaTeXe 新ドキュメントクラス付録 ロゴパッケージ} +% \author{奥村晴彦,日本語\TeX 開発コミュニティ} +% \date{\filedate} +% \maketitle +% +% \MakeShortVerb{\|} +% +% \section{はじめに} +% +% これはもともと奥村晴彦氏による\texttt{jsclasses.dtx}で定義され +% ていた\LaTeX 関連のロゴを,独立のパッケージに抽出したものです。 +% \texttt{jsclasses}ではデフォルトで読み込まれます。 +% 現在は日本語\TeX 開発コミュニティによりGitHubで管理されています。 +% \begin{quote} +% |https://github.com/texjporg/jsclasses| +% \end{quote} +% ライセンスはmodified BSDです。 +% +% \StopEventually{} +% +% 以下では実際のコードに即して説明します。 +% +% +% \section{いろいろなロゴ} +% +% \LaTeX 関連のロゴを作り直します。 +% +% \begin{macro}{\jslg@small} +% \begin{macro}{\jslg@uppersmall} +% +% 文字を小さめに出したり上寄りに小さめに出したりする命令です。 +% +% \begin{macrocode} +\def\jslg@small#1{\hbox{$\m@th$% + \csname S@\f@size\endcsname + \fontsize\sf@size\z@ + \math@fontsfalse\selectfont + #1}} +\def\jslg@uppersmall#1{{\sbox\z@ T\vbox to\ht0{\jslg@small{#1}\vss}}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\TeX} +% \begin{macro}{\LaTeX} +% +% これらは \texttt{ltlogos.dtx} で定義されていますが, +% TimesやHelveticaでも見栄えがするように若干変更しました。 +% +% Computer Modern Romanです(ファミリ名\texttt{cmr})。 +% 元の定義に最も近いので,特別に定義しない場合に用います。 +% +% \begin{macrocode} +\def\cmrTeX{% + \ifdim \fontdimen\@ne\font >\z@ + T\kern-.25em\lower.5ex\hbox{E}\kern-.125emX\@ + \else + T\kern-.1667em\lower.5ex\hbox{E}\kern-.125emX\@ + \fi} +\def\cmrLaTeX{% + \ifdim \fontdimen\@ne\font >\z@ + L\kern-.32em\jslg@uppersmall{A}\kern-.22em\cmrTeX + \else + L\kern-.36em\jslg@uppersmall{A}\kern-.15em\cmrTeX + \fi} +% \end{macrocode} +% +% Computer Modern Sans Serif(ファミリ名\texttt{cmss})や +% Helvetica(ファミリ名\texttt{phv})などのサンセリフ体です。 +% +% \begin{macrocode} +\def\sfTeX{T\kern-.1em\lower.4ex\hbox{E}\kern-.07emX\@} +\def\sfLaTeX{L\kern-.25em\jslg@uppersmall{A}\kern-.08em\sfTeX} +% \end{macrocode} +% +% Timesです(ファミリ名\texttt{ptm})。 +% TXフォント(ファミリ名\texttt{txr})でも用います。 +% +% \begin{macrocode} +\def\ptmTeX{% + \ifdim \fontdimen\@ne\font >\z@ + T\kern-.12em\lower.37ex\hbox{E}\kern-.02emX\@ + \else + T\kern-.07em\lower.37ex\hbox{E}\kern-.05emX\@ + \fi} +\def\ptmLaTeX{% + \ifdim \fontdimen\@ne\font >\z@ + L\kern-.2em\jslg@uppersmall{A}\kern-.1em\ptmTeX + \else + L\kern-.3em\jslg@uppersmall{A}\kern-.1em\ptmTeX + \fi} +% \end{macrocode} +% +% New Century Schoolbookです(ファミリ名\texttt{pnc})。 +% +% \begin{macrocode} +\def\pncTeX{% + \ifdim \fontdimen\@ne\font >\z@ + T\kern-.2em\lower.5ex\hbox{E}\kern-.08emX\@ + \else + T\kern-.13em\lower.5ex\hbox{E}\kern-.13emX\@ + \fi} +\def\pncLaTeX{% + \ifdim \fontdimen\@ne\font >\z@ + L\kern-.3em\jslg@uppersmall{A}\kern-.1em\pncTeX + \else + L\kern-.3em\jslg@uppersmall{A}\kern-.1em\pncTeX + \fi} +% \end{macrocode} +% +% Palatinoです(ファミリ名\texttt{ppl})。 +% PXフォント(ファミリ名\texttt{pxr})でも用います。 +% +% \begin{macrocode} +\def\pplTeX{% + \ifdim \fontdimen\@ne\font >\z@ + T\kern-.17em\lower.32ex\hbox{E}\kern-.15emX\@ + \else + T\kern-.12em\lower.34ex\hbox{E}\kern-.1emX\@ + \fi} +\def\pplLaTeX{% + \ifdim \fontdimen\@ne\font >\z@ + L\kern-.27em\jslg@uppersmall{A}\kern-.12em\pplTeX + \else + L\kern-.3em\jslg@uppersmall{A}\kern-.15em\pplTeX + \fi} +% \end{macrocode} +% +% URW Garamondです(ファミリ名\texttt{ugm})。 +% +% \begin{macrocode} +\def\ugmTeX{% + \ifdim \fontdimen\@ne\font >\z@ + T\kern-.1em\lower.32ex\hbox{E}\kern-.06emX\@ + \else + T\kern-.12em\lower.34ex\hbox{E}\kern-.1emX\@ + \fi} +\def\ugmLaTeX{% + \ifdim \fontdimen\@ne\font >\z@ + L\kern-.2em\jslg@uppersmall{A}\kern-.13em\ugmTeX + \else + L\kern-.3em\jslg@uppersmall{A}\kern-.13em\ugmTeX + \fi} +% \end{macrocode} +% +% 以上の定義を,ファミリによって使い分けます。 +% +% [2003-06-12] Palatinoも加えました(要調整)。 +% +% \begin{macrocode} +\DeclareRobustCommand{\TeX}{% + \def\@tempa{cmss}% + \ifx\f@family\@tempa\sfTeX + \else + \def\@tempa{phv}% + \ifx\f@family\@tempa\sfTeX + \else + \def\@tempa{qhv}% + \ifx\f@family\@tempa\sfTeX + \else + \def\@tempa{ptm}% + \ifx\f@family\@tempa\ptmTeX + \else + \def\@tempa{qtm}% + \ifx\f@family\@tempa\ptmTeX + \else + \def\@tempa{txr}% + \ifx\f@family\@tempa\ptmTeX + \else + \def\@tempa{ntxtlf}% + \ifx\f@family\@tempa\ptmTeX + \else + \def\@tempa{pnc}% + \ifx\f@family\@tempa\pncTeX + \else + \def\@tempa{ppl}% + \ifx\f@family\@tempa\pplTeX + \else + \def\@tempa{qpl}% + \ifx\f@family\@tempa\pplTeX + \else + \def\@tempa{pplx}% + \ifx\f@family\@tempa\pplTeX + \else + \def\@tempa{pplj}% + \ifx\f@family\@tempa\pplTeX + \else + \def\@tempa{pxr}% + \ifx\f@family\@tempa\pplTeX + \else + \def\@tempa{zpltlf}% + \ifx\f@family\@tempa\pplTeX + \else + \def\@tempa{ugm}% + \ifx\f@family\@tempa\ugmTeX + \else\cmrTeX + \fi + \fi\fi + \fi\fi\fi\fi + \fi + \fi\fi + \fi\fi + \fi\fi\fi} +\DeclareRobustCommand{\LaTeX}{% + \def\@tempa{cmss}% + \ifx\f@family\@tempa\sfLaTeX + \else + \def\@tempa{phv}% + \ifx\f@family\@tempa\sfLaTeX + \else + \def\@tempa{qhv}% + \ifx\f@family\@tempa\sfLaTeX + \else + \def\@tempa{ptm}% + \ifx\f@family\@tempa\ptmLaTeX + \else + \def\@tempa{qtm}% + \ifx\f@family\@tempa\ptmLaTeX + \else + \def\@tempa{txr}% + \ifx\f@family\@tempa\ptmLaTeX + \else + \def\@tempa{ntxtlf}% + \ifx\f@family\@tempa\ptmLaTeX + \else + \def\@tempa{pnc}% + \ifx\f@family\@tempa\pncLaTeX + \else + \def\@tempa{ppl}% + \ifx\f@family\@tempa\pplLaTeX + \else + \def\@tempa{qpl}% + \ifx\f@family\@tempa\pplLaTeX + \else + \def\@tempa{pplx}% + \ifx\f@family\@tempa\pplLaTeX + \else + \def\@tempa{pplj}% + \ifx\f@family\@tempa\pplLaTeX + \else + \def\@tempa{pxr}% + \ifx\f@family\@tempa\pplLaTeX + \else + \def\@tempa{zpltlf}% + \ifx\f@family\@tempa\pplLaTeX + \else + \def\@tempa{ugm}% + \ifx\f@family\@tempa\ugmLaTeX + \else\cmrLaTeX + \fi + \fi\fi + \fi\fi\fi\fi + \fi + \fi\fi + \fi\fi + \fi\fi\fi} +% \end{macrocode} +% +% \end{macro} +% \end{macro} +% +% \begin{macro}{\LaTeXe} +% +% |\LaTeXe| コマンドの |\mbox{\m@th ...| で始まる新しい定義では +% 直後の和文との間に |\xkanjiskip| が入りません。また, +% |mathptmx| パッケージなどと併用すると,最後の $\varepsilon$ が +% 下がりすぎてしまいます。そのため,ちょっと手を加えました。 +% +% \begin{macrocode} +\DeclareRobustCommand{\LaTeXe}{$\mbox{% + \if b\expandafter\@car\f@series\@nil\boldmath\fi + \LaTeX\kern.15em2\raisebox{-.37ex}{$\textstyle\varepsilon$}}$} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\pTeX} +% \begin{macro}{\pLaTeX} +% \begin{macro}{\pLaTeXe} +% +% \pTeX ,\pLaTeXe のロゴを出す命令です。 +% +% \begin{macrocode} +\def\pTeX{p\kern-.05em\TeX} +\def\pLaTeX{p\LaTeX} +\def\pLaTeXe{p\LaTeXe} +% \end{macrocode} +% +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\upTeX} +% \begin{macro}{\upLaTeX} +% \begin{macro}{\upLaTeXe} +% +% [2016-07-14] \upTeX ,\upLaTeXe のロゴを出す命令も定義します。 +% +% \begin{macrocode} +\def\upTeX{u\pTeX} +\def\upLaTeX{u\pLaTeX} +\def\upLaTeXe{u\pLaTeXe} +% \end{macrocode} +% +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\AmSTeX} +% +% \texttt{amstex.sty} で定義されています。 +% +% \begin{macrocode} +\def\AmSTeX{\protect\AmS-\protect\TeX{}} +% \end{macrocode} +% +% \end{macro} +% +% \begin{macro}{\BibTeX} +% \begin{macro}{\SliTeX} +% +% これらは \texttt{doc.dtx} から取ったものです。 +% ただし,|\BibTeX| だけはちょっと修正しました。 +% +% \begin{macrocode} +% \@ifundefined{BibTeX} +% {\def\BibTeX{{\rmfamily B\kern-.05em% +% \textsc{i\kern-.025em b}\kern-.08em% +% T\kern-.1667em\lower.7ex\hbox{E}\kern-.125emX}}}{} +\DeclareRobustCommand{\BibTeX}{% + B\kern-.05em\jslg@small{I\kern-.025em B}\kern-.15em\TeX} +\DeclareRobustCommand{\SliTeX}{% + S\kern-.06emL\kern-.18em\jslg@uppersmall{I}\kern -.03em\TeX} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% +% \section{PDF文字列中でロゴが使われた場合への対策} +% +% 以上でロゴの定義は終わりですが,|hyperref|を読み込んだ状態で |jslogo| の命令を +% PDF文字列として解釈される箇所(例 |\section| など)で使うと警告が出てしまいます。 +%\begin{verbatim} +% Package hyperref Warning: Token not allowed in a PDF string (PDFDocEncoding): +% (hyperref) \kern -0.50003pt +% (hyperref) removed on input line 5. +%\end{verbatim} +% そこで,この警告が出ないように対策します(Issue \#51)。 +% +% まず,|\pdfstringdefPreHook| を(なければ)用意します。 +% \begin{macrocode} +\providecommand*\pdfstringdefPreHook{} +% \end{macrocode} +% +% そして,警告が出てしまうロゴに対するPDF文字列中での定義を追加します。 +% \begin{macrocode} +\g@addto@macro\pdfstringdefPreHook{% + \def\pTeX{p\TeX}% + \def\AmS{AMS}% + \def\SliTeX{Sli\TeX}% + \def\BibTeX{Bib\TeX}% +} +% \end{macrocode} +% +% |hyperref| 読込時に |\pdfstringdefPreHook| が定義済ならそれはそのまま保持され, +% 警告が出なくなります。 +% +% 以上です。 +% +% \Finale +% +\endinput diff --git a/macros/jptex/latex/jsclasses/jslogo.ins b/macros/jptex/latex/jsclasses/jslogo.ins new file mode 100644 index 0000000000..0f8f287a42 --- /dev/null +++ b/macros/jptex/latex/jsclasses/jslogo.ins @@ -0,0 +1,13 @@ +\input docstrip +\preamble + +Maintained on GitHub: https://github.com/texjporg/jsclasses + +\endpreamble + +\def\batchfile{jslogo.ins} +\input docstrip.tex +\keepsilent +\generateFile{jslogo.sty}{f}{\from{jslogo.dtx}{package}} + +\endbatchfile diff --git a/macros/jptex/latex/jsclasses/jslogo.pdf b/macros/jptex/latex/jsclasses/jslogo.pdf new file mode 100644 index 0000000000..6975d75515 Binary files /dev/null and b/macros/jptex/latex/jsclasses/jslogo.pdf differ diff --git a/macros/jptex/latex/jsclasses/jsverb.dtx b/macros/jptex/latex/jsclasses/jsverb.dtx new file mode 100644 index 0000000000..ed6fefde63 --- /dev/null +++ b/macros/jptex/latex/jsclasses/jsverb.dtx @@ -0,0 +1,333 @@ +% ^^A -*- japanese-latex -*- +% +% \ifx\epTeXinputencoding\undefined\else +% \epTeXinputencoding utf8 % ^^A added (2017-10-04) +% \fi +% +% \iffalse +% +%<*driver> +\ifx\epTeXinputencoding\undefined\else + \epTeXinputencoding utf8 +\fi +% +% +% jsverb.dtx +% verb/verbatim 関係マクロ (煮ても焼いてもかまいません) +% 奥村晴彦 +% http://oku.edu.mie-u.ac.jp/~okumura/ +% +% 「煮ても焼いてもかまいません」で困る場合はmodified BSDということでお願いします。 +% +%\NeedsTeXFormat{pLaTeX2e} +%\ProvidesFile{jsverb.sty}[2007/01/28 okumura] +%<*driver> +\documentclass{jsarticle} +\usepackage{doc} +\xspcode"5C=1 %% \ +\xspcode"22=1 %% " +\usepackage{okumacro} +\usepackage{jsverb} +\addtolength{\textwidth}{-1in} +\addtolength{\evensidemargin}{1in} +\addtolength{\oddsidemargin}{1in} +\addtolength{\marginparwidth}{1in} +\setlength\marginparsep{5pt} +\setlength\marginparpush{0pt} +% \OnlyDescription +\CodelineNumbered +\DisableCrossrefs +\setcounter{StandardModuleDepth}{1} +\GetFileInfo{jsverb.sty} +\begin{document} + \DocInput{jsverb.dtx} +\end{document} +% +% +% \fi +% +% \title{\pLaTeXe 用 \texttt{verb...} 関係マクロ} +% \author{奥村晴彦} +% \date{\filedate} +% \maketitle +% +% \StopEventually{} +% +% \MakeShortVerb{\|} +% +% 旧 |okuverb| は\LaTeX の |\verb| 命令と |verbatim| 環境を拡張したもので, +% |yen| オプションを付けると \ttbslash\ が \ttyen\ になるほか,|verbatim| 環境の +% 組み方を簡単にカスタマイズできるようにしたものです。 +% +% 一方,\TeX ではASCII |0x60|の |`| と|0x27|の |'| を入力すると +% それぞれ \texttt{`} と \texttt{'} になります。 +% これらは文字としてはそれぞれ +% U+2018 LEFT SINGLE QUOTATION MARK, +% U+2019 RIGHT SINGLE QUOTATION MARKですので, +% dvipdfmxでPDFに変換して日本語テキストにコピー&ペーストすると, +% 全角文字になってしまいます。 +% |\verb| や |verbatim| はプログラムリストによく用いるので, +% 意図としてはそれぞれU+0060 GRAVE ACCENT,U+0027 APOSTROPHEに +% なってほしいと思います。 +% そこで,ZRさんのご助言 +% \begin{itemize} +% \item |http://oku.edu.mie-u.ac.jp/~okumura/texfaq/qa/46673.html| +% \item |http://oku.edu.mie-u.ac.jp/~okumura/texfaq/qa/46688.html| +% \end{itemize} +% にしたがって旧 |okuverb| を大幅に書き直したものがこの |jsverb| です。 +% +% なお,\ttyen\ をコピー&ペーストした場合は, +% OT1エンコーディングで使えば Y= という2文字に, +% T1エンコーディングで使えばU+00A5 YEN SIGNになります。 +% バックスラッシュ(U+005C REVERSE SOLIDUS)にしたい場合は \ttbslash\ +% のほうをお使いください。 +% +% なお,|doc.sty| が提供する |macrocode| 環境は書き換えていませんので, +% 以下のリストでは |` '| が \texttt{` '} になっています。 +% +% [2008-01-05] |http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html| +% が参考になります。|upquote.sty| というものもありました。 +% +% 以下は内部の解説です。 +% +% まずオプションの宣言です。 +% +% \begin{macro}{\if@yen} +% +% |\verb|,|verbatim| 等で |\| を円印 \ttyen\ にするかどうかのスイッチです。 +% これはデフォールトで偽ですが,|yen| オプションで真になります。 +% +% \begin{macrocode} +%<*jsverb> +\newif\if@yen \@yenfalse +\DeclareOption{yen}{\@yentrue} +\ProcessOptions\relax +% \end{macrocode} +% +% \end{macro} +% +% T1を使うのにTS1がない場合の対処です。 +% |textcomp.sty| は副作用があるので |ts1enc.def| +% を読み込むだけにしています(これは複数回読み込んでも +% 問題なさそうです)。 +% +% \begin{macrocode} +\AtBeginDocument{% + \expandafter\ifx\csname T@T1\endcsname\relax \else + \expandafter\ifx\csname T@TS1\endcsname\relax + \input{ts1enc.def}% + \fi\fi +} +% \end{macrocode} +% +% \begin{macro}{\y@n} +% \begin{macro}{\ttyen} +% +% 簡単な円記号の定義です。後でT1エンコーディングの場合は再定義します。 +% +% \begin{macrocode} +\def\y@n{Y\llap=} +\def\ttyen{{\ttfamily\y@n}} +% \end{macrocode} +% +% \end{macro} +% \end{macro} +% +% \begin{macro}{\ttbslash} +% +% タイプライタフォントのバックスラッシュです。 +% +% \begin{macrocode} +\def\ttbslash{{\ttfamily\char`\\}} +% \end{macrocode} +% +% \end{macro} +% +% \begin{macro}{\BS} +% +% タイプライタフォントの円記号かバックスラッシュのどちらかになります。 +% +% \begin{macrocode} +\if@yen + \let\BS=\ttyen +\else + \let\BS=\ttbslash +\fi +% \end{macrocode} +% +% \end{macro} +% +% \begin{macro}{\verbh@@k} +% +% |\verb|,|verbatim| 等で使うフックです。 +% +% \begin{macrocode} +\if@yen + \begingroup + \catcode`\|=0 \catcode`\\=13 + |gdef|verbh@@k{|catcode`|\=13 |let\=|y@n} + |endgroup +\else + \let\verbh@@k=\relax +\fi +% \end{macrocode} +% +% \end{macro} +% +% \begin{macro}{\verbh@@@k} +% \begin{macro}{\verbh@@@k@} +% +% さらなるフックです。 +% +% \begin{macrocode} +\begingroup + \catcode`\'=13 + \catcode`\`=13 + \gdef\verbh@@@k{\catcode39=13 \let'=\@rq \catcode96=13 \let`=\@lq} +\endgroup +\def\@OTone{OT1} +\def\@Tone{T1} +\def\verbh@@@k@{% + \ifx\f@encoding\@OTone + \chardef\@lq=18 + \chardef\@rq=13 + \verbh@@@k + \else + \ifx\f@encoding\@Tone + \chardef\@lq=0 + \def\@rq{{\fontencoding{TS1}\selectfont\textquotesingle}}% + \def\y@n{{\fontencoding{TS1}\selectfont\textyen}}% + \verbh@@@k + \fi + \fi +} +% \end{macrocode} +% +% \end{macro} +% \end{macro} +% +% \begin{macro}{\verbatim@font} +% +% これは |latex.ltx| に |\normalfont\ttfamily| +% と定義されていますが,|\bfseries| |\verb...| といった使い方もしたいので, +% |\normalfont| は削除してしまいました。 +% +% \begin{macrocode} +\def\verbatim@font{\ttfamily} +% \end{macrocode} +% +% \end{macro} +% +% \begin{macro}{\verb} +% +% 元は数式モード時だけ |\hbox| に入るようになっていましたが, +% |\noautoxspacing| の効果を得るため,常に |\hbox| に入るようにしました。 +% +% \begin{macrocode} +\def\verb{% + \leavevmode\hbox + \bgroup + \verb@eol@error \let\do\@makeother \dospecials + \verbatim@font\@noligs + \noautoxspacing + \verbh@@k \verbh@@@k@ + \@ifstar\@sverb\@verb} +% \end{macrocode} +% +% \end{macro} +% +% \begin{macro}{\@xverbatim} +% \begin{macro}{\@sxverbatim} +% +% |\| の |\catcode| を12から13に変えました。 +% +% \begin{macrocode} +\if@yen +\begingroup \catcode `|=0 \catcode `[= 1 +\catcode`]=2 \catcode `\{=12 \catcode `\}=12 +\catcode`\\=13 |gdef|@xverbatim#1\end{verbatim}[#1|end[verbatim]] +|gdef|@sxverbatim#1\end{verbatim*}[#1|end[verbatim*]] +|endgroup +\fi +% \end{macrocode} +% +% \end{macro} +% \end{macro} +% +% \begin{macro}{\verbatimleftmargin} +% +% |verbatim| 環境の余分な左マージンです。 +% 文書ファイル中などで自由に再定義してください。 +% +% \begin{macrocode} +\newdimen\verbatimleftmargin +\verbatimleftmargin=2zw +% \end{macrocode} +% +% \end{macro} +% +% \begin{macro}{\verbatimsize} +% +% |verbatim| 環境のフォントサイズです。 +% 文書ファイル中などで自由に再定義してください。 +% +% \begin{macrocode} +\def\verbatimsize{\fontsize{9}{11pt}\selectfont} +% \end{macrocode} +% +% \end{macro} +% +% \begin{macro}{\@verbatim} +% +% |verbatim| 環境で使うフォントの行送りとサイズ(|\f@size|)が +% 本文と違うと,前後の間隔が違ってしまいます。それを補正します。 +% +% \begin{macrocode} +\def\@verbatim{% + \trivlist \item\relax + \if@minipage + \verbatimsize + \else + \vskip\baselineskip + \vskip-\f@size pt + \verbatimsize + \vskip-\baselineskip + \vskip\f@size pt + \vskip\parskip + \fi + \leftskip\@totalleftmargin + \if@minipage \else + \advance \leftskip \verbatimleftmargin + \fi + \rightskip\z@skip + \parindent\z@ + \parfillskip\@flushglue + \parskip\z@skip + \@@par + \@tempswafalse + \def\par{% + \if@tempswa + \leavevmode \null \@@par\penalty\interlinepenalty + \else + \@tempswatrue + \ifhmode\@@par\penalty\interlinepenalty\fi + \fi}% + \let\do\@makeother \dospecials + \obeylines \verbatim@font \@noligs + \noautoxspacing + \verbh@@k \verbh@@@k@ + \hyphenchar\font\m@ne + \everypar \expandafter{\the\everypar \unpenalty}% +} +% \end{macrocode} +% +% \end{macro} +% +% 以上で終わりです。 +% +% \begin{macrocode} +% +\endinput +% \end{macrocode} +% +% \Finale diff --git a/macros/jptex/latex/jsclasses/jsverb.ins b/macros/jptex/latex/jsclasses/jsverb.ins new file mode 100644 index 0000000000..20279cfb8d --- /dev/null +++ b/macros/jptex/latex/jsclasses/jsverb.ins @@ -0,0 +1,13 @@ +\input docstrip +\preamble + +Maintained on GitHub: https://github.com/texjporg/jsclasses + +\endpreamble + +\def\batchfile{jsverb.ins} +\input docstrip.tex +\keepsilent +\generateFile{jsverb.sty}{f}{\from{jsverb.dtx}{jsverb}} + +\endbatchfile diff --git a/macros/jptex/latex/jsclasses/jsverb.pdf b/macros/jptex/latex/jsclasses/jsverb.pdf new file mode 100644 index 0000000000..a2273084a5 Binary files /dev/null and b/macros/jptex/latex/jsclasses/jsverb.pdf differ diff --git a/macros/jptex/latex/jsclasses/okumacro.dtx b/macros/jptex/latex/jsclasses/okumacro.dtx new file mode 100644 index 0000000000..e2d70e4770 --- /dev/null +++ b/macros/jptex/latex/jsclasses/okumacro.dtx @@ -0,0 +1,1190 @@ +% ^^A -*- japanese-latex -*- +% +\ifx\epTeXinputencoding\undefined\else + \epTeXinputencoding utf8 % ^^A added (2017-10-04) +\fi +% +% \iffalse +% +% okumacro.dtx +% 私家版マクロ集 +% okumura@okumuralab.org +% http://oku.edu.mie-u.ac.jp/~okumura/ +% +%\NeedsTeXFormat{pLaTeX2e} +%\ProvidesPackage{okumacro}[2021/07/01 okumura, texjporg] +%<*driver> +\documentclass{jsarticle} +\usepackage{doc} +\xspcode"5C=1 %% \ +\xspcode"22=1 %% " +\usepackage{okumacro} +\addtolength{\textwidth}{-1in} +\addtolength{\evensidemargin}{1in} +\addtolength{\oddsidemargin}{1in} +\addtolength{\marginparwidth}{1in} +\setlength\marginparsep{5pt} +\setlength\marginparpush{0pt} +% \OnlyDescription +\CodelineNumbered +\DisableCrossrefs +\setcounter{StandardModuleDepth}{1} +\GetFileInfo{okumacro.sty} +\begin{document} + \DocInput{okumacro.dtx} +\end{document} +% +% +% \fi +% +% \title{私家版マクロ集} +% \author{奥村晴彦} +% \date{\filedate} +% \maketitle +% +% \MakeShortVerb{\|} +% +% \section{はじめに} +% +% これは『\pLaTeXe 美文書作成入門』などの本を作ったときに使ったマクロを +% 集めたものです。作っただけでテストもしていないものなども混じっている +% 可能性があります。概して他の方にはあまり利用価値がないものです。 +% +% [2002-12-19] いろいろなものに収録していただく際にライセンスを明確にする +% 必要が生じてきました。アスキーのものが最近は(modified)BSDライセンスになっ +% ていますので,私のものもそれに準じて(modified)BSDとすることにします。 +% +% [2016-07-30] 従来は,ascmac→okumacroの順に読み込んだ場合にエラーが出て +% いましたが,新しい仕様では,ascmacとokumacroの両方を読み込む場合には +% 「後に読み込んだほう」が勝ちます。 +% 具体的には |\keytop|,|\return|,screen環境,shadebox環境があります。 +% +% \section{数値集} +% +% \begin{itemize} +% \item B5: $182\,\mathrm{mm} \times 257\,\mathrm{mm}$ +% \item B4: $257\,\mathrm{mm} \times 364\,\mathrm{mm}$ +% \item A5: $148\,\mathrm{mm} \times 210\,\mathrm{mm}$ +% \item A4: $210\,\mathrm{mm} \times 297\,\mathrm{mm}$ +% \item $1\,\mathrm{in} = 72.27\,\mathrm{pt} = 2.54\,\mathrm{cm}$ +% \item $1\,\mathrm{Q} = 0.25\,\mathrm{mm} = 0.711319\,\mathrm{pt}$ +% \item $1\,\mathrm{pt} = 1.405839\,\mathrm{Q} = 0.3514598\,\mathrm{mm}$ +% \item min10: $1\,\mathrm{zw} = 9.62216\,\mathrm{pt} +% = 3.3818\,\mathrm{mm} = 13.5272\,\mathrm{Q}$, +% $1\,\mathrm{zh} = 9.16443\,\mathrm{pt}$ +% \item cmr10: $1\,\mathrm{em} = 10\,\mathrm{pt}$, +% $1\,\mathrm{ex} = 4.30554\,\mathrm{pt}$ +% \end{itemize} +% +% \StopEventually{} +% +% \section{雑マクロ} +% +% 以下が実際のマクロ集です。 +% +% \begin{macrocode} +%<*okumacro> +% \end{macrocode} +% +% \begin{macro}{\ruby} +% +% |\ruby{奥}{おく}\ruby{村}{むら}| で\ruby{奥}{おく}\ruby{村}{むら}と +% なります。|\ruby{奥村}{おくむら}| でもかまいませんが,奥と村の間で +% 行分割ができなくなります。 +% +% 和文ベースラインが $88:12$ の位置にあることを仮定して支柱を入れました。 +% +% バグ: |1\ruby{奥}{おく}1| のような場合に |\xkanjiskip| が入りません。 +% +% [2003-02-09] ゴシック体のルビがゴシック体になるバグ?を修正しました。 +% +% [2003-05-29] 齋藤修三郎さんのOTFパッケージのexpertオプションに対応しました。 +% +% [2003-09-01] オプション引数で幅が指定できるようにしました [2003-10-02バグフィックス]。 +% +% [2010-03-14] ルビの直後で改行できなかったので, +% 親字が和文と仮定して直後に |\kanjiskip| を入れました。 +% +% [2016-08-16] 縦組に対応。 +% +% [2016-08-16] 「前に |\kanjiskip| が入らない」 +% 「前後の欧文文字との間に |\xkanjiskip| が入らない」 +% 「後ろの禁則処理が効かない」問題を解決するために和文ゴースト処理を追加。 +% +% \begin{macrocode} +\providecommand{\rubyfamily}{} +\def\kanjistrut{\iftdir + \vrule \@height0.5zw \@depth0.5zw \@width\z@ +\else + \vrule \@height0.88zw \@depth0.12zw \@width\z@ +\fi} +\chardef\okumacro@zsp=\jis"2121\relax +\newcommand{\ruby}[3][0zw]{% + \okumacro@zsp + \kern-1zw\relax + \dimen3=\f@size\p@ + \setbox1=\hbox{#2}% + \setbox3=\hbox{\rubyfamily\fontsize{0.5\dimen3}{0pt}\selectfont #3}% + \dimen1=#1\relax + \ifdim\dimen1=\z@ + \ifdim\wd1>\wd3 \dimen1=\wd1 \else \dimen1=\wd3 \fi + \else + \ifdim\dimen1<\wd1 + \dimen1=\wd1 + \fi + \fi + \hbox{% + \kanjiskip=0pt plus 2fil + \xkanjiskip=0pt plus 2fil + \vbox{% + \hbox to \dimen1{\rubyfamily + \fontsize{0.5\dimen3}{0pt}\selectfont \kanjistrut + \ifdim\dimen1<\wd3 + \hss\unhbox3\hss + \else + \hfil\unhbox3\hfil + \fi + }% + \nointerlineskip + \hbox to \dimen1{\kanjistrut\hfil\unhbox1\hfil}}}% + \kern-1zw\relax\okumacro@zsp} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\Ruby} +% +% ルビが両側にルビの半文字分ずつはみ出してもいい場合に使います。 +% ただ,これを連続して使うと,ルビが重なり合ってしまいます。 +% +% これはあまり存在意義がないのでとりあえず消しておきます。 +% +% \begin{macrocode} +% \newcommand{\Ruby}[2]{% +% \leavevmode +% \setbox0=\hbox{#1}% +% \mytempdima=\f@size\p@ +% \setbox1=\hbox{\fontsize{0.5\mytempdima}{0pt}\selectfont #2}% +% \dimen0=\wd1 \advance \dimen0 by -0.5\mytempdima +% \ifdim\wd0>\dimen0 \dimen0=\wd0 \fi +% \hbox{% +% \kanjiskip=0pt plus 2fil +% \xkanjiskip=0pt plus 2fil +% \vbox{% +% \hbox to \dimen0{\normalfont\rubyfamily +% \fontsize{0.5\mytempdima}{0pt}\selectfont \kanjistrut\hss#2\hss}% +% \nointerlineskip +% \hbox to \dimen0{\kanjistrut\hfil#1\hfil}}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\kenten} +% +% \kenten{圏点}を振るコマンドです。 +% +% [2016-07-30] ルビと圏点の高さを合わせるつもりでしたが,間違って +% 上シフト量を0.63zwとしていましたので,正しい値0.75zwに直しました。 +% +% [2017-03-11] 「前後の欧文文字との間に |\xkanjiskip| が入らない」 +% 「後ろの禁則処理が効かない」問題を解決するために和文ゴースト処理を追加。 +% +% [2017-10-04] もともと |\kenten| では +%\begin{verbatim} +% \setbox1=\hbox to \z@{・\hss}% +%\end{verbatim} +% としていましたが,2017年9月の\pTeX (p3.7.2)に対応するため +%\begin{verbatim} +% \setbox1=\hbox to\z@{\hbox to 1zw{\hss ・\hss}\hss}% +%\end{verbatim} +% に変更しました。これで,p3.7.1以前・p3.7.2以降どちらもOKです。 +% +% \begin{macrocode} +\def\kenten#1{% + \okumacro@zsp + \kern-1zw\relax + \setbox1=\hbox to\z@{\hbox to 1zw{\hss ・\hss}\hss}% + \ht1=.63zw + \@kenten#1\end\relax + \kern-1zw\relax\okumacro@zsp} +\def\@kenten#1#2{% + \ifx#1\end \let\next=\relax \else + \raise.75zw\copy1\nobreak #1\ifx#2\end\else\hskip\kanjiskip\relax\fi + \let\next=\@kenten + \fi\next#2} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\kintou} +% +% 簡単な均等割りコマンドです。 +% +% \begin{macrocode} +\newcommand{\kintou}[2]{% + \leavevmode + \hbox to #1{% + \kanjiskip=0pt plus 1fil minus 1fil + \xkanjiskip=\kanjiskip + #2}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\曜} +% +% 今日の曜日を出力します。 +% +% \begin{macrocode} +\newcommand{\曜}{{\@tempcnta=\year \@tempcntb=\month + \ifnum \@tempcntb<3 + \advance \@tempcnta by -1 + \advance \@tempcntb by 12 + \fi + \multiply \@tempcntb by 13 + \advance \@tempcntb by 8 + \divide \@tempcntb by 5 + \advance \@tempcntb by \@tempcnta + \divide \@tempcnta by 4 + \advance \@tempcntb by \@tempcnta + \divide \@tempcnta by 25 + \advance \@tempcntb by -\@tempcnta + \divide \@tempcnta by 4 + \advance \@tempcntb by \@tempcnta + \advance \@tempcntb by \day + \@tempcnta=\@tempcntb + \divide \@tempcntb by 7 + \multiply \@tempcntb by 7 + \advance \@tempcnta by -\@tempcntb + \ifcase \@tempcnta 日\or 月\or 火\or 水\or 木\or 金\or 土\fi}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\挨拶} +% +% 時候の挨拶を出力します。 +% +% \begin{macrocode} +\def\挨拶{\noindent 拝啓\hspace{1zw}\ifcase\month\or + 厳寒\or 春寒\or 早春\or 陽春\or 新緑\or 向暑\or + 猛暑\or 残暑\or 初秋\or 仲秋\or 晩秋\or 初冬\fi + の候,ますますご清栄のこととお喜び申し上げます。} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\mytt} +% +% |\texttt| では \verb/|/ |!| |@| |*| |-| |+| |=| |[| |]| |:| |;| +% |"| |`| |'| |<| |>| |?| |,| |.| |/| はそのまま出せますが, +% |!| |?| |.| |:| の後は余分な空きが入ります。 +% また,|#| |$| |&| |_| |{| |}| は \texttt{\bslash} で逃げれば使えますが, +% そうしても |_| |{| |}| は正しい \texttt{cmtt} フォントになりません。 +% さらに,|~| |^| は \texttt{\bslash} を付けても後続の文字のアクセント +% のようになってしまいます(|\~{}|,|\^{}| のようにすれば何とか +% なりますが)。ここで定義する |\mytt| マクロを使えば, +% |{| |}| は \texttt{\bslash} で逃げれば正しい \texttt{cmtt} フォント +% になり, +% |#| |&| |_| |~| |^| は \texttt{\bslash} で逃げなくてもそのまま +% で出力できます。 +% |$| もそのまま出力できるようにしていたのですが, +% 数式モードは使えた方が便利なので,外しました。 +% また,|\\| で円印が出ます。 +% |/|,|\\|,|.|,|@|,|-| の後ろで改行できるようにしてあります。 +% |{\mytt ...}| のようにして使います(|\mytt{...}| ではありません)。 +% スペースは若干伸縮するようにしました。 +% |\mbox{\mytt ...}| のようにして使えば, +% 和文・欧文間のグルーの自動挿入はしません。 +% +% \begin{macrocode} +\def\myallowbreak{\@ifnextchar\egroup{}{\penalty\exhyphenpenalty}{}} +\begingroup + \catcode`\-=\active + \catcode`\.=\active + \catcode`\/=\active + \gdef\mytth@@k{% + \catcode`\-=\active \def-{\char`\-\myallowbreak}% + \catcode`\.=\active \def.{\char`\.\myallowbreak}% + \catcode`\/=\active \def/{\char`\/\myallowbreak}% + } +\endgroup +\def\mytt{\ttfamily + \catcode`\#=12 + \catcode`\&=12 + \catcode`\^=12 + \catcode`\~=12 + \catcode`\_=12 + \chardef\{=`\{ + \chardef\}=`\} + \chardef\_=`\_ +% \def\\{Y\llap=\penalty\exhyphenpenalty{}}% ¥記号 + \def\\{\char"5C\penalty\exhyphenpenalty{}}% バックスラッシュ +% \spaceskip=.5em plus.25em minus.15em + \spaceskip=.32em plus.16em minus.09em + \frenchspacing + \noautoxspacing + \mytth@@k} +% \end{macrocode} +% \end{macro} +% +% これ以外の記号は次のようにして出力できます。 +% +% \begin{quote} +% |\texttt{\char"20}| \qquad \texttt{\char"20} 見える空白 \\ +% |\texttt{\char"5C}| \qquad \texttt{\char"5C} バックスペース \\ +% |\texttt{\char"0B}| \qquad \texttt{\char"0B} 上向き矢印 \\ +% |\texttt{\char"0C}| \qquad \texttt{\char"0C} 下向き矢印 \\ +% |\texttt{\char"0D}| \qquad \texttt{\char"0D} 左右対称なシングルクォート +% \end{quote} +% +% \begin{macro}{\yen} +% \begin{macro}{\BS} +% +% |\yen| は円印,|\BS| はバックスラッシュです。 +% +% \begin{macrocode} +\DeclareRobustCommand{\yen}{{\ooalign{Y\crcr\hss=\hss}}} +\providecommand{\BS}{\texttt{\char"5C}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\bslash} +% +% バックスラッシュは |doc| パッケージなどでの定義に従っておきます。 +% +% \begin{macrocode} +{\catcode`\|=\z@ \catcode`\\=12|gdef|bslash{\}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\asciibar} +% +% 真ん中が少し途切れた縦棒 \asciibar\ です。 +% \verb/|/ に対応するASCII文字です。 +% +% \begin{macrocode} +\newcommand{\asciibar}{% + \makebox[0.525em]{\rule[-0.2ex]{0.15ex}{0.7ex}\kern-0.15ex + \rule[0.8ex]{0.15ex}{0.7ex}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\−−} +% \begin{macro}{\――} +% +% 倍角のダーシです。昔は |\rule[0.33zh]{2zw}{.03zh}| としていましたが, +% ちょっと低すぎるようです。和文フォントのベースライン +% は $88:12$ のところにあるものが多いので,0.38\,zwのところに中心線が +% 来るほうがいいようです。太さもちょっとだけ太くしました。 +% +% \begin{macrocode} +% \def\−−{\rule[0.36zw]{2zw}{0.04zw}} +% \end{macrocode} +% +% さらによく考えたら |\scalebox{2}[1]{―}| のほうがよさそうなので, +% |graphics| または |graphicx| パッケージを読み込んだ場合はこちらを使うようにしました。 +% +% \begin{macrocode} +% \def\−−{\@ifundefined{scalebox}{\rule[0.36zw]{2zw}{0.04zw}}{\scalebox{2}[1]{―}}} +% \end{macrocode} +% +% さらにいろいろなご意見をいただき,次のように直しました。 +% +% \begin{macrocode} +\def\−−{―\kern-.5zw―\kern-.5zw―} +% \end{macrocode} +% +% 上のものは全角マイナス二つでしたが,全角ダーシ二つでもいいようにしました。 +% +% \begin{macrocode} +\def\――{―\kern-.5zw―\kern-.5zw―} +% \end{macrocode} +% +% [2016-12-04] \pLaTeX で通るコードが \upLaTeX で通らなくなることを防ぐために,u\pLaTeX の場合にはU+FF0D,U+2014で定義したものも別途用意しました。 +% +% \begin{macrocode} +\ifnum\jis"2121="3000 % upTeX check + \begingroup + \kansujichar1="FF0D + \kansujichar2="2014 + \expandafter\expandafter\expandafter\gdef + \expandafter\csname\expandafter\kansuji\expandafter1% + \expandafter\endcsname\kansuji1{―\kern-.5zw―\kern-.5zw―} + \expandafter\expandafter\expandafter\gdef + \expandafter\csname\expandafter\kansuji\expandafter2% + \expandafter\endcsname\kansuji2{―\kern-.5zw―\kern-.5zw―} + \endgroup +\fi +% \end{macrocode} +% +% \end{macro} +% \end{macro} +% +% +% \section{キートップ,○数字} +% +% \begin{macro}{\removept} +% +% |#1| に与えたdimenレジスタの pt を消した数値を |#2| のマクロに +% 定義します。 +% +% \begin{macrocode} +\newcommand{\removept}[2]{% + \edef#2{\expandafter\@removePT\the#1}} +{\catcode`p=12 \catcode`t=12 \gdef\@removePT#1pt{#1}} +% しかし latex.ltx で次のように定義されていました。 +% これをそのまま使ったらよかった。 +% \begingroup +% \catcode`P=12 +% \catcode`T=12 +% \lowercase{ +% \def\x{\def\rem@pt##1.##2PT{##1\ifnum##2>\z@.##2\fi}}} +% \expandafter\endgroup\x +% \def\strip@pt{\expandafter\rem@pt\the} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\keytop} +% +% これを使ってキートップ記号を作ります。 +% +% [2016-07-30] |\keytop| はp\LaTeX のascmacパッケージ(tascmac.sty)でも +% 定義されていますが,ascmacの定義では周囲と同じファミリのままになっていて, +% okumacroでは中の文字をサンセリフ体に変更しています。 +% 両方のパッケージを読み込む場合は,後に読み込んだほうの定義が勝ちます。 +% okumacroが勝つ場合には常にサンセリフ体に変更するキートップ記号を出力しますし, +% ascmacが勝つ場合は周囲と同じファミリになります。 +% +% また,新たに |\okukeytop| という命令を追加します。これはascmacと干渉せず, +% 常にサンセリフ体に変更するキートップ記号を出力できます。 +% +% \begin{macrocode} +\newcommand{\okukeytop}[1]{{\leavevmode\kern1pt + \setbox1=\hbox{\normalfont\sffamily [}% + \dimen1=\ht1 + \removept{\dimen1}{\tempC}% + \setbox0=\hbox{\normalfont\sffamily #1}% + \dp0=0pt + \dimen0=\wd0 + \ifdim\dimen0<\ht1 \dimen0=\ht1 \fi + \advance \dimen0 by 5pt + \removept{\dimen0}{\tempA}% + \divide \dimen0 by 2 + \removept{\dimen0}{\tempB}% + \unitlength=1pt + \advance \dimen1 by 2pt + \hbox{\vrule height\dimen1 depth2pt width0pt}% + \begin{picture}(\tempA,\tempC) + \put(0,0){\line(0,1){\tempC}} + \put(\tempA,0){\line(0,1){\tempC}} + \put(\tempB,0){\oval(\tempA,4)[b]} + \put(\tempB,\tempC){\oval(\tempA,4)[t]} + \put(\tempB,0){\makebox(0,0)[b]{\box0}} + \end{picture}\kern1pt}} +\expandafter\ifx\csname ver@tascmac.sty\endcsname\relax + \newcommand{\keytop}{\okukeytop} +\else + \renewcommand{\keytop}{\okukeytop} +\fi +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\return} +% +% リターンキーの記号です。 +% +% [2016-07-30] |\return| はp\LaTeX のascmacパッケージ(tascmac.sty)でも +% 定義されていますが,okumacroがリターンのキートップ記号を出力するのに対し, +% ascmacではリターンの矢印文字{\font\ASCGRP=ascgrp \ASCGRP\char"20}だけ +% を出す命令になっています。 +% 両方のパッケージを読み込む場合は,後に読み込んだほうの定義が勝ちます。 +% okumacroが勝つ場合には\okureturn を出力しますし, +% ascmacが勝つ場合は{\font\ASCGRP=ascgrp \ASCGRP\char"20}を出力します。 +% +% また,新たに |\okureturn| という命令を追加します。これはascmacと干渉せず, +% 常にリターンのキートップ記号\okureturn を出力できます。 +% +% \begin{macrocode} +\def\RETMARK{{\unitlength=1pt + \setbox0=\hbox{\normalfont\ttfamily [}% + \dimen0=\ht0 + \removept{\dimen0}{\tempA}% + \advance \dimen0 by -1pt + \removept{\dimen0}{\tempB}% + \begin{picture}(\tempA,\tempA) + \put(\tempA,1){\line(0,1){\tempB}} + \put(\tempA,1){\vector(-1,0){\tempA}} + \end{picture}}} +\newcommand{\okureturn}{\okukeytop{\RETMARK}} +\expandafter\ifx\csname ver@tascmac.sty\endcsname\relax + \newcommand{\return}{\okureturn} +\else + \renewcommand{\return}{\okureturn} +\fi +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\upkey} +% \begin{macro}{\downkey} +% \begin{macro}{\rightkey} +% \begin{macro}{\leftkey} +% +% 上下右左の矢印キーです。 +% +% \begin{macrocode} +\newcommand{\upkey}{\raisebox{-2pt}{% + \setlength{\unitlength}{1pt}% + \thinlines + \begin{picture}(14,9) + \put(7,2){\vector(0,1){8}} + \put(1,2){\line(0,1){7}} + \put(13,2){\line(0,1){7}} + \put(7,9){\oval(12,4)[t]} + \put(7,2){\oval(12,4)[b]} + \end{picture}% +}} +\newcommand{\downkey}{\raisebox{-2pt}{% + \setlength{\unitlength}{1pt}% + \thinlines + \begin{picture}(14,9) + \put(7,10){\vector(0,-1){8}} + \put(1,2){\line(0,1){7}} + \put(13,2){\line(0,1){7}} + \put(7,9){\oval(12,4)[t]} + \put(7,2){\oval(12,4)[b]} + \end{picture}% +}} +\newcommand{\rightkey}{\raisebox{-2pt}{% + \setlength{\unitlength}{1pt}% + \thinlines + \begin{picture}(14,9) + \put(3,6){\vector(1,0){8}} + \put(1,2){\line(0,1){7}} + \put(13,2){\line(0,1){7}} + \put(7,9){\oval(12,4)[t]} + \put(7,2){\oval(12,4)[b]} + \end{picture}% +}} +\newcommand{\leftkey}{\raisebox{-2pt}{% + \setlength{\unitlength}{1pt}% + \thinlines + \begin{picture}(14,9) + \put(11,6){\vector(-1,0){8}} + \put(1,2){\line(0,1){7}} + \put(13,2){\line(0,1){7}} + \put(7,9){\oval(12,4)[t]} + \put(7,2){\oval(12,4)[b]} + \end{picture}% +}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\MARU} +% +% 丸で囲んだ文字です。 +% +% [2003-01-24] |graphicx| のとき少し見映えが良くなるようにしました。 +% +% \begin{macrocode} +% \newcommand{\MARU}[1]{{% +% \ooalign{\hfil#1\/\hfil\crcr\raise.167ex\hbox{\mathhexbox20D}}}} +\newcommand{\MARU}[1]{{% + \ooalign{\hfil + \@ifundefined{scalebox}{% + #1\/\hfil\crcr\raise.167ex}{\raise.1zw\hbox{\scalebox{0.8}{#1\/}}\hfil\crcr\raise.1zw}% + \hbox{\fontencoding{OMS}\fontfamily{cmsy}\fontseries{m}\fontshape{n}\selectfont + \char"0D}}}} +% \end{macrocode} +% \end{macro} +% +% その他のロゴです。 +% +% \begin{macrocode} +% \newcommand{\MuTeX}{M\kern-.15em\raise.2ex\hbox{u}\kern-.32em\TeX} +\newcommand{\PiC}{P\kern-.12em\lower.5ex\hbox{I}\kern-.075emC} +\newcommand{\PiCTeX}{\PiC\kern-.11em\TeX} +\newcommand{\JTeX}{\leavevmode\lower.5ex\hbox{J}\kern-.17em\TeX} +\newcommand{\JLaTeX}{\leavevmode\lower.5ex\hbox{\rm J}\kern-.17em\LaTeX} +\DeclareRobustCommand{\JBibTeX}{$\m@th\mbox{% + \lower.5ex\hbox{J}\kern-.05em\BibTeX}$} +\newcommand{\pTeXsT}{p\kern-.21em\TeX\kern-.10em s\kern-.21em T} +% インプレスの新 TeX の仮称 +\newcommand{\iTeX}{\accent'27\i\TeX} +% 桜井さんの新 TeX のロゴ(仮) +\newcommand{\MlTeX}{M\kern-.1667em\lower.5ex\hbox{L}\kern-.25em\TeX} +% \end{macrocode} +% +% METAFONTのロゴを出す方法はいろいろあります。まず古い方法で, +% |manfnt| を使うものです。 +% +%\begin{verbatim} +% \font\manual=manfnt +% \font\manLarge=manfnt scaled \magstep 2 +% \font\manHuge=manfnt scaled \magstep 5 +% \newcommand{\MF}{% +% \ifx\@currsize\small +% {\manual hijk}\-{\manual lmnj}% 9pt +% \else +% \ifx\@currsize\footnotesize +% \ifdim \fontdimen\@ne\font>\z@ +% {\manual \char92\char93\char94\char95efg\char94}% 8pt slanted +% \else +% {\manual opqr}\-{\manual stuq}% 8pt +% \fi +% \else +% \ifx\@currsize\Large +% {\manLarge META}\-{\manLarge FONT}% mag2 (14pt) +% \else +% \ifx\@currsize\Huge +% {\manHuge META}\-{\manHuge FONT}% mag5 (25pt) +% \else % \normalsize +% \ifdim \fontdimen\@ne\font>\z@ +% {\manual 89:;<=>:}% 10pt slanted +% \else +% {\manual META}\-{\manual FONT}% 10pt +% \fi +% \fi +% \fi +% \fi +% \fi} +%\end{verbatim} +% +% 次は |logo| を使う方法です。 +% +%\begin{verbatim} +%\font\logoTen=logo10 +%\font\logoEight=logo8 +%\font\logoLarge=logo10 scaled \magstep 2 +%\font\logoHuge=logo10 scaled \magstep 5 +%\newcommand{\MF}{% +% \ifx\@currsize\Large +% {\logoLarge META}\-{\logoLarge FONT}% +% \else +% \ifx\@currsize\Huge +% {\logoHuge META}\-{\logoHuge FONT}% +% \else +% \ifx\@currsize\footnotesize +% {\logoEight META}\-{\logoEight FONT}% +% \else +% {\logoTen META}\-{\logoTen FONT}% +% \fi +% \fi +% \fi} +%\end{verbatim} +% +% \LaTeXe の方法としては, +% 次のような |ulogo.fd| を作っておきます。 +% +%\begin{verbatim} +%\DeclareFontFamily{U}{logo}{} +%\DeclareFontShape{U}{logo}{m}{n}{% +% <5><6><7><8>logo8% +% <9>logo9% +% <10><10.95><12><14.4><17.28><20.74><24.88>logo10}{} +%\DeclareFontShape{U}{logo}{m}{sl}{% +% <5><6><7><8><9>logosl9% +% <10><10.95><12><14.4><17.28><20.74><24.88>logosl10}{} +%\DeclareFontShape{U}{logo}{bx}{n}{% +% <5><6><7><8><9>% +% <10><10.95><12><14.4><17.28><20.74><24.88>logobf10}{} +%\DeclareFontShape{U}{logo}{m}{it} +% {<->ssub*logo/m/sl}{} +%\end{verbatim} +% +% これで次のようにします。 +% +%\begin{verbatim} +% \DeclareRobustCommand{\MF}{{\fontfamily{logo}\selectfont META}\-% +% {\fontfamily{logo}\selectfont FONT}} +% \DeclareRobustCommand{\MP}{{\fontfamily{logo}\selectfont META}\-% +% {\fontfamily{logo}\selectfont POST}} +%\end{verbatim} +% +% しかしよく調べてみたら同様なものが |mflogo.sty|,|ulogo.fd| +% として配布されていましたので,そちらを使うことにします。 +% +% \section{いろいろな環境} +% +% \begin{environment}{dangerous} +% +% 参考事項をメモ風に付ける環境です。鉛筆記号を使うようにしました。 +% +% \begin{macrocode} +%\newcommand{\dangerouslabel}[1]{{% +% \setlength{\fboxsep}{1pt}% +% \fbox{\footnotesize\bfseries #1}}} +\newenvironment{dangerous}{% + \vspace{3pt}% + \begin{list}{\ding{"2E}}{% +% \let\makelabel=\dangerouslabel + \setlength{\leftmargin}{3zw}% + \setlength{\itemindent}{0pt}% + \setlength{\labelwidth}{2zw}% + \setlength{\labelsep}{6pt}% + \setlength{\rightmargin}{0pt}% + \setlength{\itemsep}{0.5\baselineskip}% + \setlength{\parsep}{0pt}% + \setlength{\topsep}{0.5\baselineskip}% + \setlength{\partopsep}{0pt}% + \setlength{\listparindent}{0zw}% + }\small}{\end{list}} +% \end{macrocode} +% \end{environment} +% +% \begin{environment}{namelist} +% |\begin{namelist}{xxxx} \item[...] ... \end{namelist}| で +% 見出しを |xxxx| の幅にしたリストを作ります。 +% \begin{macrocode} +% \newcommand{\namelistlabel}[1]{{#1}\ \dotfill\ } +\newcommand{\namelistlabel}[1]{\hspace{1zw}#1\hfil} +\newenvironment{namelist}[1]{% + \begin{list}{}{% + \let\makelabel=\namelistlabel + \settowidth{\labelwidth}{#1}% + \addtolength{\labelwidth}{2zw}% + \setlength{\leftmargin}{\labelwidth}% + \setlength{\labelsep}{0pt}% + }}{\end{list}} +% \end{macrocode} +% \end{environment} +% +% \begin{environment}{mybibliography} +% +% |thebibliography| とほぼ同じ参考文献リスト環境ですが, +% 章(節)見出しを出力せず,カウンタをリセットしません。 +% |thebibliography| と同じ |enumiv| というカウンタを使っていますので, +% 必要に応じて +% \begin{quote} +% |\setcounter{enumiv}{0}| +% \end{quote} +% として初期化してください。 +% +% \begin{macrocode} +\newenvironment{mybibliography}[1]{% + \list{\@biblabel{\@arabic\c@enumiv}}% + {\settowidth\labelwidth{\@biblabel{#1}}% + \leftmargin\labelwidth + \advance\leftmargin\labelsep + \@openbib@code + \@nmbrlisttrue\def\@listctr{enumiv}% + \let\p@enumiv\@empty + \renewcommand\theenumiv{\@arabic\c@enumiv}}% + \sloppy + \clubpenalty4000 + \@clubpenalty\clubpenalty + \widowpenalty4000% + \sfcode`\.\@m} + {\def\@noitemerr + {\@latex@warning{Empty `mybibliography' environment}}% + \endlist} +% \end{macrocode} +% \end{environment} +% +% \begin{environment}{FRAME} +% +% 枠です。 +% +% \begin{macrocode} +\newenvironment{FRAME}{\begin{trivlist}\item[] + \hrule width\linewidth + \hbox to \linewidth\bgroup + \advance\linewidth by -30pt + \hsize=\linewidth + \vrule\hfill + \vbox\bgroup + \vskip15pt + \def\thempfootnote{\arabic{mpfootnote}}% 脚注を算用数字に + \begin{minipage}{\linewidth}}{% + \end{minipage}\vskip15pt + \egroup\hfill\vrule + \egroup\hrule width\linewidth + \end{trivlist}} +\newcommand{\SHUTTEN}[1]{% + \par\nobreak\removelastskip\rightline{\small#1}\medbreak} +% \end{macrocode} +% \end{environment} +% +% \begin{environment}{screen} +% +% スクリーン風の環境です。元は |ascmac.sty| にあったのだと +% 思いますが,かなり改変したかもしれません。 +% +% |\begin{screen}[0.75]| のようにオプションの数値を与えると +% 横幅を0.75倍するようにしてみました。 +% 倍率が 1 以外の場合は \texttt{graphicx} パッケージが必要です。 +% 画面出力例がコラム幅を超える場合の対処法として有効かもしれません。 +% ただ,screen環境の最初に |[| が来る場合は誤動作しますので,|\relax| +% か |{}| を入れて誤魔化してください。 +% +% [2016-07-30] 元になっているp\LaTeX のascmacパッケージ(tascmac.sty)の +% screen環境は,オプション引数の数値で角の丸みの大きさを整数値(0--8)で指定し +% ますが,okumacroパッケージでは横の倍率を指定するという違いがあります。 +% 両方のパッケージを読み込む場合は,後に読み込んだほうの定義が勝ちます。 +% screen環境は,okumacroが勝つ場合には横の倍率を指定できる +% スクリーン風の環境になりますし,ascmacが勝つ場合は角の丸みを指定できる +% スクリーン風の環境になります。 +% +% [2016-10-08] 画面出力例がコラム幅を超える場合の対処法として横倍率指定の +% オプションを追加しましたが,同じ枠内に改行可能な文章も含まれる場合に +% 枠の右端から離れた不自然な位置(横倍率を縮めない場合に端にあたっていた +% 位置)で改行していました。これを修正しました。 +% +% また,新たにokuscreen環境を追加します。これはascmacと干渉せず,常に横の +% 倍率を指定できるスクリーン風の環境になります。 +% +% [2018-06-11] 2017/10/04版までは,枠の中身の深さを考慮していなかったので, +% 表(tabular)や深さのある数式を囲むと枠からはみ出していました。この問題を +% 修正しましたが,なるべく既存文書のレイアウトが変わらないように,通常の +% テキストの深さ分だけ引いておきました(|!| と印をつけた部分)。 +% +% \begin{macrocode} +\expandafter\ifx\csname ver@tascmac.sty\endcsname\relax + \newdimen\@scw + \newbox\scb@x +\fi +\newenvironment{okuscreen}[1][1]% + {\def\screensc@le{#1}\@scw=\linewidth \advance \@scw by -20pt + \dimen1=#1\p@\relax + \@tempcnta=\dimen1\relax + \@tempcntb=65536\relax + \divide\@scw by \@tempcnta + \multiply\@scw by \@tempcntb + \setbox\scb@x=\hbox\bgroup\begin{minipage}[b]{\@scw}}% + % または \setbox\scb@x=\vbox\bgroup\advance \linewidth by -20pt \relax + {\end{minipage}\egroup + \dimen0=\linewidth \removept{\dimen0}{\hsPT}% + \divide \dimen0 by 2 \removept{\dimen0}{\hhsPT}% + \dimen0=\dp\scb@x \advance \dimen0 by 5pt + \advance \dimen0 by -.5\cdp %% ! + \removept{\dimen0}{\hdxPT}% + \advance \dimen0 by \ht\scb@x \advance \dimen0 by 5pt + \advance \dimen0 by -.5\cdp %% ! + \removept{\dimen0}{\htxPT}% + \begin{flushleft} + \vspace{6.5pt}% + \begin{picture}(\hsPT,\htxPT) + \put(\hhsPT,\htxPT){\oval(\hsPT,10)[t]} + \put(0,0){\line(0,1){\htxPT}} + \put(\hsPT,0){\line(0,1){\htxPT}} + \put(\hhsPT,0){\oval(\hsPT,10)[b]} + \put(10,\hdxPT){\ifdim\screensc@le pt=1pt \box\scb@x + \else\scalebox{\screensc@le}[1]{\box\scb@x}\fi} + \end{picture}% + \end{flushleft}} +\let\screen\okuscreen \let\endscreen\endokuscreen +% \end{macrocode} +% \end{environment} +% +% \begin{environment}{EXAMPLE} +% +% 出力例です。ずいぶん前に作ったので,再検討の要があります。 +% +% \begin{macrocode} +\newdimen\EXAMPLEWIDTH +\newenvironment{EXAMPLE}{\begin{flushleft}\EXAMPLEWIDTH=\linewidth + }{\end{flushleft}} +\newenvironment{IN}{% + \makebox[35pt][l]{\small\fbox{入力}}% + \advance \linewidth by -35pt + \begin{minipage}[t]{\linewidth}}{% + \end{minipage}\\[6pt]} +\newenvironment{OUT}{% + \makebox[35pt][l]{\small\fbox{出力}}% + \advance \linewidth by -35pt + \begin{minipage}[t]{\linewidth}}{% + \end{minipage}} +\newcommand{\INEX}{\medbreak\noindent + \framebox[\columnwidth][l]{\small\hskip2zw 入力}\nobreak + \begin{quote}\small} +\newcommand{\OUTEX}{\end{quote} + \framebox[\columnwidth][l]{\small\hskip2zw 出力}\nobreak + \begin{quotation}\small} +\newcommand{\ENDEX}{\end{quotation}\bigbreak} +\newcommand{\ENDEXC}[1]{\end{quotation}\nobreak + \begin{flushright}\footnotesize#1\end{flushright}\bigbreak} +% \end{macrocode} +% \end{environment} +% +% \section{雑} + +% \begin{macro}{\whichpage} +% +% |\whichpage{参照名}| で,そのページが同じページにあれば何も出力せず, +% そうでなければ(次ページ)(前ページ)(123ページ)のような形式で +% 場所を出力します。 +% +% \begin{macrocode} +\def\whichpage#1{% + \expandafter\ifx\csname r@#1\endcsname\relax + \else + \@tempcnta\pageref{#1}\relax + \advance\@tempcnta-\c@page + \ifnum\@tempcnta=0 + \else + \ifnum\@tempcnta=1 (次ページ) + \else + \ifnum\@tempcnta=-1 (前ページ) + \else (\pageref{#1}ページ) + \fi + \fi + \fi + \fi} +% \end{macrocode} +% \end{macro} +% +% \begin{environment}{migiake} +% +% ごく簡単な右空けコマンドです。使っていません。 +% +% \begin{macrocode} +% \newenvironment{migiake}[1]{% +% \setlength{\rightskip}{#1}\samepage}{\par} +% \end{macrocode} +% \end{environment} +% +% \begin{macro}{\rightfig} +% +% もう少しましな右空けです。 +% |#1| は空け幅, |#2| は行数, |#3| は図や表です。 +% +% \begin{macrocode} +% \def\rightfig#1#2#3{\noindent +% \dimen0=\baselineskip \multiply \dimen0 by #2 +% \advance\dimen0 by -\baselineskip \advance\dimen0 by 2ex +% \hangindent=-#1 \hangafter=-#2 +% \raise 2ex \hbox to 0pt{\smash{\vtop to \dimen0{\vfil +% \vbox{\hfill \hbox to #1{ \ \hfill #3}}\vfil +% }}\hss}\hskip\parindent\ignorespaces} +% \end{macrocode} +% \end{macro} +% +% 漢字の幅をttフォント2文字分にします。使っていません。 +% +% \begin{macrocode} +% \newcommand{\kanjitt}[1]{\texttt{\kanjiskip0.083595em\relax#1}} +% \end{macrocode} +% +% \begin{environment}{shadebox} +% +% 影付きの箱です。|ascmac.sty| から取りました。 +% +% [2016-07-30] 元になっているp\LaTeX のascmacパッケージ(tascmac.sty)と +% 衝突しないように,新しい仕様では,ascmacとokumacroの両方を読み込む場合には +% 「後に読み込んだほう」が勝ちます。 +% +% また,新たにokushadebox環境を追加します。これはascmacと干渉せず,常に +% okumacro流の定義になります。 +% +% \begin{macrocode} +\expandafter\ifx\csname ver@tascmac.sty\endcsname\relax + \newdimen\shaderule \shaderule 5\p@ +\fi +\def\okushadebox{\dimen0\linewidth \advance\dimen0-20\p@ + \advance\dimen0-2\fboxrule \advance\dimen0-\shaderule + \setbox\@tempboxa=\hbox\bgroup\minipage{\dimen0}} +\def\endokushadebox{\endminipage\egroup\dimen0=10\p@ \advance\dimen0-\fboxrule + \setbox\@tempboxa=\hbox{\kern\dimen0\unhbox\@tempboxa\kern\dimen0}% + \setbox0=\vbox{\hrule\@height \fboxrule + \hbox{\vrule\@width \fboxrule \hskip-\fboxrule + \vbox{\vskip\fboxsep \box\@tempboxa\vskip\fboxsep}% + \hskip-\fboxrule\vrule \@width \fboxrule}\hrule \@height \fboxrule}% + \dimen0=\ht0 \advance\dimen0-\shaderule + \hbox{\hbox to \shaderule{\copy0\hss}\kern \z@ + \vrule\@width\wd0\@height\z@\@depth\shaderule\hskip-\shaderule + \vrule\@width\shaderule\@height\dimen0}} +\let\shadebox\okushadebox \let\endshadebox\endokushadebox +% \end{macrocode} +% \end{environment} +% +% \begin{environment}{sankou} +% +% 参考(dangerous bend 風)の環境です。 +% +% \begin{macrocode} +\def\sankoumark{{\small ★}} +\newenvironment{sankou}{\vspace{3pt}% + \begin{list}{}{% + \setlength{\leftmargin}{3zw}% + \setlength{\itemindent}{0pt}% + \setlength{\labelwidth}{2zw}% + \setlength{\labelsep}{6pt}% + \setlength{\rightmargin}{0pt}% + \setlength{\itemsep}{0pt}% + \setlength{\parsep}{0pt}% + \setlength{\topsep}{0.5\baselineskip}% + \setlength{\partopsep}{0pt}% + \setlength{\listparindent}{0zw}% + }\item[\sankoumark]\small}{\end{list}} +% \end{macrocode} +% \end{environment} +% +% \begin{environment}{toi} +% +% 問いの環境です。 +% +% \begin{macrocode} +\def\toimark{{\small\bf 【問】}} +\newenvironment{toi}{\vspace{3pt}% + \begin{list}{}{% + \setlength{\leftmargin}{3zw}% + \setlength{\itemindent}{0pt}% + \setlength{\labelwidth}{2zw}% + \setlength{\labelsep}{6pt}% + \setlength{\rightmargin}{0pt}% + \setlength{\itemsep}{0pt}% + \setlength{\parsep}{3pt plus 1pt minus 1pt}% + \setlength{\topsep}{3pt plus 1pt minus 1pt}% + \setlength{\partopsep}{3pt plus 6pt minus 1pt}% + \setlength{\listparindent}{0zw}% + }\item[\toimark]\small}{\end{list}} +% \end{macrocode} +% \end{environment} +% +% 英語用の行送りに切り替えるコマンドですが,使っていません。 +% +% \begin{macrocode} +% \def\english{% +% \ifx\@currsize\normalsize \fontsize{10}{12pt}\selectfont\else +% \ifx\@currsize\small \fontsize{9}{11pt}\selectfont\else +% \ifx\@currsize\footnotesize \fontsize{8}{9.5pt}\selectfont\fi\fi\fi} +% \end{macrocode} +% +% \begin{macrocode} +% \newcommand{\shima}{dvi\-out\slash dvi\-prt\index{dviout/dviprt}} +\providecommand{\eps}{\varepsilon} +% \newcommand{\zip}{〒\kern0pt\relax} +% \def\mathpalette#1#2{\mathchoice{#1\displaystyle{#2}}% +% {#1\textstyle{#2}}{#1\scriptstyle{#2}}{#1\scriptscriptstyle{#2}}} +% ≦, ≧,=の上下に点 +\def\LEQQ{\mathrel{\mathpalette\gl@align<}} +\def\GEQQ{\mathrel{\mathpalette\gl@align>}} +\def\gl@align#1#2{\lower.6ex\vbox{\baselineskip\z@skip\lineskip\z@ + \ialign{$\m@th#1\hfil##\hfil$\crcr#2\crcr=\crcr}}} +\def\APPROX{\mathrel{\mathpalette\ap@align{\smash.}}} +\def\ap@align#1#2{\lower.2ex\vbox{\baselineskip\z@skip\lineskip\z@ + \def\finsm@sh{\ht\z@.2ex \dp\z@.2ex \box\z@}% + \ialign{$\m@th#1\hfil##\hfil$\crcr#2\crcr=\crcr#2\crcr}}} +%%% Fractions like 1/2 by DEK (TUGboat, 6(1):36, TeXbook (Excercise 11.6)) +\def\FRAC#1#2{\leavevmode\kern.1em + \raise.5ex\hbox{\the\scriptfont0 #1}\kern-.1em + /\kern-.15em\lower.25ex\hbox{\the\scriptfont0 #2}} +\newcommand{\hk}{\hspace{\kanjiskip}} +\newcommand{\hx}{\hspace{\xkanjiskip}} +\newcommand{\3}{\penalty300 } +\newcommand{\5}{\penalty50 } % \penalty\exhyphenpenalty +% \end{macrocode} +% +% \begin{macro}{\>} +% 全角コンマの直後に半角文字が来た場合,全角コンマの後に挿入して, +% 半角空白と同じだけの伸縮を持たせるためのグルー挿入コマンドです。 +% 使っていません。 +% \begin{macrocode} +% \newcommand{\>}{\relax +% \ifmmode\mskip\medmuskip\else\hskip0em plus0.167em minus0.111em\fi} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\ANGLE} +% Angle brackets です。 +% \begin{macrocode} +\newcommand{\ANGLE}[1]{% + $\langle$\kern0pt\nobreak{#1}\kern0pt\nobreak$\rangle$} +% \end{macrocode} +% \end{macro} +% +% 分数関係です。\texttt{amstex} パッケージでもほぼ同じものが +% 定義されていますが,\texttt{amstex} パッケージの |\cfrac| で +% は |\mathstrut| ではなく |\strut| が使われているため, +% 和文スタイルで行送りが大きい場合には,ちょっと間延びしてしまいます。 +% \begin{macrocode} +% \providecommand{\tfrac}[2]{{\textstyle\frac{#1}{#2}}} +% \providecommand{\dfrac}[2]{{\displaystyle\frac{#1}{#2}}} +% \providecommand{\cfrac}[2]{\dfrac{\mathstrut #1}{#2}} +% \end{macrocode} +% +% \begin{macro}{\dalembert} +% D'Alembertian(|\Box| より少々大きい四角)です。 +% \begin{macrocode} +% \newcommand{\dalembert}{{% +% \setlength{\unitlength}{0.1em}% +% \begin{picture}(8,8) +% \thinlines +% \put(1,0){\framebox(6,6){}} +% \end{picture}}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\kanjibox} +% 漢字の大きさの箱です。使っていません。 +% \begin{macrocode} +% \newcommand{\kanjibox}{{\setlength{\unitlength}{0.1091175zw}% +% \begin{picture}(9.62216,7.77588)\thinlines +% \put(0,-1.38855){\framebox(9.16443,9.16443){}}\end{picture}}} +% \end{macrocode} +% \end{macro} +% +% Poor person's blackboard boldです +% \footnote{Robert Messer, ``Blackboard Bold.'' +% \textit{TUGboat} 9(1):19--20, 1988.}。 +% +% \begin{macro}{\R} +% \begin{macro}{\C} +% \begin{macrocode} +% \def\R{{\rm I\kern-.17em R}} % (-.25em in the above literature) +% \def\C{{\rm\kern.24em\vrule width.02em height1.4ex depth-.05ex\kern-.26em C}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\株} +% \begin{macrocode} +\newcommand{\株}{\hspace{\kanjiskip}\<(株)\<\hspace{\kanjiskip}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\CVS} +% +% CVS用。 +% +% \begin{macrocode} +% \def\CVS$#1: #2 ${\expandafter\def\csname CVS#1\endcsname{#2}} +% \end{macrocode} +% \end{macro} +% +%\begin{verbatim} +% \CVS$Revision: 1.7 $ +% \CVS$Date: 2000/06/09 05:55:02 $ +% この文書のバージョンは\CVSRevision 版である。 +%\end{verbatim} +% のように使います。 +% +% [2003-02-16..17] |js*| クラスで数式の前後のスペースが若干変わってしまいます。 +% とりあえず |amsmath| の |equation(*)|,|align(*)| 環境の類だけここで直しておきます。 +% このあたりはまた見直します。 +% +% [2021-07-01] |okumacro| が有ると |xalignat| 上部のアキが大きくなる現象 +% (forum:3029)が報告されました。|js*| クラスのための修正だったはずですが, +% |js*| クラスを使った場合でも「修正しない方がバランスが良い」という挙動 +% ^^A 少なくとも\TeX\ Live 2014--2021は同じ挙動。 +% ^^A https://oku.edu.mie-u.ac.jp/tex/mod/forum/discuss.php?d=3029 +% だったため,削除しました。 +% +% \begin{macrocode} +%\@ifundefined{widebaselines}{}{% +% \let\endmathdisplaysave=\endmathdisplay +% \def\endmathdisplay{\widebaselines\endmathdisplaysave}} +% \let\start@alignsave=\start@align +% \def\start@align{\vspace{4pt}\start@alignsave} +% \end{macrocode} +% +% 以上で終わりです。 +% +% \begin{macrocode} +% +\endinput +% \end{macrocode} +% +% ^^A \endinput の後に \CharacterTable を書いておけば,子ファイルには +% ^^A 出力されません。チェックは *.dtx を処理したときにしてくれます。 +% ^^A [2016-09-03] →削除しました。 +% +% \Finale diff --git a/macros/jptex/latex/jsclasses/okumacro.ins b/macros/jptex/latex/jsclasses/okumacro.ins new file mode 100644 index 0000000000..57a45c97a0 --- /dev/null +++ b/macros/jptex/latex/jsclasses/okumacro.ins @@ -0,0 +1,13 @@ +\input docstrip +\preamble + +Maintained on GitHub: https://github.com/texjporg/jsclasses + +\endpreamble + +\def\batchfile{okumacro.ins} +\input docstrip.tex +\keepsilent +\generateFile{okumacro.sty}{f}{\from{okumacro.dtx}{okumacro}} + +\endbatchfile diff --git a/macros/jptex/latex/jsclasses/okumacro.pdf b/macros/jptex/latex/jsclasses/okumacro.pdf new file mode 100644 index 0000000000..d01f531572 Binary files /dev/null and b/macros/jptex/latex/jsclasses/okumacro.pdf differ diff --git a/macros/jptex/latex/jsclasses/okuverb.dtx b/macros/jptex/latex/jsclasses/okuverb.dtx new file mode 100644 index 0000000000..b6cc0256ec --- /dev/null +++ b/macros/jptex/latex/jsclasses/okuverb.dtx @@ -0,0 +1,254 @@ +% ^^A -*- japanese-latex -*- +% +% \ifx\epTeXinputencoding\undefined\else +% \epTeXinputencoding utf8 % ^^A added (2017-10-04) +% \fi +% +% \iffalse +% +%<*driver> +\ifx\epTeXinputencoding\undefined\else + \epTeXinputencoding utf8 +\fi +% +% +% okuverb.dtx +% verb/verbatim 関係マクロ +% 奥村晴彦 +% http://oku.edu.mie-u.ac.jp/~okumura/ +% +%\NeedsTeXFormat{pLaTeX2e} +%\ProvidesFile{okuverb.sty}[2003/09/03 okumura] +%<*driver> +\documentclass{jsarticle} +\usepackage{doc} +\xspcode"5C=1 %% \ +\xspcode"22=1 %% " +\usepackage{okumacro} +\usepackage{okuverb} +\addtolength{\textwidth}{-1in} +\addtolength{\evensidemargin}{1in} +\addtolength{\oddsidemargin}{1in} +\addtolength{\marginparwidth}{1in} +\setlength\marginparsep{5pt} +\setlength\marginparpush{0pt} +% \OnlyDescription +\CodelineNumbered +\DisableCrossrefs +\setcounter{StandardModuleDepth}{1} +\GetFileInfo{okuverb.sty} +\begin{document} + \DocInput{okuverb.dtx} +\end{document} +% +% +% \fi +% +% \title{\pLaTeXe 用 \texttt{verb...} 関係マクロ} +% \author{奥村晴彦} +% \date{\filedate} +% \maketitle +% +% \StopEventually{} +% +% \MakeShortVerb{\|} +% +% |okuverb| は\LaTeX の |\verb| 命令と |verbatim| 環境を拡張したものです。 +% 今では |okuverb| を大幅に書き直した |jsverb| もあります。 +% +% [2002-12-19] いろいろなものに収録していただく際にライセンスを明確にする +% 必要が生じてきました。アスキーのものが最近はmodified BSDライセンスになっ +% ていますので,私のものもそれに準じてmodified BSDとすることにします。 +% +% まずオプションの宣言です。 +% \begin{macro}{\if@yen} +% |\verb|,|verbatim| 等で |\| を円印にするかどうかのスイッチです。 +% これはデフォールトで偽ですが,|yen| オプションで真になります。 +% \begin{macrocode} +%<*okuverb> +\newif\if@yen \@yenfalse +\DeclareOption{yen}{\@yentrue} +\ProcessOptions\relax +% \end{macrocode} +% \end{macro} +% +% |\verb|, |verbatim| の変更です。 +% |ltmiscen.dtx| をご参照ください。 +% +% \begin{macro}{\yen} +% \begin{macro}{\ttyen} +% +% 円記号の定義です。 +% +% \begin{macrocode} +\DeclareRobustCommand{\yen}{{\ooalign{Y\crcr\hss=\hss}}} +\def\y@n{Y\llap=} +\def\ttyen{{\ttfamily\y@n}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\ttbslash} +% +% タイプライタフォントのバックスラッシュです。 +% +% \begin{macrocode} +\def\ttbslash{{\ttfamily\char`\\}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\BS} +% +% タイプライタフォントの円記号かバックスラッシュのどちらかになります。 +% +% \begin{macrocode} +\if@yen + \let\BS=\ttyen +\else + \let\BS=\ttbslash +\fi +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\verbh@@k} +% +% |\verb|,|verbatim| 等で使うフックです。 +% +% \begin{macrocode} +\if@yen + \begingroup + \catcode`\|=0 \catcode`\\=13 + |gdef|verbh@@k{|catcode`|\=13 |let\=|y@n} + |endgroup +\else + \let\verbh@@k=\relax +\fi +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\verbatim@font} +% +% これは |latex.ltx| に |\normalfont\ttfamily| +% と定義されていますが,|\bfseries\verb...| といった使い方もしたいので, +% |\normalfont| は削除してしまいました。 +% +% \begin{macrocode} +\def\verbatim@font{\ttfamily} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\verb} +% +% 元は数式モードだけで |\hbox| に入れるようになっていましたが, +% |\noautoxspacing| の効果を得るため,|\hbox| に入れるようにしました。 +% +% \begin{macrocode} +\def\verb{% + \leavevmode\hbox % changed + \bgroup + \verb@eol@error \let\do\@makeother \dospecials + \verbatim@font\@noligs + \noautoxspacing % added + \verbh@@k % added + \@ifstar\@sverb\@verb} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@xverbatim} +% \begin{macro}{\@sxverbatim} +% +% |\| の |\catcode| を12から13に変えました。 +% +% \begin{macrocode} +\if@yen +\begingroup \catcode `|=0 \catcode `[= 1 +\catcode`]=2 \catcode `\{=12 \catcode `\}=12 +\catcode`\\=13 |gdef|@xverbatim#1\end{verbatim}[#1|end[verbatim]] +|gdef|@sxverbatim#1\end{verbatim*}[#1|end[verbatim*]] +|endgroup +\fi +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\verbatimleftmargin} +% +% |verbatim| 環境の余分な左マージンです。 +% +% \begin{macrocode} +\newdimen\verbatimleftmargin +\verbatimleftmargin=2zw +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\verbatimsize} +% +% |verbatim| 環境のフォントサイズです。 +% +% \begin{macrocode} +% \def\verbatimsize{\small\narrowbaselines} +\def\verbatimsize{\fontsize{9}{11pt}\selectfont} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@verbatim} +% +% |verbatim| 環境で使うフォントの行送りとサイズ(|\f@size|)が +% 本文と違うと,前後の間隔が違ってしまいます。それを補正します。 +% +% \begin{macrocode} +\def\@verbatim{% + \trivlist \item\relax + \if@minipage +% 追加はじめ + \verbatimsize +% 追加おわり + \else +% 追加はじめ + \vskip\baselineskip + \vskip-\f@size pt + \verbatimsize + \vskip-\baselineskip + \vskip\f@size pt +% 追加おわり + \vskip\parskip + \fi + \leftskip\@totalleftmargin +% 追加はじめ + \if@minipage \else + \advance \leftskip \verbatimleftmargin + \fi +% 追加おわり + \rightskip\z@skip + \parindent\z@ + \parfillskip\@flushglue + \parskip\z@skip + \@@par + \@tempswafalse + \def\par{% + \if@tempswa + \leavevmode \null \@@par\penalty\interlinepenalty + \else + \@tempswatrue + \ifhmode\@@par\penalty\interlinepenalty\fi + \fi}% + \let\do\@makeother \dospecials + \obeylines \verbatim@font +% 追加はじめ + \noautoxspacing \verbh@@k +% 追加おわり + \@noligs + \hyphenchar\font\m@ne + \everypar \expandafter{\the\everypar \unpenalty}% +} +% \end{macrocode} +% \end{macro} +% +% 以上で終わりです。 +% +% \begin{macrocode} +% +\endinput +% \end{macrocode} +% +% \Finale diff --git a/macros/jptex/latex/jsclasses/okuverb.ins b/macros/jptex/latex/jsclasses/okuverb.ins new file mode 100644 index 0000000000..a9076d54d1 --- /dev/null +++ b/macros/jptex/latex/jsclasses/okuverb.ins @@ -0,0 +1,13 @@ +\input docstrip +\preamble + +Maintained on GitHub: https://github.com/texjporg/jsclasses + +\endpreamble + +\def\batchfile{okuverb.ins} +\input docstrip.tex +\keepsilent +\generateFile{okuverb.sty}{f}{\from{okuverb.dtx}{okuverb}} + +\endbatchfile diff --git a/macros/jptex/latex/jsclasses/okuverb.pdf b/macros/jptex/latex/jsclasses/okuverb.pdf new file mode 100644 index 0000000000..b8014b3c66 Binary files /dev/null and b/macros/jptex/latex/jsclasses/okuverb.pdf differ diff --git a/macros/jptex/latex/pxcjkcat/LICENSE b/macros/jptex/latex/pxcjkcat/LICENSE new file mode 100644 index 0000000000..71f0e1f5a2 --- /dev/null +++ b/macros/jptex/latex/pxcjkcat/LICENSE @@ -0,0 +1,21 @@ +The MIT License + +Copyright (c) 2010-2022 Takayuki YATO (aka. "ZR") + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/macros/jptex/latex/pxcjkcat/README-ja.md b/macros/jptex/latex/pxcjkcat/README-ja.md new file mode 100644 index 0000000000..4c93dc9b04 --- /dev/null +++ b/macros/jptex/latex/pxcjkcat/README-ja.md @@ -0,0 +1,55 @@ +PXcjkcat パッケージバンドル +=========================== + +LaTeX: upTeX の和文文字カテゴリを扱う LaTeX 上のインタフェース + +upTeX の和文文字カテゴリ(kcatcode)を扱う LaTeX 上のインタフェースを +提供する。 + +### 前提環境 + + * フォーマット: LaTeX + * エンジン: upTeX、pTeX-ng + * DVIウェア: 不問 + +### インストール + + - `*.sty` → $TEXMF/tex/platex/PXcjkcat + +### ライセンス + +本パッケージは MIT ライセンスの下で配布される。 + + +pxcjkcat パッケージ ー 本体 +--------------------------- + +詳細についてはマニュアル `pxcjkcat.pdf` を参照されたい。 + + +更新履歴 +-------- + + * Version 1.4 〈2022/06/06〉 + - `\cjkcategory` 命令でブロックを符号値で指定可能にした。 + + * Version 1.3 〈2022/05/28〉 + - upTeX 1.25 版以降のブロック定義を新たに CCV 4 と規定する。 + - (試験的) key-value オプションのサポート。 + + * Version 1.2 〈2022/05/25〉 + - 最新の upTeX に対応させる。 + - `nomode` オプションを追加。 + - `ccv+` オプションの別名 `real` を追加。 + + * Version 1.1 〈2018/04/01〉 + - upTeX 1.23 版以降に対応する CCV 3(`ccv3` オプション)を追加した。 + - `ccv+` オプションを追加。 + + * Version 1.0 〈2012/09/22〉 + - PXbase バンドル中の pxcjkcat パッケージを分離して本バンドルを作成。 + - pxcjkcat の中身は PXbase 0.5 版収録の「0.4a 版」と同一。 + +-------------------- +Takayuki YATO (aka. "ZR") +https://github.com/zr-tex8r diff --git a/macros/jptex/latex/pxcjkcat/README.md b/macros/jptex/latex/pxcjkcat/README.md new file mode 100644 index 0000000000..11fcfe0132 --- /dev/null +++ b/macros/jptex/latex/pxcjkcat/README.md @@ -0,0 +1,101 @@ +PXcjkcat Package +================ + +LaTeX: LaTeX interface for the CJK category codes of upTeX + +The package provides management of the CJK category code (‘kcatcode’) +table of the upTeX extended TeX engine. + +Package options are available for tailored use in the cases of documents +that are principally written in Japanese, or principally written in English +or other Western languages. + +### System Requirements + + * TeX format: LaTeX. + * TeX engine: upTeX, pTeX-ng. + * DVI-ware: Anything. + +### Installation + +In the distribution in conformance with TDS 1.1: + + - `*.sty` → $TEXMF/tex/platex/PXcjkcat + +### License + +This package is distributed under the MIT License. + + +The pxcjkcat Package ー main +---------------------------- + +Please refer to the manual `pxcjkcat.pdf` (in Japanese) for detail. + +Below is described the most basic use. + +### Overview + +The upTeX engine is an extention to the TeX engine and is developed by +Takuji TANAKA since 2007. This extension mainly aims in providing +better Unicode support to the pTeX engine, which has long been the +de facto standard of the TeX engine in Japan. The upTeX engine inherits +the basic architecture of pTeX, and only Japanese processing (which is +already on multi-byte basis in pTeX) is lift to the full Unicode range, +and non-Japanese processing remains on 8-bit basis (just like the +original TeX engine). Thus one can typeset UTF-8 encoded documents that +contain all kinds of Unicode letters with use of upTeX accompanied with +the standard techniques for handling UTF-8 letters in the traditional +8-bit TeX engines (such as pdfTeX). + +Since upTeX could treat all the Unicode letters either as non-CJK or +CJK letter, it has the mechanism (called “CJK category table”) for +specifying which letters should be treated as CJK. The pxcjkcat package +provides a concise and user-friendly LaTeX interface to the mechanism. + +### Basic Usage + +If your document is mainly in English (or some other Western language) +and has sporadic occurrences of Japanese words/phrases, then put the +following lines in the preamble: + + \usepackage[prefernoncjk]{pxcjkcat} + \usepackage[utf8]{inputenc} + +If your document is mainly in Japanese, then put the following lines +in the preamble: + + \usepackage[ccv3,japanesevar]{pxcjkcat} + \usepackage[utf8]{inputenc} + +The former setting treats the “CJK-ambiguous” punctuation symbols as +non-CJK letters, while the latter as CJK letters. Of course, your +document must in encoded in UTF-8. + +### A Sample Document + + % upLaTeX; UTF-8 + \documentclass[a4paper]{article} + \usepackage[T1]{fontenc} + \usepackage[utf8]{inputenc} + \usepackage[prefernoncjk]{pxcjkcat} + \usepackage[french]{babel} + \begin{document} + \emph{Je suis un chat} (吾輩は猫である) est un roman japonais + écrit par Sōseki Natsume (夏目漱石) de 1905 à 1906 + dans la revue littéraire \emph{Hototogisu} (ホトトギス). + \end{document} + + +Revision History +---------------- + + * Version 1.4 〈2022/06/06〉 + * Version 1.3 〈2022/05/28〉 + * Version 1.2 〈2022/05/25〉 + * Version 1.1 〈2018/04/01〉 + * Version 1.0 〈2012/09/22〉 + +-------------------- +Takayuki YATO (aka. "ZR") +https://github.com/zr-tex8r diff --git a/macros/jptex/latex/pxcjkcat/pxcjkcat.pdf b/macros/jptex/latex/pxcjkcat/pxcjkcat.pdf new file mode 100644 index 0000000000..8772b88c4a Binary files /dev/null and b/macros/jptex/latex/pxcjkcat/pxcjkcat.pdf differ diff --git a/macros/jptex/latex/pxcjkcat/pxcjkcat.sty b/macros/jptex/latex/pxcjkcat/pxcjkcat.sty new file mode 100644 index 0000000000..04fad06654 --- /dev/null +++ b/macros/jptex/latex/pxcjkcat/pxcjkcat.sty @@ -0,0 +1,1130 @@ +%% +%% This is file 'pxcjkcat.sty'. +%% +%% Copyright (c) 2010-2022 Takayuki YATO (aka. "ZR") +%% GitHub: https://github.com/zr-tex8r +%% Twitter: @zr_tex8r +%% +%% This package is distributed under the MIT License. +%% + +%% package declaration +\NeedsTeXFormat{pLaTeX2e} +\ProvidesPackage{pxcjkcat}[2022/06/06 v1.4 PX cjk-category mode] +\def\pxkc@pkgname{pxcjkcat} + +%% code guards +\edef\pxkc@restore@codes{% +\catcode33=\the\catcode33% +\catcode34=\the\catcode34% +\catcode39=\the\catcode39% +\catcode43=\the\catcode43% +\catcode45=\the\catcode45% +\catcode46=\the\catcode46% +\catcode47=\the\catcode47% +\catcode58=\the\catcode58% +\catcode60=\the\catcode60% +\catcode62=\the\catcode62% +\catcode63=\the\catcode63% +\catcode94=\the\catcode94% +\catcode96=\the\catcode96% +\catcode239=\the\catcode239% +\endlinechar=\the\endlinechar% +\relax}% +\catcode33=12 % +\catcode34=12 % <"> +\catcode39=12 % <'> +\catcode43=12 % <+> +\catcode45=12 % <-> +\catcode46=12 % <.> +\catcode47=12 % +\catcode58=12 % <:> +\catcode60=12 % <<> +\catcode62=12 % <>> +\catcode63=12 % +\catcode94=7 % <^> +\catcode96=12 % <`> +\catcode239=13 % +\AtEndOfPackage{% +\pxkc@restore@codes +\let\pxkc@restore@codes\relax} + +%--------------------------------------- general + +%% error messages +\def\pxkc@error{\PackageError\pxkc@pkgname} +\def\pxkc@err@ivcsy#1{% + \PackageError\pxkc@pkgname + {Invalid name (#1) for cjk-category}% + {It was replaced by 18(cjk).\MessageBreak + \@ehc}} +\def\pxkc@err@ivbsy#1{% + \PackageError\pxkc@pkgname + {Invalid name (#1) for Unicode block}% + {\@eha}} +\def\pxkc@err@ivmsy#1{% + \PackageError\pxkc@pkgname + {Invalid name (#1) for cjk-category mode}% + {\@eha}} +\def\pxkc@err@naltn{% + \PackageError\pxkc@pkgname + {Change to cjk-category of 'latn' is forbidden}% + {\@eha}} +\def\pxkc@warn@dfblk#1{% + \PackageWarning\pxkc@pkgname + {Unsupported Unicode block '#1' is\MessageBreak + specified}} +\def\pxkc@err@ivfmt#1{% + \PackageError\pxkc@pkgname + {Block specs are given in bad format% + \ifx\detokenize\@undefined\else + :\MessageBreak \space'\detokenize{#1}'\fi}% + {\@eha}} + +%% \pxkc@debug{} +\ifx\bxUseDebug\@undefined +\let\pxkc@debug\@gobble +\else +\def\pxkc@debug#1{\typeout{**[\pxkc@pkgname] #1}} +\fi + +%% packages +\RequirePackage{keyval}\relax + +%% unique tokens +\def\pxkc@end{\pxkc@end@} +\def\pxkc@mt{\pxkc@mt@} +\let\pxkc@mk\indent + +%% variables +\newif\ifpxkc@ok +\newif\ifpxkc@warn@bad \pxkc@warn@badtrue +\let\pxkc@good@mccv\relax +\let\pxkc@mccv\relax +\let\pxkc@ccmode@opt\relax +\let\pxkc@arg\relax +\let\pxkc@blk\relax +\let\pxkc@cp\relax + +%% \pxkc@letcs\CSa{} +\def\pxkc@letcs#1#2{% + \expandafter\let\expandafter#1\csname#2\endcsname} + +%% \pxkc@expanded{} +\def\pxkc@expanded#1{% + \edef\pxkc@next{#1}\pxkc@next} + +%% \pxkc@setup{=,...} +\def\pxkc@setup#1{% + \let\pxkc@KV@errx\KV@errx \def\KV@errx##1{\@unknownoptionerror}% + \setkeys{\pxkc@pkgname}{#1} + \let\KV@errx\pxkc@KV@errx} + +%% \pxkc@handle@key{}{}{} +\def\pxkc@handle@key#1#2#3{% + \expandafter\let\expandafter\pxkc@tmpa\csname pxkc@#3\endcsname + \ifx\pxkc@tmpa\relax + \PackageError\pxkc@pkgname + {Invalid value for key '#1':\MessageBreak\@spaces#2}% + {\@eha}% + \else \pxkc@tmpa + \fi} + +%--------------------------------------- package options + +%% mode CCV options +\DeclareOption{ccv1}{\chardef\pxkc@mccv=1 } +\DeclareOption{ccv2}{\chardef\pxkc@mccv=2 } +\DeclareOption{ccv3}{\chardef\pxkc@mccv=3 } +\DeclareOption{ccv4}{\chardef\pxkc@mccv=4 } +\DeclareOption{ccv+}{\chardef\pxkc@mccv=0 } +\DeclareOption{real}{\chardef\pxkc@mccv=0 } +%% mode options +% NB. \[pxkc@M@@...] is later redefined. +\def\pxkc@M@@forcecjk {1} +\def\pxkc@M@@prefercjk {1} +\def\pxkc@M@@prefercjkvar {1} +\def\pxkc@M@@japanese {3} +\def\pxkc@M@@japanesevar {3} +\def\pxkc@M@@prefernoncjk {1} +\def\pxkc@M@@default {1} +\def\pxkc@M@@nomode {0}% special +\chardef\pxkc@good@mccv=0 +%% key-value options +\define@key{\pxkc@pkgname}{ccv}{% + \pxkc@handle@key{ccv}{#1}{kv@ccv@@#1}} +\@namedef{pxkc@kv@ccv@@1}{\chardef\pxkc@mccv=1 } +\@namedef{pxkc@kv@ccv@@2}{\chardef\pxkc@mccv=2 } +\@namedef{pxkc@kv@ccv@@3}{\chardef\pxkc@mccv=3 } +\@namedef{pxkc@kv@ccv@@4}{\chardef\pxkc@mccv=4 } +\@namedef{pxkc@kv@ccv@@real}{\chardef\pxkc@mccv=0 } +%% dispatch +\DeclareOption*{% + \@ifundefined{pxkc@M@@\CurrentOption}{% key option + \expandafter\pxkc@setup\expandafter{\CurrentOption}% + }{%else; mode option + \chardef\pxkc@good@mccv=\@nameuse{pxkc@M@@\CurrentOption}\relax + \edef\pxkc@ccmode@opt{\CurrentOption}}} +\ProcessOptions\relax + +%% clear up +\ifnum\pxkc@good@mccv=0 + \let\pxkc@ccmode@opt\relax +\fi +\let\pxkc@M@@nomode\@undefined + +%% set default mode CCV (ccv1) +\ifx\pxkc@mccv\relax + \chardef\pxkc@mccv=1 +\else + \chardef\pxkc@good@mccv=0 % disable check +\fi + +%--------------------------------------- environment check + +%% check engine +\def\pxkc@tmpa{Native upTeX is required} +\ifx\ucs\@undefined\else \ifnum\ucs"3000="3000 + \ifx\forcecjktoken\@undefined + \def\pxkc@tmpa{This upTeX is too old} + \else \let\pxkc@tmpa\relax + \fi +\fi\fi +\ifx\pxkc@tmpa\relax\else + \PackageError\pxkc@pkgname + {\pxkc@tmpa}% + {Package loading is aborted.\MessageBreak + \@ehc} +\expandafter\endinput\fi\relax + +%% engine version +\chardef\pxkc@uptex@version=0 +\def\pxkc@next#1.#2#3#4\pxkc@end{% + \ifx\pxkc@mk#1\pxkc@mk \ifnum99<1#2#3 + \chardef\pxkc@uptex@version=\the\uptexversion#2#3\relax + \fi\fi} +\ifx\uptexversion\@undefined\else \ifx\uptexrevision\@undefined\else + \expandafter\pxkc@next\uptexrevision...\pxkc@end +\fi\fi + +%%-------- classification version check + +%% \pxkc@is@same@block +\def\pxkc@is@same@block#1#2{% + \pxkc@okfalse + \begingroup + \kcatcode#1=16\kcatcode#2=17\relax + \ifnum\kcatcode#1=17 \aftergroup\pxkc@oktrue\fi + \endgroup} + +%% \pxkc@ccv : real CCV +\pxkc@is@same@block{"FF01}{"FF11}\ifpxkc@ok + \chardef\pxkc@ccv=1 % v0.11+ +\else + \pxkc@is@same@block{"A0}{"C0}\ifpxkc@ok + \chardef\pxkc@ccv=2 % v0.29+ + \else\ifnum\pxkc@uptex@version<125 + \chardef\pxkc@ccv=3 % v1.23+ + \else + \chardef\pxkc@ccv=4 % v1.25+ + \fi\fi +\fi +\ifx\bxDebugCcv\@undefined\else % override + \chardef\pxkc@ccv=\bxDebugCcv\relax +\fi +\pxkc@debug{upTeX version \number\pxkc@uptex@version} +\pxkc@debug{CJK category version \number\pxkc@ccv} + +%% Here show warning about the buggy engine version (v1.24) +\ifnum\pxkc@ccv=1 \ifnum\pxkc@uptex@version=124 + \PackageWarningNoLine\pxkc@pkgname + {The upTeX engine of version 1.24 is used!\MessageBreak + This version has a bug on CJK category,\MessageBreak + and here real CCV is regard as 1} +\fi\fi + +%% Here show warning for mode CCV recommendation. +%% (No warning if the good mode CCV is unavailable.) +\ifnum\pxkc@good@mccv>\pxkc@mccv \ifnum\pxkc@good@mccv>\pxkc@ccv\else + \PackageWarningNoLine\pxkc@pkgname + {Mode CCV \number\pxkc@good@mccv\space + (option 'ccv\number\pxkc@good@mccv') is recommended\MessageBreak + for the use of category mode '\pxkc@ccmode@opt'!\MessageBreak + Or you can simply suppress this warning by giving\MessageBreak + option 'ccv\number\pxkc@mccv' explicitly} +\fi\fi + +%% set mode CCV if 'ccv+' is given +\ifnum\pxkc@mccv=\z@ + \let\pxkc@mccv\pxkc@ccv +\fi + +%% mode CCV cannot be newer than real CCV +\ifnum\pxkc@mccv>\pxkc@ccv + \PackageError\pxkc@pkgname + {Bad mode-CCV option (ccv\number\pxkc@mccv) is given!\MessageBreak + The mode-CCV (\number\pxkc@mccv) is newer than + the real CCV (\number\pxkc@ccv)} + {I assume the mode-CCV equals the real CCV.\MessageBreak + \@ehc} + \let\pxkc@mccv\pxkc@ccv +\fi + +%--------------------------------------- helpers + +%% constants +\chardef\pxkc@ascii@max="7F + +%% \pxkc@cond\ifXXX...\fi{}{} +\def\pxkc@cond#1\fi{% + #1\expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi} + +%% \pxkc@get@jchar{} +\def\pxkc@get@jchar#1{% + \begingroup + \forcecjktoken + \kansujichar\@ne=#1\relax + \xdef\pxkc@jchar{\kansuji\@ne}% + \endgroup} + +%% \pxkc@kcatcode{}{} +\ifx\bxUseDebug\@undefined +\def\pxkc@kcatcode#1#2{\kcatcode#1=#2\relax} +\else +\def\pxkc@kcatcode#1#2{% + \kcatcode#1=#2\relax + \chardef\pxkc@tmpa=#1\relax + \expandafter\pxkc@kcatcode@a\meaning\pxkc@tmpa\pxkc@end} +\def\pxkc@kcatcode@a#1"#2\pxkc@end{% + \pxkc@debug{\string\kcatcode"#2 set to \number\kcatcode\pxkc@tmpa}} +\fi + +%--------------------------------------- data tables + +%% variables +%\[pxkc@B@@] : start charcode of the block +%\[pxkc@G@@] : members of the group block +%\[pxkc@C@@] : kcatcode value of the category + +%% \pxkc@bslst +\def\pxkc@bslst{\@gobble} +\def\pxkc@bbslst{} +%% \pxkc@bval{}{}{}{} +\def\pxkc@bval#1#2#3#4{% #4 is unused for now + \ifnum#1<\z@\else + % check if min_ccv >= 2 (now min_ccv has no other role) + \ifnum#1<\tw@ \pxkc@okfalse + \else + \@tempcnta=#3\relax + \@tempcntb\@tempcnta \advance\@tempcntb\m@ne + \pxkc@is@same@block\@tempcnta\@tempcntb + \fi + \ifpxkc@ok % bad + \@namedef{pxkc@B@@#2}{-1}% + \edef\pxkc@bbslst{\pxkc@bbslst\space#2}% + \else\ifnum#3=\z@ % 'latn' + \@namedef{pxkc@B@@#2}{0}% + \else + \@namedef{pxkc@B@@#2}{#3}% + \edef\pxkc@bslst{\pxkc@bslst,#2}% + \fi\fi + \fi} +%% \pxkc@gval{}{,...}{} +\def\pxkc@gval#1#2#3{\@namedef{pxkc@G@@#1}{#2}} + +%% \pxkc@cval{}{} +\def\pxkc@cval#1#2{\@namedef{pxkc@C@@#1}{#2}} +\pxkc@cval{noncjk}{15} +\pxkc@cval{kanji}{16} +\pxkc@cval{han}{16} +\pxkc@cval{kana}{17} +\pxkc@cval{cjk}{18} +\pxkc@cval{hangul}{19} + +%% Basic blocks +%B====================================== +\pxkc@bval{1}{latn}{"0} {Basic Latin} +\pxkc@bval{1}{latn1}{"80} {Latin-1 Supplement} +\pxkc@bval{1}{latnA}{"100} {Latin Extended-A} +\pxkc@bval{1}{latnB}{"180} {Latin Extended-B} +\pxkc@bval{1}{latn2}{"250} {IPA Extensions} +\pxkc@bval{1}{sym01}{"2B0} {Spacing Modifier Letters} +\pxkc@bval{1}{sym02}{"300} {Combining Diacritical Marks} +\pxkc@bval{1}{grek}{"370} {Greek and Coptic} +\pxkc@bval{1}{cyrl}{"400} {Cyrillic} +\pxkc@bval{1}{cyrl1}{"500} {Cyrillic Supplement} +\pxkc@bval{1}{armn}{"530} {Armenian} +\pxkc@bval{1}{hebr}{"590} {Hebrew} +\pxkc@bval{1}{arab}{"600} {Arabic} +\pxkc@bval{1}{syrc}{"700} {Syriac} +\pxkc@bval{1}{arab1}{"750} {Arabic Supplement} +\pxkc@bval{1}{thaa}{"780} {Thaana} +\pxkc@bval{1}{nkoo}{"7C0} {NKo} +\pxkc@bval{2}{samr}{"800} {Samaritan} +\pxkc@bval{2}{mand}{"840} {Mandaic} +\pxkc@bval{3}{syrc1}{"860} {Syriac Supplement} +\pxkc@bval{2}{arabA}{"8A0} {Arabic Extended-A} +\pxkc@bval{1}{deva}{"900} {Devanagari} +\pxkc@bval{1}{beng}{"980} {Bengali} +\pxkc@bval{1}{guru}{"A00} {Gurmukhi} +\pxkc@bval{1}{gujr}{"A80} {Gujarati} +\pxkc@bval{1}{orya}{"B00} {Oriya} +\pxkc@bval{1}{taml}{"B80} {Tamil} +\pxkc@bval{1}{telu}{"C00} {Telugu} +\pxkc@bval{1}{knda}{"C80} {Kannada} +\pxkc@bval{1}{mlym}{"D00} {Malayalam} +\pxkc@bval{1}{sinh}{"D80} {Sinhala} +\pxkc@bval{1}{thai}{"E00} {Thai} +\pxkc@bval{1}{laoo}{"E80} {Lao} +\pxkc@bval{1}{tibt}{"F00} {Tibetan} +\pxkc@bval{1}{mymr}{"1000} {Myanmar} +\pxkc@bval{1}{geor}{"10A0} {Georgian} +\pxkc@bval{1}{hang1}{"1100} {Hangul Jamo} +\pxkc@bval{1}{ethi}{"1200} {Ethiopic} +\pxkc@bval{1}{ethi1}{"1380} {Ethiopic Supplement} +\pxkc@bval{1}{cher}{"13A0} {Cherokee} +\pxkc@bval{1}{cans}{"1400} {Unified Canadian Aboriginal Syllabics} +\pxkc@bval{1}{ogam}{"1680} {Ogham} +\pxkc@bval{1}{runr}{"16A0} {Runic} +\pxkc@bval{1}{tglg}{"1700} {Tagalog} +\pxkc@bval{1}{hano}{"1720} {Hanunoo} +\pxkc@bval{1}{buhd}{"1740} {Buhid} +\pxkc@bval{1}{tagb}{"1760} {Tagbanwa} +\pxkc@bval{1}{khmr}{"1780} {Khmer} +\pxkc@bval{1}{mong}{"1800} {Mongolian} +\pxkc@bval{2}{cans1}{"18B0} {Unified Canadian Aboriginal Syllabics Extended} +\pxkc@bval{1}{limb}{"1900} {Limbu} +\pxkc@bval{1}{tale}{"1950} {Tai Le} +\pxkc@bval{1}{talu}{"1980} {New Tai Lue} +\pxkc@bval{1}{khmr1}{"19E0} {Khmer Symbols} +\pxkc@bval{1}{bugi}{"1A00} {Buginese} +\pxkc@bval{2}{lana}{"1A20} {Tai Tham} +\pxkc@bval{2}{sym52}{"1AB0} {Combining Diacritical Marks Extended} +\pxkc@bval{1}{bali}{"1B00} {Balinese} +\pxkc@bval{2}{sund}{"1B80} {Sundanese} +\pxkc@bval{2}{batk}{"1BC0} {Batak} +\pxkc@bval{2}{lepc}{"1C00} {Lepcha} +\pxkc@bval{2}{olck}{"1C50} {Ol Chiki} +\pxkc@bval{2}{cyrlC}{"1C80} {Cyrillic Extended-C} +\pxkc@bval{4}{geor2}{"1C90} {Georgian Extended} +\pxkc@bval{2}{sund1}{"1CC0} {Sundanese Supplement} +\pxkc@bval{2}{sym38}{"1CD0} {Vedic Extensions} +\pxkc@bval{1}{latn4}{"1D00} {Phonetic Extensions} +\pxkc@bval{1}{latn5}{"1D80} {Phonetic Extensions Supplement} +\pxkc@bval{1}{sym03}{"1DC0} {Combining Diacritical Marks Supplement} +\pxkc@bval{1}{latn3}{"1E00} {Latin Extended Additional} +\pxkc@bval{1}{grek1}{"1F00} {Greek Extended} +\pxkc@bval{1}{sym04}{"2000} {General Punctuation} +\pxkc@bval{1}{sym05}{"2070} {Superscripts and Subscripts} +\pxkc@bval{1}{sym06}{"20A0} {Currency Symbols} +\pxkc@bval{1}{sym07}{"20D0} {Combining Diacritical Marks for Symbols} +\pxkc@bval{1}{sym08}{"2100} {Letterlike Symbols} +\pxkc@bval{1}{sym09}{"2150} {Number Forms} +\pxkc@bval{1}{sym10}{"2190} {Arrows} +\pxkc@bval{1}{sym11}{"2200} {Mathematical Operators} +\pxkc@bval{1}{sym12}{"2300} {Miscellaneous Technical} +\pxkc@bval{1}{sym13}{"2400} {Control Pictures} +\pxkc@bval{1}{sym14}{"2440} {Optical Character Recognition} +\pxkc@bval{1}{sym15}{"2460} {Enclosed Alphanumerics} +\pxkc@bval{1}{sym16}{"2500} {Box Drawing} +\pxkc@bval{1}{sym17}{"2580} {Block Elements} +\pxkc@bval{1}{sym18}{"25A0} {Geometric Shapes} +\pxkc@bval{1}{sym19}{"2600} {Miscellaneous Symbols} +\pxkc@bval{1}{sym20}{"2700} {Dingbats} +\pxkc@bval{1}{sym21}{"27C0} {Miscellaneous Mathematical Symbols-A} +\pxkc@bval{1}{sym22}{"27F0} {Supplemental Arrows-A} +\pxkc@bval{1}{brai}{"2800} {Braille Patterns} +\pxkc@bval{1}{sym23}{"2900} {Supplemental Arrows-B} +\pxkc@bval{1}{sym24}{"2980} {Miscellaneous Mathematical Symbols-B} +\pxkc@bval{1}{sym25}{"2A00} {Supplemental Mathematical Operators} +\pxkc@bval{1}{sym26}{"2B00} {Miscellaneous Symbols and Arrows} +\pxkc@bval{1}{glag}{"2C00} {Glagolitic} +\pxkc@bval{1}{latnC}{"2C60} {Latin Extended-C} +\pxkc@bval{1}{copt}{"2C80} {Coptic} +\pxkc@bval{1}{geor1}{"2D00} {Georgian Supplement} +\pxkc@bval{1}{tfng}{"2D30} {Tifinagh} +\pxkc@bval{1}{ethi2}{"2D80} {Ethiopic Extended} +\pxkc@bval{2}{cyrlA}{"2DE0} {Cyrillic Extended-A} +\pxkc@bval{1}{sym27}{"2E00} {Supplemental Punctuation} +\pxkc@bval{1}{cjk01}{"2E80} {CJK Radicals Supplement} +\pxkc@bval{1}{cjk02}{"2F00} {Kangxi Radicals} +\pxkc@bval{1}{cjk03}{"2FF0} {Ideographic Description Characters} +\pxkc@bval{1}{cjk04}{"3000} {CJK Symbols and Punctuation} +\pxkc@bval{1}{hira}{"3040} {Hiragana} +\pxkc@bval{1}{kana}{"30A0} {Katakana} +\pxkc@bval{1}{bopo}{"3100} {Bopomofo} +\pxkc@bval{1}{hang2}{"3130} {Hangul Compatibility Jamo} +\pxkc@bval{1}{cjk05}{"3190} {Kanbun} +\pxkc@bval{1}{bopo1}{"31A0} {Bopomofo Extended} +\pxkc@bval{1}{cjk06}{"31C0} {CJK Strokes} +\pxkc@bval{1}{kana1}{"31F0} {Katakana Phonetic Extensions} +\pxkc@bval{1}{cjk07}{"3200} {Enclosed CJK Letters and Months} +\pxkc@bval{1}{cjk08}{"3300} {CJK Compatibility} +\pxkc@bval{1}{haniA}{"3400} {CJK Unified Ideographs Extension A} +\pxkc@bval{1}{sym28}{"4DC0} {Yijing Hexagram Symbols} +\pxkc@bval{1}{hani}{"4E00} {CJK Unified Ideographs} +\pxkc@bval{1}{yiii}{"A000} {Yi Syllables} +\pxkc@bval{1}{yiii1}{"A490} {Yi Radicals} +\pxkc@bval{2}{lisu}{"A4D0} {Lisu} +\pxkc@bval{2}{vaii}{"A500} {Vai} +\pxkc@bval{2}{cyrlB}{"A640} {Cyrillic Extended-B} +\pxkc@bval{2}{bamu}{"A6A0} {Bamum} +\pxkc@bval{1}{sym29}{"A700} {Modifier Tone Letters} +\pxkc@bval{1}{latnD}{"A720} {Latin Extended-D} +\pxkc@bval{1}{sylo}{"A800} {Syloti Nagri} +\pxkc@bval{2}{sym39}{"A830} {Common Indic Number Forms} +\pxkc@bval{1}{phag}{"A840} {Phags-pa} +\pxkc@bval{2}{saur}{"A880} {Saurashtra} +\pxkc@bval{2}{deva1}{"A8E0} {Devanagari Extended} +\pxkc@bval{2}{kali}{"A900} {Kayah Li} +\pxkc@bval{2}{rjng}{"A930} {Rejang} +\pxkc@bval{2}{hangA}{"A960} {Hangul Jamo Extended-A} +\pxkc@bval{2}{java}{"A980} {Javanese} +\pxkc@bval{2}{mymrB}{"A9E0} {Myanmar Extended-B} +\pxkc@bval{2}{cham}{"AA00} {Cham} +\pxkc@bval{2}{mymrA}{"AA60} {Myanmar Extended-A} +\pxkc@bval{2}{tavt}{"AA80} {Tai Viet} +\pxkc@bval{2}{mtei1}{"AAE0} {Meetei Mayek Extensions} +\pxkc@bval{2}{ethiA}{"AB00} {Ethiopic Extended-A} +\pxkc@bval{2}{latnE}{"AB30} {Latin Extended-E} +\pxkc@bval{2}{cher1}{"AB70} {Cherokee Supplement} +\pxkc@bval{2}{mtei}{"ABC0} {Meetei Mayek} +\pxkc@bval{1}{hang}{"AC00} {Hangul Syllables} +\pxkc@bval{2}{hangB}{"D7B0} {Hangul Jamo Extended-B} +\pxkc@bval{1}{spc01}{"D800} {High Surrogates} +\pxkc@bval{1}{spc02}{"DB80} {High Private Use Surrogates} +\pxkc@bval{1}{spc03}{"DC00} {Low Surrogates} +\pxkc@bval{1}{spc04}{"E000} {Private Use Area} +\pxkc@bval{1}{hani1}{"F900} {CJK Compatibility Ideographs} +\pxkc@bval{1}{latn6}{"FB00} {Alphabetic Presentation Forms} +\pxkc@bval{1}{arab2}{"FB50} {Arabic Presentation Forms-A} +\pxkc@bval{1}{spc05}{"FE00} {Variation Selectors} +\pxkc@bval{1}{cjk09}{"FE10} {Vertical Forms} +\pxkc@bval{1}{sym30}{"FE20} {Combining Half Marks} +\pxkc@bval{1}{cjk10}{"FE30} {CJK Compatibility Forms} +\pxkc@bval{1}{cjk11}{"FE50} {Small Form Variants} +\pxkc@bval{1}{arab3}{"FE70} {Arabic Presentation Forms-B} +\pxkc@bval{1}{cjk12}{"FF00} {Halfwidth and Fullwidth Forms} +\pxkc@bval{1}{spc06}{"FFF0} {Specials} +\pxkc@bval{1}{linb}{"10000} {Linear B Syllabary} +\pxkc@bval{1}{linb1}{"10080} {Linear B Ideograms} +\pxkc@bval{1}{sym31}{"10100} {Aegean Numbers} +\pxkc@bval{1}{grek2}{"10140} {Ancient Greek Numbers} +\pxkc@bval{2}{sym40}{"10190} {Ancient Symbols} +\pxkc@bval{2}{sym41}{"101D0} {Phaistos Disc} +\pxkc@bval{2}{lyci}{"10280} {Lycian} +\pxkc@bval{2}{cari}{"102A0} {Carian} +\pxkc@bval{2}{copt1}{"102E0} {Coptic Epact Numbers} +\pxkc@bval{1}{ital}{"10300} {Old Italic} +\pxkc@bval{1}{goth}{"10330} {Gothic} +\pxkc@bval{2}{perm}{"10350} {Old Permic} +\pxkc@bval{1}{ugar}{"10380} {Ugaritic} +\pxkc@bval{1}{xpeo}{"103A0} {Old Persian} +\pxkc@bval{1}{dsrt}{"10400} {Deseret} +\pxkc@bval{1}{shaw}{"10450} {Shavian} +\pxkc@bval{1}{osma}{"10480} {Osmanya} +\pxkc@bval{2}{osge}{"104B0} {Osage} +\pxkc@bval{2}{elba}{"10500} {Elbasan} +\pxkc@bval{2}{aghb}{"10530} {Caucasian Albanian} +\pxkc@bval{2}{lina}{"10600} {Linear A} +\pxkc@bval{1}{cprt}{"10800} {Cypriot Syllabary} +\pxkc@bval{2}{armi}{"10840} {Imperial Aramaic} +\pxkc@bval{2}{palm}{"10860} {Palmyrene} +\pxkc@bval{2}{nbat}{"10880} {Nabataean} +\pxkc@bval{2}{hatr}{"108E0} {Hatran} +\pxkc@bval{1}{phnx}{"10900} {Phoenician} +\pxkc@bval{2}{lydi}{"10920} {Lydian} +\pxkc@bval{2}{mero}{"10980} {Meroitic Hieroglyphs} +\pxkc@bval{2}{merc}{"109A0} {Meroitic Cursive} +\pxkc@bval{1}{khar}{"10A00} {Kharoshthi} +\pxkc@bval{2}{sarb}{"10A60} {Old South Arabian} +\pxkc@bval{2}{narb}{"10A80} {Old North Arabian} +\pxkc@bval{2}{mani}{"10AC0} {Manichaean} +\pxkc@bval{2}{avst}{"10B00} {Avestan} +\pxkc@bval{2}{prti}{"10B40} {Inscriptional Parthian} +\pxkc@bval{2}{phli}{"10B60} {Inscriptional Pahlavi} +\pxkc@bval{2}{phlp}{"10B80} {Psalter Pahlavi} +\pxkc@bval{2}{orkh}{"10C00} {Old Turkic} +\pxkc@bval{2}{hung}{"10C80} {Old Hungarian} +\pxkc@bval{4}{rohg}{"10D00} {Hanifi Rohingya} +\pxkc@bval{2}{sym42}{"10E60} {Rumi Numeral Symbols} +\pxkc@bval{4}{yezi}{"10E80} {Yezidi} +\pxkc@bval{4}{sogo}{"10F00} {Old Sogdian} +\pxkc@bval{4}{sogd}{"10F30} {Sogdian} +\pxkc@bval{4}{chrs}{"10FB0} {Chorasmian} +\pxkc@bval{4}{elym}{"10FE0} {Elymaic} +\pxkc@bval{2}{brah}{"11000} {Brahmi} +\pxkc@bval{2}{kthi}{"11080} {Kaithi} +\pxkc@bval{2}{sora}{"110D0} {Sora Sompeng} +\pxkc@bval{2}{cakm}{"11100} {Chakma} +\pxkc@bval{2}{mahj}{"11150} {Mahajani} +\pxkc@bval{2}{shrd}{"11180} {Sharada} +\pxkc@bval{2}{sinh1}{"111E0} {Sinhala Archaic Numbers} +\pxkc@bval{2}{khoj}{"11200} {Khojki} +\pxkc@bval{2}{mult}{"11280} {Multani} +\pxkc@bval{2}{sind}{"112B0} {Khudawadi} +\pxkc@bval{2}{gran}{"11300} {Grantha} +\pxkc@bval{2}{newa}{"11400} {Newa} +\pxkc@bval{2}{tirh}{"11480} {Tirhuta} +\pxkc@bval{2}{sidd}{"11580} {Siddham} +\pxkc@bval{2}{modi}{"11600} {Modi} +\pxkc@bval{2}{mong1}{"11660} {Mongolian Supplement} +\pxkc@bval{2}{takr}{"11680} {Takri} +\pxkc@bval{2}{ahom}{"11700} {Ahom} +\pxkc@bval{4}{dogr}{"11800} {Dogra} +\pxkc@bval{2}{wara}{"118A0} {Warang Citi} +\pxkc@bval{4}{diak}{"11900} {Dives Akuru} +\pxkc@bval{4}{nand}{"119A0} {Nandinagari} +\pxkc@bval{3}{zanb}{"11A00} {Zanabazar Square} +\pxkc@bval{3}{soyo}{"11A50} {Soyombo} +\pxkc@bval{2}{pauc}{"11AC0} {Pau Cin Hau} +\pxkc@bval{2}{bhks}{"11C00} {Bhaiksuki} +\pxkc@bval{2}{marc}{"11C70} {Marchen} +\pxkc@bval{3}{gonm}{"11D00} {Masaram Gondi} +\pxkc@bval{4}{gong}{"11D60} {Gunjala Gondi} +\pxkc@bval{4}{maka}{"11EE0} {Makasar} +\pxkc@bval{4}{lisu1}{"11FB0} {Lisu Supplement} +\pxkc@bval{4}{taml1}{"11FC0} {Tamil Supplement} +\pxkc@bval{1}{xsux}{"12000} {Cuneiform} +\pxkc@bval{1}{xsux1}{"12400} {Cuneiform Numbers and Punctuation} +\pxkc@bval{2}{xsux2}{"12480} {Early Dynastic Cuneiform} +\pxkc@bval{2}{egyp}{"13000} {Egyptian Hieroglyphs} +\pxkc@bval{4}{egyp1}{"13430} {Egyptian Hieroglyph Format Controls} +\pxkc@bval{2}{hluw}{"14400} {Anatolian Hieroglyphs} +\pxkc@bval{2}{bamu1}{"16800} {Bamum Supplement} +\pxkc@bval{2}{mroo}{"16A40} {Mro} +\pxkc@bval{2}{bass}{"16AD0} {Bassa Vah} +\pxkc@bval{2}{hmng}{"16B00} {Pahawh Hmong} +\pxkc@bval{4}{medf}{"16E40} {Medefaidrin} +\pxkc@bval{2}{plrd}{"16F00} {Miao} +\pxkc@bval{2}{cjk14}{"16FE0} {Ideographic Symbols and Punctuation} +\pxkc@bval{2}{tang}{"17000} {Tangut} +\pxkc@bval{2}{tang1}{"18800} {Tangut Components} +\pxkc@bval{4}{kits}{"18B00} {Khitan Small Script} +\pxkc@bval{4}{tang2}{"18D00} {Tangut Supplement} +\pxkc@bval{2}{kana2}{"1B000} {Kana Supplement} +\pxkc@bval{3}{kanaA}{"1B100} {Kana Extended-A} +\pxkc@bval{4}{kana3}{"1B130} {Small Kana Extension} +\pxkc@bval{3}{nshu}{"1B170} {Nushu} +\pxkc@bval{2}{dupl}{"1BC00} {Duployan} +\pxkc@bval{2}{sym53}{"1BCA0} {Shorthand Format Controls} +\pxkc@bval{1}{sym32}{"1D000} {Byzantine Musical Symbols} +\pxkc@bval{1}{sym33}{"1D100} {Musical Symbols} +\pxkc@bval{1}{sym34}{"1D200} {Ancient Greek Musical Notation} +\pxkc@bval{4}{sym58}{"1D2E0} {Mayan Numerals} +\pxkc@bval{1}{sym35}{"1D300} {Tai Xuan Jing Symbols} +\pxkc@bval{1}{sym36}{"1D360} {Counting Rod Numerals} +\pxkc@bval{1}{sym37}{"1D400} {Mathematical Alphanumeric Symbols} +\pxkc@bval{2}{sgnw}{"1D800} {Sutton SignWriting} +\pxkc@bval{2}{glag1}{"1E000} {Glagolitic Supplement} +\pxkc@bval{4}{hmnp}{"1E100} {Nyiakeng Puachue Hmong} +\pxkc@bval{4}{wcho}{"1E2C0} {Wancho} +\pxkc@bval{2}{mend}{"1E800} {Mende Kikakui} +\pxkc@bval{2}{adlm}{"1E900} {Adlam} +\pxkc@bval{4}{sym59}{"1EC70} {Indic Siyaq Numbers} +\pxkc@bval{4}{sym61}{"1ED00} {Ottoman Siyaq Numbers} +\pxkc@bval{2}{sym51}{"1EE00} {Arabic Mathematical Alphabetic Symbols} +\pxkc@bval{2}{sym43}{"1F000} {Mahjong Tiles} +\pxkc@bval{2}{sym44}{"1F030} {Domino Tiles} +\pxkc@bval{2}{sym46}{"1F0A0} {Playing Cards} +\pxkc@bval{2}{sym45}{"1F100} {Enclosed Alphanumeric Supplement} +\pxkc@bval{2}{cjk13}{"1F200} {Enclosed Ideographic Supplement} +\pxkc@bval{2}{sym47}{"1F300} {Miscellaneous Symbols and Pictographs} +\pxkc@bval{2}{sym48}{"1F600} {Emoticons} +\pxkc@bval{2}{sym54}{"1F650} {Ornamental Dingbats} +\pxkc@bval{2}{sym49}{"1F680} {Transport and Map Symbols} +\pxkc@bval{2}{sym50}{"1F700} {Alchemical Symbols} +\pxkc@bval{2}{sym55}{"1F780} {Geometric Shapes Extended} +\pxkc@bval{2}{sym56}{"1F800} {Supplemental Arrows-C} +\pxkc@bval{2}{sym57}{"1F900} {Supplemental Symbols and Pictographs} +\pxkc@bval{4}{sym60}{"1FA00} {Chess Symbols} +\pxkc@bval{4}{sym62}{"1FA70} {Symbols and Pictographs Extended-A} +\pxkc@bval{4}{sym63}{"1FB00} {Symbols for Legacy Computing} +\pxkc@bval{1}{haniB}{"20000} {CJK Unified Ideographs Extension B} +\pxkc@bval{2}{haniC}{"2A700} {CJK Unified Ideographs Extension C} +\pxkc@bval{2}{haniD}{"2B740} {CJK Unified Ideographs Extension D} +\pxkc@bval{2}{haniE}{"2B820} {CJK Unified Ideographs Extension E} +\pxkc@bval{3}{haniF}{"2CEB0} {CJK Unified Ideographs Extension F} +\pxkc@bval{1}{hani2}{"2F800} {CJK Compatibility Ideographs Supplement} +\pxkc@bval{4}{haniG}{"30000} {CJK Unified Ideographs Extension G} +\pxkc@bval{1}{spc07}{"E0000} {Tags} +\pxkc@bval{1}{spc08}{"E0100} {Variation Selectors Supplement} +\pxkc@bval{1}{spc09}{"F0000} {Supplementary Private Use Area-A} +\pxkc@bval{1}{spc10}{"100000} {Supplementary Private Use Area-B} +%======================================= +%% Block subdivisions +\ifnum\pxkc@ccv<2 \else +\pxkc@gval{cjk12}{cjk1a,cjk1b,cjk1c}{Halfwidth and Fullwidth Forms} +\pxkc@bval{0}{cjk1a}{"FF01}{Halfwidth and Fullwidth Forms/Other} +\pxkc@bval{0}{cjk1b}{"FF10}{Halfwidth and Fullwidth Forms/Latin} +\pxkc@bval{0}{cjk1c}{"FF66}{Halfwidth and Fullwidth Forms/Kana} +\fi +\ifnum\pxkc@ccv<3 \else +\pxkc@gval{latn1}{latnx,latny}{Latin-1 Supplement} +\pxkc@bval{0}{latnx}{"00A0}{Latin-1 Supplement/Other} +\pxkc@bval{0}{latny}{"00C0}{Latin-1 Supplement/Latin} +\fi +\ifx\pxkc@bbslst\@empty\else + \pxkc@debug{Unsupported blocks:\pxkc@bbslst} +\fi + +%% \pxkc@foreach@blocks +\edef\pxkc@foreach@blocks{% + \noexpand\@for\noexpand\pxkc@blk:={\pxkc@bslst}} + +%% clean up +\let\pxkc@bval\relax +\let\pxkc@cval\relax +\let\pxkc@gval\relax +\let\pxkc@bslst\relax +\let\pxkc@bbslst\relax + +%--------------------------------------- public interfaces + +%%<*> \cjkcategory{}{} +% Sets the kcatcode of block to . +% Here is given as a block name or a single character in the +% block (groups are not considered) to be specified; +% is given as a category name or a kcatcode value (15--19). +\newcommand*\cjkcategory{% + \begingroup + \forcecjktoken + \expandafter\endgroup\pxkc@cjkcategory@}% read args +\def\pxkc@cjkcategory@#1#2{% + \edef\pxkc@arg{#2}% + \ifnum2<1\pxkc@arg\relax \else % is a number + \@ifundefined{pxkc@C@@#2}{% + \pxkc@err@ivcsy{#2}\def\pxkc@arg{18}% + }{%else + \edef\pxkc@arg{\@nameuse{pxkc@C@@#2}}% + }% + \fi + \pxkc@cjkcategory@a{#1}} +\def\pxkc@cjkcategory@a#1{%{} + \pxkc@expand@text\pxkc@tmpa{#1}% + \ifx\pxkc@tmpa\relax + \pxkc@err@ivfmt{#1}% + \else + \@for\pxkc@blk:=\pxkc@tmpa\do{% + \expandafter\pxkc@cjkcategory@b\expandafter{\pxkc@blk}}% + \fi} +\def\pxkc@cjkcategory@b#1{% + \pxkc@get@cp{#1}\ifpxkc@ok % charcode + \pxkc@kcatcode{\pxkc@cp}{\pxkc@arg}% + \else + \ifcase\pxkc@cp % no-op + \or % name + \edef\pxkc@blk{#1}% + \pxkc@set@cjkcategory + \else \pxkc@err@ivfmt{#1}% error + \fi + \fi} + +%% \pxkc@set@cjkcategory +% Sees \pxkc@blk (block name) and \pxkc@arg (kcatcode). +\def\pxkc@set@cjkcategory{% + \pxkc@letcs\pxkc@tmpa{pxkc@G@@\pxkc@blk}% + \ifx\pxkc@tmpa\relax + \pxkc@letcs\pxkc@cp{pxkc@B@@\pxkc@blk}% + \ifx\pxkc@cp\relax + \pxkc@err@ivbsy{\pxkc@blk}% + \else\ifnum\pxkc@cp<\z@ % bad + \ifpxkc@warn@bad \pxkc@warn@dfblk{\pxkc@blk}\fi + \else\ifnum\pxkc@cp=\z@ + \ifnum\pxkc@arg=15 \else + \pxkc@err@naltn + \fi + \else + \pxkc@kcatcode{\pxkc@cp}{\pxkc@arg}% + \fi\fi\fi + \else + \pxkc@expanded{\noexpand\pxkc@cjkcategory@a{\pxkc@tmpa}}% + \fi} + +%% \pxkc@cjkcategory{}{} +%% \pxkc@cjkcategory@mccv{}{}{}{} +% Other entry points for internal use. +\def\pxkc@cjkcategory#1#2{% + \def\pxkc@blk{#1}\edef\pxkc@arg{#2}% + \pxkc@set@cjkcategory} +\def\pxkc@cjkcategory@mccv#1#2#3#4{% + \ifnum#1>\pxkc@mccv\else \ifnum#2<\pxkc@mccv\else + \pxkc@cjkcategory{#3}{#4}% + \fi\fi} + +%% \pxkc@get@cp{} +% ok / 0=nop / 1=name / 2=err +\def\pxkc@get@cp#1{% + \pxkc@okfalse \chardef\pxkc@cp\z@ + \pxkc@get@cp@a#1\pxkc@mk\pxkc@end} +\def\pxkc@get@cp@a#1{% + \pxkc@cond\ifx#1\pxkc@mk\fi{% + \pxkc@get@cp@fin\pxkc@mk + }{\pxkc@cond\ifnum\pxkc@get@cp@b#1>\z@\fi{% + \pxkc@get@cp@c#1% + }{\pxkc@cond\ifnum2<"1#1 \fi{% + \pxkc@get@cp@c"#1% + }{%else + \chardef\pxkc@cp`#1 % + \pxkc@cond\ifnum\pxkc@cp>\pxkc@ascii@max\fi{% + \pxkc@oktrue \pxkc@get@cp@fin + }{% + \pxkc@okfalse \chardef\pxkc@cp\@ne \pxkc@get@cp@e + }% + }}}} +\def\pxkc@get@cp@b#1{0\if#1"1\fi\if#1'1\fi\if#1+1\fi} +\def\pxkc@get@cp@c{% + \afterassignment\pxkc@get@cp@d\count@=} +\def\pxkc@get@cp@d{% + \chardef\pxkc@cp\count@ + \ifnum\pxkc@cp=\count@ \pxkc@oktrue + \else \chardef\pxkc@cp\z@ + \fi + \pxkc@get@cp@fin} +\def\pxkc@get@cp@e#1\pxkc@mk{% + \pxkc@get@cp@fin\pxkc@mk} +\def\pxkc@get@cp@fin#1\pxkc@mk\pxkc@end{% + \ifx\pxkc@mt#1\pxkc@mt\else + \pxkc@okfalse \chardef\pxkc@cp\tw@ + \fi} + +%%<*> \cjkcategorymode{} +% Invokes the cjk-category mode . +\newcommand*\cjkcategorymode[1]{% + \pxkc@letcs\pxkc@next{pxkc@M@@#1}% + \ifx\pxkc@next\relax + \pxkc@err@ivmsy{#1}% + \else + \pxkc@warn@badfalse + \pxkc@next + \pxkc@warn@badtrue + \kcatcode0=15 % 'latn' is fixed + \fi} + +%--------------------------------------- CJK category modes + +%% variables +\let\pxkc@cat\relax +\let\pxkc@base@cat\relax + +%% \[pxkc@K@@] : the kcatcode of CJK core blocks +\def\do#1#2{\expandafter\chardef\csname pxkc@K@@#1\endcsname=#2 } +%C====================================== +\do{hang1} {19} % Hangul Jamo +\do{sym15} {18} % Enclosed Alphanumerics +\do{cjk01} {16} % CJK Radicals Supplement +\do{cjk02} {16} % Kangxi Radicals +\do{cjk03} {16} % Ideographic Description Characters +\do{cjk04} {18} % CJK Symbols and Punctuation +\do{hira} {17} % Hiragana +\do{kana} {17} % Katakana +\do{bopo} {16} % Bopomofo +\do{hang2} {19} % Hangul Compatibility Jamo +\do{cjk05} {16} % Kanbun +\do{bopo1} {16} % Bopomofo Extended +\do{cjk06} {16} % CJK Strokes +\do{kana1} {17} % Katakana Phonetic Extensions +\do{cjk07} {18} % Enclosed CJK Letters and Months +\do{cjk08} {18} % CJK Compatibility +\do{haniA} {16} % CJK Unified Ideographs Extension A +\do{hani} {16} % CJK Unified Ideographs +\do{yiii} {18} % Yi Syllables +\do{yiii1} {18} % Yi Radicals +\do{hangA} {19} % Hangul Jamo Extended-A +\do{hang} {19} % Hangul Syllables +\do{hangB} {19} % Hangul Jamo Extended-B +\do{hani1} {16} % CJK Compatibility Ideographs +\do{cjk09} {18} % Vertical Forms +\do{cjk10} {18} % CJK Compatibility Forms +\do{cjk11} {18} % Small Form Variants +\do{cjk12} {18} % Halfwidth and Fullwidth Forms +\do{cjk1a} {18} % Halfwidth and Fullwidth Forms/Other +\do{cjk1b} {17} % Halfwidth and Fullwidth Forms/Latin +\do{cjk1c} {17} % Halfwidth and Fullwidth Forms/Kana +\do{cjk14} {18} % Ideographic Symbols and Punctuation +\do{tang} {18} % Tangut +\do{tang1} {18} % Tangut Components +\do{kits} {18} % Khitan Small Script +\do{tang2} {18} % Tangut Supplement +\do{kana2} {17} % Kana Supplement +\do{kanaA} {17} % Kana Extended-A +\do{kana3} {17} % Small Kana Extension +\do{nshu} {18} % Nushu +\do{sym45} {18} % Enclosed Alphanumeric Supplement +\do{cjk13} {18} % Enclosed Ideographic Supplement +\do{haniB} {16} % CJK Unified Ideographs Extension B +\do{haniC} {16} % CJK Unified Ideographs Extension C +\do{haniD} {16} % CJK Unified Ideographs Extension D +\do{haniE} {16} % CJK Unified Ideographs Extension E +\do{haniF} {16} % CJK Unified Ideographs Extension F +\do{hani2} {16} % CJK Compatibility Ideographs Supplement +\do{haniG} {16} % CJK Unified Ideographs Extension G +%======================================= +\ifnum\pxkc@mccv<2 + \do{cjk1b} {18} + \do{cjk1c} {18} +\fi + +%% \pxkc@reset@all{} +\def\pxkc@reset@all#1{% + \chardef\pxkc@base@cat=#1\relax + \pxkc@foreach@blocks\do{% + \pxkc@letcs\pxkc@cat{pxkc@K@@\pxkc@blk}% + \ifx\pxkc@cat\relax \let\pxkc@cat\pxkc@base@cat \fi + \pxkc@kcatcode{\@nameuse{pxkc@B@@\pxkc@blk}}{\pxkc@cat}}} + +%% \[pxkc@M@@] : the implementation of a mode +%P====================================== +%% 'forcecjk' +\def\pxkc@M@@forcecjk{% + \pxkc@reset@all{18}% +} +%% 'prefercjk' +\def\pxkc@M@@prefercjk{% + \pxkc@M@@prefercjkvar + \pxkc@cjkcategory{grek}{18}% + \pxkc@cjkcategory{cyrl}{18}% + \pxkc@cjkcategory{grek1}{18}% +} +%% 'prefercjkvar' +\def\pxkc@M@@prefercjkvar{% + \pxkc@M@@japanesevar + \pxkc@cjkcategory@mccv{3}{4}{latny}{18}% + \pxkc@cjkcategory{latnA}{18}% + \pxkc@cjkcategory{latnB}{18}% + \pxkc@cjkcategory{latn2}{18}% + \pxkc@cjkcategory{sym01}{18}% + \pxkc@cjkcategory{sym02}{18}% + \pxkc@cjkcategory{latn3}{18}% + \pxkc@cjkcategory{sym05}{18}% + \pxkc@cjkcategory{sym06}{18}% + \pxkc@cjkcategory{latn6}{18}% +} +%% 'japanese' +\def\pxkc@M@@japanese{% + \pxkc@M@@japanesevar + \pxkc@cjkcategory{grek}{18}% + \pxkc@cjkcategory{cyrl}{18}% +} +%% 'japanesevar' +\def\pxkc@M@@japanesevar{% + \pxkc@M@@prefernoncjk + \pxkc@cjkcategory@mccv{1}{2}{latn1}{18}% + \pxkc@cjkcategory@mccv{3}{4}{latnx}{18}% + \pxkc@cjkcategory{sym04}{18}% + \pxkc@cjkcategory{sym07}{18}% + \pxkc@cjkcategory{sym08}{18}% + \pxkc@cjkcategory{sym09}{18}% + \pxkc@cjkcategory{sym10}{18}% + \pxkc@cjkcategory{sym11}{18}% + \pxkc@cjkcategory{sym12}{18}% + \pxkc@cjkcategory{sym13}{18}% + \pxkc@cjkcategory{sym16}{18}% + \pxkc@cjkcategory{sym17}{18}% + \pxkc@cjkcategory{sym18}{18}% + \pxkc@cjkcategory{sym19}{18}% + \pxkc@cjkcategory{sym20}{18}% + \pxkc@cjkcategory{sym23}{18}% + \pxkc@cjkcategory{sym24}{18}% + \pxkc@cjkcategory{sym26}{18}% + \pxkc@cjkcategory{spc04}{18}% +} +%% 'prefernoncjk' +\def\pxkc@M@@prefernoncjk{% + \pxkc@reset@all{15}% +} +%======================================= +%% 'default' +\def\pxkc@M@@default{% + \pxkc@M@@forcecjk + \pxkc@cjkcategory@mccv{3}{4}{latny}{15}% + \pxkc@cjkcategory@mccv{3}{4}{latnA}{15}% + \pxkc@cjkcategory@mccv{4}{4}{latnB}{15}% +} + +%--------------------------------------- safe text expansion + +%% variables +\let\pxkc@expd\relax + +%% \pxkc@expand@text\CS{} +\def\pxkc@expand@text#1#2{% + \begingroup + \let\UTFviii@invalid@err \noexpand + \let\UTFviii@two@octets \pxkc@lead@byte@NB + \let\UTFviii@three@octets\pxkc@lead@byte@NC + \let\UTFviii@four@octets \pxkc@lead@byte@ND + \edef\pxkc@tmpa{#2}% + \let\UTFviii@invalid@err \pxkc@expand@text@err + \let\UTFviii@two@octets \pxkc@lead@byte@PB + \let\UTFviii@three@octets\pxkc@lead@byte@PC + \let\UTFviii@four@octets \pxkc@lead@byte@PD + \let\pxkc@expd\@empty + \expandafter\pxkc@expand@text@a\pxkc@tmpa\pxkc@mk\pxkc@end + \global\let\pxkc@g@tmpa\pxkc@expd + \endgroup + \let#1\pxkc@g@tmpa} +\def\pxkc@expand@text@a{% + \futurelet\pxkc@tok\pxkc@expand@text@b} +\def\pxkc@expand@text@b{% + \ifcat\noexpand\pxkc@tok0% other + \let\pxkc@next\pxkc@expand@text@d + \else\ifcat\noexpand\pxkc@tok\@sptoken + \let\pxkc@next\pxkc@expand@text@f + \else\ifx\pxkc@tok\pxkc@mk % end + \let\pxkc@next\pxkc@expand@text@fin + \else\ifx\pxkc@tok\bgroup + \let\pxkc@next\pxkc@expand@text@err + \else\expandafter\ifx\noexpand\pxkc@tok\pxkc@tok % unexpandable + \let\pxkc@next\pxkc@expand@text@c + \else \let\pxkc@next\pxkc@expand@text@e + \fi\fi\fi\fi\fi + \pxkc@next} +\def\pxkc@expand@text@c#1{% + \edef\pxkc@expd{\pxkc@expd#1}% + \pxkc@expand@text@a} +\def\pxkc@expand@text@d#1{% + \ifnum`#1>\pxkc@ascii@max % high byte + \let\pxkc@next\pxkc@expand@text@ret + \lccode"EF=`#1\relax\lowercase{\expandafter^^ef}% reactivate + \else \expandafter\pxkc@expand@text@c\expandafter#1% + \fi} +\def\pxkc@expand@text@e#1{% + \ifcat\noexpand#1\noexpand^^ef% active-char + \let\pxkc@next\pxkc@expand@text@ret + \expandafter#1% + \else \expandafter\pxkc@expand@text@err + \fi} +\expandafter\def\expandafter\pxkc@expand@text@f\space{% + \pxkc@expand@text@c\space} +\def\pxkc@expand@text@fin#1#2\pxkc@end{% + \ifx\pxkc@mt#2\pxkc@mt \else \let\pxkc@expd\relax \fi} +\def\pxkc@expand@text@err{% + \pxkc@expand@text@fin\pxkc@mk} +\def\pxkc@expand@text@ret{% UTF-8 bytes are read + \pxkc@get@jchar\count@ + \pxkc@expand@text@c\pxkc@jchar} + +%% processors +\def\pxkc@lead@byte@NB#1{\noexpand#1\noexpand} +\def\pxkc@lead@byte@NC#1#2{\noexpand#1\noexpand#2\noexpand} +\def\pxkc@lead@byte@ND#1#2#3{\noexpand#1\noexpand#2\noexpand#3\noexpand} +\def\pxkc@lead@byte@PB#1#2{% + \count@`#1 \advance\count@-"C0 + \pxkc@trail@byte{#2}\pxkc@next} +\def\pxkc@lead@byte@PC#1#2#3{% + \count@`#1 \advance\count@-"E0 + \pxkc@trail@byte{#2}\pxkc@trail@byte{#3}\pxkc@next} +\def\pxkc@lead@byte@PD#1#2#3#4{% + \count@`#1 \advance\count@-"F0 + \pxkc@trail@byte{#2}\pxkc@trail@byte{#3}\pxkc@trail@byte{#4}\pxkc@next} +\def\pxkc@trail@byte#1{% + \multiply\count@"40 \advance\count@`#1 \advance\count@-"80 } + +%--------------------------------------- miscellaneous accessories + +%%<*> \showcjkcategory +\newcommand*\showcjkcategory{% + \pxkc@foreach@blocks\do{% + \@ifundefined{pxkc@B@@\pxkc@blk}{}{%else + \typeout{\pxkc@blk\space= \the\kcatcode\@nameuse{pxkc@B@@\pxkc@blk}}% + }}} + +%--------------------------------------- get current cjktoken state + +%% variables +\let\pxkc@ctmode\relax + +\ifx\currentcjktoken\@undefined %<*!e-pTeX> + +%% \pxkc@make@probe +\def\pxkc@make@probe{% + \edef\pxkc@tmpa{\expandafter\string\csname + pxkc@@\string ^^e3\string ^^81\string ^^82% + \string ^^e3\string ^^82\string ^^a2\endcsname}} +\begingroup \kcatcode"3040=15 \kcatcode"30A0=18 + \disablecjktoken\pxkc@make@probe \global\let\pxkc@prb@d\pxkc@tmpa + \enablecjktoken\pxkc@make@probe \global\let\pxkc@prb@e\pxkc@tmpa + \forcecjktoken\pxkc@make@probe \global\let\pxkc@prb@f\pxkc@tmpa +\endgroup + +%% \pxkc@get@cjktoken@mode\CS +\def\pxkc@get@cjktoken@mode#1{% + \begingroup + \kcatcode"3040=15 \kcatcode"30A0=18 \pxkc@make@probe + \ifx\pxkc@tmpa\pxkc@prb@d \global\chardef\pxkc@gtmpa\z@ + \else\ifx\pxkc@tmpa\pxkc@prb@e \global\chardef\pxkc@gtmpa\@ne + \else\ifx\pxkc@tmpa\pxkc@prb@f \global\chardef\pxkc@gtmpa\tw@ + \else \global\chardef\pxkc@gtmpa\@cclv + \fi\fi\fi + \endgroup + \let#1\pxkc@gtmpa} + +% The method does not work on new upTeX, but running LaTeX +% on new upTeX without e-TeX is highly improbable.... +\ifx\pxkc@prb@d\pxkc@prb@e + \def\pxkc@get@cjktoken@mode#1{% + \chardef#1\@cclv} % always fail +\fi + +\else %<*e-pTeX> + +\def\pxkc@get@cjktoken@mode#1{% + \chardef#1\ifcase\currentcjktoken + \@ne \or \z@ \or \tw@ \or \@cclv + \fi} + +\fi % + +%%<*> \getcjktokenmode +% Returns the value showing current mode to \thecjktokenmode +% 0: \disablecjktoken +% 1: \enablecjktoken +% 2: \forcecjktoken +% 255: failure +\newcommand*\getcjktokenmode{% + \pxkc@get@cjktoken@mode\thecjktokenmode} + +%%<*> \setcjktokenmode{} +\newcommand*\setcjktokenmode[1]{% + \ifcase#1\disablecjktoken + \or \enablecjktoken + \or \forcecjktoken + \fi} + +%%<*> \withcjktokendisabled, etc. +\newcommand*\withcjktokendisabled{% + \pxkc@with@cjktoken@mode\disablecjktoken\@iden} +\newcommand*\withcjktokenenabled{% + \pxkc@with@cjktoken@mode\enablecjktoken\@iden} +\newcommand*\withcjktokenforced{% + \pxkc@with@cjktoken@mode\forcecjktoken\@iden} +\newcommand*\withcjktokendisabledex{% + \pxkc@with@cjktoken@mode\disablecjktoken} +\newcommand*\withcjktokenenabledex{% + \pxkc@with@cjktoken@mode\enablecjktoken} +\newcommand*\withcjktokenforcedex{% + \pxkc@with@cjktoken@mode\forcecjktoken} +\def\pxkc@with@cjktoken@mode#1{% + \pxkc@get@cjktoken@mode\pxkc@ctmode + \ifnum\pxkc@ctmode=\@cclv \pxkc@with@cjktoken@mode@b \fi + #1% + \pxkc@with@cjktoken@mode@a} +\def\pxkc@with@cjktoken@mode@a#1#2{% + #1{#2}% + \setcjktokenmode\pxkc@ctmode} +\def\pxkc@with@cjktoken@mode@b{% + \global\let\pxkc@with@cjktoken@mode@b\relax + \PackageWarning\pxkc@pkgname + {Failed in getting current cjktoken mode,\MessageBreak + reported}} + +%--------------------------------------- initial setup + +\ifx\pxkc@ccmode@opt\relax\else + \cjkcategorymode{\pxkc@ccmode@opt} +\fi + +%--------------------------------------- all done +\endinput +%% EOF diff --git a/macros/jptex/latex/pxcjkcat/pxcjkcat.tex b/macros/jptex/latex/pxcjkcat/pxcjkcat.tex new file mode 100644 index 0000000000..e8e00fcbc7 --- /dev/null +++ b/macros/jptex/latex/pxcjkcat/pxcjkcat.tex @@ -0,0 +1,999 @@ +% upLaTeX 文書; 文字コードは UTF-8 +\documentclass[uplatex,dvipdfmx,a4paper]{jsarticle} +\renewcommand{\headfont}{\gtfamily\romanseries{sbc}\sffamily} +\usepackage[T1]{fontenc} +\usepackage{lmodern} +\usepackage{geometry} +\usepackage{xcolor} +\usepackage[colorlinks,hyperfootnotes=false]{hyperref} +\usepackage{pxjahyper} +\hypersetup{linkcolor=blue!75!black,urlcolor=green!45!black, + pdftitle={pxcjkcatパッケージ}, + pdfauthor={八登崇之}} +\usepackage{bxtexlogo} +\bxtexlogoimport{*,LaTeXTeX} +\usepackage[verb]{bxghost} +\usepackage{shortvrb} +\MakeShortVerb{\|} +\usepackage{verbatim} +\newenvironment{myverbatim} + {\quote\small\verbatim} + {\endverbatim\endquote} +\newcommand{\PkgVersion}{1.4} +\newcommand{\PkgDate}{2022/06/06} +\newcommand{\Pkg}[1]{\textsf{#1}} +\newcommand{\Meta}[1]{% + $\langle$\mbox{}\nolinebreak#1\nolinebreak\mbox{}$\rangle$} +\newcommand{\Note}{\par\noindent ※} +\newcommand{\Means}{:~} +\newcommand{\strong}{\textsf} +\newcommand{\wbr}{\linebreak[0]} +\newcommand{\Code}[1]{{\usefont{T1}{lmtt}{l}{n}#1}} +%----------------------------------------------------------- +\begin{document} +\title{\Pkg{pxcjkcat} パッケージ} +\author{八登崇之\ (Takayuki YATO; aka.~``ZR'')} +\date{v\PkgVersion\quad[\PkgDate]} +\maketitle + +\begin{abstract} +{\upTeX}エンジンには +「ソース中の非ASCII文字の扱い」 +(和文・欧文の何れとして扱うか、等) +を制御するための「和文カテゴリ(kcatcode)」 +という設定がある。 +本パッケージは、{\upTeX}の和文カテゴリを扱うための +{\LaTeX}の文書作成者向けのインタフェースを提供する。 +\end{abstract} + +\tableofcontents + +%=========================================================== +\section{前提知識} +\label{sec:Introduction} + +%------------------- +\subsection{和文カテゴリ} +\label{ssec:cjkcategory} + +{\upTeX}エンジンの「\strong{和文カテゴリ}(kcatcode)」の設定は +「ソース中の非ASCII文字の振舞」を制御するためのものである。 +例えば「ア」(U+30A2)という文字は普通は(既定値では) +仮名として扱われるが、U+30A2の和文カテゴリを変更することで、 +これを「和文記号扱い」「欧文扱い」などに変えることができる。 + +{\upTeX}の仕様では和文カテゴリの値は15~19の範囲の整数 +(\strong{和文カテゴリコード}) +として表される。 +本パッケージでは操作を直感的にするため和文カテゴリの値に名前 +(\strong{カテゴリID})を付けて扱う。 +和文カテゴリの値の一覧は以下の通りである。 + +\begin{center}\small\begin{tabular}{ccl} + \hline + コード & カテゴリID & 意味 \\ + \hline + 15 & |noncjk| & 欧文扱い \\ + 16 & |kanji| & 漢字扱い \\ + 17 & |kana| & 仮名扱い \\ + 18 & |cjk| & 「その他の和文」扱い \\ + 19 & |hangul| & ハングル扱い \\ + \hline +\end{tabular}\end{center} +和文カテゴリの設定による実際の「振舞」の違いには +以下のようなものがある +\footnote{なお、現在の{\upTeX}の仕様では|kanji|(16)と|kana|(17) + の間には「振舞」の違いは存在しないようである。}。 +\begin{itemize} +\item 和文カテゴリが|noncjk|(15)である文字は欧文として扱われる。 + 対して、|noncjk|以外の文字は和文扱いとなる。 + \Note なお、欧文扱いとなる文字は欧文{\LaTeX}({\pdfLaTeX})と + 同じ機構で処理される。 + すなわち、{\TeX}のレベルではUTF-8のバイト列として扱われ、 + これを\Pkg{inputenc}パッケージが適切に処理することで + 初めて「文字」として認識される。 +\item (u){\pLaTeX}には「行末にある文字が和文文字の場合には当該の改行は + 空白にならずに無視される」という独自の入力規則があるが、 + 和文カテゴリが|hangul|(19)である和文文字が行末にある場合は + 欧文と同様に改行は空白を発生させる。 +\item {\LaTeX}の|\|から始まる命令名(制御綴)の構成について + 「複数文字の名前を作れるのは英字のみ」という規則がある。 + 命令名構成の規則について、和文カテゴリが + |kanji|(16)・|kana|(17)・|hangul|(19) + の和文文字は「英字」と同じ扱いになり、 + |cjk|(18)の和文文字は「英字以外の欧文文字」と同じ扱いになる。 +\end{itemize} + +ただし、{\upTeX}の仕様では、和文文字カテゴリの設定は“文字単位”ではなく +“Unicodeブロック単位”で行うようになっている(一部例外あり)。 +従って、例えば「ア」(U+30A2)の和文カテゴリを変更したいという場合には、 +U+30A2が属する“Katakana”(U+30A0~30FF)のブロックについて +和文カテゴリの設定を行うことになる。 + +本パッケージが提供する命令を利用すると +「“Katakana”の和文カテゴリを|cjk|(18)に変更する」 +という設定は +\begin{quote}\small +\begin{verbatim} +\cjkcategory{kana}{cjk} +\end{verbatim} +\end{quote} +で実現できる。 + +%------------------- +\subsection{和文カテゴリモード} +\label{ssec:cjkcategory-mode} + +\strong{和文カテゴリモード}は +全てのブロックに対する和文カテゴリの一括設定 +(プリセット設定)のことである +(TODO:ちゃんと説明する)。 + +モード設定には以下のものがある。 +何れのモードも、「CJK中核セット」(後述)のブロック群の +設定は共通で、 +その他のブロックが欧文扱い(|noncjk|)であるか +和文扱い(|cjk|% +\footnote{全てのモード設定において、「CJK中核セット」\strong{以外}の + ブロックのカテゴリは必ず|noncjk|か|cjk|の何れかになる。}% +)であるかが異なる。 +\begin{itemize} +\item |forcecjk|\Means + 全てのブロックを和文扱い + (|noncjk|以外)とする。 + 和文フォントの中のUnicode値の割当がある全ての文字を + 和文文字として直接用いることができる。 +\item |default|\Means + 現在のモードCCVに対応する{\upTeX}の版 + (例えばモードCCVが3ならばv1.23) + における既定設定と一致させる。 + \Note モードCCVが2以下の場合は|forcecjk|と同一の設定になる。 +\item |prefercjk|\Means + 和文扱いのブロックとして「CJK中核セット」の他に + 「Adobeの定めるCJK文字集合 + \footnote{Adobe-Japan1、Adobe-GB1、Adobe-CNS1、Adobe-Korea1の4つ。}% + の何れかと共通部分をもつ文字ブロック」を加えて、 + 残りを欧文扱いに設定する。 +\item |prefercjkvar|\Means\hspace{-.25em}% + |prefercjk|からギリシャ・キリル文字の + ブロックを欧文扱いに変更したもの。 +\item |japanese|\Means + 和文扱いのブロックとして「CJK中核セット」の他に + 「Adobe-Japan1の全角幅のグリフ + の何れかと共通部分をもつ文字ブロック」を加えて、 + 残りを欧文扱いに設定する。 +\item |japanesevar|\Means + |japanese|からギリシャ・キリル文字の + ブロックを欧文扱いに変更したもの。 +\item |prefernoncjk|\Means + 「CJK中核セット」のブロックのみを和文扱いとし、 + 残りを欧文扱いにする。 +\end{itemize} + +\Note 各モードでの具体的な設定値については\ref{sec:Values}節を参照。 + +\paragraph{CJK中核セット} +「CJK中核セット」は以下の文字種が属するブロックのセットを指す。 +(括弧内は、モード設定において当該のブロックに設定される +和文カテゴリの値。) + \begin{itemize} + \item 漢字・部首・注音字母(|kanji|) + \item ひらがな・カタカナ(|kana|) + \item CJK記号の一部・全角半角互換形・彝文字 + ・西夏文字・女書文字・契丹文字(|cjk|) + \Note モードCCVが2以上の場合、|cjk12|の再分割の|cjk1b|、 + |cjk1c|は|kana|に設定される。 + \item ハングル完成形・ハングル字母(|hangul|) +\end{itemize} + +%------------------- +\subsection{和文トークン状態} +\label{ssec:cjktoken} + +{\upTeX}には、和文カテゴリ(kcatcode)とは別に、 +非ASCII文字全体の和文・欧文扱いの設定を一斉に切り替えるための +命令が存在する +\footnote{これらの命令は本パッケージが提供するものではなく + {\upTeX}に元から存在するものであることに注意。}。 +\begin{itemize} +\item |\enablecjktoken|\Means + 和文・欧文扱いの設定を和文カテゴリの設定に従わせる。 +\item |\disablecjktoken|\Means + 和文カテゴリ設定に関わらず非ASCII文字全体を欧文扱いにする。 + \Note あたかも全ブロックの和文カテゴリを|noncjk|(15)に設定したのと + 同じ状態になる。 +\item |\forcecjktoken|\Means + 和文カテゴリ設定に関わらず非ASCII文字全体を和文扱いにする。 + \Note 和文カテゴリが|noncjk|(15)であるブロックは + あたかもそれが|cjk|(18)であるように動作する。 +\end{itemize} + +これらの命令群により変更されるパラメタのことを本パッケージでは +「\strong{和文トークン状態}」と呼ぶことにする +\footnote{「和文トークン状態」を指す公式の用語は存在しないと思われる。}。 + +%=========================================================== +\section{パッケージ読込} +\label{sec:Loading} + +\begin{myverbatim} +\usepackage[<オプション>]{pxcjkcat} +\end{myverbatim} + +オプションとして以下のものが指定できる。 + +\begin{itemize} +\item \strong{モードCCV指定}\Means + \<「モードCCV」の値を指定するオプション。 + \Note モードCCVについては\ref{sec:CCV}節を参照。 + \Note モードCCVの既定値は1であり、 + これは極めて古い版と互換にすることを意味する。 + モード設定(|prefernoncjk|等)を利用する場合には、 + 適切なモードCCVのオプションを指定するのが望ましい。 + \begin{itemize} + \item |ccv1|\Means + モードCCVを1({\upTeX} v0.11~0.28と互換)とする。 + \strong{既定値。} + \item |ccv2|\Means + モードCCVを2({\upTeX} v0.29~1.22と互換)とする。 + \item |ccv3|\Means + モードCCVを3({\upTeX} v1.23と互換)とする。 + \item |ccv4|\Means + モードCCVを4({\upTeX} v1.25以降と互換)とする。 + \item |real|または|ccv+|\Means + モードCCVを{\upTeX}の実際のCCVと一致させる。 + \end{itemize} +\item \strong{和文カテゴリモード値}\Means + |\cjkcategorymode|命令で有効なモード値(|prefernoncjk|等) + をオプションとして指定可能で、 + この場合、和文カテゴリがモードに従って設定される。 + \Note 和文カテゴリモード値オプションが指定されていない場合は、 + パッケージ読込時に和文カテゴリが変更されることはない。 +\item |nomode|\Means + 和文カテゴリモード値オプションの効果を打ち消す。 +\end{itemize} + +%=========================================================== +\section{機能} +\label{sec:Function} + +%------------------- +\subsection{和文カテゴリ設定に関連する機能} +\label{ssec:cjkcategory-function} + +\begin{itemize} +\item |\cjkcategory{|\Meta{ブロック}|,...}{|\Meta{カテゴリ}|}|\Means + \Meta{ブロック}で指定される文字ブロック(複数指定が可能)の + 和文カテゴリを\Meta{カテゴリ}に変更する。 + + \Meta{ブロック}は以下の何れかの形式で指定する: + \begin{itemize} + \item ブロックID(\ref{sec:Blocks}節参照)% + \footnote{ブロックIDによる指定は{\upTeX}の版の影響を受けない。 + 例えば、{\upTeX}の版(およびモードCCV指定)が何であっても、 + |latn1|は常に“Latin-1 Supplement”の範囲(U+0080~00FF)を指す。 + 実CCVが3以上の場合に|latn1|のカテゴリ設定を行った場合は、 + 実際には|latnx|と|latny|の2つのブロックに対して設定が行われる。} + \item 非ASCII文字1つ\Means + 当該の文字が属するブロックを指す。 + \Note 「文字の属するブロック」は、モードCCV設定とは無関係であり + 常に{\upTeX}の実際のブロック定義に従う。 + 従ってその動作は{\upTeX}の版に依存することに注意。 + \item 符号値(整数値)\Means + 当該の符号値の文字が属するブロックを指す。 + 符号値は以下の形式で指定できる\Means + \begin{itemize} + \item \Meta{16進表記}\Means 例えば|1F600|。 + \item |"|\Meta{16進表記}\Means 例えば|"1F600|。 + \Note 16進数字の|A|~|F|は大文字で書く。 + \item |+|\Meta{整数}\Means 例えば|+128512|は10進表記で128512、 + すなわちU+1F600を表す。 + \Note \Meta{整数}の部分には一般に任意の + 「{\LaTeXTeX}で整数を表すテキスト」が記述できる。 + 例えば|+\value{mycode}|のように書くとカウンタ値を指定できる。 + \end{itemize} + \Note 前項と同様、動作が{\upTeX}の版に依存することに注意を要する。 + \end{itemize} + \Meta{カテゴリ}は「カテゴリID」または + 「カテゴリコード」(括弧内の整数値)で指定する。 + \begin{itemize} + \item |noncjk|(15)\Means 欧文扱い + \item |kanji|または|han|(16)\Means 漢字扱い + \item |kana|(17)\Means 仮名扱い + \item |cjk|(18)\Means \<「その他の和文」扱い + \item |hangul|(19)\Means ハングル扱い + \end{itemize} + + 和文カテゴリの変更は局所的(グルーピングに従う)である。 + + \Note モードCCVの指定は|\cjkcategory|の動作には影響を与えない。 + + \Note “Basic Latin”ブロック(|latn|)のカテゴリは常に|noncjk|で + なければならず、|noncjk|以外に変更しようとするとエラーになる。 + +\item |\cjkcategorymode{|\Meta{モード}|}|\Means + 全てのブロックの和文カテゴリの一括設定(モード設定)を行う。 + 有効なモード設定の値は以下の通りである。 + \Note モード設定の詳細については + \ref{ssec:cjkcategory-mode}節を参照。 + \begin{itemize} + \item |forcecjk| + \item |default| + \item |prefercjk| + \item |prefercjkvar| + \item |japanese| + \item |japanesevar| + \item |prefernoncjk| + \end{itemize} + +\end{itemize} + +%------------------- +\subsection{和文トークン状態に関する機能} +\label{ssec:cjktoken-function} + +\Note 「和文トークン状態」については\ref{ssec:cjktoken}節を参照。 + +\begin{itemize} + +\item |\getcjktokenmode|\Means + 現在の和文トークン状態の取得して、 + それを表す整数値を|\thecjktokenmode|に設定する。 + \begin{itemize} + \item 0\Means |\disablecjktoken|の状態。 + \item 1\Means |\enablecjktoken|の状態。 + \item 2\Means |\forcecjktoken|の状態。 + \item 255\Means 状態取得に失敗した% + \footnote{{\TeX} Live 2022以降で{\eTeX}拡張無しの{\upTeX}エンジンの + 場合は取得ができない。 + しかし、2014年以降の{\LaTeX}カーネルは{\eTeX}拡張を必須としている + ので、そのようなエンジンの上で{\LaTeX}が動作している可能性は + ほぼ考えられない。 + 従って、現実的には255が返ることはないと思ってよい。}。 + \end{itemize} + +\item |\setcjktokenmode{|\Meta{整数値}|}|\Means + |\getcjktokenmode|の規則の整数値を用いて和文トークン状態を設定する。 + +\item |\withcjktokendisabled{|\Meta{コード}|}|\Means + 一時的に|\disablecjktoken|に変更した状態で、 + \Meta{コード}を実行する。 +\item |\withcjktokenenabled{|\Meta{コード}|}|\Means + 一時的に|\enablecjktoken|に変更した状態で、 + \Meta{コード}を実行する。 +\item |\withcjktokenforced{|\Meta{コード}|}|\Means + 一時的に|\forcecjktoken|に変更した状態で、 + \Meta{コード}を実行する。 +\Note 以上3つの命令はどれも、 +「和文トークン状態を設定して\Meta{コード}を実行した後 +和文トークン状態を再設定する」 +という動作を行う。 +そのため新たに局所化グループに入ることはない。 + +\end{itemize} + +%=========================================================== +\section{文字分類バージョン(CCV)} +\label{sec:CCV} + +\noindent \strong{注意}\Means +\ref{sec:CCV}節および\ref{sec:Blocks}に述べられている +説明は現状の仕様と食い違っている部分があり、 +大幅な改訂が必要な状態である。 +少なくとも1.1版以降の仕様では、 +モードCCVの影響を受けるのはモード設定の定義のみであり、 +ブロック分割は常に実際のエンジンのものに一致させている。 + +\bigskip + +{\upTeX}エンジンでの文字ブロックの分割および各ブロックの +和文カテゴリの既定値は改版時に変更され、 +これが互換性の問題を起こす可能性がある。 +本パッケージでは、パッケージの機能を用いて設定された +和文カテゴリの値がエンジンの改版により変化することを防ぐため、 +「特定のエンジンのバージョンを指定して、その動作を模倣する」 +という方針をとる。 + +\subsection{文字分類バージョンとは何か} + +\begin{itemize} +\item 文字ブロックの分割の違いを + 「\strong{文字分類バージョン}(CCV;Character Category Version)」 + と呼ぶことにする。 + 現状では次のものが存在する + \footnote{{\upTeX}のv1.24には文字ブロック分割に関してバグが存在するので、 + CCVの定義からは除外する。 + なお、実際にv1.24の{\upTeX}で本パッケージが読み込まれた場合は、 + 実CCVは1と見なされる(はずである)。}。 + \begin{itemize} + \item バージョン1: {\upTeX} v0.11~0.28と互換 + \item バージョン2: {\upTeX} v0.29~1.22と互換 + \item バージョン3: {\upTeX} v1.23と互換 + \item バージョン4: {\upTeX} v1.25以降と互換 + \end{itemize} + +\item \Pkg{pxcjkcat}の読込時に、そのオプションにおいて + 「その文書が依拠するCCVの値」(これを\strong{モードCCV}と呼ぶ) + を指定する。 + すなわち、オプション |ccv|$N$($N=\mbox{1~3}$)を指定すると、 + モードCCVが$N$になる。 + +\item モードCCVを使用するエンジンの実のCCVと常に一致させたい場合は、 + |ccv+| というオプションを指定すればよい。 + ただしこの場合は当然、和文カテゴリ設定がエンジンの版に + 依存することになる。 + +\item モードCCVの既定値は1(|ccv1|)である。 + この場合、ブロック分割の状態はUnicode% + \footnote{エンジンの版に対応する版のUnicode。}% + のブロック定義と完全に一致する。 + +\item モード設定で |default| を指定した場合は、 + 和文カテゴリの設定は + 「モードCCVに対応するエンジンの版の既定値」 + に一致する。 + 他のモード設定の実際の設定値も |default| を基礎にして + 決まるので、モードCCVにより多少の差異が出る。 + +\end{itemize} + +\subsection{注意事項} + +\begin{itemize} +\item Unicodeの改版による「文字ブロックの追加」については + 「当該の版のエンジンで未対応の文字ブロックの文字は + 決して使われない」 + ことを仮定すれば互換性を損なうことがないため、 + 特に対策を行わない。 + + 従って、エンジンの改版が「文字ブロックの追加」だけを伴う場合は、 + それは新しいCCVとは見なされない。 + 例えば、v1.00→v1.10の改修では幾つかのブロックが追加されたが、 + CCVは2のままである。 + +\item もちろん、「旧版の動作の模倣」は本パッケージの機能を用いた + 場合に限られ、{\upTeX}エンジンの和文カテゴリコード(kcatcode)の + 処理自体は何も変更されない。 + また、本パッケージの機能を用いる以外の方法 + (エンジン既定のままの場合を含む) + で設定された和文カテゴリ値については、 + 当然、エンジンの版による差異が生じうる。 + +\end{itemize} + + +%=========================================================== +\section{文字ブロック} +\label{sec:Blocks} + +%------------------- +\subsection{Unicodeブロックの一覧} + +以下は、Unicodeが定めるブロックと直接に対応するブロックの一覧である。 +この表の「ブロックID」の欄が、|\cjkcategory|命令で指定する +ブロックIDを示す。 +「CCV」の欄は、そのブロックがサポートされる実CCVの +範囲の下限を表す。 +\footnote{これは参考情報であり、現状の仕様ではあまり意味をもたない。} +%\footnote{ここで示すサポート範囲は「必要条件」であることに注意。 +% 先述の通り、エンジンの改版でブロックが(分割変更でなく) +% 新規追加された場合には以前のCCVの値を引き継ぐ。 +% このため、サポート範囲が「2」のブロックは、 +% モードCCVが2であっても“実際には使えない”可能性がある。 +% (モードCCVが3以上なら必ず使えて、1なら必ず使えない。) +% “実際には使えない”ブロックに設定を試みた場合は、 +% 警告が出て設定が無視される。} + +\begin{quote} +\renewcommand{\baselinestretch}{0.9}\small +\setlength{\parskip}{0pt} +\newcommand*\xI[1]{\makebox[4em][l]{\texttt{#1}}\ignorespaces} +\newcommand*\xV[1]{\makebox[2em][c]{#1}\hspace*{1em}\ignorespaces} +\newcommand*\xR[2]{\Code{U+}\makebox[3em][r]{\Code{#1}}% + ~~~\makebox[3em][r]{\Code{#2}}\hspace*{1em}\ignorespaces} +\newcommand*\xN[1]{#1} +\hspace*{-1em}%header-line +\makebox[5em][l]{ブロック\mbox{}ID}\makebox[2em][c]{~~CCV}% +\makebox[10em][c]{符号値範囲}\makebox{ブロック名称}\par +%///////////////////////////// +\xI{latn} \xV{1} \xR {0000} {007F} \xN{Basic Latin}\par +\xI{latn1} \xV{1} \xR {0080} {00FF} \xN{Latin-1 Supplement}\par +\xI{latnA} \xV{1} \xR {0100} {017F} \xN{Latin Extended-A}\par +\xI{latnB} \xV{1} \xR {0180} {024F} \xN{Latin Extended-B}\par +\xI{latn2} \xV{1} \xR {0250} {02AF} \xN{IPA Extensions}\par +\xI{sym01} \xV{1} \xR {02B0} {02FF} \xN{Spacing Modifier Letters}\par +\xI{sym02} \xV{1} \xR {0300} {036F} \xN{Combining Diacritical Marks}\par +\xI{grek} \xV{1} \xR {0370} {03FF} \xN{Greek and Coptic}\par +\xI{cyrl} \xV{1} \xR {0400} {04FF} \xN{Cyrillic}\par +\xI{cyrl1} \xV{1} \xR {0500} {052F} \xN{Cyrillic Supplement}\par +\xI{armn} \xV{1} \xR {0530} {058F} \xN{Armenian}\par +\xI{hebr} \xV{1} \xR {0590} {05FF} \xN{Hebrew}\par +\xI{arab} \xV{1} \xR {0600} {06FF} \xN{Arabic}\par +\xI{syrc} \xV{1} \xR {0700} {074F} \xN{Syriac}\par +\xI{arab1} \xV{1} \xR {0750} {077F} \xN{Arabic Supplement}\par +\xI{thaa} \xV{1} \xR {0780} {07BF} \xN{Thaana}\par +\xI{nkoo} \xV{1} \xR {07C0} {07FF} \xN{NKo}\par +\xI{samr} \xV{2} \xR {0800} {083F} \xN{Samaritan}\par +\xI{mand} \xV{2} \xR {0840} {085F} \xN{Mandaic}\par +\xI{syrc1} \xV{3} \xR {0860} {086F} \xN{Syriac Supplement}\par +\xI{arabA} \xV{2} \xR {08A0} {08FF} \xN{Arabic Extended-A}\par +\xI{deva} \xV{1} \xR {0900} {097F} \xN{Devanagari}\par +\xI{beng} \xV{1} \xR {0980} {09FF} \xN{Bengali}\par +\xI{guru} \xV{1} \xR {0A00} {0A7F} \xN{Gurmukhi}\par +\xI{gujr} \xV{1} \xR {0A80} {0AFF} \xN{Gujarati}\par +\xI{orya} \xV{1} \xR {0B00} {0B7F} \xN{Oriya}\par +\xI{taml} \xV{1} \xR {0B80} {0BFF} \xN{Tamil}\par +\xI{telu} \xV{1} \xR {0C00} {0C7F} \xN{Telugu}\par +\xI{knda} \xV{1} \xR {0C80} {0CFF} \xN{Kannada}\par +\xI{mlym} \xV{1} \xR {0D00} {0D7F} \xN{Malayalam}\par +\xI{sinh} \xV{1} \xR {0D80} {0DFF} \xN{Sinhala}\par +\xI{thai} \xV{1} \xR {0E00} {0E7F} \xN{Thai}\par +\xI{laoo} \xV{1} \xR {0E80} {0EFF} \xN{Lao}\par +\xI{tibt} \xV{1} \xR {0F00} {0FFF} \xN{Tibetan}\par +\xI{mymr} \xV{1} \xR {1000} {109F} \xN{Myanmar}\par +\xI{geor} \xV{1} \xR {10A0} {10FF} \xN{Georgian}\par +\xI{hang1} \xV{1} \xR {1100} {11FF} \xN{Hangul Jamo}\par +\xI{ethi} \xV{1} \xR {1200} {137F} \xN{Ethiopic}\par +\xI{ethi1} \xV{1} \xR {1380} {139F} \xN{Ethiopic Supplement}\par +\xI{cher} \xV{1} \xR {13A0} {13FF} \xN{Cherokee}\par +\xI{cans} \xV{1} \xR {1400} {167F} \xN{Unified Canadian Aboriginal Syllabics}\par +\xI{ogam} \xV{1} \xR {1680} {169F} \xN{Ogham}\par +\xI{runr} \xV{1} \xR {16A0} {16FF} \xN{Runic}\par +\xI{tglg} \xV{1} \xR {1700} {171F} \xN{Tagalog}\par +\xI{hano} \xV{1} \xR {1720} {173F} \xN{Hanunoo}\par +\xI{buhd} \xV{1} \xR {1740} {175F} \xN{Buhid}\par +\xI{tagb} \xV{1} \xR {1760} {177F} \xN{Tagbanwa}\par +\xI{khmr} \xV{1} \xR {1780} {17FF} \xN{Khmer}\par +\xI{mong} \xV{1} \xR {1800} {18AF} \xN{Mongolian}\par +\xI{cans1} \xV{2} \xR {18B0} {18FF} \xN{Unified Canadian Aboriginal Syllabics Extended}\par +\xI{limb} \xV{1} \xR {1900} {194F} \xN{Limbu}\par +\xI{tale} \xV{1} \xR {1950} {197F} \xN{Tai Le}\par +\xI{talu} \xV{1} \xR {1980} {19DF} \xN{New Tai Lue}\par +\xI{khmr1} \xV{1} \xR {19E0} {19FF} \xN{Khmer Symbols}\par +\xI{bugi} \xV{1} \xR {1A00} {1A1F} \xN{Buginese}\par +\xI{lana} \xV{2} \xR {1A20} {1AAF} \xN{Tai Tham}\par +\xI{sym52} \xV{2} \xR {1AB0} {1AFF} \xN{Combining Diacritical Marks Extended}\par +\xI{bali} \xV{1} \xR {1B00} {1B7F} \xN{Balinese}\par +\xI{sund} \xV{2} \xR {1B80} {1BBF} \xN{Sundanese}\par +\xI{batk} \xV{2} \xR {1BC0} {1BFF} \xN{Batak}\par +\xI{lepc} \xV{2} \xR {1C00} {1C4F} \xN{Lepcha}\par +\xI{olck} \xV{2} \xR {1C50} {1C7F} \xN{Ol Chiki}\par +\xI{cyrlC} \xV{2} \xR {1C80} {1C8F} \xN{Cyrillic Extended-C}\par +\xI{geor2} \xV{4} \xR {1C90} {1CBF} \xN{Georgian Extended}\par +\xI{sund1} \xV{2} \xR {1CC0} {1CCF} \xN{Sundanese Supplement}\par +\xI{sym38} \xV{2} \xR {1CD0} {1CFF} \xN{Vedic Extensions}\par +\xI{latn4} \xV{1} \xR {1D00} {1D7F} \xN{Phonetic Extensions}\par +\xI{latn5} \xV{1} \xR {1D80} {1DBF} \xN{Phonetic Extensions Supplement}\par +\xI{sym03} \xV{1} \xR {1DC0} {1DFF} \xN{Combining Diacritical Marks Supplement}\par +\xI{latn3} \xV{1} \xR {1E00} {1EFF} \xN{Latin Extended Additional}\par +\xI{grek1} \xV{1} \xR {1F00} {1FFF} \xN{Greek Extended}\par +\xI{sym04} \xV{1} \xR {2000} {206F} \xN{General Punctuation}\par +\xI{sym05} \xV{1} \xR {2070} {209F} \xN{Superscripts and Subscripts}\par +\xI{sym06} \xV{1} \xR {20A0} {20CF} \xN{Currency Symbols}\par +\xI{sym07} \xV{1} \xR {20D0} {20FF} \xN{Combining Diacritical Marks for Symbols}\par +\xI{sym08} \xV{1} \xR {2100} {214F} \xN{Letterlike Symbols}\par +\xI{sym09} \xV{1} \xR {2150} {218F} \xN{Number Forms}\par +\xI{sym10} \xV{1} \xR {2190} {21FF} \xN{Arrows}\par +\xI{sym11} \xV{1} \xR {2200} {22FF} \xN{Mathematical Operators}\par +\xI{sym12} \xV{1} \xR {2300} {23FF} \xN{Miscellaneous Technical}\par +\xI{sym13} \xV{1} \xR {2400} {243F} \xN{Control Pictures}\par +\xI{sym14} \xV{1} \xR {2440} {245F} \xN{Optical Character Recognition}\par +\xI{sym15} \xV{1} \xR {2460} {24FF} \xN{Enclosed Alphanumerics}\par +\xI{sym16} \xV{1} \xR {2500} {257F} \xN{Box Drawing}\par +\xI{sym17} \xV{1} \xR {2580} {259F} \xN{Block Elements}\par +\xI{sym18} \xV{1} \xR {25A0} {25FF} \xN{Geometric Shapes}\par +\xI{sym19} \xV{1} \xR {2600} {26FF} \xN{Miscellaneous Symbols}\par +\xI{sym20} \xV{1} \xR {2700} {27BF} \xN{Dingbats}\par +\xI{sym21} \xV{1} \xR {27C0} {27EF} \xN{Miscellaneous Mathematical Symbols-A}\par +\xI{sym22} \xV{1} \xR {27F0} {27FF} \xN{Supplemental Arrows-A}\par +\xI{brai} \xV{1} \xR {2800} {28FF} \xN{Braille Patterns}\par +\xI{sym23} \xV{1} \xR {2900} {297F} \xN{Supplemental Arrows-B}\par +\xI{sym24} \xV{1} \xR {2980} {29FF} \xN{Miscellaneous Mathematical Symbols-B}\par +\xI{sym25} \xV{1} \xR {2A00} {2AFF} \xN{Supplemental Mathematical Operators}\par +\xI{sym26} \xV{1} \xR {2B00} {2BFF} \xN{Miscellaneous Symbols and Arrows}\par +\xI{glag} \xV{1} \xR {2C00} {2C5F} \xN{Glagolitic}\par +\xI{latnC} \xV{1} \xR {2C60} {2C7F} \xN{Latin Extended-C}\par +\xI{copt} \xV{1} \xR {2C80} {2CFF} \xN{Coptic}\par +\xI{geor1} \xV{1} \xR {2D00} {2D2F} \xN{Georgian Supplement}\par +\xI{tfng} \xV{1} \xR {2D30} {2D7F} \xN{Tifinagh}\par +\xI{ethi2} \xV{1} \xR {2D80} {2DDF} \xN{Ethiopic Extended}\par +\xI{cyrlA} \xV{2} \xR {2DE0} {2DFF} \xN{Cyrillic Extended-A}\par +\xI{sym27} \xV{1} \xR {2E00} {2E7F} \xN{Supplemental Punctuation}\par +\xI{cjk01} \xV{1} \xR {2E80} {2EFF} \xN{CJK Radicals Supplement}\par +\xI{cjk02} \xV{1} \xR {2F00} {2FDF} \xN{Kangxi Radicals}\par +\xI{cjk03} \xV{1} \xR {2FF0} {2FFF} \xN{Ideographic Description Characters}\par +\xI{cjk04} \xV{1} \xR {3000} {303F} \xN{CJK Symbols and Punctuation}\par +\xI{hira} \xV{1} \xR {3040} {309F} \xN{Hiragana}\par +\xI{kana} \xV{1} \xR {30A0} {30FF} \xN{Katakana}\par +\xI{bopo} \xV{1} \xR {3100} {312F} \xN{Bopomofo}\par +\xI{hang2} \xV{1} \xR {3130} {318F} \xN{Hangul Compatibility Jamo}\par +\xI{cjk05} \xV{1} \xR {3190} {319F} \xN{Kanbun}\par +\xI{bopo1} \xV{1} \xR {31A0} {31BF} \xN{Bopomofo Extended}\par +\xI{cjk06} \xV{1} \xR {31C0} {31EF} \xN{CJK Strokes}\par +\xI{kana1} \xV{1} \xR {31F0} {31FF} \xN{Katakana Phonetic Extensions}\par +\xI{cjk07} \xV{1} \xR {3200} {32FF} \xN{Enclosed CJK Letters and Months}\par +\xI{cjk08} \xV{1} \xR {3300} {33FF} \xN{CJK Compatibility}\par +\xI{haniA} \xV{1} \xR {3400} {4DBF} \xN{CJK Unified Ideographs Extension A}\par +\xI{sym28} \xV{1} \xR {4DC0} {4DFF} \xN{Yijing Hexagram Symbols}\par +\xI{hani} \xV{1} \xR {4E00} {9FFF} \xN{CJK Unified Ideographs}\par +\xI{yiii} \xV{1} \xR {A000} {A48F} \xN{Yi Syllables}\par +\xI{yiii1} \xV{1} \xR {A490} {A4CF} \xN{Yi Radicals}\par +\xI{lisu} \xV{2} \xR {A4D0} {A4FF} \xN{Lisu}\par +\xI{vaii} \xV{2} \xR {A500} {A63F} \xN{Vai}\par +\xI{cyrlB} \xV{2} \xR {A640} {A69F} \xN{Cyrillic Extended-B}\par +\xI{bamu} \xV{2} \xR {A6A0} {A6FF} \xN{Bamum}\par +\xI{sym29} \xV{1} \xR {A700} {A71F} \xN{Modifier Tone Letters}\par +\xI{latnD} \xV{1} \xR {A720} {A7FF} \xN{Latin Extended-D}\par +\xI{sylo} \xV{1} \xR {A800} {A82F} \xN{Syloti Nagri}\par +\xI{sym39} \xV{2} \xR {A830} {A83F} \xN{Common Indic Number Forms}\par +\xI{phag} \xV{1} \xR {A840} {A87F} \xN{Phags-pa}\par +\xI{saur} \xV{2} \xR {A880} {A8DF} \xN{Saurashtra}\par +\xI{deva1} \xV{2} \xR {A8E0} {A8FF} \xN{Devanagari Extended}\par +\xI{kali} \xV{2} \xR {A900} {A92F} \xN{Kayah Li}\par +\xI{rjng} \xV{2} \xR {A930} {A95F} \xN{Rejang}\par +\xI{hangA} \xV{2} \xR {A960} {A97F} \xN{Hangul Jamo Extended-A}\par +\xI{java} \xV{2} \xR {A980} {A9DF} \xN{Javanese}\par +\xI{mymrB} \xV{2} \xR {A9E0} {A9FF} \xN{Myanmar Extended-B}\par +\xI{cham} \xV{2} \xR {AA00} {AA5F} \xN{Cham}\par +\xI{mymrA} \xV{2} \xR {AA60} {AA7F} \xN{Myanmar Extended-A}\par +\xI{tavt} \xV{2} \xR {AA80} {AADF} \xN{Tai Viet}\par +\xI{mtei1} \xV{2} \xR {AAE0} {AAFF} \xN{Meetei Mayek Extensions}\par +\xI{ethiA} \xV{2} \xR {AB00} {AB2F} \xN{Ethiopic Extended-A}\par +\xI{latnE} \xV{2} \xR {AB30} {AB6F} \xN{Latin Extended-E}\par +\xI{cher1} \xV{2} \xR {AB70} {ABBF} \xN{Cherokee Supplement}\par +\xI{mtei} \xV{2} \xR {ABC0} {ABFF} \xN{Meetei Mayek}\par +\xI{hang} \xV{1} \xR {AC00} {D7AF} \xN{Hangul Syllables}\par +\xI{hangB} \xV{2} \xR {D7B0} {D7FF} \xN{Hangul Jamo Extended-B}\par +\xI{spc01} \xV{1} \xR {D800} {DB7F} \xN{High Surrogates}\par +\xI{spc02} \xV{1} \xR {DB80} {DBFF} \xN{High Private Use Surrogates}\par +\xI{spc03} \xV{1} \xR {DC00} {DFFF} \xN{Low Surrogates}\par +\xI{spc04} \xV{1} \xR {E000} {F8FF} \xN{Private Use Area}\par +\xI{hani1} \xV{1} \xR {F900} {FAFF} \xN{CJK Compatibility Ideographs}\par +\xI{latn6} \xV{1} \xR {FB00} {FB4F} \xN{Alphabetic Presentation Forms}\par +\xI{arab2} \xV{1} \xR {FB50} {FDFF} \xN{Arabic Presentation Forms-A}\par +\xI{spc05} \xV{1} \xR {FE00} {FE0F} \xN{Variation Selectors}\par +\xI{cjk09} \xV{1} \xR {FE10} {FE1F} \xN{Vertical Forms}\par +\xI{sym30} \xV{1} \xR {FE20} {FE2F} \xN{Combining Half Marks}\par +\xI{cjk10} \xV{1} \xR {FE30} {FE4F} \xN{CJK Compatibility Forms}\par +\xI{cjk11} \xV{1} \xR {FE50} {FE6F} \xN{Small Form Variants}\par +\xI{arab3} \xV{1} \xR {FE70} {FEFF} \xN{Arabic Presentation Forms-B}\par +\xI{cjk12} \xV{1} \xR {FF00} {FFEF} \xN{Halfwidth and Fullwidth Forms}\par +\xI{spc06} \xV{1} \xR {FFF0} {FFFF} \xN{Specials}\par +\xI{linb} \xV{1} \xR {10000} {1007F} \xN{Linear B Syllabary}\par +\xI{linb1} \xV{1} \xR {10080} {100FF} \xN{Linear B Ideograms}\par +\xI{sym31} \xV{1} \xR {10100} {1013F} \xN{Aegean Numbers}\par +\xI{grek2} \xV{1} \xR {10140} {1018F} \xN{Ancient Greek Numbers}\par +\xI{sym40} \xV{2} \xR {10190} {101CF} \xN{Ancient Symbols}\par +\xI{sym41} \xV{2} \xR {101D0} {101FF} \xN{Phaistos Disc}\par +\xI{lyci} \xV{2} \xR {10280} {1029F} \xN{Lycian}\par +\xI{cari} \xV{2} \xR {102A0} {102DF} \xN{Carian}\par +\xI{copt1} \xV{2} \xR {102E0} {102FF} \xN{Coptic Epact Numbers}\par +\xI{ital} \xV{1} \xR {10300} {1032F} \xN{Old Italic}\par +\xI{goth} \xV{1} \xR {10330} {1034F} \xN{Gothic}\par +\xI{perm} \xV{2} \xR {10350} {1037F} \xN{Old Permic}\par +\xI{ugar} \xV{1} \xR {10380} {1039F} \xN{Ugaritic}\par +\xI{xpeo} \xV{1} \xR {103A0} {103DF} \xN{Old Persian}\par +\xI{dsrt} \xV{1} \xR {10400} {1044F} \xN{Deseret}\par +\xI{shaw} \xV{1} \xR {10450} {1047F} \xN{Shavian}\par +\xI{osma} \xV{1} \xR {10480} {104AF} \xN{Osmanya}\par +\xI{osge} \xV{2} \xR {104B0} {104FF} \xN{Osage}\par +\xI{elba} \xV{2} \xR {10500} {1052F} \xN{Elbasan}\par +\xI{aghb} \xV{2} \xR {10530} {1056F} \xN{Caucasian Albanian}\par +\xI{lina} \xV{2} \xR {10600} {1077F} \xN{Linear A}\par +\xI{cprt} \xV{1} \xR {10800} {1083F} \xN{Cypriot Syllabary}\par +\xI{armi} \xV{2} \xR {10840} {1085F} \xN{Imperial Aramaic}\par +\xI{palm} \xV{2} \xR {10860} {1087F} \xN{Palmyrene}\par +\xI{nbat} \xV{2} \xR {10880} {108AF} \xN{Nabataean}\par +\xI{hatr} \xV{2} \xR {108E0} {108FF} \xN{Hatran}\par +\xI{phnx} \xV{1} \xR {10900} {1091F} \xN{Phoenician}\par +\xI{lydi} \xV{2} \xR {10920} {1093F} \xN{Lydian}\par +\xI{mero} \xV{2} \xR {10980} {1099F} \xN{Meroitic Hieroglyphs}\par +\xI{merc} \xV{2} \xR {109A0} {109FF} \xN{Meroitic Cursive}\par +\xI{khar} \xV{1} \xR {10A00} {10A5F} \xN{Kharoshthi}\par +\xI{sarb} \xV{2} \xR {10A60} {10A7F} \xN{Old South Arabian}\par +\xI{narb} \xV{2} \xR {10A80} {10A9F} \xN{Old North Arabian}\par +\xI{mani} \xV{2} \xR {10AC0} {10AFF} \xN{Manichaean}\par +\xI{avst} \xV{2} \xR {10B00} {10B3F} \xN{Avestan}\par +\xI{prti} \xV{2} \xR {10B40} {10B5F} \xN{Inscriptional Parthian}\par +\xI{phli} \xV{2} \xR {10B60} {10B7F} \xN{Inscriptional Pahlavi}\par +\xI{phlp} \xV{2} \xR {10B80} {10BAF} \xN{Psalter Pahlavi}\par +\xI{orkh} \xV{2} \xR {10C00} {10C4F} \xN{Old Turkic}\par +\xI{hung} \xV{2} \xR {10C80} {10CFF} \xN{Old Hungarian}\par +\xI{rohg} \xV{4} \xR {10D00} {10D3F} \xN{Hanifi Rohingya}\par +\xI{sym42} \xV{2} \xR {10E60} {10E7F} \xN{Rumi Numeral Symbols}\par +\xI{yezi} \xV{4} \xR {10E80} {10EBF} \xN{Yezidi}\par +\xI{sogo} \xV{4} \xR {10F00} {10F2F} \xN{Old Sogdian}\par +\xI{sogd} \xV{4} \xR {10F30} {10F6F} \xN{Sogdian}\par +\xI{chrs} \xV{4} \xR {10FB0} {10FDF} \xN{Chorasmian}\par +\xI{elym} \xV{4} \xR {10FE0} {10FFF} \xN{Elymaic}\par +\xI{brah} \xV{2} \xR {11000} {1107F} \xN{Brahmi}\par +\xI{kthi} \xV{2} \xR {11080} {110CF} \xN{Kaithi}\par +\xI{sora} \xV{2} \xR {110D0} {110FF} \xN{Sora Sompeng}\par +\xI{cakm} \xV{2} \xR {11100} {1114F} \xN{Chakma}\par +\xI{mahj} \xV{2} \xR {11150} {1117F} \xN{Mahajani}\par +\xI{shrd} \xV{2} \xR {11180} {111DF} \xN{Sharada}\par +\xI{sinh1} \xV{2} \xR {111E0} {111FF} \xN{Sinhala Archaic Numbers}\par +\xI{khoj} \xV{2} \xR {11200} {1124F} \xN{Khojki}\par +\xI{mult} \xV{2} \xR {11280} {112AF} \xN{Multani}\par +\xI{sind} \xV{2} \xR {112B0} {112FF} \xN{Khudawadi}\par +\xI{gran} \xV{2} \xR {11300} {1137F} \xN{Grantha}\par +\xI{newa} \xV{2} \xR {11400} {1147F} \xN{Newa}\par +\xI{tirh} \xV{2} \xR {11480} {114DF} \xN{Tirhuta}\par +\xI{sidd} \xV{2} \xR {11580} {115FF} \xN{Siddham}\par +\xI{modi} \xV{2} \xR {11600} {1165F} \xN{Modi}\par +\xI{mong1} \xV{2} \xR {11660} {1167F} \xN{Mongolian Supplement}\par +\xI{takr} \xV{2} \xR {11680} {116CF} \xN{Takri}\par +\xI{ahom} \xV{2} \xR {11700} {1174F} \xN{Ahom}\par +\xI{dogr} \xV{4} \xR {11800} {1184F} \xN{Dogra}\par +\xI{wara} \xV{2} \xR {118A0} {118FF} \xN{Warang Citi}\par +\xI{diak} \xV{4} \xR {11900} {1195F} \xN{Dives Akuru}\par +\xI{nand} \xV{4} \xR {119A0} {119FF} \xN{Nandinagari}\par +\xI{zanb} \xV{3} \xR {11A00} {11A4F} \xN{Zanabazar Square}\par +\xI{soyo} \xV{3} \xR {11A50} {11AAF} \xN{Soyombo}\par +\xI{pauc} \xV{2} \xR {11AC0} {11AFF} \xN{Pau Cin Hau}\par +\xI{bhks} \xV{2} \xR {11C00} {11C6F} \xN{Bhaiksuki}\par +\xI{marc} \xV{2} \xR {11C70} {11CBF} \xN{Marchen}\par +\xI{gonm} \xV{3} \xR {11D00} {11D5F} \xN{Masaram Gondi}\par +\xI{gong} \xV{4} \xR {11D60} {11DAF} \xN{Gunjala Gondi}\par +\xI{maka} \xV{4} \xR {11EE0} {11EFF} \xN{Makasar}\par +\xI{lisu1} \xV{4} \xR {11FB0} {11FBF} \xN{Lisu Supplement}\par +\xI{taml1} \xV{4} \xR {11FC0} {11FFF} \xN{Tamil Supplement}\par +\xI{xsux} \xV{1} \xR {12000} {123FF} \xN{Cuneiform}\par +\xI{xsux1} \xV{1} \xR {12400} {1247F} \xN{Cuneiform Numbers and Punctuation}\par +\xI{xsux2} \xV{2} \xR {12480} {1254F} \xN{Early Dynastic Cuneiform}\par +\xI{egyp} \xV{2} \xR {13000} {1342F} \xN{Egyptian Hieroglyphs}\par +\xI{egyp1} \xV{4} \xR {13430} {1343F} \xN{Egyptian Hieroglyph Format Controls}\par +\xI{hluw} \xV{2} \xR {14400} {1467F} \xN{Anatolian Hieroglyphs}\par +\xI{bamu1} \xV{2} \xR {16800} {16A3F} \xN{Bamum Supplement}\par +\xI{mroo} \xV{2} \xR {16A40} {16A6F} \xN{Mro}\par +\xI{bass} \xV{2} \xR {16AD0} {16AFF} \xN{Bassa Vah}\par +\xI{hmng} \xV{2} \xR {16B00} {16B8F} \xN{Pahawh Hmong}\par +\xI{medf} \xV{4} \xR {16E40} {16E9F} \xN{Medefaidrin}\par +\xI{plrd} \xV{2} \xR {16F00} {16F9F} \xN{Miao}\par +\xI{cjk14} \xV{2} \xR {16FE0} {16FFF} \xN{Ideographic Symbols and Punctuation}\par +\xI{tang} \xV{2} \xR {17000} {187FF} \xN{Tangut}\par +\xI{tang1} \xV{2} \xR {18800} {18AFF} \xN{Tangut Components}\par +\xI{kits} \xV{4} \xR {18B00} {18CFF} \xN{Khitan Small Script}\par +\xI{tang2} \xV{4} \xR {18D00} {18D7F} \xN{Tangut Supplement}\par +\xI{kana2} \xV{2} \xR {1B000} {1B0FF} \xN{Kana Supplement}\par +\xI{kanaA} \xV{3} \xR {1B100} {1B12F} \xN{Kana Extended-A}\par +\xI{kana3} \xV{4} \xR {1B130} {1B16F} \xN{Small Kana Extension}\par +\xI{nshu} \xV{3} \xR {1B170} {1B2FF} \xN{Nushu}\par +\xI{dupl} \xV{2} \xR {1BC00} {1BC9F} \xN{Duployan}\par +\xI{sym53} \xV{2} \xR {1BCA0} {1BCAF} \xN{Shorthand Format Controls}\par +\xI{sym32} \xV{1} \xR {1D000} {1D0FF} \xN{Byzantine Musical Symbols}\par +\xI{sym33} \xV{1} \xR {1D100} {1D1FF} \xN{Musical Symbols}\par +\xI{sym34} \xV{1} \xR {1D200} {1D24F} \xN{Ancient Greek Musical Notation}\par +\xI{sym58} \xV{4} \xR {1D2E0} {1D2FF} \xN{Mayan Numerals}\par +\xI{sym35} \xV{1} \xR {1D300} {1D35F} \xN{Tai Xuan Jing Symbols}\par +\xI{sym36} \xV{1} \xR {1D360} {1D37F} \xN{Counting Rod Numerals}\par +\xI{sym37} \xV{1} \xR {1D400} {1D7FF} \xN{Mathematical Alphanumeric Symbols}\par +\xI{sgnw} \xV{2} \xR {1D800} {1DAAF} \xN{Sutton SignWriting}\par +\xI{glag1} \xV{2} \xR {1E000} {1E02F} \xN{Glagolitic Supplement}\par +\xI{hmnp} \xV{4} \xR {1E100} {1E14F} \xN{Nyiakeng Puachue Hmong}\par +\xI{wcho} \xV{4} \xR {1E2C0} {1E2FF} \xN{Wancho}\par +\xI{mend} \xV{2} \xR {1E800} {1E8DF} \xN{Mende Kikakui}\par +\xI{adlm} \xV{2} \xR {1E900} {1E95F} \xN{Adlam}\par +\xI{sym59} \xV{4} \xR {1EC70} {1ECBF} \xN{Indic Siyaq Numbers}\par +\xI{sym61} \xV{4} \xR {1ED00} {1ED4F} \xN{Ottoman Siyaq Numbers}\par +\xI{sym51} \xV{2} \xR {1EE00} {1EEFF} \xN{Arabic Mathematical Alphabetic Symbols}\par +\xI{sym43} \xV{2} \xR {1F000} {1F02F} \xN{Mahjong Tiles}\par +\xI{sym44} \xV{2} \xR {1F030} {1F09F} \xN{Domino Tiles}\par +\xI{sym46} \xV{2} \xR {1F0A0} {1F0FF} \xN{Playing Cards}\par +\xI{sym45} \xV{2} \xR {1F100} {1F1FF} \xN{Enclosed Alphanumeric Supplement}\par +\xI{cjk13} \xV{2} \xR {1F200} {1F2FF} \xN{Enclosed Ideographic Supplement}\par +\xI{sym47} \xV{2} \xR {1F300} {1F5FF} \xN{Miscellaneous Symbols and Pictographs}\par +\xI{sym48} \xV{2} \xR {1F600} {1F64F} \xN{Emoticons}\par +\xI{sym54} \xV{2} \xR {1F650} {1F67F} \xN{Ornamental Dingbats}\par +\xI{sym49} \xV{2} \xR {1F680} {1F6FF} \xN{Transport and Map Symbols}\par +\xI{sym50} \xV{2} \xR {1F700} {1F77F} \xN{Alchemical Symbols}\par +\xI{sym55} \xV{2} \xR {1F780} {1F7FF} \xN{Geometric Shapes Extended}\par +\xI{sym56} \xV{2} \xR {1F800} {1F8FF} \xN{Supplemental Arrows-C}\par +\xI{sym57} \xV{2} \xR {1F900} {1F9FF} \xN{Supplemental Symbols and Pictographs}\par +\xI{sym60} \xV{4} \xR {1FA00} {1FA6F} \xN{Chess Symbols}\par +\xI{sym62} \xV{4} \xR {1FA70} {1FAFF} \xN{Symbols and Pictographs Extended-A}\par +\xI{sym63} \xV{4} \xR {1FB00} {1FBFF} \xN{Symbols for Legacy Computing}\par +\xI{haniB} \xV{1} \xR {20000} {2A6DF} \xN{CJK Unified Ideographs Extension B}\par +\xI{haniC} \xV{2} \xR {2A700} {2B73F} \xN{CJK Unified Ideographs Extension C}\par +\xI{haniD} \xV{2} \xR {2B740} {2B81F} \xN{CJK Unified Ideographs Extension D}\par +\xI{haniE} \xV{2} \xR {2B820} {2CEAF} \xN{CJK Unified Ideographs Extension E}\par +\xI{haniF} \xV{3} \xR {2CEB0} {2EBEF} \xN{CJK Unified Ideographs Extension F}\par +\xI{hani2} \xV{1} \xR {2F800} {2FA1F} \xN{CJK Compatibility Ideographs Supplement}\par +\xI{haniG} \xV{4} \xR {30000} {3134F} \xN{CJK Unified Ideographs Extension G}\par +\xI{spc07} \xV{1} \xR {E0000} {E007F} \xN{Tags}\par +\xI{spc08} \xV{1} \xR {E0100} {E01EF} \xN{Variation Selectors Supplement}\par +\xI{spc09} \xV{1} \xR {F0000} {FFFFF} \xN{Supplementary Private Use Area-A}\par +\xI{spc10} \xV{1} \xR{100000}{10FFFF} \xN{Supplementary Private Use Area-B}\par +%///////////////////////////// +\end{quote} + +\paragraph{ブロックIDの命名規則\<(参考)} +\mbox{} +\begin{itemize} +\item Unicodeブロック名にスクリプト(用字系)の名前が含まれるものは、 + それに対するISO 15924のコード(4文字)を用いた。 + 単一のスクリプトのブロックが複数ある場合は、 + 名前が“Extended-A,B,……”のものは|A|,|B|,……を、 + それ以外のものは|1|,|2|,…… + (一部符号値順でない)を末尾に付加した。 + \begin{quote} + “Arabic”→ |arab|; “Latin Extended-C”→ |latnC| + \end{quote} + なお、“Hiragana”のコードは |hira| だが“Katakana”は |kana| で + あることに注意。 +\item それ以外は、CJK関係(|cjk|)、特殊用途(|spc|)、 + それ以外(|sym|)の3種類に恣意的に分類して、 + 後ろに2桁の番号を付けた(|cjk12| など)。 +\end{itemize} + +%------------------- +\subsection{どのブロックが使用できるか} + +以下では、各モードCCVにおいてサポートされるブロックの全容に +ついて説明する。 + +\paragraph{モードCCVが1の場合} +CCV~1ではUnicodeブロックの再分割が存在しないので、 +サポートされるブロックの全体は以下のようになる。 + +\begin{itemize} +\item 前掲の通常ブロックの表で「CCV」欄が1の + ブロック全て。 +\end{itemize} + +\paragraph{モードCCVが2の場合} + +CCV~2では |cjk12|“Halfwidth and Fullwidth Forms”のブロックが +次の3つの下位ブロックに分割されている。 + +\begin{quotation} + \newcommand\xE[2]{\noindent + \makebox[4em][l]{\texttt{#1}}\textsl{#2}\par} + \xE{cjk1a}{Halfwidth and Fullwidth Forms/Other} + \xE{cjk1b}{Halfwidth and Fullwidth Forms/Latin} + \xE{cjk1c}{Halfwidth and Fullwidth Forms/Kana} +\end{quotation} + +\begin{itemize} +\item |cjk1b|\Means ASCII 英数字の全角互換形。\par + |U+FF10|~|U+FF19|,|U+FF21|~|U+FF3A|,|U+FF41|~|U+FF5A| +\item |cjk1c|\Means カタカナの半角互換形。 + 句読点等の記号は含まない。\par + |U+FF66|~|U+FF6F|,|U+FF71|~|U+FF9D| +\item |cjk1a|\Means |cjk12| から |cjk1b|、|cjk1c| を除いた残り。 +\end{itemize} + +従って、サポートされるブロックの全体は以下のようになる。 + +\begin{itemize} +\item 前掲の通常ブロックの表で「CCV」欄が2以下のブロック全て。 + \Note |cjk12| のブロックも使用可能で、これは + “Halfwidth and Fullwidth Forms”の全体を表す。 +\item |cjk12| の下位ブロック\Means + |cjk1a|、|cjk1b|、|cjk1c| の3つ。 +\end{itemize} + + +\paragraph{モードCCVが3の場合} + +CCV~3では |latn1|“Latin-1 Supplement”のブロックが +次の2つの下位ブロックに分割されている。 + +\begin{quotation} + \newcommand\xE[2]{\noindent + \makebox[4em][l]{\texttt{#1}}\textsl{#2}\par} + \xE{latnx}{Latin-1 Supplement/Other} + \xE{latny}{Latin-1 Supplement/Latin} +\end{quotation} + +\begin{itemize} +\item |latny|\Means ラテン文字であるもの。\par + |U+FF10|~|U+FF19|,|U+FF21|~|U+FF3A|,|U+FF41|~|U+FF5A| +\item |latnx|\Means |latn1| から |latny| を除いた残り。 +\end{itemize} + +従って、サポートされるブロックの全体は以下のようになる。 + +\begin{itemize} +\item 前掲の通常ブロックの表にあるブロック全て。 + \Note |cjk12|、|latn1| のブロックも使用可能。 +\item |cjk12| の下位ブロック\Means + |cjk1a|、|cjk1b|、|cjk1c| の3つ。 +\item |latn1| の下位ブロック\Means + |latnx|、|latny| の2つ。 +\end{itemize} + +%=========================================================== +\section{各モードにおける和文カテゴリの設定} +\label{sec:Values} + +(やっぱりあとで書く) + +\end{document} + +■ 各モードでの kcatcode の値 + + モード CCV が 1 の場合。 + + 記号 fc pc pcv pnc JIS CID 名称 + latn X - - - * Basic Latin + latn1 O - - X * * Latin-1 Supplement + latnA O - - X * Latin Extended-A + latnB O - - X * Latin Extended-B + latn2 O - - X * IPA Extensions + sym01 O - - X * Spacing Modifier Letters + sym02 O - - X * Combining Diacritical Marks + grek O - X - * * Greek and Coptic + cyrl O - X - * * Cyrillic + hang1 H - - - + Hangul Jamo + latn3 O - - X * Latin Extended Additional + grek1 O - X - * Greek Extended + sym04 O - - X * * General Punctuation + sym05 O - - X * Superscripts and Subscripts + sym06 O - - X * Currency Symbols + sym07 O - - X * Combining Diacritical Marks for Symbols + sym08 O - - X * * Letterlike Symbols + sym09 O - - X * Number Forms + sym10 O - - X * * Arrows + sym11 O - - X * * Mathematical Operators + sym12 O - - X * * Miscellaneous Technical + sym13 O - - X * Control Pictures + sym15 O - - - * Enclosed Alphanumerics + sym16 O - - X * * Box Drawing + sym17 O - - X * Block Elements + sym18 O - - X * * Geometric Shapes + sym19 O - - X * * Miscellaneous Symbols + sym20 O - - X * Dingbats + sym23 O - - X * Supplemental Arrows-B + sym24 O - - X * Miscellaneous Mathematical Symbols-B + sym26 O - - X * Miscellaneous Symbols and Arrows + cjk01 I - - - * CJK Radicals Supplement + cjk02 I - - - * Kangxi Radicals + cjk03 I - - - + Ideographic Description Characters + cjk04 O - - - * * CJK Symbols and Punctuation + hira K - - - * * Hiragana + kana K - - - * * Katakana + bopo I - - - + Bopomofo + hang2 H - - - + Hangul Compatibility Jamo + cjk05 I - - - * Kanbun + bopo1 I - - - + Bopomofo Extended + cjk06 I - - - + CJK Strokes + kana1 K - - - * Katakana Phonetic Extensions + cjk07 O - - - * Enclosed CJK Letters and Months + cjk08 O - - - * CJK Compatibility + haniA I - - - * CJK Unified Ideographs Extension A + hani I - - - * * CJK Unified Ideographs + yiii O - - - + Yi Syllables + yiii1 O - - - + Yi Radicals + hangA H - - - Hangul Jamo Extended-B + hang H - - - + Hangul Syllables + hangB H - - - Hangul Jamo Extended-B + spc04 O - - X * Private Use Area + hani1 I - - - * CJK Compatibility Ideographs + latn6 O - - X * Alphabetic Presentation Forms + cjk09 O - - - * Vertical Forms + cjk10 O - - - * CJK Compatibility Forms + cjk11 O - - - + Small Form Variants + cjk12 O - - - * * Halfwidth and Fullwidth Forms + cjk13 O - - - Enclosed Ideographic Supplement + haniB I - - - * CJK Unified Ideographs Extension B + haniC I - - - CJK Unified Ideographs Extension C + hani2 I - - - * CJK Compatibility Ideographs Supplement + O X - - (その他のブロック) + all, prc, pc1, pnc の欄はそれぞれ forcecjk, prefercjk, prefercjkvar, + prefernoncjk モードでの kcatcode の値。値の意味: X=noncjk(15), + I=kanji(16), K=kana(17), O=cjk(18), H=hangul(19)。JIS 欄の * はその + ブロック内の文字に JIS X 0208 に含まれるものがあることを示す。また CID + 欄の * は Adobe-Japan1 に、+ は Adobe-GB1, Adobe-CNS1, Adobe-Korea1 に + 含まれるものがあることを示す。 + + モード CCV が 2 の場合、cjk12 の再分割について以下のようになる。 + + 記号 fc pc pcv pnc JIS CID + cjk1a O - - - * * cjk12 で cjk1b, cjk1c 以外 + cjk1b K - - - * * ASCII 英数字の全角互換形 + cjk1c K - - - * * カタカナの半角互換形(記号は含まず) + + ※ upTeX の CCV が 2 でモード CCV 指定が 1 の場合は cjk1a~cjk1c の + 設定値は cjk12 のものに従う。 + diff --git a/macros/jptex/latex/pxtatescale/LICENSE b/macros/jptex/latex/pxtatescale/LICENSE new file mode 100644 index 0000000000..d2d2a02dd5 --- /dev/null +++ b/macros/jptex/latex/pxtatescale/LICENSE @@ -0,0 +1,24 @@ +This software is distributed under the MIT License. + +The MIT License + +Copyright (c) 2013 Takayuki YATO (aka. "ZR") +Copyright (c) 2017 Hironobu Yamashita (aka. "aminophen") + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/macros/jptex/latex/pxtatescale/README b/macros/jptex/latex/pxtatescale/README new file mode 100644 index 0000000000..5f811cb249 --- /dev/null +++ b/macros/jptex/latex/pxtatescale/README @@ -0,0 +1,41 @@ +pxtatescale +=========== + +LaTeX: to make scaling work also with vertical direction of (u)pTeX +and dvipdfmx + +The graphics' feature of "scaling" (`\scalebox`, `\reflextbox` and +`\resizebox`) with dvipdfmx driver results in a wrong direction of +stretch, when used in the vertical direction of pTeX. This behavior +is caused by the fact that internal X and Y directions of pTeX +`\tate` mode correspond to physical top-to-bottom and right-to-left +directions respectively. This package provides a fix for the problem. + +### Installation + + - `*.sty` → $TEXMF/tex/latex/pxtatescale + +### Usage + +Load this package after graphicx (or graphics) package. + + \documentclass[dvipdfmx]{article} + \usepackage{graphicx} % or graphics + \usepackage{pxtatescale} + +Note that this package is of no use unless you work on e-(u)pTeX + +dvipdfmx combination. + +Revision History +---------------- + + * 2013/03/25 v0.2 + - The first public version. (TY) + * 2017/01/16 v0.3 + - Updated for new dvipdfmx.def with pdf-based scaling. (HY) + * 2017/01/21 v0.4 + - Ensure graphics driver `dvipdfmx` before applying a patch. (HY) + +------------------ +Hironobu Yamashita +https://github.com/aminophen diff --git a/macros/jptex/latex/pxtatescale/pxtatescale.sty b/macros/jptex/latex/pxtatescale/pxtatescale.sty new file mode 100644 index 0000000000..9f8745d354 --- /dev/null +++ b/macros/jptex/latex/pxtatescale/pxtatescale.sty @@ -0,0 +1,43 @@ +% pxtatescale.sty +\NeedsTeXFormat{pLaTeX2e} +\ProvidesPackage{pxtatescale}[2017/01/21 v0.4] +\def\pxqtg@pkgname{pxtatescale} +\@ifpackageloaded{graphics}{}{%else + \PackageError\pxqtg@pkgname{Package 'graphics' not loaded}\@ehc} +\begingroup +% the patch is necessary only when dvipdfmx.def is used +\def\pxqtg@tempa{dvipdfmx.def} +\ifx\Gin@driver\pxqtg@tempa %%% if-group +% prepare +\def\pxqtg@patch@status{1}% +\def\pxqtg@try@patch#1#2#3{% + \edef\pxqtg@tempcsname{\string#1}% + \def\pxqtg@temp{#2}\ifx#1\pxqtg@temp + \gdef#1{#3}% + \def\pxqtg@patch@status{0}% + \fi} +% first trial (new definition) +\pxqtg@try@patch\Gscale@start + {\special{pdf:btrans}% + \special{pdf:literal \Gscale@x\space 0 0 \Gscale@y\space 0 0 cm}} + {\special{pdf:btrans}% + \special{pdf:literal + \iftdir \Gscale@y\space 0 0 \Gscale@x\space + \else \Gscale@x\space 0 0 \Gscale@y\space + \fi 0 0 cm}} +\ifnum\pxqtg@patch@status=\z@\else + % second trial (old definition) + \pxqtg@try@patch\Gscale@start + {\special{pdf:btrans xscale \Gscale@x\space yscale \Gscale@y}}% + {\special{pdf:btrans + \iftdir xscale \Gscale@y\space yscale \Gscale@x + \else xscale \Gscale@x\space yscale \Gscale@y + \fi}} +\fi +\ifnum\pxqtg@patch@status=\z@ + \PackageInfo\pxqtg@pkgname{Patch applied to \pxqtg@tempcsname}% +\else + \PackageWarningNoLine\pxqtg@pkgname{Patch cannot be applied to \pxqtg@tempcsname}% +\fi +\fi %%% if-group end +\endgroup diff --git a/macros/latex/contrib/gentombow/LICENSE b/macros/latex/contrib/gentombow/LICENSE deleted file mode 100644 index 9661ce7b8d..0000000000 --- a/macros/latex/contrib/gentombow/LICENSE +++ /dev/null @@ -1,27 +0,0 @@ -Copyright (c) 2016-2020 Hironobu Yamashita -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - -* Redistributions of source code must retain the above copyright notice, this - list of conditions and the following disclaimer. - -* Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - -* Neither the name of the copyright holder nor the names of its contributors - may be used to endorse or promote products derived from this software - without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE -FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER -CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, -OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/macros/latex/contrib/gentombow/README.md b/macros/latex/contrib/gentombow/README.md deleted file mode 100644 index 94cbdbdac0..0000000000 --- a/macros/latex/contrib/gentombow/README.md +++ /dev/null @@ -1,71 +0,0 @@ -# gentombow - -This bundle provides a LaTeX package for generating Japanese-style -crop marks (called 'tombow' in Japanese) for practical use in -self-publishing. -The core feature of "gentombow.sty" is based on pLaTeX kernel. - -## Supported engines - -All packages except bounddvi.sty works with the followings: -- LaTeX + dvips/dvipdfmx -- pLaTeX/upLaTeX + dvips/dvipdfmx -- pdfLaTeX -- LuaLaTeX -- XeLaTeX - -## Bundle contents - -- gentombow.sty: - Generate crop marks (called 'tombow' in Japanese) for - practical use in self-publishing. - It provides the core 'tombow' feature if not available. -- pxgentombow.sty: - (Superseded by gentombow.sty; for compatibility only.) -- bounddvi.sty: - Set papersize special to DVI file. - Can be used on LaTeX/pLaTeX/upLaTeX (with DVI output mode) - with dvips or dvipdfmx drivers. - Old version (v6.0) was written by Koichi INOU in 2004 - (https://www.ma.ns.tcu.ac.jp/Pages/TeX/bounddvi.sty.html), - and incorporated into this bundle by his courtesy. - -## Miscellaneous patches - -Some packages are unaware of crop marks defined in "gentombow"; -to cope with those packages, patches are provided here. -- pxtextpos.sty: - Patch for textpos.sty (by Norman Gray). -- pxesopic.sty: - Patch for eso-pic.sty (by Rolf Niepraschk). -- pxpdfpages.sty: - Patch for pdfpages.sty (by Andreas Matthias). - -These patches can also be used independent of "gentombow", -to avoid problems with crop marks on pLaTeX and upLaTeX. - -## Character encoding - -All the package files (.sty) contain ASCII characters only. -All the document files (.tex) are encoded in UTF-8. - -## Installation - -- *.sty -> $TEXMF/tex/latex/gentombow -- *.tex, *.pdf -> $TEXMF/doc/latex/gentombow - -## Repository - -The bundle is maintained on GitHub: - https://github.com/aminophen/gentombow - -## License - -The bundle may be distributed and/or modified under the terms of -the 3-clause BSD license (see [LICENSE](./LICENSE)). - -## Release Date - -2020-10-14 - -Hironobu Yamashita diff --git a/macros/latex/contrib/gentombow/bounddvi-en.pdf b/macros/latex/contrib/gentombow/bounddvi-en.pdf deleted file mode 100644 index 2cf419316e..0000000000 Binary files a/macros/latex/contrib/gentombow/bounddvi-en.pdf and /dev/null differ diff --git a/macros/latex/contrib/gentombow/bounddvi-en.tex b/macros/latex/contrib/gentombow/bounddvi-en.tex deleted file mode 100644 index 82046f888a..0000000000 --- a/macros/latex/contrib/gentombow/bounddvi-en.tex +++ /dev/null @@ -1,136 +0,0 @@ -%# -*- ascii characters only -*- - -% Package v1.0--v6.0: Koichi INOUE -% Package v7.0-- : Hironobu Yamashita -% The package documentation (this file) was -% written by Hironobu Yamashita. - -\documentclass[a4paper]{article} -\usepackage{doc} -\usepackage{bounddvi} -\GetFileInfo{bounddvi.sty} -\title{Package \textsf{bounddvi} \fileversion} -\author{Koichi Inoue \& Hironobu Yamashita} -\date{\filedate} -\begin{document} - -\maketitle - -Package \textsf{bounddvi} sets papersize special into DVI file. -This package can be used in both tate (vertical) and yoko (horizontal) -writing directions of Japanese p\LaTeX/up\LaTeX, and both -\texttt{dvipdfmx} and \texttt{dvips} drivers are supported. -The \texttt{tombow} option defined in Japanese p\LaTeX\ kernel is -also supported. Of course, this package can be used also with the -original \LaTeX\ in DVI output mode. - -This package (since v7.0) is part of \textsf{gentombow} bundle: -\begin{verbatim} - https://github.com/aminophen/gentombow -\end{verbatim} -Originally it was part of \textsf{platex-tools} bundle, -but it has been moved since March 2018. - -\section*{Usage} - -Load this package in preamble. -\begin{verbatim} - \documentclass[a5paper]{article} - \usepackage{bounddvi} - ... -\end{verbatim} -Process the \texttt{.tex} file using \texttt{latex} + -\texttt{dvips} chain or \texttt{latex} + \texttt{dvipdfmx} chain. - -\section*{Known limitations} - -\begin{enumerate} -\item The compatibility with \textsf{geometry} package may not be -perfect, as both \textsf{geometry} and \textsf{bounddvi} embeds -papersize special into a DVI file. The loading order of these -two packages may affect the actual size of output. -\item This package supports ``\textsf{jsclasses}-like employment'' -of \verb+\mag+, because it's more widely used in Japan. This may -be incompatible with some classes or packages which employ -\verb+\mag+ in other ways. -\end{enumerate} -The details are described in the sections below. - -\subsection*{The behavior of multiple papersize specials} - -Sometimes multiple papersize specials may be embedded into a DVI -file. Among these specials, the specification which appears -\emph{at last} in DVI takes effect when \texttt{dvipdfmx} or -\texttt{dvips} (\TeX\ Live 2017 or later) is used\footnote{% -When \texttt{dvips} in \TeX\ Live 2016 or earlier is used, -the specification which appears \emph{first} in DVI took effect, -but the default behavior was changed in \TeX\ Live r42420 to -be compatible with \texttt{dvipdfmx}. The new option \texttt{-L0} -can be used to recover the old behavior.}. For example, when the -following source is processed with \texttt{dvipdfmx}, -\begin{verbatim} - % latex + dvipdfmx - \documentclass{...} - \usepackage{bounddvi} - \usepackage[dvipdfm]{geometry} -\end{verbatim} -the specification by \textsf{geometry} wins. - -\section*{Note about \texttt{\char92mag} handling} - -Among the packages in CTAN, there are two types of implementation -in terms of \verb+\mag+ employment. It seems that there is no -(official or practical) ``standard'' in \verb+\mag+ treatment. - -When the output is going to the physical size of A4 -($210\,\mathrm{mm} \times 297\,\mathrm{mm}$) with the setting of -\verb+\mag=2000+, there are two ways: some classes/packages can set -\begin{quote} - \texttt{\char92mag=2000}\\ - \texttt{\char92paperwidth=210mm} ($= 420\,\mathrm{truemm}$)\\ - \texttt{\char92paperheight=297mm} ($= 594\,\mathrm{truemm}$) -\end{quote} -and others can set -\begin{quote} - \texttt{\char92mag=2000}\\ - \texttt{\char92paperwidth=105mm} ($= 210\,\mathrm{truemm}$)\\ - \texttt{\char92paperheight=148.5mm} ($= 297\,\mathrm{truemm}$) -\end{quote} -The first way is adopted by \textsf{geometry} package etc, and it's -(probably) based on the behavior of the \verb+papersize+ special of -\texttt{dvips}. It does not handle true units properly, and accepts -only non-true units and evaluates them as if they were true units. -The second way is adopted by \textsf{jsclasses} document class etc, -and is also suppoted by \verb+pdf:pagesize+ special of -\texttt{dvipdfm(x)}. This can be more consistent with \LaTeX, since -all other layout parameters (e.g. \verb+\textwidth+) are set -according to the unit truemm. - -The \textsf{bounddvi} supports the latter, so some classes/packages -which are based on the former may or may not work properly when -using \textsf{bounddvi} package. - -\section*{References} - -\begin{itemize} -\item Setting paper size using \texttt{dvips} \& \texttt{dvipdfm} - (description in Japanese)\\ - \texttt{https://www.ma.ns.tcu.ac.jp/Pages/TeX/bounddvi.sty.html} -\end{itemize} - -\section*{ChangeLog} - -\begin{itemize} - \item 2002/03/10 v1.0 (KI) First version - \item 2002/10/30 v2.0 (KI) Add \texttt{dvipdfm} \texttt{pdf:pagesize} special - \item 2003/03/22 v3.2 (KI) Compatibility with \textsf{hyperref} - \item 2004/05/08 v4.0 (KI) Support for $\mathtt{\char92mag} \ne 1000$ - \item 2004/12/08 v5.2 (KI) Compatibility with \textsf{geometry} - \item 2004/12/15 v6.0 (KI) Not to use \texttt{dvipdfm(x)} \texttt{pdf:pagesize special} - \item 2016/10/25 v7.1 (HY) Support for p\LaTeXe\ tombow option, - compatibility with \textsf{graphics}/\textsf{color} packages - \item 2016/12/28 v7.2 (HY) Documentation for the new \texttt{dvips} behavior - \item 2020/09/25 v8.0 (HY) Support for \LaTeXe/p\LaTeXe~2020-10-01 -\end{itemize} - -\end{document} diff --git a/macros/latex/contrib/gentombow/bounddvi.pdf b/macros/latex/contrib/gentombow/bounddvi.pdf deleted file mode 100644 index 57fed9c6c7..0000000000 Binary files a/macros/latex/contrib/gentombow/bounddvi.pdf and /dev/null differ diff --git a/macros/latex/contrib/gentombow/bounddvi.sty b/macros/latex/contrib/gentombow/bounddvi.sty deleted file mode 100644 index a70da52c6e..0000000000 --- a/macros/latex/contrib/gentombow/bounddvi.sty +++ /dev/null @@ -1,112 +0,0 @@ -% -% bounddvi.sty -% 2020/10/08 v8.2-v7.0 h.y.acetaminophen [at] gmail.com -% 2004/12/15 v6.0-v1.0 inoue [at] ma.ns.tcu.ac.jp -% -% This package, originally written by Koichi Inoue -% and modified by Hironobu Yamashita, is distributed -% as part of the gentombow bundle. -% https://github.com/aminophen/gentombow -% - -\NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{bounddvi}[2020/10/08 v8.2 bounddvi] - -% Note: graphics/color drivers -% - dvips.def 2016/07/10 v3.1a or later -% - dvipdfmx.def 2016/07/10 v4.12 or later -% emit papersize special _only_ when \Gin@setpagesizetrue -% and \mag = 1000. When graphicx(s) or color is used with -% setpagesize option (= default since 2016) and \mag equals -% to 1000, we can exploit its routine. -% (they are using \AtBeginDocument{\AtBeginDvi{...}}) -% However, these .def files do _not_ care about tombow; so, -% we set \stock{width,height} to invoke stock test in those -% files (probably meant for memoir.cls). - -% detection of \iftombow status is delayed until \AtBeginDocument, -% to support both (u)pLaTeX kernel and ``gentombow.sty'' -\def\bddv@maybe@ensure@stock{% - \ifx\tombowtrue\@undefined - \let\bddv@ensure@stock\relax % skip if-tokens - \fi - \bddv@ensure@stock} - -% when \iftombow == \iftrue, we also need \stock{width,height} -\def\bddv@ensure@stock{% - \iftombow - % if \stockwidth/\stockheight are not available, - % define them now - \ifx\stockwidth\@undefined \newdimen\stockwidth \fi - \ifx\stockheight\@undefined \newdimen\stockheight \fi - % if \stockwidth already has effective value, do nothing; - % otherwise assume pLaTeX-style tombow and set it to - % \paperwidth + 2in (similar for \stockheight) - \ifdim\stockwidth>\z@\else - \stockwidth\paperwidth \advance\stockwidth2in - \fi - \ifdim\stockheight>\z@\else - \stockheight\paperheight \advance\stockheight2in - \fi - \fi -} - -% prepare actual papersize special -\def\bddv@emit@papersize{% - \begingroup - % if \stockwidth/\stockheight are defined & have effective - % values, copy them to \paperwidth/\paperheight - % for current group - \ifx\stockwidth\@undefined\else \ifdim\stockwidth>\z@ - \paperwidth\stockwidth - \fi\fi - \ifx\stockheight\@undefined\else \ifdim\stockheight>\z@ - \paperheight\stockheight - \fi\fi - % adjust for \mag and emit papersize special - \divide\paperwidth\@m\multiply\paperwidth\mag - \divide\paperheight\@m\multiply\paperheight\mag - \special{papersize=\the\paperwidth,\the\paperheight}% - \endgroup -} - -%% Since LaTeX2e 2020-10-01, \@begindocumenthook is deprecated -%% and \UseHook{begindocument} etc. are used. -%% This code appends papersize special to the _end_ of the hook. -%% (Note: support for old dvips is removed.) -\providecommand\IfFormatAtLeastTF{\@ifl@t@r\fmtversion} -\IfFormatAtLeastTF{2020-10-01}{% - \AtBeginDocument{% - \bddv@maybe@ensure@stock - \AtBeginDvi{\bddv@emit@papersize}}% - \endinput -}{} - -%% The rest of this package is meant for -%% LaTeX2e 2020-02-02 PL5 or older. - -% following code is almost equivalent to -% \AtBeginDocument{\AtBeginDvi{...}} -% however, we put into the _beginning_ of \@begindocumenthook; -% this ensures proper papersize when old dvips -% (TeX Live 2016 or earlier) is used. -% also, note that old pLaTeX (before 2016/07/01) needs \yoko -% at the beginning of \AtBeginDvi. -\begingroup -\def\@prependto@begindocumenthook{% - \bddv@maybe@ensure@stock - \global\setbox\@begindvibox\vbox{% - \csname yoko\endcsname\unvbox\@begindvibox - \bddv@emit@papersize}} -\toks@\expandafter\expandafter\expandafter - {\expandafter\@prependto@begindocumenthook\@begindocumenthook} -\xdef\@begindocumenthook{\the\toks@} -% append papersize special again to the _end_ of the -% current \@begindocumenthook; this will be meaningful e.g. when -% geometry is loaded before bounddvi. -% (geometry adds \AtBeginDocument{\AtBeginDvi{...}} specification) -\expandafter\g@addto@macro\expandafter\@begindocumenthook - \expandafter{\@prependto@begindocumenthook} -\endgroup - -\endinput diff --git a/macros/latex/contrib/gentombow/bounddvi.tex b/macros/latex/contrib/gentombow/bounddvi.tex deleted file mode 100644 index 198bbb7fb9..0000000000 --- a/macros/latex/contrib/gentombow/bounddvi.tex +++ /dev/null @@ -1,149 +0,0 @@ -%# -*- coding: utf-8 -*- -\ifx\epTeXinputencoding\undefined\else % defined in e-pTeX (> TL2016) - \epTeXinputencoding utf8 % ensure utf-8 encoding for platex -\fi - -% パッケージ作者 (v1.0--v6.0):東京都市大学(旧称・武蔵工業大学)井上浩一 -% 修正版 (v7.0--) および本ドキュメント:山下弘展 (Hironobu Yamashita) - -\documentclass[a4paper]{jsarticle} -\usepackage{doc} -\usepackage{bounddvi} -\GetFileInfo{bounddvi.sty} -\title{Package \textsf{bounddvi} \fileversion} -\author{Koichi Inoue \& Hironobu Yamashita} -\date{\filedate} -\begin{document} - -\maketitle - -DVIファイルは用紙サイズ情報を含みませんが、PostScriptやPDFといった -用紙サイズを規定するフォーマットへ変換するプログラム(\texttt{dvips}や -\texttt{dvipdfmx})は、\verb+\special+命令によってDVIファイルに埋め込ま -れた用紙サイズ情報を解釈します。 -たとえば、幅100mm、高さ200mmの用紙に出力したい場合は -\begin{verbatim} - \special{papersize=100mm,200mm} -\end{verbatim} -のように指定してやることができます。 - -\textsf{bounddvi}パッケージは、クラスファイルなどが想定している用紙 -サイズ情報(\verb+\paperwidth+, \verb+\paperheight+)をDVIファイルに -\verb+\special+命令として埋め込むことで、\texttt{dvips}や -\texttt{dvipdfmx}の出力用紙サイズを指定する機能を提供します。 -\begin{verbatim} - \documentclass[a4j]{jarticle} - \usepackage{bounddvi} - \begin{document} - …本文… - \end{document} -\end{verbatim} -のように使います。p\LaTeX における横組と縦組の両方で使え、また -版面拡大(\verb+\mag+)が使われた場合にも対応しています(詳細は付録 -を参照してください)。また、v7.0以降、p\LaTeX カーネルのトンボ -オプションを使用した場合にも対応しており、p\LaTeX が仮定している -「トンボのノビ(2in)を含めたサイズ」に設定します。 - -本パッケージはv7.0以降、\textsf{gentombow}バンドルの一部として -配布されています: -\begin{verbatim} - https://github.com/aminophen/gentombow -\end{verbatim} -2017年までは\textsf{platex-tools}バンドルの一部でしたが、 -2018年以降は移転しました。 - -\section*{他のパッケージとの互換性} - -用紙サイズ設定機能だけを提供する\textsf{bounddvi}パッケージのほかにも、 -パッケージの機能の一部として用紙サイズ設定を行うものがいくつかあります。 -\begin{itemize} -\item 日本語環境でよく用いられる、p\LaTeX/up\LaTeX 用のクラスファイル - \textsf{jsclasses}(奥村さん作)の\texttt{papersize}オプション - との併用は問題ありません(ただし、このオプションを使用すれば用紙 - サイズ設定には十分ですから、本\textsf{bounddvi}パッケージを併用 - することにも特にメリットはありません)。 -\item 2016年以降の\textsf{graphics/graphicx}パッケージや - \textsf{color}パッケージには用紙サイズ設定機能 - (\texttt{setpagesize}オプション:デフォルトで有効)が - ありますが、併用しても問題は起きないでしょう。 -\item \textsf{hyperref}パッケージも上と同様で、併用しても - 問題は起きないでしょう。 -\item \textsf{geometry}パッケージと併用する場合は、 - 本\textsf{bounddvi}パッケージを\emph{後から}読み込むほうが - 安全でしょう。特に、\texttt{dvipdfmx}を使用して変換する場合に - トンボを付けたいなら、\textsf{bounddvi}を後から読み込むことで - うまくいく可能性があります(付録を参照)。 -\end{itemize} - -\section*{付録:複数の用紙サイズ指定が発行された場合の挙動} - -一つのDVIファイルに複数の用紙サイズ指定\verb+\special+命令が -埋め込まれる場合があります。このうち、\texttt{dvipdfmx}および -\TeX\ Live 2017以降の\texttt{dvips}では、DVIファイルの\emph{最後}に -指定されたものが有効になります\footnote{\TeX\ Live 2016以前の -\texttt{dvips}では、DVIファイルの\emph{最初}に指定されたものが有効 -でしたが、\TeX\ Live r42420で挙動が変更されました。\texttt{-L0}オプ -ションを指定すると従来の挙動に戻ります。}。たとえば\textsf{bounddvi}と -\textsf{geometry}を併用したソース -\begin{verbatim} - \documentclass{...} - \usepackage{bounddvi} - \usepackage[dvipdfm]{geometry} -\end{verbatim} -を\textsf{dvipdfmx}でPDFに変換すると、\textsf{geometry}パッケージの -指定が優先されます。このとき、用紙サイズの設定が正しいかどうかは -\textsf{geometry}パッケージに依存します。 - -\section*{付録:\texttt{\char92mag}の扱いについて} - -本\textsf{bounddvi}パッケージは、日本で広く使われている奥村さんの -\textsf{jsclasses}クラス流の\verb+\mag+の用法をサポートしています。 -しかし、\verb+\mag+の使い方はCTANにある多様なパッケージの中で統一 -されておらず、大きく分けて二通りの使い方があるようです。 - -たとえば、版面を2倍に拡大 (\verb+\mag=2000+) して物理的なA4サイズ -($210\,\mathrm{mm}\times297\,\mathrm{mm}$)の出力を得たい場合 -\begin{quote} - \texttt{\char92mag=2000}\\ - \texttt{\char92paperwidth=210mm} ($= 420\,\mathrm{truemm}$)\\ - \texttt{\char92paperheight=297mm} ($= 594\,\mathrm{truemm}$) -\end{quote} -と設定するものと -\begin{quote} - \texttt{\char92mag=2000}\\ - \texttt{\char92paperwidth=105mm} ($= 210\,\mathrm{truemm}$)\\ - \texttt{\char92paperheight=148.5mm} ($= 297\,\mathrm{truemm}$) -\end{quote} -と設定するものとが存在します。 -前者は\textsf{geometry}パッケージなどの方式で、おそらく\texttt{dvips}の -\verb+papersize+ specialの挙動(truedimenを正しく解釈せず、trueの付か -ない単位だけを受け付けてあたかもtrue付であるかのように評価)に則った -ものでしょう。後者は\textsf{jsclasses}クラスの方式で、これは -\texttt{dvipdfm(x)}の\verb+pdf:pagesize+ specialとも同じです。 -この方式のほうが、truedimenで設定された\LaTeX のほかのレイアウト変数 -(\verb+\textwidth+など)に対して一貫性があると思われます。 -本\textsf{bounddvi}パッケージがサポートしているのは後者の方式です。 - -\section*{参考} - -\begin{itemize} -\item dvipsやdvipdfmなどで用紙サイズを出力\\ - \texttt{https://www.ma.ns.tcu.ac.jp/Pages/TeX/bounddvi.sty.html} -\end{itemize} - -\section*{変更履歴} - -\begin{itemize} - \item 2002/03/10 v1.0 (KI) 最初の公開版 - \item 2002/10/30 v2.0 (KI) \texttt{dvipdfm}の\texttt{pdf:pagesize special}を使用 - \item 2003/03/22 v3.2 (KI) \textsf{hyperref}との互換性を改良 - \item 2004/05/08 v4.0 (KI) $\mathtt{\char92mag} \ne 1000$に対応 - \item 2004/12/08 v5.2 (KI) \texttt{dvips}で\textsf{geometry}との互換性を改良 - \item 2004/12/15 v6.0 (KI) \texttt{dvipdfm(x)}の\texttt{pdf:pagesize special}を不使用に - \item 2016/10/25 v7.1 (HY) p\LaTeXe{}のトンボサポート、 - 2016年の新しい\textsf{graphics}/\textsf{color}に対応 - \item 2016/12/28 v7.2 (HY) 新仕様の\texttt{dvips}をドキュメント化 - \item 2020/09/25 v8.0 (HY) \LaTeXe/p\LaTeXe~2020-10-01(予定)への対応 -\end{itemize} - -\end{document} diff --git a/macros/latex/contrib/gentombow/gentombow-ja.pdf b/macros/latex/contrib/gentombow/gentombow-ja.pdf deleted file mode 100644 index ee94b6c132..0000000000 Binary files a/macros/latex/contrib/gentombow/gentombow-ja.pdf and /dev/null differ diff --git a/macros/latex/contrib/gentombow/gentombow-ja.tex b/macros/latex/contrib/gentombow/gentombow-ja.tex deleted file mode 100644 index 411aad1db2..0000000000 --- a/macros/latex/contrib/gentombow/gentombow-ja.tex +++ /dev/null @@ -1,459 +0,0 @@ -%# -*- coding: utf-8 -*- -\ifx\epTeXinputencoding\undefined\else % defined in e-pTeX (> TL2016) - \epTeXinputencoding utf8 % ensure utf-8 encoding for platex -\fi - -\RequirePackage{plautopatch}% pldocverb -\documentclass[a4paper,dvipdfmx]{jsarticle} -\usepackage{doc} -\makeatletter -\xspcode"5C=3 %% \ -\xspcode"22=3 %% " -%%% dangerous bend -\font\man=manfnt at 10pt -\def\dbend{\leavevmode\raise0pt\hbox{\man\char'177}} -\newenvironment{dangerous}{% - \ifnum\@listdepth>\z@ - \GenericError{}{Do not use `dangerous' environment inside any list}{}{} - \fi - \par\addvspace\medskipamount - \@tempdima=\dimexpr\textwidth-2zw\relax\small - \divide\@tempdima by\dimexpr1zw\relax\@tempcnta=\@tempdima - \leftskip=\dimexpr\textwidth-\@tempcnta zw\relax - \@totalleftmargin\dimexpr\leftskip+0zw - \linewidth=\dimexpr\@tempcnta zw-0zw - \parindent1zw\noindent\kern-\leftskip\hbox to\leftskip{\dbend\hss}% - \everypar{\everypar{}}\ignorespaces -}{\par\addvspace\medskipamount} -%%% logo -\def\pTeX{p\kern-.15em\TeX} -\def\epTeX{$\varepsilon$-\pTeX} -%%% misc -\newcommand{\Meta}[1]{$\langle$\mbox{}\textit{#1}\mbox{}$\rangle$} -\newcommand{\jMeta}[1]{$\langle$\mbox{}\textsf{#1}\mbox{}$\rangle$} -%%% -\makeatother -\usepackage{longtable} -\usepackage[pdfbox]{gentombow} -%\usepackage{bounddvi} -\GetFileInfo{gentombow.sty} -\title{Package \textsf{gentombow} \fileversion} -\author{Hironobu Yamashita} -\date{\filedate} -\begin{document} - -\maketitle - -\begin{center} -English version is available: see \textsf{gentombow.pdf}! -\end{center} - -日本の出版では、たとえば仕上がり寸法がA4サイズの場合、一回り大きな -B4サイズの用紙の中央にトンボ付きで印刷することがあるようです。 -このドキュメントは、実際にA4用紙をB4用紙の中央にトンボ付きで -配置している事例です。 - -\textsf{gentombow}パッケージは、クラスファイルなどが想定している用紙 -サイズ情報(\verb+\paperwidth+, \verb+\paperheight+)を検知し、 -それより一回り大きなサイズの用紙の中央にトンボ付きで出力するために -必要な機能を提供します。使い方の例は -\begin{verbatim} - \documentclass[a4j]{jarticle} - \usepackage{gentombow} - \usepackage{bounddvi} - \begin{document} - …本文… - \end{document} -\end{verbatim} -です。 - -任意の\LaTeX フォーマットで利用可能です。具体的には -\begin{itemize} -\item p\LaTeX, up\LaTeX (縦組にも対応) -\item Lua\LaTeX (Lua\TeX-ja使用の場合は縦組にも対応) -\item pdf\LaTeX -\item Xe\LaTeX -\end{itemize} -での動作を確認しています。また、\textsf{jsclasses}のような -版面拡大(\verb+\mag+)が使われた場合にも対応しています。 - -ただし、本パッケージは実際の出力サイズ指定を発行しませんので、 -以下のいずれかのパッケージと併用するとよいでしょう: -\begin{itemize} -\item \textsf{bounddvi}パッケージ(\textsf{gentombow}バンドル) -\item \textsf{bxpapersize}パッケージ(ZRさん作) -\item \textsf{graphicx}パッケージの2016年以降の版 - (\texttt{setpagesize}機能つきのもの) -\end{itemize} -\textsf{bounddvi}パッケージは本パッケージと同じく -\textsf{gentombow}バンドルに収録されていますが、 -名前のとおりDVIを経由する場合にしか利用できません。 -一方、\textsf{bxpapersize}パッケージは汎用で、Lua\TeX のような -PDF直接出力の場合にも利用できます。また、\textsf{graphicx}パッケージ -は画像挿入用のパッケージですが、2016年以降は自動的に出力サイズ指定も -行うようです($\verb+\mag+ \ne 1000$の場合には機能しません)。 - -本パッケージは、\textsf{gentombow}バンドルの一部として -配布されています: -\begin{verbatim} - https://github.com/aminophen/gentombow -\end{verbatim} -2017年までは\textsf{platex-tools}バンドルの一部でしたが、 -2018年以降は独立させてあります。また、v0.9eまでは -(u)p\LaTeX とLua\TeX-ja専用の\textsf{pxgentombow}パッケージを -用意していましたが、v0.9f以降は\textsf{gentombow}に一本化しました。 - -\section{簡単な使用法} - -はじめに、パッケージをオプション指定なしに使用する場合の機能を -説明します。 - -\subsection{用紙サイズの自動検知による出力サイズ決定} - -パッケージにはあらかじめA系列(\texttt{a0}--\texttt{a10})、 -B系列(\texttt{b0}--\texttt{b10})、C系列(\texttt{c0}--\texttt{c10})と -\texttt{letter}, \texttt{legal}, \texttt{executive}の用紙サイズが -定義されています。ここで、B系列はISOではなくJISです。 -また、変型版として\texttt{a4var}(\texttt{a4}の変型)と -\texttt{b5var}(\texttt{b5}の変型)も定義されています。 - -これらのうちいずれか(ただし\texttt{a0}, \texttt{b0}, \texttt{c0}を -除く)の用紙サイズを検知すると、 -出力サイズが次の規則で自動的に決定されます\footnote{なお、 -C系列と\texttt{letter}, \texttt{legal}, \texttt{executive}については -日本での慣習が不明の -ため、現時点ではA系列のサイズで出力することにしています。}。 -\begin{itemize} -\item 用紙サイズがA系列のとき: - 出力サイズは一回り大きなB系列 -\item 用紙サイズがB, C系列または - \texttt{letter}, \texttt{legal}, \texttt{executive}のとき: - 出力サイズは一回り大きなA系列 -\end{itemize} -この場合、パッケージを読み込んだだけでトンボが付きます。 -なお、用紙サイズが横長の場合は自動的に出力も横長になり、 -縦長の場合は自動的に縦長になります。 - -よく使われる用紙サイズの例を挙げます。 -\begin{longtable}[c]{cc} - \hline - 用紙サイズ & 出力サイズ \\ - \hline - a6 & b6 \\ - b6 & a5 \\ - a5 & b5 \\ - b5 & a4 \\ - a4 & b4 \\ - b4 & a3 \\ - a3 & b3 \\ - b3 & a2 \\ - \hline - c6 & a5 \\ - c5 & a4 \\ - c4 & a3 \\ - c3 & a2 \\ - \hline - letter & a3 \\ - legal & a3 \\ - executive & a4 \\ - \hline -\end{longtable} - -\subsection*{参考:用紙サイズの自動検知に失敗した場合の出力サイズ決定} - -仮に用紙サイズが定義済みのいずれとも異なる場合は、デフォルトでは -用紙の天地左右に1インチずつのノビを付けたサイズで出力します。 -たとえば、幅$100\,\mathrm{mm}$、高さ$200\,\mathrm{mm}$の用紙の場合、 -出力サイズは幅$100\,\mathrm{mm}+2\,\mathrm{in}$、 -高さ$200\,\mathrm{mm}+2\,\mathrm{in}$になります。 - -\subsection{トンボへのバナーの出力} - -デフォルトでは\makeatletter\texttt{\the\@bannertoken}\makeatother -のような形式で、トンボにジョブ情報(処理ファイル名と日付)を示すバナーが -出力されます。これは、\pLaTeX 向けの日本語クラスファイルの多くで -利用可能な\verb+tombow+オプションと同様です。 -ただし、クラスオプションに\verb+tombo+(ジョブ情報を出力しない)または -\verb+mentuke+(トンボの線を表示しない)が指定されている場合は、 -この設定が引き継がれます。 - -\section{パッケージオプション} - -パッケージオプションによって、出力サイズやバナーのジョブ情報の有無を -指定する方法を説明します。 - -\subsection{出力サイズの明示指定} - -自動決定されるサイズと異なるサイズに出力したい場合、 -パッケージオプションで明示的に指定することができます。たとえば -\begin{verbatim} - \documentclass[a4j]{jarticle} - \usepackage[tombow-a3]{gentombow} - \begin{document} - …本文… - \end{document} -\end{verbatim} -とすると、出力サイズは(自動決定のb4は無視されて)a3に変わります。 -指定可能なサイズは、定義済みの用紙サイズと同じものです。すなわち、 -A系列(\texttt{a0}--\texttt{a10})、 -B系列(\texttt{b0}--\texttt{b10})、 -C系列(\texttt{c0}--\texttt{c10})と -\texttt{a4var}, \texttt{b5var}, -\texttt{letter}, \texttt{legal}, \texttt{executive}です。 -なお、ここでも用紙サイズが横長の場合は自動的に出力も横長になり、 -縦長の場合は自動的に縦長になります。 - -オプションは\jMeta{トンボ形式}\texttt{-}\jMeta{出力サイズ}の書式 -\footnote{他のパッケージで見られるようなkey=value形式ではないので -注意してください。このような特殊なオプション書式を用いているのは、 -オプション名が他のクラスファイルやパッケージと衝突する可能性を -小さくするためです。}で与えます。 -トンボ形式は、p\LaTeX の標準クラスと同じで -\verb+tombow+, \verb+tombo+, \verb+mentuke+のいずれかを選びます -(\verb+tombow+はジョブ情報を表示し、\verb+tombo+は表示しません。 -また、\verb+mentuke+はトンボの線を表示しません)。 - -\subsection{トンボに表示するジョブ情報の有無} - -用紙サイズを明示的に指定する場合は、前節のようにトンボ形式と出力サイズを -同時にオプションで与えることができます。 -逆に出力サイズを自動決定に任せつつ、ジョブ情報の有無だけを指定したい -場合は、トンボへのバナー出力を抑制する\verb+notombowbanner+オプションを -使用してください。 - -\section{詳細なカスタマイズ} - -\textsf{gentombow}パッケージは、トンボの見た目やバナーの内容を -カスタマイズする機能も提供します。 - -\subsection{トンボに表示するバナーの内容} - -\verb+\settombowbanner+命令を用います。例えば\epTeX の -\verb+\pdfcreationdate+プリミティブを使って -\begin{verbatim} - \documentclass[a4j]{jarticle} - \usepackage{gentombow} - \settombowbanner{\jobname\space (\pdfcreationdate)} - \begin{document} - …本文… - \end{document} -\end{verbatim} -とすると、バナーの表示内容は -{\settombowbanner{\jobname\space (\pdfcreationdate)}% - \makeatletter\texttt{\the\@bannertoken}\makeatother}になります。 -命令の引数には任意のトークン列を与えることができます。 - -\subsection{バナーの文字のフォント} - -\verb+\settombowbannerfont+命令を用います。例えば -\begin{verbatim} - \settombowbannerfont{cmss10 at 9pt} -\end{verbatim} -のような指定が可能です。内部的には\verb+\font+プリミティブを利用しており、 -使用している\TeX エンジンがサポートする任意のフォントを指定可能です -\footnote{Lua\TeX やXe\TeX (\textsf{gentombow}パッケージの場合)では、 -OpenTypeフォントを直接利用することもできます。}。 - -\subsection{トンボの線の太さ} - -デフォルトではトンボの線の太さは0.1~ptですが、 -\verb+\settombowwidth{1pt}+とすると1~ptになります。 -命令の引数には任意の寸法を与えることができますが、 -実用上は数pt以内が良いでしょう。 - -\subsection{塗り足し(ドブ)の幅} - -デフォルトでは塗り足し(ドブ)の幅は3~mmですが、 -\verb+\settombowbleed{5mm}+とすると5~mmになります。 -命令の引数には任意の寸法を与えることができますが、実用上は数mmでしょう。 - -\subsection{トンボの色} - -トンボの色を指定します。実際に色をつける場合は -\textsf{xcolor}パッケージ(推奨)またはまたは\textsf{color}パッケージが必要です。 -\verb+\settombowcolor{\color[cmyk]{0,1,0,0}}+とするとマゼンタになります。 -CMYKの版ごとにトンボを作成する場合や、特色のトンボが必要な場合に便利です。 - -\section{PDFのデジタルトンボ(page box)の設定} - -この機能はドライバに依存するため、オプション機能としています。 -\textsf{gentombow}パッケージ読み込み時に\verb+pdfbox+オプションを -指定します。DVIを経由する場合は、さらにドライバオプションも必須です -\footnote{例外として、\textsf{gentombow}が読み込まれた時点で -\textsf{graphics}/\textsf{color}のいずれかが読み込まれていた -場合は、そのドライバ設定を引き継ぐことができます。}。 - -この機能を有効化すると、PDFに以下のバウンディングボックス情報 -(いわゆるデジタルトンボ)が書き込まれ、 -さらに用紙サイズ設定(\verb+/MediaBox+相当)も行われます。 -\begin{itemize} -\item \verb+/TrimBox+: 仕上がり紙面サイズ。 -\item \verb+/BleedBox+: 裁ち落とし領域を含んだサイズ。 -\item \verb+/CropBox+, \verb+/ArtBox+: 明示しない。 -\end{itemize} -注意:\textsf{pdfx}パッケージがPDF/Xモードで読み込まれていれば、 -このオプション機能は自動的に有効化されます。 -また、\verb+/CropBox+も明示します。 - -\section{その他の注意点} - -特定のクラスファイルやパッケージと一緒に使用する場合、 -いくつかの注意点があります。 - -\subsection{\textsf{jsclasses}で使用する場合の注意} - -奥村晴彦氏による\textsf{jsclasses}のクラス(2016年以降は日本語\TeX 開発 -コミュニティが管理)を使用していて、10pt以外のサイズオプションを -指定する場合は、以下のいずれかの方法をとってください。 -\begin{itemize} -\item クラスオプションに「トンボオプション」 - (\verb+tombow+または\verb+tombo+)を追加する。 -\item クラスオプションに「\verb+\mag+を使わないオプション」 - (\verb+nomag+または\verb+nomag*+)を追加する。 -\end{itemize} -これは、\textsf{jsclasses}クラス内で行われる\verb+\oddsidemargin+と -\verb+\topmargin+の計算の都合からくる制約です。たとえば -\begin{verbatim} - \documentclass[a4j,14pt]{jsarticle} - \usepackage{gentombow} -\end{verbatim} -という使い方は\emph{誤り}です(このままでは誤った余白設定が -適用されますので、安全のため\textsf{gentombow}パッケージ -がエラーを出すようにしてあります)。代わりに -\begin{verbatim} - \documentclass[a4j,14pt,tombow]{jsarticle} - \usepackage{gentombow} -\end{verbatim} -と書くようにしてください。 - -また、塗り足しの幅などの寸法指定は\verb+true+付きの単位を -使用してください。例えば -\verb+\settombowbleed{3truemm}+と指定すれば、 -\verb+\mag+による版面拡大(縮小)後の塗り足し幅を3~mmにできます。 - -同様に、ZR氏による\textsf{BXjscls}のクラスを使用していて、10pt以外の -サイズオプションを指定する場合は -\begin{itemize} -\item クラスオプションに「\verb+\mag+を使わないオプション」 - (\verb+nomag+または\verb+nomag*+)を追加する。 -\end{itemize} -という対処が必要です(\textsf{BXjscls}クラスでは「トンボオプション」が -機能しないダミーになっていることに注意)。 - -\subsection{レイアウト設定の注意} - -余白などのレイアウト設定でありがちですが、 -\verb+\hoffset+や\verb+\voffset+の値を$0$以外に設定するのは -避けてください。このような設定は\textsf{gentombow}パッケージの -トンボ出力機能と衝突するため、正しい出力が得られません。 -レイアウト設定のために変更すべきなのはこれらの寸法ではなく、 -\verb+\oddsidemargin+や\verb+\topmargin+であることがほとんどです。 -したがって、それらを適切な値に設定するか、レイアウトの設定すべてを -\textsf{geometry}パッケージに任せてしまうのも一つの方法です。 - -\begin{dangerous} -たとえば左右の余白を$25\,\mathrm{mm}$に、上下の余白を -$30\,\mathrm{mm}$にしたいとき\footnote{ここでは「本文の領域以外」を -余白と定義します。すなわち、ヘッダとフッタは余白の一部です。}、 -まず「\TeX の1インチ」を -削除してから\verb+\oddsidemargin+や\verb+\topmargin+を変更すると、 -「見かけ上は」期待どおりの結果になることがあります。 -\begin{verbatim} - \setlength{\hoffset}{-1in}% <== NG - \setlength{\voffset}{-1in}% <== NG - \setlength{\oddsidemargin}{25mm} - \setlength{\topmargin}{30mm} - \setlength{\textwidth}{\paperwidth} - \addtolength{\textwidth}{-2\oddsidemargin} - \setlength{\textheight}{\paperheight} - \addtolength{\textheight}{-2\topmargin} - \addtolength{\topmargin}{-\headheight} - \addtolength{\topmargin}{-\headsep} -\end{verbatim} -しかし、この設定では\textsf{gentombow}パッケージがトンボを -追加するとき、正しい余白を維持することができません。 - -一方、\verb+\hoffset+や\verb+\voffset+は$0$のままで、以下のように -\verb+\oddsidemargin+や\verb+\topmargin+を設定していれば問題ありません。 -\begin{verbatim} - \setlength{\oddsidemargin}{-0.4mm}% 25mm = 1inch - 0.4mm - \setlength{\topmargin}{4.6mm}% 30mm = 1inch + 4.6mm - \setlength{\textwidth}{\paperwidth} - \addtolength{\textwidth}{-50mm} - \addtolength{\topmargin}{-\headheight} - \addtolength{\topmargin}{-\headsep} - \setlength{\textheight}{\paperheight} - \addtolength{\textheight}{-60mm} -\end{verbatim} -これと同等のレイアウト設定は、以下のように\textsf{geometry}パッケージで -行うのが簡単です。 -\begin{verbatim} - \usepackage[lmargin=25mm,rmargin=25mm, - tmargin=30mm,bmargin=30mm]{geometry} -\end{verbatim} -\end{dangerous} - -なお、\textsf{geometry}パッケージは用紙サイズ -(\verb+\paperwidth+, \verb+\paperheight+)を変更する場合もあります。 -こうした場合に備え、\textsf{gentombow}パッケージは -\textsf{geometry}パッケージよりも後に読み込むようにしてください。 - -\section*{雑記} - -発端はこの話です。 -\begin{itemize} -\item 齋藤修三郎 (@psi\_tau) on Twitter, 2017年2月9日\\ - \texttt{https://twitter.com/psi\_tau/status/829873082911248386} -\end{itemize} - -また、現在検討中の事項を挙げておきます。 -\begin{itemize} -\item 現状では、用紙の横長・縦長がそのまま出力に反映されるので、 - これを逆転させるオプションの実装。また、任意の出力サイズを - 指定できるインタフェースの実現。 -\item 自動で決定できる出力サイズの拡張。現状では用紙サイズが - 定義値に完全一致する場合のみ自動決定されるが、中間のサイズでも - その一回り大きなサイズに出力したい場合があるのではないか。 -\item 出版用途ではカラー印刷の場合に、CMYKの版ごとにトンボを作る - 必要がある。\textsf{color}パッケージが利用可能な場合に、 - オプション次第でCKなど必要な色を選べるようにするとよい - のではないか\footnote{ただし作者の本業は出版ではないので、 - 商用を含む実用には程遠いかもしれない。}。 -\item $\verb+\mag+ \ne 1000$の場合について、\textsf{jsclasses}以外での - 動作は未確認。特に、\textsf{geometry}とは共存しない可能性が高い。 -\item \verb+\stockwidth+/\verb+\stockheight+が - \verb+\paperwidth+/\verb+\paperheight+より小さい場合の動作。 - 現在は警告を出すだけとしているが、さらに天地左右1inに - フォールバックしたほうが無難だろうか。 -\end{itemize} - -\section*{変更履歴} - -\begin{itemize} - \item 2017/02/10 v0.1 最初の公開版(\textsf{pxgentombow}として) - \item 2017/03/01 v0.4 トンボ形式の修正など - \item 2017/05/05 v0.5 \textsf{jsclasses}の$\verb+\mag+ \ne 1000$に対応、 - 最初のCTANリリース版 - \item 2017/05/06 v0.6 \textsf{jsclasses}との共存時のチェック強化、 - Lua\TeX-jaでの動作確認 - \item 2017/07/23 v0.7 ドキュメント更新 - \item 2017/12/17 v0.9 \textsf{gentombow}パッケージの新設 - \item 2018/03/16 v0.9e クラスオプションの\verb+tombow+等の引き継ぎ、 - トンボ書式のカスタマイズ機能の追加 - (\verb+\settombowbanner+, - \verb+\settombowbannerfont+, - \verb+\settombowwidth+の各命令) - \item 2018/05/17 v0.9g \textsf{gentombow}に\textsf{pxgentombow}を統合、 - \verb+pdfbox+オプションの追加、 - \verb+\settombowbleed+, \verb+\settombowcolor+の追加 - \item 2018/08/20 v0.9h 用紙サイズ検出に\texttt{hagaki}を追加、 - \textsf{pdfpages}対策の改良 - \item 2018/08/30 v0.9j \textsf{jsclasses}の$\verb+\mag+ \ne 1000$でも - \verb+pdfbox+オプションが正常動作するように改良、 - \verb+\settombowbleed+が\verb+/TrimBox+に反映されな - かったバグの修正 - \item 2019/07/21 v0.9k \textsf{pdfx}パッケージとの整合性をとる改良 - \item 2020/10/14 v0.9l \textsf{plautopatch}からトンボ対策パッチを取り込み -\end{itemize} - -\end{document} diff --git a/macros/latex/contrib/gentombow/gentombow.pdf b/macros/latex/contrib/gentombow/gentombow.pdf deleted file mode 100644 index 178bab4c52..0000000000 Binary files a/macros/latex/contrib/gentombow/gentombow.pdf and /dev/null differ diff --git a/macros/latex/contrib/gentombow/gentombow.sty b/macros/latex/contrib/gentombow/gentombow.sty deleted file mode 100644 index bcd8093f50..0000000000 --- a/macros/latex/contrib/gentombow/gentombow.sty +++ /dev/null @@ -1,747 +0,0 @@ -% -% gentombow.sty -% written by Hironobu Yamashita (@aminophen) -% -% This package is part of the gentombow bundle. -% https://github.com/aminophen/gentombow -% - -\NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{gentombow} - [2020/10/14 v0.9l Generate crop mark 'tombow'] -\def\pxgtmb@pkgname{gentombow} -\@namedef{ver@pxgentombow.sty}{}% fake - -%% error status -\chardef\pxgtmb@errlevel=\z@ - -%% supported engines -% case 2: pdfLaTeX etc. -% case 1: pLaTeX2e <2018-04-01>+2 or older -% case 0: pLaTeX2e <2018-05-20> or newer -% --- checked plcore.ltx in platex 2020/09/28 v1.3g -\ifx\pfmtname\@undefined - \@ifpackageloaded{luatexja}{}{\chardef\pxgtmb@errlevel=\tw@} -\fi -\ifnum\pxgtmb@errlevel<\tw@ - \ifx\@tombowreset@@paper\@undefined - \chardef\pxgtmb@errlevel=\@ne - \fi -\fi -\ifcase\pxgtmb@errlevel - \let\pxgtmb@sel@twoone\@gobble - \let\pxgtmb@sel@two@one\@gobbletwo - \let\pxgtmb@sel@two\@gobble -\or - \let\pxgtmb@sel@twoone\@firstofone - \let\pxgtmb@sel@two@one\@secondoftwo - \let\pxgtmb@sel@two\@gobble -\or - \let\pxgtmb@sel@twoone\@firstofone - \let\pxgtmb@sel@two@one\@firstoftwo - \let\pxgtmb@sel@two\@firstofone -\else - \PackageError{\pxgtmb@pkgname}{% - This cannot happen! - Please report to package author}\@ehc - \expandafter\endinput -\fi -\@onlypreamble\pxgtmb@sel@twoone -\@onlypreamble\pxgtmb@sel@two@one -\@onlypreamble\pxgtmb@sel@two - -%%%%% EMULATION BEGIN - -% required for patching \@outputpage -\pxgtmb@sel@twoone{\RequirePackage{etoolbox}} - -% patch \@outputpage -\begingroup -\def\pxgtmb@emu@status{0} -\let\pxgtmb@emu@outputpage\@outputpage -\pxgtmb@sel@two@one -{%% case 2 begin - \patchcmd\pxgtmb@emu@outputpage % try first patch - {\reset@font\normalsize\normalsfcodes}% - {\@tombowreset@@paper - \reset@font\normalsize\normalsfcodes}% - {}{\def\pxgtmb@emu@status{1}} - \patchcmd\pxgtmb@emu@outputpage % try second patch - {\@begindvi \vskip \topmargin}% - {\@begindvi \@outputtombow \vskip \@@topmargin}% - {}{\def\pxgtmb@emu@status{1}} -}%% case 2 end -{%% case 1 begin - \patchcmd\pxgtmb@emu@outputpage % try patch - {% - \@@topmargin\topmargin - \iftombow - \@@paperwidth\paperwidth \advance\@@paperwidth 6mm\relax - \@@paperheight\paperheight \advance\@@paperheight 16mm\relax - \advance\@@topmargin 1in\relax \advance\@themargin 1in\relax - \fi - \reset@font\normalsize\normalsfcodes} - {\@tombowreset@@paper - \reset@font\normalsize\normalsfcodes}% - {}{\def\pxgtmb@emu@status{1}} -}%% case 1 end -% commit the change only when successful; otherwise -% tombow feature is never enabled, exit right away -\pxgtmb@sel@twoone -{%% case 2 and 1 begin - \if 0\pxgtmb@emu@status\relax - \global\let\@outputpage\pxgtmb@emu@outputpage - \else - \PackageError{\pxgtmb@pkgname}{% - Failed in patching \string\@outputpage!\MessageBreak - Sorry, I can't proceed anymore...}\@ehc - \expandafter\expandafter\expandafter\endinput\expandafter - \fi -}%% case 2 and 1 end -\endgroup -% - -% provides equivalent for plcore.ltx -\pxgtmb@sel@two -{%% case 2 begin -\newif\iftombow \tombowfalse -\newif\iftombowdate \tombowdatetrue -\newdimen\@tombowwidth -\setlength{\@tombowwidth}{.1\p@} -}%% case 2 end -\pxgtmb@sel@twoone -{%% case 2 and 1 begin -\setlength{\@tombowwidth}{.1\p@} -\def\@tombowbleed{3mm} -\def\@tombowcolor{\normalcolor} -}%% case 2 and 1 end -\pxgtmb@sel@two -{%% case 2 begin -\newbox\@TL\newbox\@Tl -\newbox\@TC -\newbox\@TR\newbox\@Tr -\newbox\@BL\newbox\@Bl -\newbox\@BC -\newbox\@BR\newbox\@Br -\newbox\@CL -\newbox\@CR -\font\@bannerfont=cmtt9 -\newtoks\@bannertoken -\@bannertoken{} -}%% case 2 end -\pxgtmb@sel@twoone -{%% case 2 and 1 begin -\def\maketombowbox{% hide \yoko from all boxes - \setbox\@TL\hbox to\z@{\csname yoko\endcsname\hss - \vrule width\dimexpr 10mm+\@tombowbleed\relax height\@tombowwidth depth\z@ - \vrule height10mm width\@tombowwidth depth\z@ - \iftombowdate - \raise4pt\hbox to\z@{\hskip5mm\@bannerfont\the\@bannertoken\hss}% - \fi}% - \setbox\@Tl\hbox to\z@{\csname yoko\endcsname\hss - \vrule width10mm height\@tombowwidth depth\z@ - \vrule height\dimexpr 10mm+\@tombowbleed\relax width\@tombowwidth depth\z@}% - \setbox\@TC\hbox{\csname yoko\endcsname - \vrule width10mm height\@tombowwidth depth\z@ - \vrule height10mm width\@tombowwidth depth\z@ - \vrule width10mm height\@tombowwidth depth\z@}% - \setbox\@TR\hbox to\z@{\csname yoko\endcsname - \vrule height10mm width\@tombowwidth depth\z@ - \vrule width\dimexpr 10mm+\@tombowbleed\relax height\@tombowwidth depth\z@\hss}% - \setbox\@Tr\hbox to\z@{\csname yoko\endcsname - \vrule height\dimexpr 10mm+\@tombowbleed\relax width\@tombowwidth depth\z@ - \vrule width10mm height\@tombowwidth depth\z@\hss}% - \setbox\@BL\hbox to\z@{\csname yoko\endcsname\hss - \vrule width\dimexpr 10mm+\@tombowbleed\relax depth\@tombowwidth height\z@ - \vrule depth10mm width\@tombowwidth height\z@}% - \setbox\@Bl\hbox to\z@{\csname yoko\endcsname\hss - \vrule width10mm depth\@tombowwidth height\z@ - \vrule depth\dimexpr 10mm+\@tombowbleed\relax width\@tombowwidth height\z@}% - \setbox\@BC\hbox{\csname yoko\endcsname - \vrule width10mm depth\@tombowwidth height\z@ - \vrule depth10mm width\@tombowwidth height\z@ - \vrule width10mm depth\@tombowwidth height\z@}% - \setbox\@BR\hbox to\z@{\csname yoko\endcsname - \vrule depth10mm width\@tombowwidth height\z@ - \vrule width\dimexpr 10mm+\@tombowbleed\relax depth\@tombowwidth height\z@\hss}% - \setbox\@Br\hbox to\z@{\csname yoko\endcsname - \vrule depth\dimexpr 10mm+\@tombowbleed\relax width\@tombowwidth height\z@ - \vrule width10mm depth\@tombowwidth height\z@\hss}% - \setbox\@CL\hbox to\z@{\csname yoko\endcsname\hss - \vrule width10mm height.5\@tombowwidth depth.5\@tombowwidth - \vrule height10mm depth10mm width\@tombowwidth}% - \setbox\@CR\hbox to\z@{\csname yoko\endcsname - \vrule height10mm depth10mm width\@tombowwidth - \vrule height.5\@tombowwidth depth.5\@tombowwidth width10mm\hss}% -} -\def\@outputtombow{% - \iftombow - \vbox to\z@{\kern-\dimexpr 10mm+\@tombowbleed\relax\relax - \boxmaxdepth\maxdimen - \moveleft\@tombowbleed \vbox to\@@paperheight{% - \color@begingroup - \@tombowcolor - \hbox to\@@paperwidth{\hskip\@tombowbleed\relax - \copy\@TL\hfill\copy\@TC\hfill\copy\@TR\hskip\@tombowbleed}% - \kern-10mm - \hbox to\@@paperwidth{\copy\@Tl\hfill\copy\@Tr}% - \vfill - \hbox to\@@paperwidth{\copy\@CL\hfill\copy\@CR}% - \vfill - \hbox to\@@paperwidth{\copy\@Bl\hfill\copy\@Br}% - \kern-10mm - \hbox to\@@paperwidth{\hskip\@tombowbleed\relax - \copy\@BL\hfill\copy\@BC\hfill\copy\@BR\hskip\@tombowbleed}% - \color@endgroup - }\vss - }% - \fi -} -}%% case 2 and 1 end -\pxgtmb@sel@two -{%% case 2 begin -\newdimen\@@paperheight -\newdimen\@@paperwidth -\newdimen\@@topmargin -}%% case 2 end -\pxgtmb@sel@twoone -{%% case 2 and 1 begin -\def\@tombowreset@@paper{% - \@@topmargin\topmargin - \iftombow - \@@paperwidth\paperwidth - \advance\@@paperwidth 2\dimexpr\@tombowbleed\relax - \@@paperheight\paperheight \advance\@@paperheight 10mm\relax - \advance\@@paperheight 2\dimexpr\@tombowbleed\relax - \advance\@@topmargin 1in\relax \advance\@themargin 1in\relax - \fi -} -}%% case 2 and 1 end -\pxgtmb@sel@two -{%% case 2 begin -\newcount\hour -\newcount\minute -}%% case 2 end - -%%%%% EMULATION END - -%% import from jsclasses -\hour\time \divide\hour by 60\relax -\@tempcnta\hour \multiply\@tempcnta 60\relax -\minute\time \advance\minute-\@tempcnta - -\ifnum\mag=\@m\else - % if BXjscls is detected and \mag != 1000, - % the layout will be definitely broken - \ifx\bxjs@param@mag\@undefined\else - \PackageError{\pxgtmb@pkgname}{% - It seems you are using Japanese `BXjscls'\MessageBreak - (bxjsarticle, bxjsbook, bxjsreport, etc.) or\MessageBreak - some derived class. Try adding `nomag' or\MessageBreak - `nomag*' to the class option list}\@ehc - \fi - % if \mag != 1000 and \inv@mag is defined, assume jsclasses-style \mag employment - \ifx\inv@mag\@undefined\else - % \pxgtmb@magscale is almost equivalent to \jsc@magscale (introduced around 2016) - % but defined only when \mag is actually employed - \begingroup - % calculation code borrowed from BXjscls - \@tempcnta=\mag - \advance\@tempcnta100000\relax - \def\pxgtmb@tempa#1#2#3#4\@nil{\@tempdima=#2#3.#4\p@} - \expandafter\pxgtmb@tempa\the\@tempcnta\@nil - \xdef\pxgtmb@magscale{\strip@pt\@tempdima} - \endgroup - \fi -\fi - -%% this package will use tombo feature in pLaTeX kernel -% if tombow-related option is not included in class option list, -% show info and enable it now -\iftombow\else - % if jsclasses is detected and \mag != 1000, it's too late - % -- When a size option other than `10pt' is specified, - % jsclasses uses \mag and calculates \oddsidemargin and \topmargin - % differently, depending on tombow status. - % In order to force `jsclasses' to calculate correctly, - % `tombow' or `tombo' is required as a class option. - % ... or, you may add `nomag' or `nomag*' instead. - \ifx\pxgtmb@magscale\@undefined\else - \PackageError{\pxgtmb@pkgname}{% - It seems you are using Japanese `jsclasses'\MessageBreak - (jsarticle, jsbook, jsreport, etc.) or some\MessageBreak - derived class. Please add `tombow' or `tombo'\MessageBreak - to the class option list}\@ehc - \fi - % BXjscls is already checked above, no check here - \PackageInfo\pxgtmb@pkgname{tombow feature enabled by \pxgtmb@pkgname} -\fi -\tombowtrue %\tombowdatetrue %% enabled by tombowbanner option -\setlength{\@tombowwidth}{.1\p@}% - -%% import from jsclasses -\@bannertoken{% - \jobname\space(\number\year-\two@digits\month-\two@digits\day - \space\two@digits\hour:\two@digits\minute)} - -%% prepare dimension -\ifx\stockwidth\@undefined \newdimen\stockwidth \fi -\ifx\stockheight\@undefined \newdimen\stockheight \fi - -%% prepare flag -\newif\ifpxgtmb@switch \pxgtmb@switchfalse -\newif\ifpxgtmb@landscape \pxgtmb@landscapefalse -\newif\ifpxgtmb@pdfx@x \pxgtmb@pdfx@xfalse - -%% passed from class options -%% should be declared first inside this package (least priority) -\DeclareOption{tombow}{\tombowdatetrue} -\DeclareOption{tombo}{\tombowdatefalse} -\DeclareOption{mentuke}{\tombowdatefalse \setlength{\@tombowwidth}{\z@}} - -%% package options part 1 -\DeclareOption{tombowbanner}{\tombowdatetrue} -\DeclareOption{notombowbanner}{\tombowdatefalse} -\DeclareOption{tombowdate}{% obsolete since v0.9c (2018/01/11) - \PackageWarning{\pxgtmb@pkgname}{% - Option `tombowdate' is renamed;\MessageBreak - use `tombowbanner' instead}% - \tombowdatetrue} -\DeclareOption{notombowdate}{% obsolete since v0.9c (2018/01/11) - \PackageWarning{\pxgtmb@pkgname}{% - Option `notombowdate' is renamed;\MessageBreak - use `notombowbanner' instead}% - \tombowdatefalse} - -%% register a list of candidate papersize -% * \pxgtmb@addpapersize[]{}{}{} -% used for declaration of papersize. -% when no option is specified (that is, \ifpxgtmb@switch = \iffalse), -% also used for automatic stocksize determination. -% * if = \@empty, the next is assumed. -% * if = n, stocksize is set to papersize + 2in. -\def\pxgtmb@addpapersize{\@ifnextchar[{\pxgtmb@addp@persize}{\pxgtmb@addp@persize[\@empty]}} -\def\pxgtmb@addp@persize[#1]#2#3#4{% - % get current papersize and search through known standard in ascending order - \ifx\pxgtmb@guessedtombow\@empty - \ifx\pxgtmb@guessedpaper\@empty - % shorter edge -> \@tempdima, longer edge -> \@tempdimb - \ifdim\paperwidth>\paperheight\relax - \pxgtmb@landscapetrue - \@tempdima\paperheight \@tempdimb\paperwidth - \else - \pxgtmb@landscapefalse - \@tempdima\paperwidth \@tempdimb\paperheight - \fi - % \@ovri and \@ovro are used temporarily (safe enough) - \@ovri=#3\relax - \@ovro=#4\relax - % when jsclasses-style \mag employment is assumed ... - \ifx\pxgtmb@magscale\@undefined\else - \@ovri=\inv@mag\@ovri\relax - \@ovro=\inv@mag\@ovro\relax - \fi - % compare - \ifdim\@tempdima=\@ovri\relax \ifdim\@tempdimb=\@ovro\relax - \def\pxgtmb@guessedpaper{#2}% - \ifx#1\@empty\else - \def\pxgtmb@guessedtombow{#1}% - \if n\pxgtmb@guessedtombow\else - \ExecuteOptions{tombow-#1}% package defaults to tombowdatetrue - \pxgtmb@switchfalse - \fi - \fi - \fi \fi - \else - \def\pxgtmb@guessedtombow{#2}% save for console message - \pxgtmb@setstock{#3}{#4}% set stockwidth/height - \fi\fi - \DeclareOption{tombow-#2}{% - \pxgtmb@switchtrue - \tombowdatetrue - \pxgtmb@setstock{#3}{#4}% - }% - \DeclareOption{tombo-#2}{% - \pxgtmb@switchtrue - \tombowdatefalse - \pxgtmb@setstock{#3}{#4}% - }% - \DeclareOption{mentuke-#2}{% - \pxgtmb@switchtrue - \tombowdatefalse - \setlength{\@tombowwidth}{\z@}% - \pxgtmb@setstock{#3}{#4}% - }% -} -\def\pxgtmb@setstock#1#2{% - \ifpxgtmb@landscape - \setlength\stockwidth{#2}% - \setlength\stockheight{#1}% - \else - \setlength\stockwidth{#1}% - \setlength\stockheight{#2}% - \fi - % when jsclasses-style \mag employment is assumed ... - \ifx\pxgtmb@magscale\@undefined\else - \stockwidth=\inv@mag\stockwidth\relax - \stockheight=\inv@mag\stockheight\relax - \fi -}% -\@onlypreamble\pxgtmb@addpapersize -\@onlypreamble\pxgtmb@addp@persize -\@onlypreamble\pxgtmb@setstock - -%% initialize before search -\def\pxgtmb@guessedpaper{} -\def\pxgtmb@guessedtombow{} -\@onlypreamble\pxgtmb@guessedpaper -\@onlypreamble\pxgtmb@guessedtombow - -%% package options part 2 -% ISO A series <=> JIS B series in the ascending order -\pxgtmb@addpapersize{a10}{26mm}{37mm} -\pxgtmb@addpapersize{b10}{32mm}{45mm} -\pxgtmb@addpapersize{a9}{37mm}{52mm} -\pxgtmb@addpapersize{b9}{45mm}{64mm} -\pxgtmb@addpapersize{a8}{52mm}{74mm} -\pxgtmb@addpapersize{b8}{64mm}{91mm} -\pxgtmb@addpapersize{a7}{74mm}{105mm} -\pxgtmb@addpapersize{b7}{91mm}{128mm} -\pxgtmb@addpapersize{a6}{105mm}{148mm} -\pxgtmb@addpapersize{b6}{128mm}{182mm} -\pxgtmb@addpapersize{a5}{148mm}{210mm} -\pxgtmb@addpapersize{b5}{182mm}{257mm} -\pxgtmb@addpapersize{a4}{210mm}{297mm} -\pxgtmb@addpapersize{b4}{257mm}{364mm} -\pxgtmb@addpapersize{a3}{297mm}{420mm} -\pxgtmb@addpapersize{b3}{364mm}{515mm} -\pxgtmb@addpapersize{a2}{420mm}{594mm} -\pxgtmb@addpapersize{b2}{515mm}{728mm} -\pxgtmb@addpapersize{a1}{594mm}{841mm} -\pxgtmb@addpapersize{b1}{728mm}{1030mm} -\pxgtmb@addpapersize[n]{a0}{841mm}{1189mm} -\pxgtmb@addpapersize[n]{b0}{1030mm}{1456mm} - -%% package options part 3 -% ISO C series -\pxgtmb@addpapersize[a9]{c10}{28mm}{40mm} -\pxgtmb@addpapersize[a8]{c9}{40mm}{57mm} -\pxgtmb@addpapersize[a7]{c8}{57mm}{81mm} -\pxgtmb@addpapersize[a6]{c7}{81mm}{114mm} -\pxgtmb@addpapersize[a5]{c6}{114mm}{162mm} -\pxgtmb@addpapersize[a4]{c5}{162mm}{229mm} -\pxgtmb@addpapersize[a3]{c4}{229mm}{354mm} -\pxgtmb@addpapersize[a2]{c3}{324mm}{458mm} -\pxgtmb@addpapersize[a1]{c2}{458mm}{648mm} -\pxgtmb@addpapersize[a0]{c1}{648mm}{917mm} -\pxgtmb@addpapersize[n]{c0}{917mm}{1297mm} -% misc -\pxgtmb@addpapersize[b4]{a4j}{210mm}{297mm} -\pxgtmb@addpapersize[b5]{a5j}{148mm}{210mm} -\pxgtmb@addpapersize[a3]{b4j}{257mm}{364mm} -\pxgtmb@addpapersize[a4]{b5j}{182mm}{257mm} -\pxgtmb@addpapersize[b4]{a4var}{210mm}{283mm} -\pxgtmb@addpapersize[a4]{b5var}{182mm}{230mm} -\pxgtmb@addpapersize[a3]{letter}{8.5in}{11in} -\pxgtmb@addpapersize[a3]{legal}{8.5in}{14in} -\pxgtmb@addpapersize[a4]{executive}{7.25in}{10.5in} -\pxgtmb@addpapersize[a5]{hagaki}{100mm}{148mm} - -%% package options part 4 -\def\pxgtmb@pdfbox@status{0} -\DeclareOption{pdfbox}{\def\pxgtmb@pdfbox@status{1}} -\DeclareOption{dvips}{\def\pxgtmb@driver{s}} -\DeclareOption{dvipdfmx}{\def\pxgtmb@driver{m}} -\DeclareOption{xetex}{\def\pxgtmb@driver{x}} -\DeclareOption{pdftex}{\def\pxgtmb@driver{p}} -\DeclareOption{luatex}{\def\pxgtmb@driver{l}} - -%% default options -\ExecuteOptions{tombowbanner}% package defaults to tombowdatetrue -\ProcessOptions - -%% display search result -% if any of explicit size option is specified, \ifpxgtmb@switch = \iftrue. -% otherwise, automatic size detection should be successful. -\ifpxgtmb@switch\else - % check status - \@tempcnta=\z@\relax - \ifx\pxgtmb@guessedpaper\@empty - \advance\@tempcnta\@ne\relax - \fi - \ifx\pxgtmb@guessedtombow\@empty - \advance\@tempcnta\tw@\relax - \else\if n\pxgtmb@guessedtombow - \advance\@tempcnta\tw@\relax - \fi\fi - % message - \ifodd\@tempcnta - %\PackageWarningNoLine\pxgtmb@pkgname{% - % No size option specified, and automatic papersize\MessageBreak - % detection also failed} - \else - \typeout{***** Package \pxgtmb@pkgname\space detected \pxgtmb@guessedpaper paper. *****} - \fi - \ifnum\@tempcnta>\@ne\relax - \PackageWarningNoLine\pxgtmb@pkgname{% - Output size cannot be determined. Please add size\MessageBreak - option (e.g. `tombow-a4') to specify output size.\MessageBreak - Falling back to +1in ..} - \stockwidth\paperwidth \advance\stockwidth 2in - \stockheight\paperheight \advance\stockheight 2in - \else - \typeout{***** Now the output size is automatically set to \pxgtmb@guessedtombow. *****} - \fi -\fi - -%% warnings -\ifdim\stockwidth<\paperwidth - \PackageWarningNoLine\pxgtmb@pkgname{% - \string\stockwidth\space is smaller than \string\paperwidth!\MessageBreak - Is this really what you want?} -\fi -\ifdim\stockheight<\paperheight - \PackageWarningNoLine\pxgtmb@pkgname{% - \string\stockheight\space is smaller than \string\paperheight!\MessageBreak - Is this really what you want?} -\fi - -%% pdf "digital tombo" (driver-dependent) -% the box size calculation is delayed until \AtBeginDocument -% to allow users to change \@tombowbleed in the preamble - -% convert pt -> bp -\def\pxgtmb@PDF@setbp#1#2{% - \@tempdima=.996264#2\relax % 0.996264 = 72/72.27 (cf. 1in = 72.27pt = 72bp) - \@tempdima=\pxgtmb@magscale\@tempdima % adjustment for jsclasses-style \mag employment - \edef#1{\strip@pt\@tempdima}} -% calculate and create pdf boxes -\def\pxgtmb@PDF@calcbox{% - \begingroup - % provide fallback definition inside this group - \ifx\pxgtmb@magscale\@undefined - \def\pxgtmb@magscale{1}% - \fi - % set pdf boxes in bp unit - \pxgtmb@PDF@setbp\pxgtmb@PDF@crop@ur@x\stockwidth - \pxgtmb@PDF@setbp\pxgtmb@PDF@crop@ur@y\stockheight - \pxgtmb@PDF@setbp\pxgtmb@PDF@trim@ll@x{\dimexpr(\stockwidth-\paperwidth)/2}% - \pxgtmb@PDF@setbp\pxgtmb@PDF@trim@ll@y{\dimexpr(\stockheight-\paperheight)/2}% - \pxgtmb@PDF@setbp\pxgtmb@PDF@trim@ur@x{\dimexpr(\stockwidth+\paperwidth)/2}% - \pxgtmb@PDF@setbp\pxgtmb@PDF@trim@ur@y{\dimexpr(\stockheight+\paperheight)/2}% - \pxgtmb@PDF@setbp\pxgtmb@PDF@bleed@ll@x{\dimexpr(\stockwidth-\paperwidth)/2-\@tombowbleed}% - \pxgtmb@PDF@setbp\pxgtmb@PDF@bleed@ll@y{\dimexpr(\stockheight-\paperheight)/2-\@tombowbleed}% - \pxgtmb@PDF@setbp\pxgtmb@PDF@bleed@ur@x{\dimexpr(\stockwidth+\paperwidth)/2+\@tombowbleed}% - \pxgtmb@PDF@setbp\pxgtmb@PDF@bleed@ur@y{\dimexpr(\stockheight+\paperheight)/2+\@tombowbleed}% - \xdef\pxgtmb@PDF@CTM{% - %% CropBox: normally implicit (same as MediaBox, large paper size) - %% however, pdfx.sty in PDF/X mode sets /CropBox explicitly, so I need to override it! - \ifpxgtmb@pdfx@x - \noexpand\pxgtmb@PDF@begin - /CropBox [0 0 - \pxgtmb@PDF@crop@ur@x\space - \pxgtmb@PDF@crop@ur@y] \noexpand\pxgtmb@PDF@end - \fi - %% BleedBox: explicit (final paper size + surrounding \@tombowbleed) - \noexpand\pxgtmb@PDF@begin - /BleedBox [\pxgtmb@PDF@bleed@ll@x\space - \pxgtmb@PDF@bleed@ll@y\space - \pxgtmb@PDF@bleed@ur@x\space - \pxgtmb@PDF@bleed@ur@y] \noexpand\pxgtmb@PDF@end - %% TrimBox: explicit (final paper size) - \noexpand\pxgtmb@PDF@begin - /TrimBox [\pxgtmb@PDF@trim@ll@x\space - \pxgtmb@PDF@trim@ll@y\space - \pxgtmb@PDF@trim@ur@x\space - \pxgtmb@PDF@trim@ur@y] \noexpand\pxgtmb@PDF@end - %% ArtBox: implicit - %% [Note] PDF/X requires /TrimBox or /ArtBox but not both! - }% - \endgroup -} - -% do it -\AtBeginDocument{\pxgtmb@PDF@emit} -\def\pxgtmb@PDF@emit{% - % handle compatibility with pdfx.sty here; - % if pdfx.sty with PDF/X mode detected, force [pdfbox] option! - \pxgtmb@handle@pdfx - \ifpxgtmb@pdfx@x\def\pxgtmb@pdfbox@status{1}\fi - % start actual procedure for [pdfbox] option - \if 1\pxgtmb@pdfbox@status -%% supported drivers: dvips, dvipdfmx, XeTeX, pdfTeX, LuaTeX -\ifnum0\ifx\pdfvariable\@undefined\else\the\outputmode\fi=0\relax -\ifnum0\ifx\pdfpageattr\@undefined\else\the\pdfoutput\fi=0\relax - %% for DVI output or XeTeX - \ifx\XeTeXversion\@undefined - \chardef\pxgtmb@errlevel=\z@ - % check graphics/graphicx/color status - \ifx\Gin@driver\@undefined - \ifx\pxgtmb@driver\@undefined % driver option unavailable - \PackageError{\pxgtmb@pkgname}{% - Option `pdfbox' is driver-dependent!\MessageBreak - Please add a driver option}\@ehc - \def\pxgtmb@driver{s}% fallback - \fi - \else - % check consistency - \def\pxgtmb@tempa{dvips.def}\ifx\Gin@driver\pxgtmb@tempa - \ifx\pxgtmb@driver\@undefined - \def\pxgtmb@driver{s}% pass - \else - \if s\pxgtmb@driver\else \chardef\pxgtmb@errlevel=\@ne \fi - \fi - \else\def\pxgtmb@tempa{dvipdfmx.def}\ifx\Gin@driver\pxgtmb@tempa - \ifx\pxgtmb@driver\@undefined - \def\pxgtmb@driver{m}% pass - \else - \if m\pxgtmb@driver\else \chardef\pxgtmb@errlevel=\@ne \fi - \fi - \else - \ifx\pxgtmb@driver\@undefined - \PackageError{\pxgtmb@pkgname}{% - Option `pdfbox' is driver-dependent!\MessageBreak - Please add a driver option}\@ehc - \def\pxgtmb@driver{s}% fallback - \fi - \fi\fi - \ifnum\pxgtmb@errlevel>\z@ - \PackageWarningNoLine{\pxgtmb@pkgname}{% - Inconsistent driver option detected!\MessageBreak - Package `graphics' or `color' already\MessageBreak - loaded with different driver option}\@ehc - \fi - \fi - \else - \def\pxgtmb@driver{x} - \fi - % required for putting \special to every page - \RequirePackage{atbegshi} - \ifx\pfmtname\@undefined\else - \ifx\AtBegShi@Output\@undefined - % LaTeX2e 2020-10-01: an emulation by ``atbegshi-ltx.sty'' - % => pLaTeX2e 2020-10-01 natively supports it - \else - % older: the real ``atbegshi.sty'' is loaded - \IfFileExists{pxatbegshi.sty}{\RequirePackage{pxatbegshi}}{} - \fi - \fi - % do it - \if x\pxgtmb@driver - %% for XeTeX (similar to dvipdfmx, except for paper size) - \AtBeginDocument{% - \pxgtmb@PDF@calcbox - \def\pxgtmb@PDF@begin{}\def\pxgtmb@PDF@end{}% - \edef\pxgtmb@PDF@CTM{{pdf:put @thispage << \pxgtmb@PDF@CTM >>}}} - % force paper size - \pdfpagewidth\stockwidth \pdfpageheight\stockheight - % emit pdf boxes - \AtBeginShipout{\setbox\AtBeginShipoutBox=\vbox{% - \baselineskip\z@skip\lineskip\z@skip\lineskiplimit\z@ - \expandafter\special\pxgtmb@PDF@CTM % here! - \copy\AtBeginShipoutBox}} - \else - \if s\pxgtmb@driver - %% for dvips - \AtBeginDocument{% - \pxgtmb@PDF@calcbox - \def\pxgtmb@PDF@begin{[ }\def\pxgtmb@PDF@end{/PAGE pdfmark }% - \edef\pxgtmb@PDF@CTM{{ps:SDict begin \pxgtmb@PDF@CTM end}}} - \else\if m\pxgtmb@driver - %% for dvipdfmx - \AtBeginDocument{% - \pxgtmb@PDF@calcbox - \def\pxgtmb@PDF@begin{}\def\pxgtmb@PDF@end{}% - \edef\pxgtmb@PDF@CTM{{pdf:put @thispage << \pxgtmb@PDF@CTM >>}}} - \else - %% for others (in case graphics option wrong) - \PackageError{\pxgtmb@pkgname}{Sorry, driver unsupported}\@ehc - \def\pxgtmb@PDF@CTM{{}}% dummy - \fi\fi - %% common - \begingroup - % when jsclasses-style \mag employment is assumed ... - % [Note] \special{papersize=,} accepts only non-true units - % and evaluates them as if they were true units! - \ifx\pxgtmb@magscale\@undefined\else - \stockwidth \pxgtmb@magscale\stockwidth - \stockheight\pxgtmb@magscale\stockheight - \fi - \xdef\pxgtmb@PDF@size{{papersize=\the\stockwidth,\the\stockheight}} - \endgroup - \AtBeginShipout{\setbox\AtBeginShipoutBox=\vbox{% - \baselineskip\z@skip\lineskip\z@skip\lineskiplimit\z@ - % force paper size - \expandafter\special\pxgtmb@PDF@size - % emit pdf boxes - \expandafter\special\pxgtmb@PDF@CTM % here! - \copy\AtBeginShipoutBox}} - \fi -\else - %% for pdfTeX - \def\pxgtmb@driver{p} - % force paper size - \pdfpagewidth\stockwidth \pdfpageheight\stockheight - % emit pdf boxes - \AtBeginDocument{% - \pxgtmb@PDF@calcbox - \def\pxgtmb@PDF@begin{}\def\pxgtmb@PDF@end{}% - \edef\pxgtmb@PDF@CTM{{\pxgtmb@PDF@CTM}}% - \expandafter\pdfpageattr\pxgtmb@PDF@CTM} -\fi\else - %% for LuaTeX - \def\pxgtmb@driver{l} - % force paper size - \pagewidth\stockwidth \pageheight\stockheight - % emit pdf boxes - \AtBeginDocument{% - \pxgtmb@PDF@calcbox - \def\pxgtmb@PDF@begin{}\def\pxgtmb@PDF@end{}% - \edef\pxgtmb@PDF@CTM{pageattr{\pxgtmb@PDF@CTM}}% - \expandafter\pdfvariable\pxgtmb@PDF@CTM} -\fi - \fi -} - -%% make visible tombow box according to the current status of -%% \@bannerfont, \@bannertoken, \@tombowwidth & \@tombowbleed -\maketombowbox - -%% shift amount -\hoffset .5\stockwidth -\advance\hoffset -.5\paperwidth -\advance\hoffset-1truein\relax -\voffset .5\stockheight -\advance\voffset -.5\paperheight -\advance\voffset-1truein\relax - -%% user interface -\newcommand{\settombowbanner}[1]{% - \iftombowdate\else - \PackageWarning{\pxgtmb@pkgname}{% - Package option `tombowbanner' is not effective.\MessageBreak - The banner may be discarded}% - \fi - \@bannertoken{#1}\maketombowbox} -\newcommand{\settombowbannerfont}[1]{% - \font\@bannerfont=#1\relax \maketombowbox} -\newcommand{\settombowwidth}[1]{% - \setlength{\@tombowwidth}{#1}\maketombowbox} -\newcommand{\settombowbleed}[1]{% - \def\@tombowbleed{#1}\maketombowbox} -\newcommand{\settombowcolor}[1]{% - \def\@tombowcolor{#1}} -% forbid changing \@tombowbleed after \begin{document} -% because pdf boxes are calculated only inside \AtBeginDocument -\@onlypreamble\settombowbleed - -%% patch internal of pdfpages.sty to work with tombow -\def\pxgtmb@patch@pdfpages{% - \IfFileExists{pxpdfpages.sty}{\RequirePackage{pxpdfpages}}{}} -\AtBeginDocument{\@ifpackageloaded{pdfpages}{\pxgtmb@patch@pdfpages}{}} - -%% patch pdfx.sty -%% (tested on pdfx 2019/02/27 v1.6.3) -\def\pxgtmb@handle@pdfx{\@ifpackageloaded{pdfx}{\let\ifpxgtmb@pdfx@x\ifpdfx@x}{}} - -\endinput diff --git a/macros/latex/contrib/gentombow/gentombow.tex b/macros/latex/contrib/gentombow/gentombow.tex deleted file mode 100644 index d0bc4523ab..0000000000 --- a/macros/latex/contrib/gentombow/gentombow.tex +++ /dev/null @@ -1,307 +0,0 @@ -%# -*- ascii characters only -*- - -\documentclass[a4paper]{article} -\usepackage{doc} -\makeatletter -%%% dangerous bend -\font\man=manfnt at 10pt -\def\dbend{\leavevmode\raise0pt\hbox{\man\char'177}} -\newenvironment{dangerous}{% - \ifnum\@listdepth>\z@ - \GenericError{}{Do not use `dangerous' environment inside any list}{}{} - \fi - \par\addvspace\medskipamount - \@tempdima=\dimexpr\textwidth-2zw\relax\small - \divide\@tempdima by\dimexpr1zw\relax\@tempcnta=\@tempdima - \leftskip=\dimexpr\textwidth-\@tempcnta zw\relax - \@totalleftmargin\dimexpr\leftskip+0zw - \linewidth=\dimexpr\@tempcnta zw-0zw - \parindent1zw\noindent\kern-\leftskip\hbox to\leftskip{\dbend\hss}% - \everypar{\everypar{}}\ignorespaces -}{\par\addvspace\medskipamount} -%%% misc -\newcommand{\Meta}[1]{$\langle$\mbox{}\textit{#1}\mbox{}$\rangle$} -%%% -\makeatother -\usepackage{longtable} -\usepackage[pdfbox]{gentombow} -%\usepackage{bxpapersize} -\GetFileInfo{gentombow.sty} -\title{Package \textsf{gentombow} \fileversion} -\author{Hironobu Yamashita} -\date{\filedate} -\begin{document} - -\maketitle - -It is convenient to print documents for final smaller paper sizes -on paper of the printer's standard physical paper size; -it allows printing close to the logical paper edge -and even outside the logical page. - -This package \textsf{gentombow} provides a Japanese-style -crop marks (called `tombow' in Japanese) for trimming paper stacks, -and place the document page at the center of a larger physical -paper sheet. It automatically detects the page size -(\verb+\paperwidth+, \verb+\paperheight+) which is -going to be set by document class. -This document itself is a demonstration of this package, -with final A4 paper printed on B4 (JIS B4; not ISO B4!) paper. - -A basic usage: -\begin{verbatim} - \documentclass[a4paper]{article} - \usepackage{gentombow} - \usepackage{graphicx} - \begin{document} - The content - \end{document} -\end{verbatim} - -Note that this package does nothing about output paper size -specification; use one of the followings to do it. -\begin{itemize} -\item \textsf{graphicx} package - with \texttt{setpagesize} feature added in 2016 - (supports all engines) -\item \textsf{bxpapersize} package - (supports all engines; by Takayuki YATO) -\item \textsf{bounddvi} package - (supports only DVI output mode; part of \textsf{gentombow} bundle) -\end{itemize} - -This package is part of \textsf{gentombow} bundle: -\begin{verbatim} - https://github.com/aminophen/gentombow -\end{verbatim} -Originally it was part of \textsf{platex-tools} bundle, -but it has been moved since March 2018. - -\section{Basic Functions} - -First, I introduce some basic functions of \textsf{gentombow} package. - -\subsection{Automatic Determination of Output Size} - -In this package, -the following printer's standard physical paper sizes are predefined; -A series (\texttt{a0}--\texttt{a10}), -B series (\texttt{b0}--\texttt{b10}), -C series (\texttt{c0}--\texttt{c10}), -\texttt{letter}, \texttt{legal} and \texttt{executive}. -In the current release, `B series' is JIS standard, -not ISO standard (this might be changed in the near future). -Also, some variations \texttt{a4var} and \texttt{b5var} are predefined. - -When one of the above sizes (except \texttt{a0}, \texttt{b0} -and \texttt{c0}) is detected, the output size is -automatically determined along with the following rule: -\begin{itemize} -\item When A series detected: - the output is going to be larger B series -\item When B/C series or - \texttt{letter}, \texttt{legal}, \texttt{executive} detected: - the output is going to be larger A series -\end{itemize} -The crop marks are automatically added. -The orientation (landscape/portrait) of the input paper is -also preserved. - -The following list shows common examples: -\begin{longtable}[c]{cc} - \hline - Detected page size & Output size \\ - \hline - a6 & b6 \\ - b6 & a5 \\ - a5 & b5 \\ - b5 & a4 \\ - a4 & b4 \\ - b4 & a3 \\ - a3 & b3 \\ - b3 & a2 \\ - \hline - c6 & a5 \\ - c5 & a4 \\ - c4 & a3 \\ - c3 & a2 \\ - \hline - letter & a3 \\ - legal & a3 \\ - executive & a4 \\ - \hline -\end{longtable} - -\subsection*{When Automatic Determination Failed} - -When the page size is different from any of the predefined sizes, -the page is placed with the surrounding 1~inch margins. -For example, when the page has $100\,\mathrm{mm}$ width and -$200\,\mathrm{mm}$ height, the output size is going to be -$100\,\mathrm{mm}+2\,\mathrm{in}$ width and -$200\,\mathrm{mm}+2\,\mathrm{in}$ height. - -\subsection{Job Info Printing} - -By default, the crop marks are printed with a banner, which shows -a job info like \makeatletter\texttt{\the\@bannertoken}\makeatother. -The format is similar to \verb+tombow+ option, which is -available in most of the common Japanese classes. -The default also reacts to \verb+tombo+ (without a job info) or -\verb+mentuke+ (do not print actual crop marks) class options. - -\section{Package Options} - -You can specify output size and/or disable job info printing -using package options. - -\subsection{Explicit Specification of Output Size} - -You can also force the output size using package option. -For example, -\begin{verbatim} - \documentclass[a4paper]{article} - \usepackage[tombow-a4]{gentombow} - \begin{document} - The content - \end{document} -\end{verbatim} -forces the output size to be a3 (the automatic determination -`b4' is discarded). Available sizes are the same as -the predefined sizes, that is, -A series (\texttt{a0}--\texttt{a10}), -B series (\texttt{b0}--\texttt{b10}), -C series (\texttt{c0}--\texttt{c10}) and -\texttt{a4var}, \texttt{b5var}, -\texttt{letter}, \texttt{legal}, \texttt{executive}. -The orientation (landscape/portrait) of the input paper is -also preserved again. - -The option format is: -\Meta{crop mark format}\texttt{-}\Meta{output size}. -The crop mark format is one of the following: -\verb+tombow+ (default), \verb+tombo+ (without a job info), -\verb+mentuke+ (do not print actual crop marks). - -\subsection{Disabling Job Info Printing} - -When you specify the output size explicitly, the crop mark format -can be given at the same time, as described previously. -When the output size is automatically determined, you can disable -job info printing by \verb+notombowbanner+ option. - -\section{Customization of Crop Mark} - -The \textsf{pxgentombow} package provides some commands to -customize crop mark format. - -\subsection{Banner content} - -Using \verb+\settombowbanner+, you can set the banner content. -An example using \verb+\pdfcreationdate+ (pdf\TeX\ primitive) -\begin{verbatim} - \documentclass[a4paper]{article} - \usepackage{gentombow} - \settombowbanner{\jobname\space (\pdfcreationdate)} - \begin{document} - The content - \end{document} -\end{verbatim} -will result in -{\settombowbanner{\jobname\space (\pdfcreationdate)}% - \makeatletter\texttt{\the\@bannertoken}\makeatother}. -The argument is an arbitrary token list. - -\subsection{Banner font} - -Using \verb+\settombowbannerfont+, you can change the font -with which the banner is printed. -\begin{verbatim} - \settombowbannerfont{cmss10 at 9pt} -\end{verbatim} -This feature internally calls the \TeX\ primitive \verb+\font+, -and accepts all fonts supported by the engine. When Lua\TeX\ or -Xe\TeX\ is used, a native OpenType font can also be given. - -\subsection{Crop mark line width} - -By default, the line width of crop marks is 0.1~pt. -This can be change to 1~pt by \verb+\settombowwidth{1pt}+. -The argument is an arbitrary dimension. - -\subsection{Bleed margin width} - -By default, the bleed margin width is 3~mm. -This can be change to 5~mm by \verb+\settombowwidth{5mm}+. -The argument is an arbitrary dimension. - -\subsection{Crop mark color} - -Set the color of crop marks. Package \textsf{xcolor} (recommended) or -\textsf{xcolor} is required. -For example, \verb+\settombowcolor{\color[cmyk]{0,1,0,0}}+ sets magenta. - -\section{Setting PDF page box (``digital tombow'')} - -This is an optional driver-dependent feature. -When \textsf{gentombow} is required with the option \verb+pdfbox+, -following page boxes are emitted to the output PDF file. -The paper size (\verb+/MediaBox+) is also corrected. -\begin{itemize} -\item \verb+/TrimBox+: final paper size. -\item \verb+/BleedBox+: paper size plus bleed margin. -\item \verb+/CropBox+ and \verb+/ArtBox+ are not set. -\end{itemize} -Note: if the package \textsf{pdfx} is loaded with PDF/X mode, -this optional feature is automatically enabled. -Also, \verb+/CropBox+ is set explicitly. - -\section{Additional Notes} - -Here is some additional notes for use with several classes/packages. - -\subsection{Note for \textsf{BXjscls} users} - -When using \textsf{BXjscls} (by Takayuki YATO) with size option -other than 10pt, please add \verb+nomag+ or \verb+nomag*+ to the -class option. For example, -\begin{verbatim} - \documentclass[a4paper,14pt]{bxjsarticle} - \usepackage{gentombow} -\end{verbatim} -will not work as expected (\textsf{gentombow} throws an error -for safety). - -\subsection{Note about Layout Settings} - -You should not change \verb+\hoffset+ or \verb+\voffset+ to non-zero -value, for the purpose of layout settings. Such settings will -conflict with the feature of \textsf{gentombow} package. -To set page layout correctly, you should adjust \verb+\oddsidemargin+ -or \verb+\topmargin+, or leave it to \textsf{geometry} package. - -Note: since the package \textsf{geometry} also has a feature to -change the paper size (\verb+\paperwidth+, \verb+\paperheight+), -please load \textsf{gentombow} after \textsf{geometry}. - -\section*{Change History} - -\begin{itemize} - \item 2017/12/17 v0.9 First CTAN release - \item 2018/03/16 v0.9e Add \verb+\settombowbanner+, - \verb+\settombowbannerfont+ and - \verb+\settombowwidth+. - \item 2018/05/17 v0.9g Add \verb+pdfbox+ option, - \verb+\settombowbleed+ and - \verb+\settombowcolor+. - \item 2018/08/20 v0.9h Add \texttt{hagaki} size for paper detection, - improve patches for \textsf{pdfpages}. - \item 2018/08/30 v0.9j Support \textsf{jsclasses}-style \verb+\mag+ employment - also with \verb+pdfbox+ option. - Fix a bug that \verb+\settombowbleed+ is not - considered by \verb+/TrimBox+. - \item 2019/07/21 v0.9k Support \textsf{pdfx} package. - \item 2020/10/14 v0.9l Import tombow-related patches from \textsf{plautopatch}. -\end{itemize} - -\end{document} diff --git a/macros/latex/contrib/gentombow/pxesopic.sty b/macros/latex/contrib/gentombow/pxesopic.sty deleted file mode 100644 index 567b9d0a2d..0000000000 --- a/macros/latex/contrib/gentombow/pxesopic.sty +++ /dev/null @@ -1,239 +0,0 @@ -% -% pxesopic.sty -% written by Hironobu Yamashita (@aminophen) -% -% This package is part of the gentombow bundle. -% https://github.com/aminophen/gentombow -% -% This package is expected to be compatible with -% * eso-pic.sty -% 2015/07/21 v2.0g -- 2020/09/27 v2.0i -% -% -------------------------------------------------------------- -% [Note] -% The package ``pxesopic.sty'' relies heavily on internals -% of ``plautopatch.sty''. -% Also, ``pxesopic.sty'' is incompatible with ``memoir.cls''. -% -------------------------------------------------------------- -% - -%% package declaration -\NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{pxesopic} - [2020/10/11 v0.4c Patch to eso-pic for tombow] - -%% preparations -\def\pxesop@pkgname{pxesopic} -\def\pxesop@error{\PackageError\pxesop@pkgname} -\def\pxesop@warn{\PackageWarningNoLine\pxesop@pkgname} -\let\pxesop@debug\@gobble -%\def\pxesop@debug#1{\typeout{\pxesop@pkgname: [DEBUG] #1}}% for debug - -\@ifclassloaded{memoir}{% - \pxesop@warn{This package should not be loaded with memoir.cls}}{} - -\@ifpackageloaded{eso-pic}{% - \pxesop@error{% - Package eso-pic is already loaded!\MessageBreak - Load pxesopic earlier}\@ehc -}{} - -%% hooks -\ifx\declare@file@substitution\@undefined - % LaTeX2e 2020-02-02 PL5 or older - \RequirePackage{filehook} - \let\pxesop@ExecuteAfterPackage=\AtEndOfPackageFile - \let\pxesop@ExecuteBeforePackage=\AtBeginOfPackageFile -\else - % LaTeX2e 2020-10-01 or newer - \def\pxesop@ExecuteAfterPackage#1{\AddToHook{package/after/#1}} - \def\pxesop@ExecuteBeforePackage#1{\AddToHook{package/before/#1}} -\fi - -%% the contents of \AtBeginShipout is dependent on \iftombow; -%% delay execution of \AtBeginShipout inside ``eso-pic.sty'' -%% until \AtBeginDocument, to support both (u)pLaTeX kernel -%% and ``gentombow.sty'' -\RequirePackage{atbegshi}% eso-pic requires atbegshi -\ifx\pfmtname\@undefined\else - \ifx\AtBegShi@Output\@undefined - % LaTeX2e 2020-10-01: an emulation by ``atbegshi-ltx.sty'' - % => pLaTeX2e 2020-10-01 natively supports it - \else - % older: the real ``atbegshi.sty'' is loaded - \IfFileExists{pxatbegshi.sty}{\RequirePackage{pxatbegshi}}{} - \fi -\fi -% -\pxesop@ExecuteBeforePackage{eso-pic}{\pxesop@before} -\pxesop@ExecuteAfterPackage{eso-pic}{\pxesop@after} -% -\def\pxesop@before{% - \let\pxesop@AtBeginShipout\AtBeginShipout - \def\AtBeginShipout##1{\def\pxesop@hook{##1}}% hide it - \pxesop@debug{\noexpand\AtBeginShipout disabled}% - \let\pxesop@before\relax -} -\def\pxesop@after{% - \let\AtBeginShipout\pxesop@AtBeginShipout % restore - \let\pxesop@AtBeginShipout\relax - \pxesop@debug{\noexpand\AtBeginShipout restored}% - \let\@unknownoptionerror\relax %% avoid an error - \pxesop@debug{\noexpand\@unknownoptionerror disabled}% - \let\pxesop@after\relax -} -%% - -%% load it; be careful not to cause unknown option error! -\expandafter\ifx\csname @unknownoptionerror\endcsname - \pxesop@error{Failed to save \noexpand\@unknownoptionerror}\@ehc -\fi -\let\pxesop@unknownoptionerror\@unknownoptionerror -% -\chardef\pxesop@status\z@ -\@ifpackageloaded{plautopatch}{% - \expandafter\ifx\csname platpc@begin@eso-pic\endcsname\relax - % ``plautopatch.sty'' is loaded but the macro is \relax - % => means that ``pxesopic.sty'' is automatically loaded - \@ifl@t@r{\fmtversion}{2020/10/01}{% - \chardef\pxesop@status\@ne - }{}% - \fi -}{} -% -%% pass all options to keyval-style ``eso-pic.sty'' -\DeclareOption*{\PassOptionsToPackage{\CurrentOption}{eso-pic}} -\ProcessOptions\relax -\RequirePackage{eso-pic} -% -%% ensure internal dimensions added in ``eso-pic.sty'' v2.0i -\ifx\ESO@tempdima\@undefined \newdimen\ESO@tempdima \fi -\ifx\ESO@tempdimb\@undefined \newdimen\ESO@tempdimb \fi -% -%% recover the error -\ifnum\pxesop@status>\z@ % auto - \def\pxesop@pkgtohook{eso-pic}% - % note that ``plautopatch.sty'' discards the hook - % on LaTeX2e 2020-02-02 PL5 or older - \ifx\declare@file@substitution\@undefined - \let\pxesop@pkgtohook\pxesop@pkgname - % throw an error for unsupported usage - % [FIXME] the error below is actually unnecessary when - % none of ``eso-pic.sty'' options is used; how to detect that? - \pxesop@error{Try loading \pxesop@pkgname\space by hand}\@ehc - \fi -\else - \let\pxesop@pkgtohook\pxesop@pkgname -\fi -\pxesop@ExecuteAfterPackage\pxesop@pkgtohook{% - \let\@unknownoptionerror\pxesop@unknownoptionerror - \pxesop@debug{\noexpand\@unknownoptionerror restored}% -} -%% - -%% do it -%-- similar to bounddvi.sty (checked 2020/10/08 v8.2) -% detection of \iftombow availability is delayed until \AtBeginDocument, -% to support both (u)pLaTeX kernel and ``gentombow.sty'' -% Note: this package does not consider changing \iftombow status -% in the middle of a single document. -\AtBeginDocument{\pxesop@do} -\def\pxesop@do{% - \ifx\tombowtrue\@undefined - \pxesop@debug{Tombow feature unavailable, no patch applied}% - \let\pxesop@switch\pxesop@orig % skip if-tokens and restore - \fi - \pxesop@switch} -% -\def\pxesop@switch{% - \iftombow \pxesop@ensure@stock \pxesop@new - \else \pxesop@orig \fi} -% -\def\pxesop@ensure@stock{% - %\iftombow - % if \stockwidth/\stockheight are not available, - % define them now - \ifx\stockwidth\@undefined \newdimen\stockwidth \fi - \ifx\stockheight\@undefined \newdimen\stockheight \fi - % if \stockwidth already has effective value, do nothing; - % otherwise assume pLaTeX-style tombow and set it to - % \paperwidth + 2in (similar for \stockheight) - \ifdim\stockwidth>\z@\else - \stockwidth\paperwidth \advance\stockwidth2in - \fi - \ifdim\stockheight>\z@\else - \stockheight\paperheight \advance\stockheight2in - \fi - %\fi -} -%-- -% -%% for \iftombow is FALSE => restore from ``eso-pic.sty'' -\expandafter\def\expandafter\pxesop@orig\expandafter{% - \expandafter\AtBeginShipout\expandafter{\pxesop@hook}} -% -%% for \iftombow is TRUE => redefine by ``pxesopic.sty'' -\def\pxesop@new{% - %% \AtStockLowerLeft: based on TRUE of \ESO@isMEMOIR - \renewcommand\AtStockLowerLeft[1]{% - \begingroup - \ESO@tempdima=-\stockwidth - \advance\ESO@tempdima\paperwidth - \ESO@tempdimb=-\stockheight - \advance\ESO@tempdimb\paperheight - %% specific BEGIN - \advance\ESO@tempdima 1in\relax - \advance\ESO@tempdimb 1in\relax - \advance\ESO@tempdima \hoffset\relax - \advance\ESO@tempdimb \voffset\relax - %% specific END - \AtPageLowerLeft{% - \put(\LenToUnit{\ESO@tempdima},\LenToUnit{\ESO@tempdimb}){##1}% - }% - \endgroup - }% === - %% \AtStockUpperLeft: based on TRUE of \ESO@isMEMOIR - \renewcommand\AtStockUpperLeft[1]{% - \AtStockLowerLeft{% - \put(0,\LenToUnit{\stockheight}){##1}% - }% - }% === - %% \AtStockCenter: based on TRUE of \ESO@isMEMOIR - \renewcommand\AtStockCenter[1]{% - \AtStockLowerLeft{% - \put(\LenToUnit{.5\stockwidth},\LenToUnit{.5\stockheight}){##1}% - }% - }% - %% \AtTextUpperLeft: same as FALSE of \ESO@isMEMOIR - % (no change) - % - %% \AtBeginShipout: based on TRUE of \ESO@isMEMOIR - \AtBeginShipout{% - \ESO@tempdima=\dimexpr(\stockwidth-\paperwidth)/2\relax - \ESO@tempdimb=-\dimexpr(\stockheight+\paperheight)/2\relax - \ifESO@texcoord - \advance\ESO@tempdimb\paperheight % [FIXME] not sure! - \fi - %% specific BEGIN - \advance\ESO@tempdima -\hoffset\relax - \advance\ESO@tempdimb \voffset\relax - %% specific END - \nointerlineskip - \AtBeginShipoutUpperLeft{% - \put(\LenToUnit{\ESO@tempdima},\LenToUnit{\ESO@tempdimb}){% - \ESO@HookIIIBG\ESO@HookIBG\ESO@HookIIBG - \global\let\ESO@HookIIBG\@empty - }% - }% - \AtBeginShipoutUpperLeftForeground{% - \put(\LenToUnit{\ESO@tempdima},\LenToUnit{\ESO@tempdimb}){% - \ESO@HookIFG\ESO@HookIIFG\ESO@HookIIIFG - \global\let\ESO@HookIIFG\@empty - }% - }% - }% === -} -%% - -\endinput -%% EOF diff --git a/macros/latex/contrib/gentombow/pxgentombow.pdf b/macros/latex/contrib/gentombow/pxgentombow.pdf deleted file mode 100644 index d30a4509e4..0000000000 Binary files a/macros/latex/contrib/gentombow/pxgentombow.pdf and /dev/null differ diff --git a/macros/latex/contrib/gentombow/pxgentombow.sty b/macros/latex/contrib/gentombow/pxgentombow.sty deleted file mode 100644 index bd94b4bcee..0000000000 --- a/macros/latex/contrib/gentombow/pxgentombow.sty +++ /dev/null @@ -1,16 +0,0 @@ -% -% pxgentombow.sty -% written by Hironobu Yamashita (@aminophen) -% -% This package is part of the gentombow bundle. -% https://github.com/aminophen/gentombow -% - -\NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{pxgentombow} - [2020/10/14 v0.9l Generate crop mark 'tombow'] -\PackageWarningNoLine{pxgentombow}{% - Package `pxgentombow' is now superseded by\MessageBreak - `gentombow', use `gentombow' instead} -\RequirePackageWithOptions{gentombow}% load it -\endinput diff --git a/macros/latex/contrib/gentombow/pxgentombow.tex b/macros/latex/contrib/gentombow/pxgentombow.tex deleted file mode 100644 index 8a8c2616bd..0000000000 --- a/macros/latex/contrib/gentombow/pxgentombow.tex +++ /dev/null @@ -1,25 +0,0 @@ -%# -*- coding: utf-8 -*- -\ifx\epTeXinputencoding\undefined\else % defined in e-pTeX (> TL2016) - \epTeXinputencoding utf8 % ensure utf-8 encoding for platex -\fi - -\documentclass[a4paper]{jsarticle} -\usepackage{doc} -\usepackage{pxgentombow} -\usepackage{bounddvi} -\GetFileInfo{pxgentombow.sty} -\title{Package \textsf{pxgentombow}} -\author{Hironobu Yamashita} -\date{2018年5月17日} -\begin{document} - -\maketitle - -\begin{center} -The package \textsf{pxgentombow} is now superseded by \textsf{gentombow}! -\end{center} - -\textsf{pxgentombow}パッケージは、上位版である\textsf{gentombow}パッケージに -統一されました。代わりに\textsf{gentombow}パッケージを使用してください。 - -\end{document} diff --git a/macros/latex/contrib/gentombow/pxpdfpages.sty b/macros/latex/contrib/gentombow/pxpdfpages.sty deleted file mode 100644 index ad86ea819b..0000000000 --- a/macros/latex/contrib/gentombow/pxpdfpages.sty +++ /dev/null @@ -1,72 +0,0 @@ -% -% pxpdfpages.sty -% written by Hironobu Yamashita (@aminophen) -% -% This package is part of the gentombow bundle. -% https://github.com/aminophen/gentombow -% -% This package is expected to be compatible with -% * pdfpages.sty -% (2015/07/19 v0.5a -- 2020/01/28 v0.5q) -% - -%% package declaration -\NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{pxpdfpages} - [2020/10/11 v0.4c Patch to pdfpages for tombow] - -%% preparations -\def\pxpdpg@pkgname{pxpdfpages} -\def\pxpdpg@warn{\PackageWarningNoLine\pxpdpg@pkgname} -\def\pxpdpg@info{\PackageInfo\pxpdpg@pkgname} -\let\pxpdpg@debug\@gobble -%\def\pxpdpg@debug#1{\typeout{\pxpdpg@pkgname: [DEBUG] #1}}% for debug - -%% load it -\RequirePackageWithOptions{pdfpages}% pdfpages requires atbegshi -\ifx\pfmtname\@undefined\else - \ifx\AtBegShi@Output\@undefined - % LaTeX2e 2020-10-01: an emulation by ``atbegshi-ltx.sty'' - % => pLaTeX2e 2020-10-01 natively supports it - \else - % older: the real ``atbegshi.sty'' is loaded - \IfFileExists{pxatbegshi.sty}{\RequirePackage{pxatbegshi}}{} - \fi -\fi - -%% do it -%-- similar to bounddvi.sty (checked 2020/10/08 v8.2) -% detection of \iftombow availability is delayed until \AtBeginDocument, -% to support both (u)pLaTeX kernel and ``gentombow.sty'' -\AtBeginDocument{\pxpdpg@do} -\def\pxpdpg@do{% - \ifx\tombowtrue\@undefined - \pxpdpg@debug{Tombow feature unavailable, no patch applied}% - \let\pxpdpg@switch\relax % do nothing - \fi - \pxpdpg@switch} -% -\def\pxpdpg@switch{\pxpdpg@patch@pdfpages} - -%% patch internal for pdfpages to work with tombow -%-- Note: this code should be copied to gentombow.sty! -\def\pxpdpg@patch@pdfpages{% - \RequirePackage{etoolbox} - \patchcmd{\AM@output}{% - \setlength{\@tempdima}{\AM@xmargin}% - \edef\AM@xmargin{\the\@tempdima}% - \setlength{\@tempdima}{\AM@ymargin}% - \edef\AM@ymargin{\the\@tempdima}% - }{% - \setlength{\@tempdima}{\AM@xmargin\iftombow+1in\fi}% - \edef\AM@xmargin{\the\@tempdima}% - \setlength{\@tempdima}{\AM@ymargin\iftombow-1in\fi}% - \edef\AM@ymargin{\the\@tempdima}% - }% - {\pxpdpg@info{Patch for pdfpages applied}}% - {\pxpdpg@warn{Patch for pdfpages failed}}% -} - -%% all done - -\endinput diff --git a/macros/latex/contrib/gentombow/pxtextpos.sty b/macros/latex/contrib/gentombow/pxtextpos.sty deleted file mode 100644 index 02cd5202e2..0000000000 --- a/macros/latex/contrib/gentombow/pxtextpos.sty +++ /dev/null @@ -1,108 +0,0 @@ -% -% pxtextpos.sty -% written by Hironobu Yamashita (@aminophen) -% -% This package is part of the gentombow bundle. -% https://github.com/aminophen/gentombow -% -% This package is expected to be compatible with -% * textpos.sty -% 2005/10/13 v1.6a -- 2019/04/15 v1.9.1 -% - -%% package declaration -\NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{pxtextpos} - [2020/10/11 v0.4b Patch to textpos for tombow] - -%% preparations -\def\pxtxtpos@pkgname{pxtextpos} -\def\pxtxtpos@warn{\PackageWarningNoLine\pxtxtpos@pkgname} -\let\pxtxtpos@debug\@gobble -%\def\pxtxtpos@debug#1{\typeout{\pxtxtpos@pkgname: [DEBUG] #1}}% for debug - -%% load it -\RequirePackageWithOptions{textpos} -% textpos requires everyshi, only if both conditions are met: -% (1) \fmtversion is **older** than 2020/10/01 -% (2) \ifTP@abspos == \iftrue -% [TODO] tate-mode support is incomplete! -\ifx\pfmtname\@undefined\else - \ifx\@EveryShipout@Output\@undefined - % LaTeX2e 2020-10-01: an emulation by ``everyshi-ltx.sty'' - % => pLaTeX2e 2020-10-01 natively supports it - \else - % older: the real ``everyshi.sty'' is loaded - \IfFileExists{pxeveryshi.sty}{\RequirePackage{pxeveryshi}}{} - \fi -\fi - -%% do it -%-- similar to bounddvi.sty (checked 2020/10/08 v8.2) -% detection of \iftombow availability is delayed until \AtBeginDocument, -% to support both (u)pLaTeX kernel and ``gentombow.sty'' -\AtBeginDocument{\pxtxtpos@do} -\def\pxtxtpos@do{% - \ifx\tombowtrue\@undefined - \pxtxtpos@debug{Tombow feature unavailable, no patch applied}% - \let\pxtxtpos@switch\relax % do nothing - \fi - \pxtxtpos@switch} -% -\def\pxtxtpos@switch{% - \let\textblockorigin\pxtxtpos@textblockorigin - \ifTP@abspos\textblockorigin{0pt}{0pt}\fi %% reset -} - -%% known definition -\def\pxtxtpos@textblockorigin#1#2{% - \ifTP@abspos - \TP@ox=-1in \addtolength\TP@ox{#1} - \TP@oy=-1in \addtolength\TP@oy{#2} - \ifTP@chatter\typeout{TextBlockOrigin set to #1 x #2}\fi - \else - \PackageError{textpos} - {The \protect\textblockorigin\space command\MessageBreak - may only be used if the package was given\MessageBreak - the`absolute' option when it was invoked} - {If you want to use the \protect\textblockorigin\space command, then - \MessageBreak - invoke the package with the syntax\MessageBreak - \protect\usepackage[absolute]{textpos}} - \fi -} -\@onlypreamble\pxtxtpos@textblockorigin - -%% check definition -\ifx\textblockorigin\pxtxtpos@textblockorigin\else - \pxtxtpos@warn{% - Command \noexpand\textblockorigin is beyond my knowledge.\MessageBreak - I will apply the patch anyway, but it may break:\MessageBreak - Please report to the author of `\pxtxtpos@pkgname.sty'} -\fi - -%% new definition -\def\pxtxtpos@textblockorigin#1#2{% - \ifTP@abspos - \TP@ox=-1in \addtolength\TP@ox{#1} - \TP@oy=-1in \addtolength\TP@oy{#2} - %%% addition - \iftombow - \addtolength\TP@ox{1in}\addtolength\TP@oy{1in} - \fi - %%% - \ifTP@chatter\typeout{TextBlockOrigin set to #1 x #2}\fi - \else - \PackageError{textpos} - {The \protect\textblockorigin\space command\MessageBreak - may only be used if the package was given\MessageBreak - the`absolute' option when it was invoked} - {If you want to use the \protect\textblockorigin\space command, then - \MessageBreak - invoke the package with the syntax\MessageBreak - \protect\usepackage[absolute]{textpos}} - \fi -} - -\endinput -%% EOF diff --git a/macros/latex/contrib/hvfloat/Changes b/macros/latex/contrib/hvfloat/Changes index 9976f84d27..85e1f31fbe 100644 --- a/macros/latex/contrib/hvfloat/Changes +++ b/macros/latex/contrib/hvfloat/Changes @@ -1,4 +1,6 @@ hvfloat.sty: +2.40 2022-07-20 - fix full page floats without pagenumber. We now use + package floatpag and \thisfloatpagestyle 2.39 2022-05-01 - fix for using package calc and global length setting 2.38 2022-04-02 - added option l for capWidth to get a caption with linewidth, if also using the option wide for the object diff --git a/macros/latex/contrib/hvfloat/doc/examples/after1s1c.pdf b/macros/latex/contrib/hvfloat/doc/examples/after1s1c.pdf index 40854d1f72..92a1d4d54c 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/after1s1c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/after1s1c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/after1s1c.tex b/macros/latex/contrib/hvfloat/doc/examples/after1s1c.tex index bdb9db7170..3a1f4a581e 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/after1s1c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/after1s1c.tex @@ -1,5 +1,5 @@ \documentclass{scrartcl} -%% $Id: after1s1c.tex 72 2021-05-02 11:40:10Z herbert $ +%% $Id: after1s1c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} @@ -22,7 +22,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} \end{lstlisting} @@ -35,7 +35,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} @@ -50,7 +50,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} \end{lstlisting} @@ -63,7 +63,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} diff --git a/macros/latex/contrib/hvfloat/doc/examples/after2s2c.pdf b/macros/latex/contrib/hvfloat/doc/examples/after2s2c.pdf index 6a3f002998..d1c3b2d875 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/after2s2c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/after2s2c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/after2s2c.tex b/macros/latex/contrib/hvfloat/doc/examples/after2s2c.tex index 8c9f998931..a8b363d559 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/after2s2c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/after2s2c.tex @@ -1,5 +1,5 @@ \documentclass[twoside,twocolumn]{scrartcl} -%% $Id: after2s2c.tex 72 2021-05-02 11:40:10Z herbert $ +%% $Id: after2s2c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} \setlength\columnseprule{0.4pt} @@ -28,7 +28,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} \end{lstlisting} @@ -41,7 +41,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} @@ -54,7 +54,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} \end{lstlisting} @@ -67,7 +67,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} diff --git a/macros/latex/contrib/hvfloat/doc/examples/capPos.pdf b/macros/latex/contrib/hvfloat/doc/examples/capPos.pdf index 630a337a53..c527cfd980 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/capPos.pdf and b/macros/latex/contrib/hvfloat/doc/examples/capPos.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/capVPos.inc b/macros/latex/contrib/hvfloat/doc/examples/capVPos.inc index 10ef70e88c..5e76aaface 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/capVPos.inc +++ b/macros/latex/contrib/hvfloat/doc/examples/capVPos.inc @@ -19,7 +19,7 @@ justification= \hvFloat[capPos=right]{figure}{\includegraphics{frose}}{\capShortText}{} \end{lstlisting} -\hvFloat[capPos=right]{figure}{\includegraphics{frose}}{\capShortText}{} +\hvFloat[capPos=right]{figure}{\includegraphics{frose}}{\capShortText~\protect\parencite{aksin}}{} \blindtext @@ -27,15 +27,15 @@ justification= \hvFloat[capPos=right,capFormat={singlelinecheck=off}]{figure}{\includegraphics{frose}}{\capShortText}{} \end{lstlisting} -\hvFloat[capPos=right,capFormat={singlelinecheck=off}]{figure}{\includegraphics{frose}}{\capShortText}{} +\hvFloat[capPos=right,capFormat={singlelinecheck=off}]{figure}{\includegraphics{frose}}{\capShortText~\protect\parencite{aksin}}{} \blindtext \begin{lstlisting} -\hvFloat[capPos=right]{figure}{\includegraphics{frose}}{\capLongText}{} +\hvFloat[capPos=right]{figure}{\includegraphics{frose}}{\capLongText~\protect\parencite{aksin}}{} \end{lstlisting} -\hvFloat[capPos=right]{figure}{\includegraphics{frose}}{\capLongText}{} +\hvFloat[capPos=right]{figure}{\includegraphics{frose}}{\capLongText~\protect\parencite{aksin}}{} \blindtext @@ -47,10 +47,10 @@ justification= \subsection{\texttt{capVPos=top}} \begin{lstlisting} -\hvFloat[capPos=right,capVPos=top]{figure}{\includegraphics{frose}}{\capShortText}{} +\hvFloat[capPos=outer,capVPos=top]{figure}{\includegraphics{frose}}{\capShortText}{} \end{lstlisting} -\hvFloat[capPos=right,capVPos=top]{figure}{\includegraphics{frose}}{\capShortText}{} +\hvFloat[capPos=outer,capVPos=top]{figure}{\includegraphics{frose}}{\capShortText~\protect\parencite{aksin}}{} \blindtext @@ -65,10 +65,10 @@ justification= \begin{lstlisting} -\hvFloat[capPos=right,capVPos=top]{figure}{\includegraphics{frose}}{\capLongText}{} +\hvFloat[capPos=inner,capVPos=top]{figure}{\includegraphics{frose}}{\capLongText}{} \end{lstlisting} -\hvFloat[capPos=right,capVPos=top]{figure}{\includegraphics{frose}}{\capLongText}{} +\hvFloat[capPos=inner,capVPos=top]{figure}{\includegraphics{frose}}{\capLongText}{} \blindtext @@ -78,10 +78,10 @@ justification= \subsection{\texttt{capVPos=bottom}} \begin{lstlisting} -\hvFloat[capPos=right,capVPos=bottom]{figure}{\includegraphics{frose}}{\capShortText}{} +\hvFloat[capPos=outer,capVPos=bottom]{figure}{\includegraphics{frose}}{\capShortText}{} \end{lstlisting} -\hvFloat[capPos=right,capVPos=bottom]{figure}{\includegraphics{frose}}{\capShortText}{} +\hvFloat[capPos=outer,capVPos=bottom]{figure}{\includegraphics{frose}}{\capShortText}{} \blindtext @@ -95,10 +95,10 @@ justification= \blindtext \begin{lstlisting} -\hvFloat[capPos=right,capVPos=bottom]{figure}{\includegraphics{frose}}{\capLongText}{} +\hvFloat[capPos=inner,capVPos=bottom]{figure}{\includegraphics{frose}}{\capLongText}{} \end{lstlisting} -\hvFloat[capPos=right,capVPos=bottom]{figure}{\includegraphics{frose}}{\capLongText}{} +\hvFloat[capPos=inner,capVPos=bottom]{figure}{\includegraphics{frose}}{\capLongText}{} \blindtext \NewColumn @@ -107,10 +107,10 @@ justification= \subsection{\texttt{capPos=center}} \begin{lstlisting} -\hvFloat[capPos=right,capVPos=center]{figure}{\includegraphics{frose}}{\capShortText}{} +\hvFloat[capPos=outer,capVPos=center]{figure}{\includegraphics{frose}}{\capShortText}{} \end{lstlisting} -\hvFloat[capPos=right,capVPos=center]{figure}{\includegraphics{frose}}{\capShortText}{} +\hvFloat[capPos=outer,capVPos=center]{figure}{\includegraphics{frose}}{\capShortText}{} \blindtext @@ -123,10 +123,10 @@ justification= \blindtext \begin{lstlisting} -\hvFloat[capPos=right,capVPos=center]{figure}{\includegraphics{frose}}{\capLongText}{} +\hvFloat[capPos=inner,capVPos=center]{figure}{\includegraphics{frose}}{\capLongText}{} \end{lstlisting} -\hvFloat[capPos=right,capVPos=center]{figure}{\includegraphics{frose}}{\capLongText}{} +\hvFloat[capPos=inner,capVPos=center]{figure}{\includegraphics{frose}}{\capLongText}{} \blindtext diff --git a/macros/latex/contrib/hvfloat/doc/examples/default1s1c.pdf b/macros/latex/contrib/hvfloat/doc/examples/default1s1c.pdf index 861efc9ac7..ac6eb73113 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/default1s1c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/default1s1c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/default1s1c.tex b/macros/latex/contrib/hvfloat/doc/examples/default1s1c.tex index 357a8c7543..a974d118a3 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/default1s1c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/default1s1c.tex @@ -1,5 +1,5 @@ \documentclass{scrartcl} -%% $Id: default1s1c.tex 72 2021-05-02 11:40:10Z herbert $ +%% $Id: default1s1c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} @@ -27,7 +27,7 @@ The fullpage image~\vref{fig:fullpage1} has a caption~\vpageref{fig:fullpage1-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} \end{lstlisting} @@ -40,7 +40,7 @@ The fullpage image~\vref{fig:fullpage1} has a caption~\vpageref{fig:fullpage1-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} @@ -53,7 +53,7 @@ The fullpage image~\vref{fig:fullpage1} has a caption~\vpageref{fig:fullpage1-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} \end{lstlisting} @@ -66,7 +66,7 @@ The fullpage image~\vref{fig:fullpage1} has a caption~\vpageref{fig:fullpage1-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} diff --git a/macros/latex/contrib/hvfloat/doc/examples/default1s2c.pdf b/macros/latex/contrib/hvfloat/doc/examples/default1s2c.pdf index 60e3cb94ca..80402bdde4 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/default1s2c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/default1s2c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/default1s2c.tex b/macros/latex/contrib/hvfloat/doc/examples/default1s2c.tex index 86c3b0a898..79f9f8b101 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/default1s2c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/default1s2c.tex @@ -1,5 +1,5 @@ \documentclass[twocolumn]{scrartcl} -%% $Id: default1s2c.tex 72 2021-05-02 11:40:10Z herbert $ +%% $Id: default1s2c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} \setlength\columnseprule{0.4pt} @@ -21,7 +21,7 @@ [A float with the default caption setting]% {A default caption of a ``default'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:0} \end{lstlisting} @@ -32,7 +32,7 @@ [A float with the default caption setting]% {A default caption of a ``default'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:0} diff --git a/macros/latex/contrib/hvfloat/doc/examples/default2s1c.pdf b/macros/latex/contrib/hvfloat/doc/examples/default2s1c.pdf index 33ac8dd876..75436d0f01 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/default2s1c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/default2s1c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/default2s1c.tex b/macros/latex/contrib/hvfloat/doc/examples/default2s1c.tex index 282925826d..449cb5d9c1 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/default2s1c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/default2s1c.tex @@ -1,5 +1,5 @@ \documentclass[twoside]{scrartcl} -%% $Id: default2s1c.tex 72 2021-05-02 11:40:10Z herbert $ +%% $Id: default2s1c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} @@ -22,7 +22,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} \end{lstlisting} @@ -35,7 +35,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} @@ -48,7 +48,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} \end{lstlisting} @@ -61,7 +61,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} diff --git a/macros/latex/contrib/hvfloat/doc/examples/default2s2c.pdf b/macros/latex/contrib/hvfloat/doc/examples/default2s2c.pdf index 1291839ce8..95b0cf19fb 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/default2s2c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/default2s2c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/default2s2c.tex b/macros/latex/contrib/hvfloat/doc/examples/default2s2c.tex index 45278e1e8d..0055c3c570 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/default2s2c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/default2s2c.tex @@ -1,5 +1,5 @@ \documentclass[twoside,twocolumn]{scrartcl} -%% $Id: default2s2c.tex 72 2021-05-02 11:40:10Z herbert $ +%% $Id: default2s2c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} \setlength\columnseprule{0.4pt} @@ -28,7 +28,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} \end{lstlisting} @@ -41,7 +41,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} @@ -54,7 +54,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} \end{lstlisting} @@ -67,7 +67,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} diff --git a/macros/latex/contrib/hvfloat/doc/examples/doublefullpage2s2c.pdf b/macros/latex/contrib/hvfloat/doc/examples/doublefullpage2s2c.pdf new file mode 100644 index 0000000000..7c52645880 Binary files /dev/null and b/macros/latex/contrib/hvfloat/doc/examples/doublefullpage2s2c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/doublefullpage2s2c.tex b/macros/latex/contrib/hvfloat/doc/examples/doublefullpage2s2c.tex new file mode 100644 index 0000000000..46ae9406ba --- /dev/null +++ b/macros/latex/contrib/hvfloat/doc/examples/doublefullpage2s2c.tex @@ -0,0 +1,802 @@ +\errorcontextlines=100 +%\documentclass[final]{ltugboat} +\documentclass[twoside,twocolumn,american]{scrartcl} +%% $Id: doublepage2s2c.tex 92 2021-05-18 09:46:55Z herbert $ + +\input{preamble.ltx} +\usepackage{xcolor,marginnote} + +\usepackage{marginnote,showframe} +\setcounter{tocdepth}{2} + +\begin{document} +\title{Examples for doublepage floats \newline with bind correction} +\author{Herbert Voß} +\maketitle + +\tableofcontents + + +\onecolumn +\listoffigures + +\newpage\null +\twocolumn +\part{Argument \texttt{doubleFULLPAGE}} +\section{Definition on an odd page} + +\Blindtext\hvblindtext + +\hvblindtext + +\subsection{The default -- in the first column} + +\begin{lstlisting} +\hvFloat[doubleFULLPAGE]% + {figure}% + {\includegraphics[doubleFULLPAGE]{images/rheinsberg}}% + [A doublepage image with a caption on the right side of the right part.]% + {A caption for a double-sided image that will be placed on the right side of the + right-hand part of the illustration. The illustration begins on the left edge of + the paper. A short form is used for the LOF. + The parameter is \texttt{doubleFULLPAGE}}% + {fig:doubleFULLPAGE0} +\end{lstlisting} + + +\marginnote{Fig. \ref{fig:doubleFULLPAGE0}} +\hvFloat[doubleFULLPAGE]% + {figure}% + {\includegraphics[doubleFULLPAGE]{images/rheinsberg}}% + [A doublepage image with a caption on the right side of the right part.]% + {A caption for a double-sided image that will be placed on the right side of the + right-hand part of the illustration. The illustration begins on the left edge of + the paper. A short form is used for the LOF. + The parameter is \texttt{doubleFULLPAGE}}% + {fig:doubleFULLPAGE0} + +\Blindtext + +\Blindtext + +%\Blindtext + +\hvblindtext + +\hvblindtext +\hvblindtext + +\subsection{The default -- in the second column} + + +\begin{lstlisting} +\hvFloat[doubleFULLPAGE]% + {figure}% + {\includegraphics[doubleFULLPAGE]{images/rheinsberg}}% + [A doublepage image with a caption on the right side of the right part.]% + {A caption for a double-sided image that will be placed on the right side of the + right-hand part of the illustration. The illustration begins on the left edge of + the paper. A short form is used for the LOF. + The parameter is \texttt{doubleFULLPAGE}}% + {fig:doubleFULLPAGE02nd} +\end{lstlisting} + + +\marginnote{Fig. \ref{fig:doubleFULLPAGE02nd}} +\hvFloat[doubleFULLPAGE]% + {figure}% + {\includegraphics[doubleFULLPAGE]{images/rheinsberg}}% + [A doublepage image with a caption on the right side of the right part.]% + {A caption for a double-sided image that will be placed on the right side of the + right-hand part of the illustration. The illustration begins on the left edge of + the paper. A short form is used for the LOF. + The parameter is \texttt{doubleFULLPAGE}}% + {fig:doubleFULLPAGE02nd} + +\Blindtext + +%\Blindtext + +%\Blindtext + +\hvblindtext + +\hvblindtext +\hvblindtext + +\subsection{\texttt{bindCorr=1cm} -- first column} + +\begin{lstlisting} +\hvFloat[doubleFULLPAGE,capWidth=n,capPos=right,bindCorr=1cm]% + {figure}% + {\includegraphics[doubleFULLPAGEbindCorr]{images/rheinsberg}}% + [A doublepage image with a caption on the right side of the right part.]% + {A caption for a double-sided image that will be placed on the right side of the + right-hand part of the illustration. The illustration begins on the left edge of + the paper. A short form is used for the LOF. + The parameter is \texttt{doubleFULLPAGE}}% + {fig:doubleFULLPAGE1} +\end{lstlisting} + +\marginnote{Fig. \ref{fig:doubleFULLPAGE1}} +\hvFloat[doubleFULLPAGE,capWidth=n,capPos=right,bindCorr=1cm]% + {figure}% + {\includegraphics[doubleFULLPAGEbindCorr]{images/rheinsberg}}% + [A doublepage image with a caption on the right side of the right part.]% + {A caption for a double-sided image that will be placed on the right side of the + right-hand part of the illustration. The illustration begins on the left edge of + the paper. A short form is used for the LOF. + The parameter is \texttt{doubleFULLPAGE}}% + {fig:doubleFULLPAGE1} + +\hvblindtext + +%\Blindtext + +\Blindtext + +\Blindtext + +%\Blindtext + +\hvblindtext + +\hvblindtext + +\hvblindtext + +\subsection{\texttt{bindCorr=1cm} -- second column} + +\begin{lstlisting} +\hvFloat[doubleFULLPAGE,capWidth=n,capPos=right,bindCorr=1cm]% + {figure}% + {\includegraphics[doubleFULLPAGEbindCorr]{images/rheinsberg}}% + [A doublepage image with a caption on the right side of the right part.]% + {A caption for a double-sided image that will be placed on the right side of the + right-hand part of the illustration. The illustration begins on the left edge of + the paper. A short form is used for the LOF. + The parameter is \texttt{doubleFULLPAGE}}% + {fig:doubleFULLPAGE12nd} +\end{lstlisting} + +\marginnote{Fig. \ref{fig:doubleFULLPAGE12nd}} +\hvFloat[doubleFULLPAGE,capWidth=n,capPos=right,bindCorr=1cm]% + {figure}% + {\includegraphics[doubleFULLPAGEbindCorr]{images/rheinsberg}}% + [A doublepage image with a caption on the right side of the right part.]% + {A caption for a double-sided image that will be placed on the right side of the + right-hand part of the illustration. The illustration begins on the left edge of + the paper. A short form is used for the LOF. + The parameter is \texttt{doubleFULLPAGE}}% + {fig:doubleFULLPAGE12nd} + +\hvblindtext + +%\Blindtext + +\Blindtext + +%\Blindtext + +\hvblindtext +\hvblindtext + +\hvblindtext + + + +\subsection{\texttt{bindCorr=3mm} -- first column} +\begin{lstlisting} +\hvFloat[doubleFULLPAGE,capWidth=n,capPos=right,bindCorr=3mm]% + {figure}% + {\includegraphics[doubleFULLPAGEbindCorr]{images/rheinsberg}}% + [A doublepage image with a caption on the right side of the right part.]% + {A caption for a double-sided image that will be placed on the right side of the + right-hand part of the illustration. The illustration begins on the left edge of + the paper. A short form is used for the LOF. + The parameter is \texttt{doubleFULLPAGE}}% + {fig:doubleFULLPAGE2} +\end{lstlisting} + +\marginnote{Fig. \ref{fig:doubleFULLPAGE2}} +\hvFloat[doubleFULLPAGE,capWidth=n,capPos=right,bindCorr=3mm]% + {figure}% + {\includegraphics[doubleFULLPAGEbindCorr]{images/rheinsberg}}% + [A doublepage image with a caption on the right side of the right part.]% + {A caption for a double-sided image that will be placed on the right side of the + right-hand part of the illustration. The illustration begins on the left edge of + the paper. A short form is used for the LOF. + The parameter is \texttt{doubleFULLPAGE}}% + {fig:doubleFULLPAGE2} + + +\Blindtext + +\Blindtext + +%\Blindtext +%\Blindtext + +\hvblindtext + +\hvblindtext +\hvblindtext + + + + +\subsection{\texttt{bindCorr=3mm} -- second column} +\begin{lstlisting} +\hvFloat[doubleFULLPAGE,capWidth=n,capPos=right,bindCorr=3mm]% + {figure}% + {\includegraphics[doubleFULLPAGEbindCorr]{images/rheinsberg}}% + [A doublepage image with a caption on the right side of the right part.]% + {A caption for a double-sided image that will be placed on the right side of the + right-hand part of the illustration. The illustration begins on the left edge of + the paper. A short form is used for the LOF. + The parameter is \texttt{doubleFULLPAGE}}% + {fig:doubleFULLPAGE22nd} +\end{lstlisting} + +\marginnote{Fig. \ref{fig:doubleFULLPAGE22nd}} +\hvFloat[doubleFULLPAGE,capWidth=n,capPos=right,bindCorr=3mm]% + {figure}% + {\includegraphics[doubleFULLPAGEbindCorr]{images/rheinsberg}}% + [A doublepage image with a caption on the right side of the right part.]% + {A caption for a double-sided image that will be placed on the right side of the + right-hand part of the illustration. The illustration begins on the left edge of + the paper. A short form is used for the LOF. + The parameter is \texttt{doubleFULLPAGE}}% + {fig:doubleFULLPAGE22nd} + + +\Blindtext + +%\Blindtext + +%\Blindtext + +\hvblindtext +\hvblindtext + +\hvblindtext + + +\subsection{\texttt{bindCorr=} -- first column} + +\begin{lstlisting} +\hvFloat[doubleFULLPAGE,capWidth=n,bindCorr=\the\dimexpr1in+\oddsidemargin]% + {figure}% + {\includegraphics[doubleFULLPAGEbindCorr]{images/rheinsberg}}% + [A doublepage image with a caption on the right side of the right part.]% + {A caption for a double-sided image that will be placed on the right side of the + right-hand part of the illustration. The illustration begins on the left edge of + the paper. A short form is used for the LOF. + The parameter is \texttt{doubleFULLPAGE}}% + {fig:doubleFULLPAGE3} +\end{lstlisting} + +\marginnote{Fig. \ref{fig:doubleFULLPAGE3}} +\hvFloat[doubleFULLPAGE,capWidth=n,bindCorr=\the\dimexpr1in+\oddsidemargin]% + {figure}% + {\includegraphics[doubleFULLPAGEbindCorr]{images/rheinsberg}}% + [A doublepage image with a caption on the right side of the right part.]% + {A caption for a double-sided image that will be placed on the right side of the + right-hand part of the illustration. The illustration begins on the left edge of + the paper. A short form is used for the LOF. + The parameter is \texttt{doubleFULLPAGE}}% + {fig:doubleFULLPAGE3} + + +\Blindtext + +\Blindtext + +%\Blindtext + +\hvblindtext + +\hvblindtext +\hvblindtext + +\hvblindtext + +\subsection{\texttt{bindCorr=} -- second column} + +\begin{lstlisting} +\hvFloat[doubleFULLPAGE,capWidth=n,bindCorr=\the\dimexpr1in+\oddsidemargin]% + {figure}% + {\includegraphics[doubleFULLPAGEbindCorr]{images/rheinsberg}}% + [A doublepage image with a caption on the right side of the right part.]% + {A caption for a double-sided image that will be placed on the right side of the + right-hand part of the illustration. The illustration begins on the left edge of + the paper. A short form is used for the LOF. + The parameter is \texttt{doubleFULLPAGE}}% + {fig:doubleFULLPAGE32nd} +\end{lstlisting} + +\marginnote{Fig. \ref{fig:doubleFULLPAGE32nd}} +\hvFloat[doubleFULLPAGE,capWidth=n,bindCorr=\the\dimexpr1in+\oddsidemargin,capPos=after]% + {figure}% + {\includegraphics[doubleFULLPAGEbindCorr]{images/rheinsberg}}% + [A doublepage image with a caption on the right side of the right part.]% + {A caption for a double-sided image that will be placed on the right side of the + right-hand part of the illustration. The illustration begins on the left edge of + the paper. A short form is used for the LOF. + The parameter is \texttt{doubleFULLPAGE}}% + {fig:doubleFULLPAGE32nd} + + +%\Blindtext + +\hvblindtext + +\hvblindtext + +%\hvblindtext + + + + +\section{Definition on an even page} + + +\subsection{The default -- first column} +\begin{lstlisting} +\hvFloat[doubleFULLPAGE]% + {figure}% + {\includegraphics[height=\paperheight]{images/rheinsberg}}% + [A doublepage image with a caption on the right side of the right part.]% + {A caption for a double-sided image that will be placed on the right side of the + right-hand part of the illustration. The illustration begins on the left edge of + the paper. A short form is used for the LOF. + The parameter is \texttt{doubleFULLPAGE}}% + {fig:doubleFULLPAGE0a} +\end{lstlisting} + + +\marginnote{Fig. \ref{fig:doubleFULLPAGE0a}} +\hvFloat[doubleFULLPAGE]% + {figure}% + {\includegraphics[height=\paperheight]{images/rheinsberg}}% + [A doublepage image with a caption on the right side of the right part.]% + {A caption for a double-sided image that will be placed on the right side of the + right-hand part of the illustration. The illustration begins on the left edge of + the paper. A short form is used for the LOF. + The parameter is \texttt{doubleFULLPAGE}}% + {fig:doubleFULLPAGE0a} + + +\Blindtext + +\Blindtext + +%\Blindtext + +\hvblindtext +%\Blindtext + +\hvblindtext + +\hvblindtext +\hvblindtext + +\subsection{The default -- second column} +\begin{lstlisting} +\hvFloat[doubleFULLPAGE]% + {figure}% + {\includegraphics[height=\paperheight]{images/rheinsberg}}% + [A doublepage image with a caption on the right side of the right part.]% + {A caption for a double-sided image that will be placed on the right side of the + right-hand part of the illustration. The illustration begins on the left edge of + the paper. A short form is used for the LOF. + The parameter is \texttt{doubleFULLPAGE}}% + {fig:doubleFULLPAGE0a2nd} +\end{lstlisting} + + +\marginnote{Fig. \ref{fig:doubleFULLPAGE0a2nd}} +\hvFloat[doubleFULLPAGE]% + {figure}% + {\includegraphics[height=\paperheight]{images/rheinsberg}}% + [A doublepage image with a caption on the right side of the right part.]% + {A caption for a double-sided image that will be placed on the right side of the + right-hand part of the illustration. The illustration begins on the left edge of + the paper. A short form is used for the LOF. + The parameter is \texttt{doubleFULLPAGE}}% + {fig:doubleFULLPAGE0a2nd} + + +\hvblindtext +\hvblindtext + +\hvblindtext + +\Blindtext + +%\Blindtext + +%\Blindtext + + + + +\subsection{\texttt{bindCorr=1cm} -- first column} + +\begin{lstlisting} +\hvFloat[doubleFULLPAGE,capWidth=n,capPos=right,bindCorr=1cm]% + {figure}% + {\includegraphics[doubleFULLPAGEbindCorr]{images/rheinsberg}}% + [A doublepage image with a caption on the right side of the right part.]% + {A caption for a double-sided image that will be placed on the right side of the + right-hand part of the illustration. The illustration begins on the left edge of + the paper. A short form is used for the LOF. + The parameter is \texttt{doubleFULLPAGE}}% + {fig:doubleFULLPAGE1a} +\end{lstlisting} + +\marginnote{Fig. \ref{fig:doubleFULLPAGE1a}} +\hvFloat[doubleFULLPAGE,capWidth=n,capPos=right,bindCorr=1cm]% + {figure}% + {\includegraphics[doubleFULLPAGEbindCorr]{images/rheinsberg}}% + [A doublepage image with a caption on the right side of the right part.]% + {A caption for a double-sided image that will be placed on the right side of the + right-hand part of the illustration. The illustration begins on the left edge of + the paper. A short form is used for the LOF. + The parameter is \texttt{doubleFULLPAGE}}% + {fig:doubleFULLPAGE1a} + +%\hvblindtext + +\Blindtext + +\Blindtext + +%\Blindtext +%\Blindtext + +\hvblindtext + +\hvblindtext +\hvblindtext + +\hvblindtext + + +\subsection{\texttt{bindCorr=1cm} -- second column} + +\begin{lstlisting} +\hvFloat[doubleFULLPAGE,capWidth=n,capPos=right,bindCorr=1cm]% + {figure}% + {\includegraphics[doubleFULLPAGEbindCorr]{images/rheinsberg}}% + [A doublepage image with a caption on the right side of the right part.]% + {A caption for a double-sided image that will be placed on the right side of the + right-hand part of the illustration. The illustration begins on the left edge of + the paper. A short form is used for the LOF. + The parameter is \texttt{doubleFULLPAGE}}% + {fig:doubleFULLPAGE1a2nd} +\end{lstlisting} + +\marginnote{Fig. \ref{fig:doubleFULLPAGE1a2nd}} +\hvFloat[doubleFULLPAGE,capWidth=n,capPos=right,bindCorr=1cm]% + {figure}% + {\includegraphics[doubleFULLPAGEbindCorr]{images/rheinsberg}}% + [A doublepage image with a caption on the right side of the right part.]% + {A caption for a double-sided image that will be placed on the right side of the + right-hand part of the illustration. The illustration begins on the left edge of + the paper. A short form is used for the LOF. + The parameter is \texttt{doubleFULLPAGE}}% + {fig:doubleFULLPAGE1a2nd} + +\hvblindtext + +%\Blindtext + +\Blindtext + +%\Blindtext + +\hvblindtext + +\hvblindtext + + + + +\subsection{\texttt{bindCorr=3mm} -- first column} + +\begin{lstlisting} +\hvFloat[doubleFULLPAGE,capWidth=n,capPos=right,bindCorr=3mm]% + {figure}% + {\includegraphics[doubleFULLPAGEbindCorr]{images/rheinsberg}}% + [A doublepage image with a caption on the right side of the right part.]% + {A caption for a double-sided image that will be placed on the right side of the + right-hand part of the illustration. The illustration begins on the left edge of + the paper. A short form is used for the LOF. + The parameter is \texttt{doubleFULLPAGE}}% + {fig:doubleFULLPAGE2a} +\end{lstlisting} + +\marginnote{Fig. \ref{fig:doubleFULLPAGE2a}} +\hvFloat[doubleFULLPAGE,capWidth=n,capPos=right,bindCorr=3mm]% + {figure}% + {\includegraphics[doubleFULLPAGEbindCorr]{images/rheinsberg}}% + [A doublepage image with a caption on the right side of the right part.]% + {A caption for a double-sided image that will be placed on the right side of the + right-hand part of the illustration. The illustration begins on the left edge of + the paper. A short form is used for the LOF. + The parameter is \texttt{doubleFULLPAGE}}% + {fig:doubleFULLPAGE2a} + + +\Blindtext + +\Blindtext + +%\Blindtext +%\Blindtext + +\hvblindtext + +\hvblindtext + +\hvblindtext + +\hvblindtext + + +\subsection{\texttt{bindCorr=3mm} -- second column} + +\begin{lstlisting} +\hvFloat[doubleFULLPAGE,capWidth=n,capPos=right,bindCorr=3mm]% + {figure}% + {\includegraphics[doubleFULLPAGEbindCorr]{images/rheinsberg}}% + [A doublepage image with a caption on the right side of the right part.]% + {A caption for a double-sided image that will be placed on the right side of the + right-hand part of the illustration. The illustration begins on the left edge of + the paper. A short form is used for the LOF. + The parameter is \texttt{doubleFULLPAGE}}% + {fig:doubleFULLPAGE2a2nd} +\end{lstlisting} + +\marginnote{Fig. \ref{fig:doubleFULLPAGE2a2nd}} +\hvFloat[doubleFULLPAGE,capWidth=n,capPos=right,bindCorr=3mm]% + {figure}% + {\includegraphics[doubleFULLPAGEbindCorr]{images/rheinsberg}}% + [A doublepage image with a caption on the right side of the right part.]% + {A caption for a double-sided image that will be placed on the right side of the + right-hand part of the illustration. The illustration begins on the left edge of + the paper. A short form is used for the LOF. + The parameter is \texttt{doubleFULLPAGE}}% + {fig:doubleFULLPAGE2a2nd} + + +\Blindtext + +%\Blindtext + +%\Blindtext + +%\hvblindtext + +\hvblindtext + +\hvblindtext + +\hvblindtext + + + +\subsection{\texttt{bindCorr=} -- first column} + +\begin{lstlisting} +\hvFloat[doubleFULLPAGE,capWidth=n,bindCorr=\the\dimexpr1in+\oddsidemargin]% + {figure}% + {\includegraphics[doubleFULLPAGEbindCorr]{images/rheinsberg}}% + [A doublepage image with a caption on the right side of the right part.]% + {A caption for a double-sided image that will be placed on the right side of the + right-hand part of the illustration. The illustration begins on the left edge of + the paper. A short form is used for the LOF. + The parameter is \texttt{doubleFULLPAGE}}% + {fig:doubleFULLPAGE3a} +\end{lstlisting} + +\marginnote{Fig. \ref{fig:doubleFULLPAGE3a}} +\hvFloat[doubleFULLPAGE,capWidth=n,bindCorr=\the\dimexpr1in+\oddsidemargin]% + {figure}% + {\includegraphics[doubleFULLPAGEbindCorr]{images/rheinsberg}}% + [A doublepage image with a caption on the right side of the right part.]% + {A caption for a double-sided image that will be placed on the right side of the + right-hand part of the illustration. The illustration begins on the left edge of + the paper. A short form is used for the LOF. + The parameter is \texttt{doubleFULLPAGE}}% + {fig:doubleFULLPAGE3a} + + +\Blindtext + +\Blindtext + +%\Blindtext + +\hvblindtext + +\hvblindtext + +%\hvblindtext + +%\hvblindtext + + +\subsection{\texttt{bindCorr=} -- second column} + +\begin{lstlisting} +\hvFloat[doubleFULLPAGE,capWidth=n,bindCorr=\the\dimexpr1in+\oddsidemargin]% + {figure}% + {\includegraphics[doubleFULLPAGEbindCorr]{images/rheinsberg}}% + [A doublepage image with a caption on the right side of the right part.]% + {A caption for a double-sided image that will be placed on the right side of the + right-hand part of the illustration. The illustration begins on the left edge of + the paper. A short form is used for the LOF. + The parameter is \texttt{doubleFULLPAGE}}% + {fig:doubleFULLPAGE3a2nd} +\end{lstlisting} + +\marginnote{Fig. \ref{fig:doubleFULLPAGE3a2nd}} +\hvFloat[doubleFULLPAGE,capWidth=n,bindCorr=\the\dimexpr1in+\oddsidemargin,capPos=after]% + {figure}% + {\includegraphics[doubleFULLPAGEbindCorr]{images/rheinsberg}}% + [A doublepage image with a caption on the right side of the right part.]% + {A caption for a double-sided image that will be placed on the right side of the + right-hand part of the illustration. The illustration begins on the left edge of + the paper. A short form is used for the LOF. + The parameter is \texttt{doubleFULLPAGE}}% + {fig:doubleFULLPAGE3a2nd} + + +\Blindtext + +\Blindtext + +\Blindtext + +\hvblindtext + + + +%\cleardoublepage + + +\hvblindtext + +\hvblindtext + +\Blindtext + +\hvblindtext + +\section{Full height, but no complete double page} +\subsection{The default -- in the first column} + +\begin{lstlisting} +\hvFloat[doubleFULLPAGE,capPos=right]% + {figure}% + {\includegraphics[height=\paperheight]{images/rheinsberg}}% + [A doublepage image with a caption on the right side of the right part.]% + {A caption for a double-sided image that will be placed on the right side of the + right-hand part of the illustration. The illustration begins on the left edge of + the paper. A short form is used for the LOF. + The parameter is \texttt{doubleFULLPAGE}}% + {fig:doubleFULLPAGE0n} +\end{lstlisting} + + +\marginnote{Fig. \ref{fig:doubleFULLPAGE0n}} +\hvFloat[doubleFULLPAGE,capPos=right]% + {figure}% + {\includegraphics[height=\paperheight]{images/rheinsberg}}% + [A doublepage image with a caption on the right side of the right part.]% + {A caption for a double-sided image that will be placed on the right side of the + right-hand part of the illustration. The illustration begins on the left edge of + the paper. A short form is used for the LOF. + The parameter is \texttt{doubleFULLPAGE}}% + {fig:doubleFULLPAGE0n} + +\Blindtext + +\Blindtext + +%\Blindtext + +\clearpage +\Blindtext +%\hvblindtext + +%\hvblindtext + +\Blindtext + +\hvblindtext +\Blindtext + +\subsection{The default -- in the second column} + + +\begin{lstlisting} +\hvFloat[doubleFULLPAGE,capPos=before]% + {figure}% + {\includegraphics[height=\paperheight]{images/rheinsberg}}% + [A doublepage image with a caption on the right side of the right part.]% + {A caption for a double-sided image that will be placed on the right side of the + right-hand part of the illustration. The illustration begins on the left edge of + the paper. A short form is used for the LOF. + The parameter is \texttt{doubleFULLPAGE}}% + {fig:doubleFULLPAGE02ndn} +\end{lstlisting} + + +\marginnote{Fig. \ref{fig:doubleFULLPAGE02ndn}} +\hvFloat[doubleFULLPAGE,capPos=before] + {figure}% + {\includegraphics[height=\paperheight]{images/rheinsberg}}% + [A doublepage image with a caption on the right side of the right part.]% + {A caption for a double-sided image that will be placed on the right side of the + right-hand part of the illustration. The illustration begins on the left edge of + the paper. A short form is used for the LOF. + The parameter is \texttt{doubleFULLPAGE}}% + {fig:doubleFULLPAGE02ndn} + +\Blindtext + +\Blindtext + +\Blindtext + +%\hvblindtext + +\Blindtext + +%\Blindtext + + +\subsection{The default -- in the second column} + + +\begin{lstlisting} +\hvFloat[doubleFULLPAGE,capPos=after,twoColumnCaption]% + {figure}% + {\includegraphics[doubleFULLPAGE]{images/rheinsberg}}% + [A doublepage image with a caption on the right side of the right part.]% + {A caption for a double-sided image that will be placed on the right side of the + right-hand part of the illustration. The illustration begins on the left edge of + the paper. A short form is used for the LOF. + The parameter is \texttt{doubleFULLPAGE}}% + {fig:doubleFULLPAGE02ndnn} +\end{lstlisting} + + +\marginnote{Fig. \ref{fig:doubleFULLPAGE02ndnn}} +\hvFloat[doubleFULLPAGE,capPos=after,twoColumnCaption]% + {figure}% + {\includegraphics[doubleFULLPAGE]{images/rheinsberg}}% + [A doublepage image with a caption on the right side of the right part.]% + {A caption for a double-sided image that will be placed + at the bottom of the following page. The doublepage image begins on the left edge of + the paper. A short form is used for the LOF. + The parameter is \texttt{doubleFULLPAGE}}% + {fig:doubleFULLPAGE02ndnn} + +\Blindtext + +\Blindtext + +\Blindtext + +\hvblindtext + +\hvblindtext +\hvblindtext + + + +\end{document} \ No newline at end of file diff --git a/macros/latex/contrib/hvfloat/doc/examples/doublepage2s1c.pdf b/macros/latex/contrib/hvfloat/doc/examples/doublepage2s1c.pdf index 0d3e2713ef..bb31028bef 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/doublepage2s1c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/doublepage2s1c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/doublepage2s1c.tex b/macros/latex/contrib/hvfloat/doc/examples/doublepage2s1c.tex index 656cbe68c8..ebd703e964 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/doublepage2s1c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/doublepage2s1c.tex @@ -1,5 +1,5 @@ \documentclass[twoside]{scrartcl} -%% $Id: doublepage2s1c.tex 92 2021-05-18 09:46:55Z herbert $ +%% $Id: doublepage2s1c.tex 299 2021-10-09 14:05:35Z herbert $ \input{preamble.ltx} \usepackage{blindtext,xcolor,marginnote} @@ -166,10 +166,11 @@ \hvblindtext \hvblindtext +\hvblindtext \subsection{Definition on an even page} \subsubsection{The default} -\begin{lstlisting} +\begin{verbatim} \hvFloat[doublePage,capWidth=n,capPos=right]% {figure}% {\includegraphics[width=2\textwidth]{images/sonne-meer}}% @@ -179,7 +180,7 @@ the paper. A short form is used for the LOF. The parameter is \texttt{doublePage}}% {fig:doublePage0a} -\end{lstlisting} +\end{verbatim} \marginnote{Fig. \ref{fig:doublePage0a}} diff --git a/macros/latex/contrib/hvfloat/doc/examples/doublepage2s2c.pdf b/macros/latex/contrib/hvfloat/doc/examples/doublepage2s2c.pdf index 1578d673ff..040449a017 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/doublepage2s2c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/doublepage2s2c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/even1s1c.pdf b/macros/latex/contrib/hvfloat/doc/examples/even1s1c.pdf index 7be7a1cb5b..79c403fd39 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/even1s1c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/even1s1c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/even1s1c.tex b/macros/latex/contrib/hvfloat/doc/examples/even1s1c.tex index 75eb2bf872..d042b90863 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/even1s1c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/even1s1c.tex @@ -1,5 +1,5 @@ \documentclass{scrartcl} -%% $Id: even1s1c.tex 72 2021-05-02 11:40:10Z herbert $ +%% $Id: even1s1c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} @@ -22,7 +22,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} \end{lstlisting} @@ -35,7 +35,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} @@ -48,7 +48,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} \end{lstlisting} @@ -61,7 +61,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} diff --git a/macros/latex/contrib/hvfloat/doc/examples/even1s2c.pdf b/macros/latex/contrib/hvfloat/doc/examples/even1s2c.pdf index e98663ed09..6dcc088e0d 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/even1s2c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/even1s2c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/even1s2c.tex b/macros/latex/contrib/hvfloat/doc/examples/even1s2c.tex index da5d013c40..2965b47502 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/even1s2c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/even1s2c.tex @@ -1,5 +1,5 @@ \documentclass[twocolumn]{scrartcl} -%% $Id: even1s2c.tex 72 2021-05-02 11:40:10Z herbert $ +%% $Id: even1s2c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} \setlength\columnseprule{0.4pt} @@ -28,7 +28,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} \end{lstlisting} @@ -41,7 +41,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} @@ -54,7 +54,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} \end{lstlisting} @@ -67,7 +67,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} diff --git a/macros/latex/contrib/hvfloat/doc/examples/even2s1c.pdf b/macros/latex/contrib/hvfloat/doc/examples/even2s1c.pdf index 09a417c031..bcd7e34b43 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/even2s1c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/even2s1c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/even2s1c.tex b/macros/latex/contrib/hvfloat/doc/examples/even2s1c.tex index 1ee584c81a..0e794a30e7 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/even2s1c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/even2s1c.tex @@ -1,5 +1,5 @@ \documentclass[twoside]{scrartcl} -%% $Id: even2s1c.tex 72 2021-05-02 11:40:10Z herbert $ +%% $Id: even2s1c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} @@ -27,7 +27,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} \end{lstlisting} @@ -39,7 +39,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} @@ -54,7 +54,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} \end{lstlisting} @@ -67,7 +67,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} diff --git a/macros/latex/contrib/hvfloat/doc/examples/even2s2c.pdf b/macros/latex/contrib/hvfloat/doc/examples/even2s2c.pdf index e2898a14ae..1be9492a91 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/even2s2c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/even2s2c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/even2s2c.tex b/macros/latex/contrib/hvfloat/doc/examples/even2s2c.tex index ce3206c075..6952e4e45e 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/even2s2c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/even2s2c.tex @@ -1,5 +1,5 @@ \documentclass[twoside,twocolumn]{scrartcl} -%% $Id: even2s2c.tex 72 2021-05-02 11:40:10Z herbert $ +%% $Id: even2s2c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} \setlength\columnseprule{0.4pt} @@ -28,7 +28,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} \end{lstlisting} @@ -41,7 +41,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} @@ -54,7 +54,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} \end{lstlisting} @@ -67,7 +67,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} diff --git a/macros/latex/contrib/hvfloat/doc/examples/fullpage1s1c.pdf b/macros/latex/contrib/hvfloat/doc/examples/fullpage1s1c.pdf new file mode 100644 index 0000000000..250833bf54 Binary files /dev/null and b/macros/latex/contrib/hvfloat/doc/examples/fullpage1s1c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/fullpage1s1c.tex b/macros/latex/contrib/hvfloat/doc/examples/fullpage1s1c.tex new file mode 100644 index 0000000000..1b95fbaa03 --- /dev/null +++ b/macros/latex/contrib/hvfloat/doc/examples/fullpage1s1c.tex @@ -0,0 +1,64 @@ +\documentclass{scrartcl} +%% $Id: fullpage1s1c.tex 72 2021-05-02 11:40:10Z herbert $ + +\input{preamble.ltx} +\setlength\columnseprule{0.4pt} + +\begin{document} +\title{Example for fullpage floats} +\author{Herbert Voß} +\maketitle + +\tableofcontents + +\section{The fullpage optional arguments} +\Blindtext + +\subsection{\texttt{fullpage}} +\blindtext +\blindtext +\verb|\includegraphics[fullpage]{tiger}| + +\includegraphics[fullpage]{tiger} + +\Blindtext +\subsection{\texttt{FullPage}} +\blindtext + +\verb|\includegraphics[FullPage]{tiger}| +\begin{figure*}[p] +\includegraphics*[FullPage]{tiger} +\end{figure*} + +\Blindtext + +\Blindtext + +\subsection{\texttt{FULLPAGE}} +\blindtext + +\verb|\includegraphics[FULLPAGE]{tiger}| + +\begin{figure*}[p] + \vspace*{\the\dimexpr-1in-\voffset+\topskip-\headheight-0.5\baselineskip}% + \if@twoside + \leavevmode\checkoddpage + \ifoddpage + \hspace*{\the\dimexpr-\oddsidemargin-\parindent-1in}% + \else + \hspace*{\the\dimexpr-\evensidemargin-\parindent-1in}% + \fi + \else + \hspace*{\the\dimexpr-\oddsidemargin-\parindent-1in}% + \fi + \put(0,0){\usebox\hvObjectBox}% + \AtBeginShipoutNext{\thispagestyle{empty}}% +\includegraphics*[FULLPAGE]{tiger} +\end{figure*} + +\Blindtext + +\blindtext + + +\end{document} \ No newline at end of file diff --git a/macros/latex/contrib/hvfloat/doc/examples/fullpage1s2c.pdf b/macros/latex/contrib/hvfloat/doc/examples/fullpage1s2c.pdf index e0e787f994..074ceff1eb 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/fullpage1s2c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/fullpage1s2c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/inner1s2c.pdf b/macros/latex/contrib/hvfloat/doc/examples/inner1s2c.pdf index 73a49d0a07..8a9972eb2f 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/inner1s2c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/inner1s2c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/inner1s2c.tex b/macros/latex/contrib/hvfloat/doc/examples/inner1s2c.tex index 6960658c3b..eae3c5ce67 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/inner1s2c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/inner1s2c.tex @@ -1,5 +1,5 @@ \documentclass{scrartcl} -%% $Id: inner1s2c.tex 72 2021-05-02 11:40:10Z herbert $ +%% $Id: inner1s2c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} \setlength\columnseprule{0.4pt} @@ -27,7 +27,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca {\includegraphics[fullpage]{frose}}% [A float which needs the complete page width and height.]% {A Caption on the inner side of a twosided document. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.} {fig:fullpage0} \end{lstlisting} @@ -38,7 +38,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca {\includegraphics[fullpage]{frose}}% [A float which needs the complete page width and height.]% {A Caption on the inner side of a twosided document. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.} {fig:fullpage0} @@ -52,7 +52,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca {\includegraphics[fullpage]{frose}}% [A float which needs the complete page width and height.]% {A Caption on the inner side of a twosided document. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.} {fig:fullpage1} \end{lstlisting} @@ -64,7 +64,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca {\includegraphics[fullpage]{frose}}% [A float which needs the complete page width and height.]% {A Caption on the inner side of a twosided document. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.} {fig:fullpage1} diff --git a/macros/latex/contrib/hvfloat/doc/examples/inner2s1c.pdf b/macros/latex/contrib/hvfloat/doc/examples/inner2s1c.pdf index 3cd80ae131..3a73ceb98b 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/inner2s1c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/inner2s1c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/inner2s1c.tex b/macros/latex/contrib/hvfloat/doc/examples/inner2s1c.tex index 15b6508111..60b226c085 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/inner2s1c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/inner2s1c.tex @@ -1,5 +1,5 @@ \documentclass[twoside]{scrartcl} -%% $Id: inner2s1c.tex 72 2021-05-02 11:40:10Z herbert $ +%% $Id: inner2s1c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} @@ -26,7 +26,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca {\includegraphics[fullpage]{frose}}% [A float which needs the complete page width and height.]% {A Caption on the inner side of a twosided document. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.} {fig:fullpage0} \end{lstlisting} @@ -37,7 +37,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca {\includegraphics[fullpage]{frose}}% [A float which needs the complete page width and height.]% {A Caption on the inner side of a twosided document. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.} {fig:fullpage0} @@ -51,7 +51,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca {\includegraphics[fullpage]{frose}}% [A float which needs the complete page width and height.]% {A Caption on the inner side of a twosided document. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.} {fig:fullpage1} \end{lstlisting} @@ -63,7 +63,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca {\includegraphics[fullpage]{frose}}% [A float which needs the complete page width and height.]% {A Caption on the inner side of a twosided document. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.} {fig:fullpage1} diff --git a/macros/latex/contrib/hvfloat/doc/examples/inner2s2c.pdf b/macros/latex/contrib/hvfloat/doc/examples/inner2s2c.pdf index 6b794b3732..420038d756 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/inner2s2c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/inner2s2c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/inner2s2c.tex b/macros/latex/contrib/hvfloat/doc/examples/inner2s2c.tex index 0f4a3856c8..04627efaa8 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/inner2s2c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/inner2s2c.tex @@ -1,5 +1,5 @@ \documentclass[twoside,twocolumn]{scrartcl} -%% $Id: inner2s2c.tex 72 2021-05-02 11:40:10Z herbert $ +%% $Id: inner2s2c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} \setlength\columnseprule{0.4pt} @@ -27,7 +27,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca {\includegraphics[fullpage]{frose}}% [A float which needs the complete page width and height.]% {A Caption on the inner side of a twosided document. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.} {fig:fullpage0} \end{lstlisting} @@ -38,7 +38,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca {\includegraphics[fullpage]{frose}}% [A float which needs the complete page width and height.]% {A Caption on the inner side of a twosided document. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.} {fig:fullpage0} @@ -52,7 +52,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca {\includegraphics[fullpage]{frose}}% [A float which needs the complete page width and height.]% {A Caption on the inner side of a twosided document. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.} {fig:fullpage1} \end{lstlisting} @@ -64,7 +64,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca {\includegraphics[fullpage]{frose}}% [A float which needs the complete page width and height.]% {A Caption on the inner side of a twosided document. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.} {fig:fullpage1} diff --git a/macros/latex/contrib/hvfloat/doc/examples/left2s2c.pdf b/macros/latex/contrib/hvfloat/doc/examples/left2s2c.pdf index 4e6b0cfae7..0ed3921202 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/left2s2c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/left2s2c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/left2s2c.tex b/macros/latex/contrib/hvfloat/doc/examples/left2s2c.tex index d415c7e343..56ea72912e 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/left2s2c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/left2s2c.tex @@ -1,5 +1,5 @@ \documentclass[twoside,twocolumn]{scrartcl} -%% $Id: left2s2c.tex 72 2021-05-02 11:40:10Z herbert $ +%% $Id: left2s2c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} \setlength\columnseprule{0.4pt} @@ -28,7 +28,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} \end{lstlisting} @@ -41,7 +41,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} @@ -54,7 +54,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} \end{lstlisting} @@ -67,7 +67,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} diff --git a/macros/latex/contrib/hvfloat/doc/examples/multi-after1s1c.pdf b/macros/latex/contrib/hvfloat/doc/examples/multi-after1s1c.pdf index bc345dc15b..bda39bf142 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/multi-after1s1c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/multi-after1s1c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/multi-after1s1c.tex b/macros/latex/contrib/hvfloat/doc/examples/multi-after1s1c.tex index a01561d840..6238a6f910 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/multi-after1s1c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/multi-after1s1c.tex @@ -1,5 +1,5 @@ \documentclass{scrartcl} -%% $Id: multi-after1s1c.tex 112 2021-06-14 08:01:42Z herbert $ +%% $Id: multi-after1s1c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} @@ -27,7 +27,7 @@ The fullpage multifloat~\vref{img:demo0} has a caption~\vpageref{img:demo0-cap}. +{figure}{\includegraphics[width=\linewidth]{CTAN}}%% no 1 [Short caption A]% {A Caption A of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {img:demo0}% +{table}{\begin{tabular}{lrcp{3cm}}\hline % no 2 @@ -56,7 +56,7 @@ The fullpage multifloat~\vref{img:demo0} has a caption~\vpageref{img:demo0-cap}. +{figure}{\includegraphics[width=\linewidth]{CTAN}}%% no 1 [Short caption A]% {A Caption A of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {img:demo0}% +{table}{\begin{tabular}{lrcp{3cm}}\hline % no 2 @@ -88,7 +88,7 @@ The fullpage multifloat~\vref{img:demo0} has a caption~\vpageref{img:demo0-cap}. +{figure}{\includegraphics[width=\linewidth]{CTAN}}%% no 1 [Short caption A]% {A Caption A of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {img:demo3}% +{table}{\begin{tabular}{lrcp{3cm}}\hline % no 2 @@ -116,7 +116,7 @@ The fullpage multifloat~\vref{img:demo0} has a caption~\vpageref{img:demo0-cap}. +{figure}{\includegraphics[width=\linewidth]{CTAN}}%% no 1 [Short caption A]% {A Caption A of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {img:demo3}% +{table}{\begin{tabular}{lrcp{3cm}}\hline % no 2 diff --git a/macros/latex/contrib/hvfloat/doc/examples/multi-default1s1c.pdf b/macros/latex/contrib/hvfloat/doc/examples/multi-default1s1c.pdf index e37e60e626..663ef48f3a 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/multi-default1s1c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/multi-default1s1c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/multi-default1s1c.tex b/macros/latex/contrib/hvfloat/doc/examples/multi-default1s1c.tex index 1c4e98195f..655d8fd062 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/multi-default1s1c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/multi-default1s1c.tex @@ -1,5 +1,5 @@ \documentclass{scrartcl} -%% $Id: multi-default1s1c.tex 72 2021-05-02 11:40:10Z herbert $ +%% $Id: multi-default1s1c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} @@ -28,7 +28,7 @@ The fullpage multifloat~\vref{img:demo0} has a caption~\vpageref{img:demo0-cap}. +{figure}{\includegraphics[width=\linewidth]{CTAN}}%% no 1 [Short caption A]% {A Caption A of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {img:demo0}% +{table}{\begin{tabular}{lrcp{3cm}}\hline % no 2 @@ -56,7 +56,7 @@ The fullpage multifloat~\vref{img:demo0} has a caption~\vpageref{img:demo0-cap}. +{figure}{\includegraphics[width=\linewidth]{CTAN}}%% no 1 [Short caption A]% {A Caption A of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {img:demo0}% +{table}{\begin{tabular}{lrcp{3cm}}\hline % no 2 @@ -88,7 +88,7 @@ The fullpage multifloat~\vref{img:demo0} has a caption~\vpageref{img:demo0-cap}. +{figure}{\includegraphics[width=\linewidth]{CTAN}}%% no 1 [Short caption A]% {A Caption A of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {img:demo3}% +{table}{\begin{tabular}{lrcp{3cm}}\hline % no 2 @@ -116,7 +116,7 @@ The fullpage multifloat~\vref{img:demo0} has a caption~\vpageref{img:demo0-cap}. +{figure}{\includegraphics[width=\linewidth]{CTAN}}%% no 1 [Short caption A]% {A Caption A of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {img:demo3}% +{table}{\begin{tabular}{lrcp{3cm}}\hline % no 2 diff --git a/macros/latex/contrib/hvfloat/doc/examples/multi-default1s2c.pdf b/macros/latex/contrib/hvfloat/doc/examples/multi-default1s2c.pdf index 614b2fcf30..b2a9f1cfbd 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/multi-default1s2c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/multi-default1s2c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/multi-default1s2c.tex b/macros/latex/contrib/hvfloat/doc/examples/multi-default1s2c.tex index f42bc85ae5..a46ae56938 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/multi-default1s2c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/multi-default1s2c.tex @@ -1,5 +1,5 @@ \documentclass[twocolumn]{scrartcl} -%% $Id: multi-default1s2c.tex 72 2021-05-02 11:40:10Z herbert $ +%% $Id: multi-default1s2c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} \setlength\columnseprule{0.4pt} @@ -29,7 +29,7 @@ The fullpage multifloat~\vref{multi:demo0} has a caption~\vpageref{multi:demo0-c +{figure}{\includegraphics[height=0.4\textheight]{rose}}%% no 1 [Short caption A]% {A Caption A of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {multi:demo0}% +{table}{\begin{tabular}{lr}\hline % no 2 @@ -54,7 +54,7 @@ The fullpage multifloat~\vref{multi:demo0} has a caption~\vpageref{multi:demo0-c +{figure}{\includegraphics[height=0.4\textheight]{rose}}%% no 1 [Short caption A]% {A Caption A of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {multi:demo0}% +{table}{\begin{tabular}{lr}\hline % no 2 @@ -84,7 +84,7 @@ The fullpage multifloat~\vref{multi:demo0} has a caption~\vpageref{multi:demo0-c +{figure}{\includegraphics[height=0.4\textheight]{rose}}%% no 1 [Short caption A]% {A Caption A of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {multi:demo2}% +{table}{\begin{tabular}{lr}\hline % no 2 @@ -109,7 +109,7 @@ The fullpage multifloat~\vref{multi:demo0} has a caption~\vpageref{multi:demo0-c +{figure}{\includegraphics[height=0.4\textheight]{rose}}%% no 1 [Short caption A]% {A Caption A of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {multi:demo2}% +{table}{\begin{tabular}{lr}\hline % no 2 diff --git a/macros/latex/contrib/hvfloat/doc/examples/multi-default2s1c.pdf b/macros/latex/contrib/hvfloat/doc/examples/multi-default2s1c.pdf index e2ec474cb7..68a05d99a6 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/multi-default2s1c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/multi-default2s1c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/multi-default2s1c.tex b/macros/latex/contrib/hvfloat/doc/examples/multi-default2s1c.tex index 8725520a26..8ceae45750 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/multi-default2s1c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/multi-default2s1c.tex @@ -1,5 +1,5 @@ \documentclass[twoside]{scrartcl} -%% $Id: multi-default2s1c.tex 72 2021-05-02 11:40:10Z herbert $ +%% $Id: multi-default2s1c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} @@ -27,7 +27,7 @@ The fullpage multifloat~\vref{img:demo0} has a caption~\vpageref{img:demo0-cap}. +{figure}{\includegraphics[width=\linewidth]{CTAN}}%% no 1 [Short caption A]% {A Caption A of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {img:demo0}% +{table}{\begin{tabular}{lrcp{3cm}}\hline % no 2 @@ -55,7 +55,7 @@ The fullpage multifloat~\vref{img:demo0} has a caption~\vpageref{img:demo0-cap}. +{figure}{\includegraphics[width=\linewidth]{CTAN}}%% no 1 [Short caption A]% {A Caption A of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {img:demo0}% +{table}{\begin{tabular}{lrcp{3cm}}\hline % no 2 @@ -87,7 +87,7 @@ The fullpage multifloat~\vref{img:demo0} has a caption~\vpageref{img:demo0-cap}. +{figure}{\includegraphics[width=\linewidth]{CTAN}}%% no 1 [Short caption A]% {A Caption A of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {img:demo3}% +{table}{\begin{tabular}{lrcp{3cm}}\hline % no 2 @@ -115,7 +115,7 @@ The fullpage multifloat~\vref{img:demo0} has a caption~\vpageref{img:demo0-cap}. +{figure}{\includegraphics[width=\linewidth]{CTAN}}%% no 1 [Short caption A]% {A Caption A of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {img:demo3}% +{table}{\begin{tabular}{lrcp{3cm}}\hline % no 2 diff --git a/macros/latex/contrib/hvfloat/doc/examples/multi-default2s2c.pdf b/macros/latex/contrib/hvfloat/doc/examples/multi-default2s2c.pdf index 23fdd5f04f..f2c2b955e5 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/multi-default2s2c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/multi-default2s2c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/multi-default2s2c.tex b/macros/latex/contrib/hvfloat/doc/examples/multi-default2s2c.tex index 4ce8149cda..3848015a92 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/multi-default2s2c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/multi-default2s2c.tex @@ -1,5 +1,5 @@ \documentclass[twoside,twocolumn]{scrartcl} -%% $Id: multi-default2s2c.tex 72 2021-05-02 11:40:10Z herbert $ +%% $Id: multi-default2s2c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} \setlength\columnseprule{0.4pt} @@ -29,7 +29,7 @@ The fullpage multifloat~\vref{multi:demo0} has a caption~\vpageref{multi:demo0-c +{figure}{\includegraphics[height=0.4\textheight]{rose}}%% no 1 [Short caption A]% {A Caption A of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {multi:demo0}% +{table}{\begin{tabular}{lr}\hline % no 2 @@ -54,7 +54,7 @@ The fullpage multifloat~\vref{multi:demo0} has a caption~\vpageref{multi:demo0-c +{figure}{\includegraphics[height=0.4\textheight]{rose}}%% no 1 [Short caption A]% {A Caption A of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {multi:demo0}% +{table}{\begin{tabular}{lr}\hline % no 2 @@ -84,7 +84,7 @@ The fullpage multifloat~\vref{multi:demo0} has a caption~\vpageref{multi:demo0-c +{figure}{\includegraphics[height=0.4\textheight]{rose}}%% no 1 [Short caption A]% {A Caption A of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {multi:demo2}% +{table}{\begin{tabular}{lr}\hline % no 2 @@ -109,7 +109,7 @@ The fullpage multifloat~\vref{multi:demo0} has a caption~\vpageref{multi:demo0-c +{figure}{\includegraphics[height=0.4\textheight]{rose}}%% no 1 [Short caption A]% {A Caption A of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {multi:demo2}% +{table}{\begin{tabular}{lr}\hline % no 2 diff --git a/macros/latex/contrib/hvfloat/doc/examples/multi-inner2s2c.pdf b/macros/latex/contrib/hvfloat/doc/examples/multi-inner2s2c.pdf index 3f79249b52..409a42e884 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/multi-inner2s2c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/multi-inner2s2c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/multi-inner2s2c.tex b/macros/latex/contrib/hvfloat/doc/examples/multi-inner2s2c.tex index 668da0a147..ee91984d4a 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/multi-inner2s2c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/multi-inner2s2c.tex @@ -1,6 +1,6 @@ \errorcontextlines=200 \documentclass[twoside]{scrartcl} -%% $Id: multi-inner2s2c.tex 103 2021-05-31 12:37:11Z herbert $ +%% $Id: multi-inner2s2c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} \setlength\columnseprule{0.4pt} @@ -31,7 +31,7 @@ The fullpage multifloat~\vref{multi:demo0} has a caption~\vpageref{multi:demo0-c +{figure}{\includegraphics[height=0.4\textheight]{rose}}%% no 1 [Short caption A]% {A Caption A of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {multi:demo0}% +{table}{\begin{tabular}{lr}\hline % no 2 @@ -58,7 +58,7 @@ The fullpage multifloat~\vref{multi:demo0} has a caption~\vpageref{multi:demo0-c +{figure}{\includegraphics[height=0.4\textheight]{rose}}%% no 1 [Short caption A]% {A Caption A of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {multi:demo0}% +{table}{\begin{tabular}{lr}\hline % no 2 @@ -90,7 +90,7 @@ The fullpage multifloat~\vref{multi:demo0} has a caption~\vpageref{multi:demo0-c +{figure}{\includegraphics[height=0.4\textheight]{rose}}%% no 1 [Short caption A]% {A Caption A of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {multi:demo2}% +{table}{\begin{tabular}{lr}\hline % no 2 @@ -117,7 +117,7 @@ The fullpage multifloat~\vref{multi:demo0} has a caption~\vpageref{multi:demo0-c +{figure}{\includegraphics[height=0.4\textheight]{rose}}%% no 1 [Short caption A]% {A Caption A of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {multi:demo2}% +{table}{\begin{tabular}{lr}\hline % no 2 diff --git a/macros/latex/contrib/hvfloat/doc/examples/multi-outer2s2c.pdf b/macros/latex/contrib/hvfloat/doc/examples/multi-outer2s2c.pdf index 7ebd9bd69a..007311ba40 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/multi-outer2s2c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/multi-outer2s2c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/multi-outer2s2c.tex b/macros/latex/contrib/hvfloat/doc/examples/multi-outer2s2c.tex index fef798e1e9..306762846e 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/multi-outer2s2c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/multi-outer2s2c.tex @@ -1,6 +1,6 @@ \errorcontextlines=100 \documentclass[twoside]{scrartcl} -%% $Id: multi-outer2s2c.tex 103 2021-05-31 12:37:11Z herbert $ +%% $Id: multi-outer2s2c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} \setlength\columnseprule{0.4pt} @@ -32,7 +32,7 @@ The fullpage multifloat~\vref{multi:demo0} has a caption~\vpageref{multi:demo0-c +{figure}{\includegraphics[height=0.4\textheight]{rose}}%% no 1 [Short caption A]% {A Caption A of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {multi:demo0}% +{table}{\begin{tabular}{lr}\hline % no 2 @@ -57,7 +57,7 @@ The fullpage multifloat~\vref{multi:demo0} has a caption~\vpageref{multi:demo0-c +{figure}{\includegraphics[height=0.4\textheight]{rose}}%% no 1 [Short caption A]% {A Caption A of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {multi:demo0}% +{table}{\begin{tabular}{lr}\hline % no 2 @@ -88,7 +88,7 @@ The fullpage multifloat~\vref{multi:demo0} has a caption~\vpageref{multi:demo0-c +{figure}{\includegraphics[height=0.4\textheight]{rose}}%% no 1 [Short caption A]% {A Caption A of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {multi:demo2}% +{table}{\begin{tabular}{lr}\hline % no 2 @@ -115,7 +115,7 @@ The fullpage multifloat~\vref{multi:demo0} has a caption~\vpageref{multi:demo0-c +{figure}{\includegraphics[height=0.4\textheight]{rose}}%% no 1 [Short caption A]% {A Caption A of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {multi:demo2}% +{table}{\begin{tabular}{lr}\hline % no 2 diff --git a/macros/latex/contrib/hvfloat/doc/examples/multi-right1s1c.pdf b/macros/latex/contrib/hvfloat/doc/examples/multi-right1s1c.pdf index 23f3c0b60c..b7241dabae 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/multi-right1s1c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/multi-right1s1c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/multi-right1s1c.tex b/macros/latex/contrib/hvfloat/doc/examples/multi-right1s1c.tex index 1b78f0fba6..fae07fc364 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/multi-right1s1c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/multi-right1s1c.tex @@ -1,5 +1,5 @@ \documentclass{scrartcl} -%% $Id: multi-right1s1c.tex 103 2021-05-31 12:37:11Z herbert $ +%% $Id: multi-right1s1c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} @@ -27,7 +27,7 @@ The fullpage multifloat~\vref{img:demo0} has a caption~\vpageref{img:demo0-cap}. +{figure}{\includegraphics[width=\linewidth]{CTAN}}%% no 1 [Short caption A]% {A Caption A of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {img:demo0}% +{table}{\begin{tabular}{lrcp{3cm}}\hline % no 2 @@ -55,7 +55,7 @@ The fullpage multifloat~\vref{img:demo0} has a caption~\vpageref{img:demo0-cap}. +{figure}{\includegraphics[width=\linewidth]{CTAN}}%% no 1 [Short caption A]% {A Caption A of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {img:demo0}% +{table}{\begin{tabular}{lrcp{3cm}}\hline % no 2 @@ -87,7 +87,7 @@ The fullpage multifloat~\vref{img:demo0} has a caption~\vpageref{img:demo0-cap}. +{figure}{\includegraphics[width=\linewidth]{CTAN}}%% no 1 [Short caption A]% {A Caption A of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {img:demo3}% +{table}{\begin{tabular}{lrcp{3cm}}\hline % no 2 @@ -115,7 +115,7 @@ The fullpage multifloat~\vref{img:demo0} has a caption~\vpageref{img:demo0-cap}. +{figure}{\includegraphics[width=\linewidth]{CTAN}}%% no 1 [Short caption A]% {A Caption A of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {img:demo3}% +{table}{\begin{tabular}{lrcp{3cm}}\hline % no 2 diff --git a/macros/latex/contrib/hvfloat/doc/examples/odd1s1c.pdf b/macros/latex/contrib/hvfloat/doc/examples/odd1s1c.pdf index 9a8f796d02..5e9f30293d 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/odd1s1c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/odd1s1c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/odd1s1c.tex b/macros/latex/contrib/hvfloat/doc/examples/odd1s1c.tex index 2d93d7b2b5..bc70f79b05 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/odd1s1c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/odd1s1c.tex @@ -1,5 +1,5 @@ \documentclass{scrartcl} -%% $Id: odd1s1c.tex 119 2021-06-20 13:28:09Z herbert $ +%% $Id: odd1s1c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} @@ -23,7 +23,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} \end{lstlisting} @@ -36,7 +36,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} @@ -55,7 +55,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} \end{lstlisting} @@ -68,7 +68,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} diff --git a/macros/latex/contrib/hvfloat/doc/examples/odd1s2c.pdf b/macros/latex/contrib/hvfloat/doc/examples/odd1s2c.pdf index eae0be6b8d..675f2499a8 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/odd1s2c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/odd1s2c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/odd1s2c.tex b/macros/latex/contrib/hvfloat/doc/examples/odd1s2c.tex index 8454f4198b..636a8366d5 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/odd1s2c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/odd1s2c.tex @@ -1,5 +1,5 @@ \documentclass[twocolumn]{scrartcl} -%% $Id: odd1s2c.tex 72 2021-05-02 11:40:10Z herbert $ +%% $Id: odd1s2c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} \setlength\columnseprule{0.4pt} @@ -28,7 +28,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} \end{lstlisting} @@ -41,7 +41,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} @@ -54,7 +54,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} \end{lstlisting} @@ -67,7 +67,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} diff --git a/macros/latex/contrib/hvfloat/doc/examples/odd2s1c.pdf b/macros/latex/contrib/hvfloat/doc/examples/odd2s1c.pdf index ef5b9fd7ab..a1e777fe52 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/odd2s1c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/odd2s1c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/odd2s1c.tex b/macros/latex/contrib/hvfloat/doc/examples/odd2s1c.tex index ee0e69c74e..d14f499615 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/odd2s1c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/odd2s1c.tex @@ -1,5 +1,5 @@ \documentclass[twoside]{scrartcl} -%% $Id: odd2s1c.tex 107 2021-06-09 06:43:25Z herbert $ +%% $Id: odd2s1c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} @@ -27,7 +27,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} \end{lstlisting} @@ -39,7 +39,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} @@ -54,7 +54,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} \end{lstlisting} @@ -67,7 +67,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} diff --git a/macros/latex/contrib/hvfloat/doc/examples/odd2s2c.pdf b/macros/latex/contrib/hvfloat/doc/examples/odd2s2c.pdf index 6aa3ac83cf..6e736f1a97 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/odd2s2c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/odd2s2c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/odd2s2c.tex b/macros/latex/contrib/hvfloat/doc/examples/odd2s2c.tex index f044fa127c..98dfd6c84b 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/odd2s2c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/odd2s2c.tex @@ -1,5 +1,5 @@ \documentclass[twoside,twocolumn]{scrartcl} -%% $Id: odd2s2c.tex 72 2021-05-02 11:40:10Z herbert $ +%% $Id: odd2s2c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} \setlength\columnseprule{0.4pt} @@ -28,7 +28,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} \end{lstlisting} @@ -41,7 +41,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} @@ -54,7 +54,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} \end{lstlisting} @@ -67,7 +67,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} diff --git a/macros/latex/contrib/hvfloat/doc/examples/outer1s2c.pdf b/macros/latex/contrib/hvfloat/doc/examples/outer1s2c.pdf index c6676e1291..54d63e7e7c 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/outer1s2c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/outer1s2c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/outer1s2c.tex b/macros/latex/contrib/hvfloat/doc/examples/outer1s2c.tex index f6444f614c..e0302a6b77 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/outer1s2c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/outer1s2c.tex @@ -1,5 +1,5 @@ \documentclass[twocolumn]{scrartcl} -%% $Id: outer1s2c.tex 72 2021-05-02 11:40:10Z herbert $ +%% $Id: outer1s2c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} \setlength\columnseprule{0.4pt} @@ -26,7 +26,7 @@ The fullpage image~\vref{fig:full0} has a caption~\vpageref{fig:full0-cap}. {\includegraphics[fullpage]{frose}}% [A float which needs the complete page width and height.]% {A Caption on the outer side of a twosided document. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:full0} \end{lstlisting} @@ -37,7 +37,7 @@ The fullpage image~\vref{fig:full0} has a caption~\vpageref{fig:full0-cap}. {\includegraphics[fullpage]{frose}}% [A float which needs the complete page width and height.]% {A Caption on the outer side of a twosided document. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:full0} @@ -51,7 +51,7 @@ The fullpage image~\vref{fig:full0} has a caption~\vpageref{fig:full0-cap}. {\includegraphics[fullpage]{frose}}% [A float which needs the complete page width and height.]% {A Caption on the outer side of a twosided document. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} \end{lstlisting} @@ -63,7 +63,7 @@ The fullpage image~\vref{fig:full0} has a caption~\vpageref{fig:full0-cap}. {\includegraphics[fullpage]{frose}}% [A float which needs the complete page width and height.]% {A Caption on the outer side of a twosided document. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} diff --git a/macros/latex/contrib/hvfloat/doc/examples/outer2s1c.pdf b/macros/latex/contrib/hvfloat/doc/examples/outer2s1c.pdf index a7d55f4c80..2ecc0080d5 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/outer2s1c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/outer2s1c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/outer2s1c.tex b/macros/latex/contrib/hvfloat/doc/examples/outer2s1c.tex index d30d66e8fa..68cd510976 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/outer2s1c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/outer2s1c.tex @@ -1,5 +1,5 @@ \documentclass[twoside]{scrartcl} -%% $Id: outer2s1c.tex 72 2021-05-02 11:40:10Z herbert $ +%% $Id: outer2s1c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} @@ -26,7 +26,7 @@ The fullpage image~\vref{fig:full0} has a caption~\vpageref{fig:full0-cap}. {\includegraphics[fullpage]{frose}}% [A float which needs the complete page width and height.]% {A Caption on the outer side of a twosided document. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:full0} \end{lstlisting} @@ -37,7 +37,7 @@ The fullpage image~\vref{fig:full0} has a caption~\vpageref{fig:full0-cap}. {\includegraphics[fullpage]{frose}}% [A float which needs the complete page width and height.]% {A Caption on the outer side of a twosided document. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:full0} @@ -51,7 +51,7 @@ The fullpage image~\vref{fig:full0} has a caption~\vpageref{fig:full0-cap}. {\includegraphics[fullpage]{frose}}% [A float which needs the complete page width and height.]% {A Caption on the outer side of a twosided document. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} \end{lstlisting} @@ -63,7 +63,7 @@ The fullpage image~\vref{fig:full0} has a caption~\vpageref{fig:full0-cap}. {\includegraphics[fullpage]{frose}}% [A float which needs the complete page width and height.]% {A Caption on the outer side of a twosided document. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} diff --git a/macros/latex/contrib/hvfloat/doc/examples/outer2s2c.pdf b/macros/latex/contrib/hvfloat/doc/examples/outer2s2c.pdf index 204d0dad65..80c32239b7 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/outer2s2c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/outer2s2c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/outer2s2c.tex b/macros/latex/contrib/hvfloat/doc/examples/outer2s2c.tex index 84b3dc0cf5..4ac33b7478 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/outer2s2c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/outer2s2c.tex @@ -1,5 +1,5 @@ \documentclass[twoside,twocolumn]{scrartcl} -%% $Id: outer2s2c.tex 72 2021-05-02 11:40:10Z herbert $ +%% $Id: outer2s2c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} \setlength\columnseprule{0.4pt} @@ -26,7 +26,7 @@ The fullpage image~\vref{fig:full0} has a caption~\vpageref{fig:full0-cap}. {\includegraphics[fullpage]{frose}}% [A float which needs the complete page width and height.]% {A Caption on the outer side of a twosided document. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:full0} \end{lstlisting} @@ -37,7 +37,7 @@ The fullpage image~\vref{fig:full0} has a caption~\vpageref{fig:full0-cap}. {\includegraphics[fullpage]{frose}}% [A float which needs the complete page width and height.]% {A Caption on the outer side of a twosided document. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:full0} @@ -51,7 +51,7 @@ The fullpage image~\vref{fig:full0} has a caption~\vpageref{fig:full0-cap}. {\includegraphics[fullpage]{frose}}% [A float which needs the complete page width and height.]% {A Caption on the outer side of a twosided document. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} \end{lstlisting} @@ -63,7 +63,7 @@ The fullpage image~\vref{fig:full0} has a caption~\vpageref{fig:full0-cap}. {\includegraphics[fullpage]{frose}}% [A float which needs the complete page width and height.]% {A Caption on the outer side of a twosided document. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} diff --git a/macros/latex/contrib/hvfloat/doc/examples/paper-after1s1c.pdf b/macros/latex/contrib/hvfloat/doc/examples/paper-after1s1c.pdf index a65718b90a..a48bdeff12 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/paper-after1s1c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/paper-after1s1c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/paper-after1s1c.tex b/macros/latex/contrib/hvfloat/doc/examples/paper-after1s1c.tex index 90e4ac9196..c847c531c5 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/paper-after1s1c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/paper-after1s1c.tex @@ -1,5 +1,5 @@ \documentclass{scrartcl} -%% $Id: paper-after1s1c.tex 72 2021-05-02 11:40:10Z herbert $ +%% $Id: paper-after1s1c.tex 318 2021-11-20 07:30:54Z herbert $ \usepackage{pdfpages} \input{preamble.ltx} @@ -29,7 +29,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} \end{lstlisting} @@ -42,7 +42,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} @@ -57,7 +57,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} \end{lstlisting} @@ -70,7 +70,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} diff --git a/macros/latex/contrib/hvfloat/doc/examples/paper-after2s2c.pdf b/macros/latex/contrib/hvfloat/doc/examples/paper-after2s2c.pdf new file mode 100644 index 0000000000..efdf0c08f9 Binary files /dev/null and b/macros/latex/contrib/hvfloat/doc/examples/paper-after2s2c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/paper-after2s2c.tex b/macros/latex/contrib/hvfloat/doc/examples/paper-after2s2c.tex new file mode 100644 index 0000000000..ab7faa4b9d --- /dev/null +++ b/macros/latex/contrib/hvfloat/doc/examples/paper-after2s2c.tex @@ -0,0 +1,81 @@ +\documentclass[twocolumn]{scrartcl} +%% $Id: paper-default2s2c.tex 318 2021-11-20 07:30:54Z herbert $ + +\input{preamble.ltx} +\setlength\columnseprule{0.4pt} + +\begin{document} +\title{Example for FULLPAGE floats} +\author{Herbert Voß} +\maketitle + +\tableofcontents + +\blinddocument + +\section{File \texttt{\jobname}} + +\begin{lstlisting} +The FULLPAGE image~\vref{fig:FULLPAGE0} has a caption~\vpageref{fig:FULLPAGE0-cap}. +\end{lstlisting} + +The FULLPAGE image~\vref{fig:FULLPAGE0} has a caption~\vpageref{fig:FULLPAGE0-cap}. + +\begin{lstlisting} +\hvFloat*[FULLPAGE,capPos=after]% + {figure}% + {\includegraphics[FULLPAGE]{frose}}% + [A FULLPAGE float with the default caption setting]% + {A default caption of a ``FULLPAGE'' object with the default setting, which + is a ``left'' caption which means that it always appears before the object. + This can be an even or odd page. And some more text which has no + real meaning because it fills only the space for a long caption.}% + {fig:FULLPAGE0} +\end{lstlisting} + + +\Float[default] +\hvFloat*[FULLPAGE,capPos=after]% + {figure}% + {\includegraphics[FULLPAGE]{frose}}% + [A FULLPAGE float with the default caption setting]% + {A default caption of a ``FULLPAGE'' object with the default setting, which + is a ``left'' caption which means that it always appears before the object. + This can be an even or odd page. And some more text which has no + real meaning because it fills only the space for a long caption.}% + {fig:FULLPAGE0} + +\blinddocument + +\begin{lstlisting} +\hvFloat*[FULLPAGE,capPos=after]% + {figure}% + {\includegraphics[FULLPAGE]{frose}}% + [A FULLPAGE float with the default caption setting]% + {A default caption of a ``FULLPAGE'' object with the default setting, which + is a ``left'' caption which means that it always appears before the object. + This can be an even or odd page. And some more text which has no + real meaning because it fills only the space for a long caption.}% + {fig:FULLPAGE1} +\end{lstlisting} + + +\Float[default] +\hvFloat*[FULLPAGE,capPos=after]% + {figure}% + {\includegraphics[FULLPAGE]{frose}}% + [A FULLPAGE float with the default caption setting]% + {A default caption of a ``FULLPAGE'' object with the default setting, which + is a ``left'' caption which means that it always appears before the object. + This can be an even or odd page. And some more text which has no + real meaning because it fills only the space for a long caption.}% + {fig:FULLPAGE1} + +\blinddocument + +\Blindtext + +\blindtext + + +\end{document} \ No newline at end of file diff --git a/macros/latex/contrib/hvfloat/doc/examples/paper-default1s1c.pdf b/macros/latex/contrib/hvfloat/doc/examples/paper-default1s1c.pdf index fd27f7ca54..a0091c6cd0 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/paper-default1s1c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/paper-default1s1c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/paper-default1s1c.tex b/macros/latex/contrib/hvfloat/doc/examples/paper-default1s1c.tex index bb789ab593..a6304754cb 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/paper-default1s1c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/paper-default1s1c.tex @@ -1,9 +1,10 @@ \documentclass{scrartcl} -%% $Id: paper-default1s1c.tex 72 2021-05-02 11:40:10Z herbert $ +%% $Id: paper-default1s1c.tex 584 2022-07-20 18:29:58Z herbert $ \usepackage{pdfpages} \input{preamble.ltx} + \begin{document} \title{Example for fullpage floats} \author{Herbert Voß} @@ -12,7 +13,7 @@ \tableofcontents \Blindtext -\blindtext +\Blindtext \section{File \texttt{\jobname}} @@ -29,7 +30,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} \end{lstlisting} @@ -42,7 +43,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} @@ -57,7 +58,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} \end{lstlisting} @@ -70,7 +71,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} diff --git a/macros/latex/contrib/hvfloat/doc/examples/paper-default1s2c.pdf b/macros/latex/contrib/hvfloat/doc/examples/paper-default1s2c.pdf index 6e06341ad5..139b9f6a0a 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/paper-default1s2c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/paper-default1s2c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/paper-default1s2c.tex b/macros/latex/contrib/hvfloat/doc/examples/paper-default1s2c.tex index 73701e6c1e..61cc027864 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/paper-default1s2c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/paper-default1s2c.tex @@ -1,5 +1,5 @@ \documentclass[twocolumn]{scrartcl} -%% $Id: paper-default1s2c.tex 72 2021-05-02 11:40:10Z herbert $ +%% $Id: paper-default1s2c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} \setlength\columnseprule{0.4pt} @@ -28,7 +28,7 @@ The FULLPAGE image~\vref{fig:FULLPAGE0} has a caption~\vpageref{fig:FULLPAGE0-ca [A FULLPAGE float with the default caption setting]% {A default caption of a ``FULLPAGE'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:FULLPAGE0} \end{lstlisting} @@ -41,7 +41,7 @@ The FULLPAGE image~\vref{fig:FULLPAGE0} has a caption~\vpageref{fig:FULLPAGE0-ca [A FULLPAGE float with the default caption setting]% {A default caption of a ``FULLPAGE'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:FULLPAGE0} @@ -54,7 +54,7 @@ The FULLPAGE image~\vref{fig:FULLPAGE0} has a caption~\vpageref{fig:FULLPAGE0-ca [A FULLPAGE float with the default caption setting]% {A default caption of a ``FULLPAGE'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:FULLPAGE1} \end{lstlisting} @@ -67,7 +67,7 @@ The FULLPAGE image~\vref{fig:FULLPAGE0} has a caption~\vpageref{fig:FULLPAGE0-ca [A FULLPAGE float with the default caption setting]% {A default caption of a ``FULLPAGE'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:FULLPAGE1} diff --git a/macros/latex/contrib/hvfloat/doc/examples/paper-default2s1c.pdf b/macros/latex/contrib/hvfloat/doc/examples/paper-default2s1c.pdf index c9cd842897..96bf69e588 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/paper-default2s1c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/paper-default2s1c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/paper-default2s1c.tex b/macros/latex/contrib/hvfloat/doc/examples/paper-default2s1c.tex index 4db0220481..20cea7741e 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/paper-default2s1c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/paper-default2s1c.tex @@ -28,7 +28,7 @@ The FULLPAGE image~\vref{fig:FULLPAGE0} has a caption~\vpageref{fig:FULLPAGE0-ca [A FULLPAGE float with the default caption setting]% {A default caption of a ``FULLPAGE'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:FULLPAGE0} \end{lstlisting} @@ -41,7 +41,7 @@ The FULLPAGE image~\vref{fig:FULLPAGE0} has a caption~\vpageref{fig:FULLPAGE0-ca [A FULLPAGE float with the default caption setting]% {A default caption of a ``FULLPAGE'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:FULLPAGE0} @@ -54,7 +54,7 @@ The FULLPAGE image~\vref{fig:FULLPAGE0} has a caption~\vpageref{fig:FULLPAGE0-ca [A FULLPAGE float with the default caption setting]% {A default caption of a ``FULLPAGE'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:FULLPAGE1} \end{lstlisting} @@ -67,7 +67,7 @@ The FULLPAGE image~\vref{fig:FULLPAGE0} has a caption~\vpageref{fig:FULLPAGE0-ca [A FULLPAGE float with the default caption setting]% {A default caption of a ``FULLPAGE'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:FULLPAGE1} diff --git a/macros/latex/contrib/hvfloat/doc/examples/paper-default2s2c.pdf b/macros/latex/contrib/hvfloat/doc/examples/paper-default2s2c.pdf index 330a7425ca..8020696880 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/paper-default2s2c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/paper-default2s2c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/paper-default2s2c.tex b/macros/latex/contrib/hvfloat/doc/examples/paper-default2s2c.tex index 64b430652b..a9b5b15bef 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/paper-default2s2c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/paper-default2s2c.tex @@ -1,5 +1,5 @@ \documentclass[twocolumn]{scrartcl} -%% $Id: paper-default2s2c.tex 72 2021-05-02 11:40:10Z herbert $ +%% $Id: paper-default2s2c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} \setlength\columnseprule{0.4pt} @@ -28,7 +28,7 @@ The FULLPAGE image~\vref{fig:FULLPAGE0} has a caption~\vpageref{fig:FULLPAGE0-ca [A FULLPAGE float with the default caption setting]% {A default caption of a ``FULLPAGE'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:FULLPAGE0} \end{lstlisting} @@ -41,7 +41,7 @@ The FULLPAGE image~\vref{fig:FULLPAGE0} has a caption~\vpageref{fig:FULLPAGE0-ca [A FULLPAGE float with the default caption setting]% {A default caption of a ``FULLPAGE'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:FULLPAGE0} @@ -54,7 +54,7 @@ The FULLPAGE image~\vref{fig:FULLPAGE0} has a caption~\vpageref{fig:FULLPAGE0-ca [A FULLPAGE float with the default caption setting]% {A default caption of a ``FULLPAGE'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:FULLPAGE1} \end{lstlisting} @@ -67,7 +67,7 @@ The FULLPAGE image~\vref{fig:FULLPAGE0} has a caption~\vpageref{fig:FULLPAGE0-ca [A FULLPAGE float with the default caption setting]% {A default caption of a ``FULLPAGE'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:FULLPAGE1} diff --git a/macros/latex/contrib/hvfloat/doc/examples/paper-even2s1c.pdf b/macros/latex/contrib/hvfloat/doc/examples/paper-even2s1c.pdf new file mode 100644 index 0000000000..4146e7e182 Binary files /dev/null and b/macros/latex/contrib/hvfloat/doc/examples/paper-even2s1c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/paper-even2s1c.tex b/macros/latex/contrib/hvfloat/doc/examples/paper-even2s1c.tex new file mode 100644 index 0000000000..9b8436d697 --- /dev/null +++ b/macros/latex/contrib/hvfloat/doc/examples/paper-even2s1c.tex @@ -0,0 +1,81 @@ +\documentclass{scrartcl} +%% $Id: paper-default2s2c.tex 72 2021-05-02 11:40:10Z herbert $ + +\input{preamble.ltx} +\setlength\columnseprule{0.4pt} + +\begin{document} +\title{Example for FULLPAGE floats} +\author{Herbert Voß} +\maketitle + +\tableofcontents + +\blinddocument + +\section{File \texttt{\jobname}} + +\begin{lstlisting} +The FULLPAGE image~\vref{fig:FULLPAGE0} has a caption~\vpageref{fig:FULLPAGE0-cap}. +\end{lstlisting} + +The FULLPAGE image~\vref{fig:FULLPAGE0} has a caption~\vpageref{fig:FULLPAGE0-cap}. + +\begin{lstlisting} +\hvFloat[FULLPAGE,capPos=evenPage]% + {figure}% + {\includegraphics[FULLPAGE]{frose}}% + [A FULLPAGE float with the default caption setting]% + {A default caption of a ``FULLPAGE'' object with the default setting, which + is a ``left'' caption which means that it always appears before the object. + This can be an even or odd page. And some more text which has no + real meaning because it fills only the space for a long caption.}% + {fig:FULLPAGE0} +\end{lstlisting} + + +\Float[default] +\hvFloat[FULLPAGE,capPos=evenPage]% + {figure}% + {\includegraphics[FULLPAGE]{frose}}% + [A FULLPAGE float with the default caption setting]% + {A caption of a \texttt{FULLPAGE} object with \texttt{capPos=evenPage}, + so it appears on an even-numbered page. + And some more text which has no + meaning because it merely fills the space for a long caption.}% + {fig:FULLPAGE0} + +\blinddocument + +\begin{lstlisting} +\hvFloat[FULLPAGE,capPos=evenPage]% + {figure}% + {\includegraphics[FULLPAGE]{frose}}% + [A FULLPAGE float with the default caption setting]% + {A default caption of a ``FULLPAGE'' object with the default setting, which + is a ``left'' caption which means that it always appears before the object. + This can be an even or odd page. And some more text which has no + real meaning because it fills only the space for a long caption.}% + {fig:FULLPAGE1} +\end{lstlisting} + + +\Float[default] +\hvFloat[FULLPAGE,capPos=evenPage]% + {figure}% + {\includegraphics[FULLPAGE]{frose}}% + [A FULLPAGE float with the default caption setting]% + {A default caption of a ``FULLPAGE'' object with the default setting, which + is a ``left'' caption which means that it always appears before the object. + This can be an even or odd page. And some more text which has no + real meaning because it fills only the space for a long caption.}% + {fig:FULLPAGE1} + +\blinddocument + +\Blindtext + +\blindtext + + +\end{document} diff --git a/macros/latex/contrib/hvfloat/doc/examples/paper-inner2s2c.pdf b/macros/latex/contrib/hvfloat/doc/examples/paper-inner2s2c.pdf index b0792355fb..93208e62a9 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/paper-inner2s2c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/paper-inner2s2c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/paper-inner2s2c.tex b/macros/latex/contrib/hvfloat/doc/examples/paper-inner2s2c.tex index 1cb218ac79..b7a6880d36 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/paper-inner2s2c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/paper-inner2s2c.tex @@ -1,5 +1,5 @@ \documentclass[twoside,twocolumn]{scrartcl} -%% $Id: paper-inner2s2c.tex 72 2021-05-02 11:40:10Z herbert $ +%% $Id: paper-inner2s2c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} \setlength\columnseprule{0.4pt} @@ -28,7 +28,7 @@ The FULLPAGE image~\vref{fig:FULLPAGE0} has a caption~\vpageref{fig:FULLPAGE0-ca [A FULLPAGE float with the default caption setting]% {A default caption of a ``FULLPAGE'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:FULLPAGE0} \end{lstlisting} @@ -41,7 +41,7 @@ The FULLPAGE image~\vref{fig:FULLPAGE0} has a caption~\vpageref{fig:FULLPAGE0-ca [A FULLPAGE float with the default caption setting]% {A default caption of a ``FULLPAGE'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:FULLPAGE0} @@ -54,7 +54,7 @@ The FULLPAGE image~\vref{fig:FULLPAGE0} has a caption~\vpageref{fig:FULLPAGE0-ca [A FULLPAGE float with the default caption setting]% {A default caption of a ``FULLPAGE'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:FULLPAGE1} \end{lstlisting} @@ -67,7 +67,7 @@ The FULLPAGE image~\vref{fig:FULLPAGE0} has a caption~\vpageref{fig:FULLPAGE0-ca [A FULLPAGE float with the default caption setting]% {A default caption of a ``FULLPAGE'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:FULLPAGE1} diff --git a/macros/latex/contrib/hvfloat/doc/examples/paper-odd2s1c.pdf b/macros/latex/contrib/hvfloat/doc/examples/paper-odd2s1c.pdf new file mode 100644 index 0000000000..bb68490230 Binary files /dev/null and b/macros/latex/contrib/hvfloat/doc/examples/paper-odd2s1c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/paper-odd2s1c.tex b/macros/latex/contrib/hvfloat/doc/examples/paper-odd2s1c.tex new file mode 100644 index 0000000000..be6c896aa8 --- /dev/null +++ b/macros/latex/contrib/hvfloat/doc/examples/paper-odd2s1c.tex @@ -0,0 +1,81 @@ +\documentclass{scrartcl} +%% $Id: paper-default2s2c.tex 72 2021-05-02 11:40:10Z herbert $ + +\input{preamble.ltx} +\setlength\columnseprule{0.4pt} + +\begin{document} +\title{Example for FULLPAGE floats} +\author{Herbert Voß} +\maketitle + +\tableofcontents + +\blinddocument + +\section{File \texttt{\jobname}} + +\begin{lstlisting} +The FULLPAGE image~\vref{fig:FULLPAGE0} has a caption~\vpageref{fig:FULLPAGE0-cap}. +\end{lstlisting} + +The FULLPAGE image~\vref{fig:FULLPAGE0} has a caption~\vpageref{fig:FULLPAGE0-cap}. + +\begin{lstlisting} +\hvFloat[FULLPAGE,capPos=oddPage]% + {figure}% + {\includegraphics[FULLPAGE]{frose}}% + [A FULLPAGE float with the default caption setting]% + {A default caption of a ``FULLPAGE'' object with the default setting, which + is a ``left'' caption which means that it always appears before the object. + This can be an even or odd page. And some more text which has no + real meaning because it fills only the space for a long caption.}% + {fig:FULLPAGE0} +\end{lstlisting} + + +\Float[default] +\hvFloat[FULLPAGE,capPos=oddPage]% + {figure}% + {\includegraphics[FULLPAGE]{frose}}% + [A FULLPAGE float with the default caption setting]% + {A default caption of a ``FULLPAGE'' object with the default setting, which + is a ``left'' caption which means that it always appears before the object. + This can be an even or odd page. And some more text which has no + real meaning because it fills only the space for a long caption.}% + {fig:FULLPAGE0} + +\blinddocument + +\begin{lstlisting} +\hvFloat[FULLPAGE,capPos=oddPage]% + {figure}% + {\includegraphics[FULLPAGE]{frose}}% + [A FULLPAGE float with the default caption setting]% + {A default caption of a ``FULLPAGE'' object with the default setting, which + is a ``left'' caption which means that it always appears before the object. + This can be an even or odd page. And some more text which has no + real meaning because it fills only the space for a long caption.}% + {fig:FULLPAGE1} +\end{lstlisting} + + +\Float[default] +\hvFloat[FULLPAGE,capPos=oddPage]% + {figure}% + {\includegraphics[FULLPAGE]{frose}}% + [A FULLPAGE float with the default caption setting]% + {A default caption of a ``FULLPAGE'' object with the default setting, which + is a ``left'' caption which means that it always appears before the object. + This can be an even or odd page. And some more text which has no + real meaning because it fills only the space for a long caption.}% + {fig:FULLPAGE1} + +\blinddocument + +\Blindtext + +\blindtext + + +\end{document} \ No newline at end of file diff --git a/macros/latex/contrib/hvfloat/doc/examples/paper-right1s1c.pdf b/macros/latex/contrib/hvfloat/doc/examples/paper-right1s1c.pdf index 5ed8ec5a71..e478ced583 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/paper-right1s1c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/paper-right1s1c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/paper-right1s1c.tex b/macros/latex/contrib/hvfloat/doc/examples/paper-right1s1c.tex index f285704496..41595db224 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/paper-right1s1c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/paper-right1s1c.tex @@ -1,5 +1,5 @@ \documentclass{scrartcl} -%% $Id: paper-right1s1c.tex 72 2021-05-02 11:40:10Z herbert $ +%% $Id: paper-right1s1c.tex 318 2021-11-20 07:30:54Z herbert $ \usepackage{pdfpages} \input{preamble.ltx} @@ -29,7 +29,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} \end{lstlisting} @@ -42,7 +42,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} @@ -57,7 +57,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} \end{lstlisting} @@ -70,7 +70,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} diff --git a/macros/latex/contrib/hvfloat/doc/examples/paper-twocolcaption-after2s2c.pdf b/macros/latex/contrib/hvfloat/doc/examples/paper-twocolcaption-after2s2c.pdf new file mode 100644 index 0000000000..76fec026a9 Binary files /dev/null and b/macros/latex/contrib/hvfloat/doc/examples/paper-twocolcaption-after2s2c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/paper-twocolcaption-after2s2c.tex b/macros/latex/contrib/hvfloat/doc/examples/paper-twocolcaption-after2s2c.tex new file mode 100644 index 0000000000..9da31571a3 --- /dev/null +++ b/macros/latex/contrib/hvfloat/doc/examples/paper-twocolcaption-after2s2c.tex @@ -0,0 +1,81 @@ +\documentclass[twocolumn]{scrartcl} +%% $Id: paper-default2s2c.tex 318 2021-11-20 07:30:54Z herbert $ + +\input{preamble.ltx} +\setlength\columnseprule{0.4pt} + +\begin{document} +\title{Example for FULLPAGE floats} +\author{Herbert Voß} +\maketitle + +\tableofcontents + +\blinddocument + +\section{File \texttt{\jobname}} + +\begin{lstlisting} +The FULLPAGE image~\vref{fig:FULLPAGE0} has a caption~\vpageref{fig:FULLPAGE0-cap}. +\end{lstlisting} + +The FULLPAGE image~\vref{fig:FULLPAGE0} has a caption~\vpageref{fig:FULLPAGE0-cap}. + +\begin{lstlisting} +\hvFloat*[doubleFULLPAGE,capPos=after,twoColumnCaption]% + {figure}% + {\includegraphics[doubleFULLPAGE]{rheinsberg}}% + [A doubleFULLPAGE float with the default caption setting]% + {A default caption of a ``doubleFULLPAGE'' object with the default setting, which + is a ``left'' caption which means that it always appears before the object. + This can be an even or odd page. And some more text which has no + real meaning because it fills only the space for a long caption.}% + {fig:doubleFULLPAGE0} +\end{lstlisting} + + +\Float[default] +\hvFloat*[doubleFULLPAGE,capPos=after,twoColumnCaption]% + {figure}% + {\includegraphics[doubleFULLPAGE]{rheinsberg}}% + [A doubleFULLPAGE float with the default caption setting]% + {A default caption of a ``doubleFULLPAGE'' object with the default setting, which + is a ``left'' caption which means that it always appears before the object. + This can be an even or odd page. And some more text which has no + real meaning because it fills only the space for a long caption.}% + {fig:doubleFULLPAGE0} + +\blinddocument + +\begin{lstlisting} +\hvFloat*[doubleFULLPAGE,capPos=after,twoColumnCaption]% + {figure}% + {\includegraphics[doubleFULLPAGE]{rheinsberg}}% + [A doubleFULLPAGE float with the default caption setting]% + {A default caption of a ``doubleFULLPAGE'' object with the default setting, which + is a ``left'' caption which means that it always appears before the object. + This can be an even or odd page. And some more text which has no + real meaning because it fills only the space for a long caption.}% + {fig:doubleFULLPAGE1} +\end{lstlisting} + + +\Float[default] +\hvFloat*[doubleFULLPAGE,capPos=after,twoColumnCaption]% + {figure}% + {\includegraphics[doubleFULLPAGE]{rheinsberg}}% + [A doubleFULLPAGE float with the default caption setting]% + {A default caption of a ``doubleFULLPAGE'' object with the default setting, which + is a ``left'' caption which means that it always appears before the object. + This can be an even or odd page. And some more text which has no + real meaning because it fills only the space for a long caption.}% + {fig:doubleFULLPAGE1} + +\blinddocument + +\Blindtext + +\blindtext + + +\end{document} \ No newline at end of file diff --git a/macros/latex/contrib/hvfloat/doc/examples/preamble.ltx b/macros/latex/contrib/hvfloat/doc/examples/preamble.ltx index 525725c6c0..075d72bba0 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/preamble.ltx +++ b/macros/latex/contrib/hvfloat/doc/examples/preamble.ltx @@ -41,6 +41,9 @@ \captionsetup{labelfont={red,sf},font={red,sf},format=plain} \usepackage{blindtext} +\usepackage[style=authoryear]{biblatex} +\addbibresource{biblatex-examples.bib} + \def\hvblindtext{\textcolor{black!30}{Hello, here is some text without a meaning. This text should show what a printed text will look like at this place. If you read this text, you will get no information. Really? diff --git a/macros/latex/contrib/hvfloat/doc/examples/right1s1c.pdf b/macros/latex/contrib/hvfloat/doc/examples/right1s1c.pdf index c6c6bd27bd..79abdb9d11 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/right1s1c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/right1s1c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/right1s1c.tex b/macros/latex/contrib/hvfloat/doc/examples/right1s1c.tex index 4ad53de6b9..58dbd7869e 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/right1s1c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/right1s1c.tex @@ -1,5 +1,5 @@ \documentclass{scrartcl} -%% $Id: right1s1c.tex 72 2021-05-02 11:40:10Z herbert $ +%% $Id: right1s1c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} @@ -22,7 +22,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} \end{lstlisting} @@ -35,7 +35,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} @@ -50,7 +50,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} \end{lstlisting} @@ -63,7 +63,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} diff --git a/macros/latex/contrib/hvfloat/doc/examples/right1s2c.pdf b/macros/latex/contrib/hvfloat/doc/examples/right1s2c.pdf index dfd03e566c..7bd72cb3ad 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/right1s2c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/right1s2c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/right1s2c.tex b/macros/latex/contrib/hvfloat/doc/examples/right1s2c.tex index ada1d0b186..26de3dc0bc 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/right1s2c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/right1s2c.tex @@ -1,5 +1,5 @@ \documentclass[twocolumn]{scrartcl} -%% $Id: right1s2c.tex 72 2021-05-02 11:40:10Z herbert $ +%% $Id: right1s2c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} \setlength\columnseprule{0.4pt} @@ -28,7 +28,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} \end{lstlisting} @@ -41,7 +41,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} @@ -54,7 +54,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} \end{lstlisting} @@ -67,7 +67,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} diff --git a/macros/latex/contrib/hvfloat/doc/examples/right2s1c.pdf b/macros/latex/contrib/hvfloat/doc/examples/right2s1c.pdf index dbb63e5fac..8dc456d441 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/right2s1c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/right2s1c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/right2s1c.tex b/macros/latex/contrib/hvfloat/doc/examples/right2s1c.tex index 6672586390..f1a07efd74 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/right2s1c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/right2s1c.tex @@ -1,5 +1,5 @@ \documentclass[twoside]{scrartcl} -%% $Id: right2s1c.tex 72 2021-05-02 11:40:10Z herbert $ +%% $Id: right2s1c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} @@ -22,7 +22,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} \end{lstlisting} @@ -35,7 +35,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} @@ -48,7 +48,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} \end{lstlisting} @@ -61,7 +61,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} diff --git a/macros/latex/contrib/hvfloat/doc/examples/right2s2c.pdf b/macros/latex/contrib/hvfloat/doc/examples/right2s2c.pdf index e269a747a3..d1904cada6 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/right2s2c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/right2s2c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/right2s2c.tex b/macros/latex/contrib/hvfloat/doc/examples/right2s2c.tex index eaaed1d57c..7c7cf4e67d 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/right2s2c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/right2s2c.tex @@ -1,5 +1,5 @@ \documentclass[twoside,twocolumn]{scrartcl} -%% $Id: right2s2c.tex 72 2021-05-02 11:40:10Z herbert $ +%% $Id: right2s2c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} \setlength\columnseprule{0.4pt} @@ -28,7 +28,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} \end{lstlisting} @@ -41,7 +41,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage0} @@ -54,7 +54,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} \end{lstlisting} @@ -67,7 +67,7 @@ The fullpage image~\vref{fig:fullpage0} has a caption~\vpageref{fig:fullpage0-ca [A fullpage float with the default caption setting]% {A default caption of a ``fullpage'' object with the default setting, which is a ``left'' caption which means that it always appears before the object. - This can be an even or odd page. And some more text whch has no + This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% {fig:fullpage1} diff --git a/macros/latex/contrib/hvfloat/doc/examples/runAll.sh b/macros/latex/contrib/hvfloat/doc/examples/runAll.sh index 0cecd6a0c2..7b1ecfb77e 100755 --- a/macros/latex/contrib/hvfloat/doc/examples/runAll.sh +++ b/macros/latex/contrib/hvfloat/doc/examples/runAll.sh @@ -16,5 +16,5 @@ do then TEST=0 fi done - rm -fr $MAIN.aux $MAIN.log $MAIN.out $MAIN.toc + rm -fr $MAIN.aux $MAIN.log $MAIN.out $MAIN.toc $MAIN.lof done diff --git a/macros/latex/contrib/hvfloat/doc/examples/sub-after1s1c.pdf b/macros/latex/contrib/hvfloat/doc/examples/sub-after1s1c.pdf index f75bb23f56..edec7c4dda 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/sub-after1s1c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/sub-after1s1c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/sub-after1s1c.tex b/macros/latex/contrib/hvfloat/doc/examples/sub-after1s1c.tex index 660e942090..a0cdbcde18 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/sub-after1s1c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/sub-after1s1c.tex @@ -1,5 +1,5 @@ \documentclass{scrartcl} -%% $Id: sub-after1s1c.tex 103 2021-05-31 12:37:11Z herbert $ +%% $Id: sub-after1s1c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} @@ -27,7 +27,7 @@ subimage~~\vref{sub:demo1} has a caption~\vpageref{sub:demo1}. \hvFloat[fullpage,capPos=after,objectFrame,subFloat,vFill]% +{figure}{}[Short main caption of the objects]% main short lsi entry {The main caption of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% main caption {sub:demo0}% +{}{\includegraphics[width=\linewidth]{CTAN}}% @@ -50,7 +50,7 @@ subimage~~\vref{sub:demo1} has a caption~\vpageref{sub:demo1}. \hvFloat[fullpage,capPos=after,objectFrame,subFloat,vFill]% +{figure}{}[Short main caption of the objects]% main short lsi entry {The main caption of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% main caption {sub:demo0}% +{}{\includegraphics[width=\linewidth]{CTAN}}% @@ -77,7 +77,7 @@ subimage~~\vref{sub:demo1} has a caption~\vpageref{sub:demo1}. \hvFloat[fullpage,capPos=after,objectFrame,subFloat,vFill]% +{figure}{}[Short main caption of the objects]% main short lsi entry {The main caption of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% main caption {sub:demo4}% +{}{\includegraphics[width=\linewidth]{CTAN}}% @@ -100,7 +100,7 @@ subimage~~\vref{sub:demo1} has a caption~\vpageref{sub:demo1}. \hvFloat[fullpage,capPos=after,objectFrame,subFloat,vFill]% +{figure}{}[Short main caption of the objects]% main short lsi entry {The main caption of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% main caption {sub:demo4}% +{}{\includegraphics[width=\linewidth]{CTAN}}% diff --git a/macros/latex/contrib/hvfloat/doc/examples/sub-after2s2c.pdf b/macros/latex/contrib/hvfloat/doc/examples/sub-after2s2c.pdf index 00554afc00..3a7d78069e 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/sub-after2s2c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/sub-after2s2c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/sub-after2s2c.tex b/macros/latex/contrib/hvfloat/doc/examples/sub-after2s2c.tex index 761faa2c4b..d610aff9cd 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/sub-after2s2c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/sub-after2s2c.tex @@ -1,5 +1,5 @@ \documentclass[twocolumn]{scrartcl} -%% $Id: sub-after2s2c.tex 103 2021-05-31 12:37:11Z herbert $ +%% $Id: sub-after2s2c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} \setlength\columnseprule{0.4pt} @@ -27,7 +27,7 @@ subimage~~\vref{sub:demo1} has a caption~\vpageref{sub:demo1}. \hvFloat[fullpage,capPos=after,objectFrame,subFloat,vFill]% +{figure}{}[Short main caption of the objects]% main short lsi entry {The main caption of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% main caption {sub:demo0}% +{}{\includegraphics[width=\linewidth]{CTAN}}% @@ -50,7 +50,7 @@ subimage~~\vref{sub:demo1} has a caption~\vpageref{sub:demo1}. \hvFloat[fullpage,capPos=after,objectFrame,subFloat,vFill]% +{figure}{}[Short main caption of the objects]% main short lsi entry {The main caption of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% main caption {sub:demo0}% +{}{\includegraphics[width=\linewidth]{CTAN}}% @@ -77,7 +77,7 @@ subimage~~\vref{sub:demo1} has a caption~\vpageref{sub:demo1}. \hvFloat[fullpage,capPos=after,objectFrame,subFloat,vFill]% +{figure}{}[Short main caption of the objects]% main short lsi entry {The main caption of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% main caption {sub:demo4}% +{}{\includegraphics[width=\linewidth]{CTAN}}% @@ -100,7 +100,7 @@ subimage~~\vref{sub:demo1} has a caption~\vpageref{sub:demo1}. \hvFloat[fullpage,capPos=after,objectFrame,subFloat,vFill]% +{figure}{}[Short main caption of the objects]% main short lsi entry {The main caption of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% main caption {sub:demo4}% +{}{\includegraphics[width=\linewidth]{CTAN}}% diff --git a/macros/latex/contrib/hvfloat/doc/examples/sub-default1s1c.pdf b/macros/latex/contrib/hvfloat/doc/examples/sub-default1s1c.pdf index efea15759c..22f84d81d6 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/sub-default1s1c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/sub-default1s1c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/sub-default1s1c.tex b/macros/latex/contrib/hvfloat/doc/examples/sub-default1s1c.tex index ec371418a7..374a2fa0f1 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/sub-default1s1c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/sub-default1s1c.tex @@ -1,5 +1,5 @@ \documentclass{scrartcl} -%% $Id: sub-default1s1c.tex 72 2021-05-02 11:40:10Z herbert $ +%% $Id: sub-default1s1c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} @@ -28,7 +28,7 @@ subimage~~\vref{sub:demo1} has a caption~\vpageref{sub:demo1}. \hvFloat[fullpage,capPos=l,objectFrame,subFloat]% +{figure}{}[Short main caption of the objects]% main short lsi entry {The main caption of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% main caption {sub:demo0}% +{}{\includegraphics[width=\linewidth]{CTAN}}% @@ -51,7 +51,7 @@ subimage~~\vref{sub:demo1} has a caption~\vpageref{sub:demo1}. \hvFloat[fullpage,capPos=l,objectFrame,subFloat]% +{figure}{}[Short main caption of the objects]% main short lsi entry {The main caption of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% main caption {sub:demo0}% +{}{\includegraphics[width=\linewidth]{CTAN}}% @@ -78,7 +78,7 @@ subimage~~\vref{sub:demo1} has a caption~\vpageref{sub:demo1}. \hvFloat[fullpage,capPos=l,objectFrame,subFloat]% +{figure}{}[Short main caption of the objects]% main short lsi entry {The main caption of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% main caption {sub:demo4}% +{}{\includegraphics[width=\linewidth]{CTAN}}% @@ -101,7 +101,7 @@ subimage~~\vref{sub:demo1} has a caption~\vpageref{sub:demo1}. \hvFloat[fullpage,capPos=l,objectFrame,subFloat]% +{figure}{}[Short main caption of the objects]% main short lsi entry {The main caption of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% main caption {sub:demo4}% +{}{\includegraphics[width=\linewidth]{CTAN}}% diff --git a/macros/latex/contrib/hvfloat/doc/examples/sub-default1s2c.pdf b/macros/latex/contrib/hvfloat/doc/examples/sub-default1s2c.pdf index 8d48919902..39e0377260 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/sub-default1s2c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/sub-default1s2c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/sub-default1s2c.tex b/macros/latex/contrib/hvfloat/doc/examples/sub-default1s2c.tex index c9307aecef..33c1c8ad40 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/sub-default1s2c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/sub-default1s2c.tex @@ -1,5 +1,5 @@ \documentclass[twocolumn]{scrartcl} -%% $Id: sub-default1s2c.tex 72 2021-05-02 11:40:10Z herbert $ +%% $Id: sub-default1s2c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} \setlength\columnseprule{0.4pt} @@ -29,7 +29,7 @@ subimage~~\vref{sub:demo1} has a caption~\vpageref{sub:demo1}. \hvFloat[fullpage,capPos=l,objectFrame,subFloat]% +{figure}{}[Short main caption of the objects]% main short lsi entry {The main caption of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% main caption {sub:demo0}% +{}{\includegraphics[width=\linewidth]{CTAN}}% @@ -52,7 +52,7 @@ subimage~~\vref{sub:demo1} has a caption~\vpageref{sub:demo1}. \hvFloat[fullpage,capPos=l,objectFrame,subFloat]% +{figure}{}[Short main caption of the objects]% main short lsi entry {The main caption of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% main caption {sub:demo0}% +{}{\includegraphics[width=\linewidth]{CTAN}}% @@ -79,7 +79,7 @@ subimage~~\vref{sub:demo1} has a caption~\vpageref{sub:demo1}. \hvFloat[fullpage,capPos=l,objectFrame,subFloat]% +{figure}{}[Short main caption of the objects]% main short lsi entry {The main caption of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% main caption {sub:demo4}% +{}{\includegraphics[width=\linewidth]{CTAN}}% @@ -102,7 +102,7 @@ subimage~~\vref{sub:demo1} has a caption~\vpageref{sub:demo1}. \hvFloat[fullpage,capPos=l,objectFrame,subFloat]% +{figure}{}[Short main caption of the objects]% main short lsi entry {The main caption of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% main caption {sub:demo4}% +{}{\includegraphics[width=\linewidth]{CTAN}}% diff --git a/macros/latex/contrib/hvfloat/doc/examples/sub-default2s2c.pdf b/macros/latex/contrib/hvfloat/doc/examples/sub-default2s2c.pdf index 84ab3d56cc..68205759a4 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/sub-default2s2c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/sub-default2s2c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/sub-default2s2c.tex b/macros/latex/contrib/hvfloat/doc/examples/sub-default2s2c.tex index cd6d370b80..9ecb891836 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/sub-default2s2c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/sub-default2s2c.tex @@ -1,5 +1,5 @@ \documentclass[twoside,twocolumn]{scrartcl} -%% $Id: sub-default2s2c.tex 72 2021-05-02 11:40:10Z herbert $ +%% $Id: sub-default2s2c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} \setlength\columnseprule{0.4pt} @@ -29,7 +29,7 @@ subimage~~\vref{sub:demo1} has a caption~\vpageref{sub:demo1}. \hvFloat[fullpage,capPos=l,objectFrame,subFloat]% +{figure}{}[Short main caption of the objects]% main short lsi entry {The main caption of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% main caption {sub:demo0}% +{}{\includegraphics[width=\linewidth]{CTAN}}% @@ -52,7 +52,7 @@ subimage~~\vref{sub:demo1} has a caption~\vpageref{sub:demo1}. \hvFloat[fullpage,capPos=l,objectFrame,subFloat]% +{figure}{}[Short main caption of the objects]% main short lsi entry {The main caption of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% main caption {sub:demo0}% +{}{\includegraphics[width=\linewidth]{CTAN}}% @@ -79,7 +79,7 @@ subimage~~\vref{sub:demo1} has a caption~\vpageref{sub:demo1}. \hvFloat[fullpage,capPos=l,objectFrame,subFloat]% +{figure}{}[Short main caption of the objects]% main short lsi entry {The main caption of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% main caption {sub:demo4}% +{}{\includegraphics[width=\linewidth]{CTAN}}% @@ -102,7 +102,7 @@ subimage~~\vref{sub:demo1} has a caption~\vpageref{sub:demo1}. \hvFloat[fullpage,capPos=l,objectFrame,subFloat]% +{figure}{}[Short main caption of the objects]% main short lsi entry {The main caption of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% main caption {sub:demo4}% +{}{\includegraphics[width=\linewidth]{CTAN}}% diff --git a/macros/latex/contrib/hvfloat/doc/examples/sub-right1s1c.pdf b/macros/latex/contrib/hvfloat/doc/examples/sub-right1s1c.pdf index b319265630..8f71ca5fc2 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/sub-right1s1c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/sub-right1s1c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/sub-right1s1c.tex b/macros/latex/contrib/hvfloat/doc/examples/sub-right1s1c.tex index e4fea43506..5717edc39e 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/sub-right1s1c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/sub-right1s1c.tex @@ -1,5 +1,5 @@ \documentclass{scrartcl} -%% $Id: sub-right1s1c.tex 103 2021-05-31 12:37:11Z herbert $ +%% $Id: sub-right1s1c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} @@ -27,7 +27,7 @@ subimage~~\vref{sub:demo1} has a caption~\vpageref{sub:demo1}. \hvFloat[fullpage,capPos=right,objectFrame,subFloat,vFill]% +{figure}{}[Short main caption of the objects]% main short lsi entry {The main caption of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% main caption {sub:demo0}% +{}{\includegraphics[width=\linewidth]{CTAN}}% @@ -50,7 +50,7 @@ subimage~~\vref{sub:demo1} has a caption~\vpageref{sub:demo1}. \hvFloat[fullpage,capPos=right,objectFrame,subFloat,vFill]% +{figure}{}[Short main caption of the objects]% main short lsi entry {The main caption of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% main caption {sub:demo0}% +{}{\includegraphics[width=\linewidth]{CTAN}}% @@ -77,7 +77,7 @@ subimage~~\vref{sub:demo1} has a caption~\vpageref{sub:demo1}. \hvFloat[fullpage,capPos=right,objectFrame,subFloat,vFill]% +{figure}{}[Short main caption of the objects]% main short lsi entry {The main caption of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% main caption {sub:demo4}% +{}{\includegraphics[width=\linewidth]{CTAN}}% @@ -100,7 +100,7 @@ subimage~~\vref{sub:demo1} has a caption~\vpageref{sub:demo1}. \hvFloat[fullpage,capPos=right,objectFrame,subFloat,vFill]% +{figure}{}[Short main caption of the objects]% main short lsi entry {The main caption of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% main caption {sub:demo4}% +{}{\includegraphics[width=\linewidth]{CTAN}}% diff --git a/macros/latex/contrib/hvfloat/doc/examples/sub-right1s2c.pdf b/macros/latex/contrib/hvfloat/doc/examples/sub-right1s2c.pdf index 72ca919045..0faebe2324 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/sub-right1s2c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/sub-right1s2c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/sub-right1s2c.tex b/macros/latex/contrib/hvfloat/doc/examples/sub-right1s2c.tex index d1073b7838..0e085d56da 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/sub-right1s2c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/sub-right1s2c.tex @@ -1,5 +1,5 @@ \documentclass[twocolumn]{scrartcl} -%% $Id: sub-right1s2c.tex 103 2021-05-31 12:37:11Z herbert $ +%% $Id: sub-right1s2c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} \setlength\columnseprule{0.4pt} @@ -27,7 +27,7 @@ subimage~~\vref{sub:demo1} has a caption~\vpageref{sub:demo1}. \hvFloat[fullpage,capPos=after,objectFrame,subFloat,vFill]% +{figure}{}[Short main caption of the objects]% main short lsi entry {The main caption of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% main caption {sub:demo0}% +{}{\includegraphics[width=\linewidth]{CTAN}}% @@ -50,7 +50,7 @@ subimage~~\vref{sub:demo1} has a caption~\vpageref{sub:demo1}. \hvFloat[fullpage,capPos=after,objectFrame,subFloat,vFill]% +{figure}{}[Short main caption of the objects]% main short lsi entry {The main caption of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% main caption {sub:demo0}% +{}{\includegraphics[width=\linewidth]{CTAN}}% @@ -77,7 +77,7 @@ subimage~~\vref{sub:demo1} has a caption~\vpageref{sub:demo1}. \hvFloat[fullpage,capPos=after,objectFrame,subFloat,vFill]% +{figure}{}[Short main caption of the objects]% main short lsi entry {The main caption of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% main caption {sub:demo4}% +{}{\includegraphics[width=\linewidth]{CTAN}}% @@ -100,7 +100,7 @@ subimage~~\vref{sub:demo1} has a caption~\vpageref{sub:demo1}. \hvFloat[fullpage,capPos=after,objectFrame,subFloat,vFill]% +{figure}{}[Short main caption of the objects]% main short lsi entry {The main caption of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% main caption {sub:demo4}% +{}{\includegraphics[width=\linewidth]{CTAN}}% diff --git a/macros/latex/contrib/hvfloat/doc/examples/sub-right2s2c.pdf b/macros/latex/contrib/hvfloat/doc/examples/sub-right2s2c.pdf index 23e0a03ee7..f7224bc6d8 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/sub-right2s2c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/sub-right2s2c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/sub-right2s2c.tex b/macros/latex/contrib/hvfloat/doc/examples/sub-right2s2c.tex index a6e556161c..0e8b0b6744 100644 --- a/macros/latex/contrib/hvfloat/doc/examples/sub-right2s2c.tex +++ b/macros/latex/contrib/hvfloat/doc/examples/sub-right2s2c.tex @@ -1,5 +1,5 @@ \documentclass[twocolumn]{scrartcl} -%% $Id: sub-right2s2c.tex 103 2021-05-31 12:37:11Z herbert $ +%% $Id: sub-right2s2c.tex 318 2021-11-20 07:30:54Z herbert $ \input{preamble.ltx} \setlength\columnseprule{0.4pt} @@ -27,7 +27,7 @@ subimage~~\vref{sub:demo1} has a caption~\vpageref{sub:demo1}. \hvFloat[fullpage,capPos=right,objectFrame,subFloat,vFill]% +{figure}{}[Short main caption of the objects]% main short lsi entry {The main caption of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% main caption {sub:demo0}% +{}{\includegraphics[width=\linewidth]{CTAN}}% @@ -50,7 +50,7 @@ subimage~~\vref{sub:demo1} has a caption~\vpageref{sub:demo1}. \hvFloat[fullpage,capPos=right,objectFrame,subFloat,vFill]% +{figure}{}[Short main caption of the objects]% main short lsi entry {The main caption of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% main caption {sub:demo0}% +{}{\includegraphics[width=\linewidth]{CTAN}}% @@ -77,7 +77,7 @@ subimage~~\vref{sub:demo1} has a caption~\vpageref{sub:demo1}. \hvFloat[fullpage,capPos=right,objectFrame,subFloat,vFill]% +{figure}{}[Short main caption of the objects]% main short lsi entry {The main caption of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% main caption {sub:demo4}% +{}{\includegraphics[width=\linewidth]{CTAN}}% @@ -100,7 +100,7 @@ subimage~~\vref{sub:demo1} has a caption~\vpageref{sub:demo1}. \hvFloat[fullpage,capPos=right,objectFrame,subFloat,vFill]% +{figure}{}[Short main caption of the objects]% main short lsi entry {The main caption of a ``fullpage'' object, which follows on the left or - right column. This can be an even or odd page. And some more text whch has no + right column. This can be an even or odd page. And some more text which has no real meaning because it fills only the space for a long caption.}% main caption {sub:demo4}% +{}{\includegraphics[width=\linewidth]{CTAN}}% diff --git a/macros/latex/contrib/hvfloat/doc/examples/wide1s2c.pdf b/macros/latex/contrib/hvfloat/doc/examples/wide1s2c.pdf index b81fedc701..32af056a0e 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/wide1s2c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/wide1s2c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/examples/wide2s2c.pdf b/macros/latex/contrib/hvfloat/doc/examples/wide2s2c.pdf index a95470d1eb..ce2bc459b0 100644 Binary files a/macros/latex/contrib/hvfloat/doc/examples/wide2s2c.pdf and b/macros/latex/contrib/hvfloat/doc/examples/wide2s2c.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/hvfloat.pdf b/macros/latex/contrib/hvfloat/doc/hvfloat.pdf index 83ad56d472..65487377e3 100644 Binary files a/macros/latex/contrib/hvfloat/doc/hvfloat.pdf and b/macros/latex/contrib/hvfloat/doc/hvfloat.pdf differ diff --git a/macros/latex/contrib/hvfloat/doc/hvfloat.tex b/macros/latex/contrib/hvfloat/doc/hvfloat.tex index 116141dec6..fb50aa0941 100644 --- a/macros/latex/contrib/hvfloat/doc/hvfloat.tex +++ b/macros/latex/contrib/hvfloat/doc/hvfloat.tex @@ -1,4 +1,4 @@ -%% $Id: hvfloat.tex 530 2022-05-01 11:01:31Z herbert $ +%% $Id: hvfloat.tex 584 2022-07-20 18:29:58Z herbert $ \listfiles \errorcontextlines=100 \documentclass[twoside,paper=a4,usegeometry]{scrartcl} @@ -241,6 +241,7 @@ The following packages are loaded by \Lpack{hvfloat} and the optional argument \Lpack{subcaption}, \Lpack{atbegshi}, \Lpack{stfloats}, +\Lpack{floatpag}, \Lpack{expl3}, \Lpack{multido}, \Lpack{graphicx}, \Lpack{xkeyval}, @@ -2666,11 +2667,12 @@ in the inner margin on both pages. Placing the caption on the image itself is not the best solution. With the optional arguments \Lkeyval{before} and \Lkeyval{after} for \Lkeyword{capPos}, the caption can be placed on the bottom -of the preceding or follwing page of the doublepage object. A givel label, e.g. \texttt{foo} will always point to the +of the preceding or following page of the doublepage object. A givel label, e.g. \texttt{foo} will always point to the page with the left part of the object. Internally are two additional labels defined: \texttt{foo-cap} points to the caption and \texttt{foo-2} points to the right part of the doublepage object. -In the follwoing example~\ref{foo} the caption is on page~\pageref{foo-cap}, the left image part on page~\pageref{foo} +In the follwoing example~\ref{foo} the caption is on page~\pageref{foo-cap}, the left image part on +page~\pageref{foo} and the right part on page~\pageref{foo-2}. In the follwoing example~\ref{bar} the caption is on page~\pageref{bar-cap}, the left image part on page~\pageref{bar} and the right part on page~\pageref{bar-2}. All three labels points to the same figure or table number: diff --git a/macros/latex/contrib/hvfloat/latex/hvfloat.sty b/macros/latex/contrib/hvfloat/latex/hvfloat.sty index ec23f2c318..7c1e23111a 100644 --- a/macros/latex/contrib/hvfloat/latex/hvfloat.sty +++ b/macros/latex/contrib/hvfloat/latex/hvfloat.sty @@ -1,4 +1,4 @@ -%% $Id: hvfloat.sty 530 2022-05-01 11:01:31Z herbert $ +%% $Id: hvfloat.sty 584 2022-07-20 18:29:58Z herbert $ %% %% %% IMPORTANT NOTICE: @@ -16,8 +16,8 @@ %% `hvfloat' offers rotating of captions and objects for floats %% \NeedsTeXFormat{LaTeX2e} -\def\fileversion{2.39} -\def\filedate{2022/05/01} +\def\fileversion{2.40} +\def\filedate{2022/07/20} %\message{`hvfloat' v\fileversion, \filedate\space (Herbert Voss)} \ProvidesPackage{hvfloat}[\filedate\space v\fileversion\space special floating objects (hv)] \let\hvFloatFileVersion\fileversion @@ -27,7 +27,7 @@ \newif\ifhv@nostfloats \hv@nostfloatsfalse \newif\ifhv@tugboat \hv@tugboatfalse -\DeclareOption{fbox}{\hv@fboxtrue\setlength{\fboxsep}{1pt}} +\DeclareOption{fbox}{\hv@fboxtrue\setlength\fboxsep{1pt}} \DeclareOption{hyperref}{\hv@hyperreftrue} \DeclareOption{nostfloats}{\hv@nostfloatstrue} \DeclareOption{no-stfloats}{\hv@nostfloatstrue} @@ -56,8 +56,12 @@ \ifhv@hyperref \RequirePackage{hyperref} \fi -\ifhv@nostfloats\else +\ifhv@nostfloats + \def\thisfloatpagestyle#1{% + \global\@namedef{\number\@currbox @float}{\thispagestyle{#1}}} +\else \RequirePackage{stfloats}% for bottom floats in a twocolumn mode + \RequirePackage{floatpag}% for bottom floats in a twocolumn mode \fi % \providecommand*\LenToUnit[1]{\strip@pt\dimexpr#1*\p@/\unitlength} @@ -67,10 +71,9 @@ \newlength\hvWideWidth \newlength\hvMultiFloatSkip \newlength\hvMaxCapWidth -%\AtBeginDocument{% -% \setlength\hv@BottomSpace{\dimexpr\paperheight-1in-\topmargin-\headheight-\headsep-\textheight}} -\newlength\hvFullWidth % only for user purpose -\setlength\hvFullWidth{\dimexpr\textwidth+\marginparwidth+\marginparsep} +\newlength\hvFloatFullWidth % only for user purpose +\AtBeginDocument{\hvFloatFullWidth=\the\dimexpr\textwidth+\marginparwidth+\marginparsep\relax} + \newsavebox\hvObjectBox \newsavebox\hvCaptionBox @@ -186,6 +189,7 @@ \newif\ifhv@global@sameHeight \newif\ifhv@forceOutput + \newlength\hvSet@bindCorrection \newlength\hvSet@sepLineskip \newlength\hv@leftPageObjectWidth% for doublepage images @@ -203,7 +207,7 @@ \define@key{hvSet}{bindCorr}[0pt]{% \def\hv@temp{#1}% \ifx\hv@temp\hv@Inner - \setlength\hvSet@bindCorr{\dimexpr1in+\oddsidemargin}% + \hvSet@bindCorr=\the\dimexpr1in+\oddsidemargin\relax \else \setlength\hvSet@bindCorr{#1}% \fi @@ -259,7 +263,7 @@ \let\hvFloatSetDefaults\setDefaults \hvFloatSetDefaults% onyl for first loading of the package -\newcommand\hv@typeout[1]{\ifhv@Debug\typeout{>>>> #1}\fi} +\providecommand\hv@typeout[1]{\ifhv@Debug\typeout{>>>> #1}\fi} \providecommand\@tugclass{\@empty} \ifx\@tugclass\@empty @@ -283,8 +287,9 @@ \newlength\fboxlinewidth \AtBeginDocument{% - \setlength\fboxlinewidth{\dimexpr\linewidth-2\fboxrule-2\fboxsep}% + \fboxlinewidth=\the\dimexpr\linewidth-2\fboxrule-2\fboxsep\relax } + \setlength\belowcaptionskip{\abovecaptionskip}% it is in latex.ltx = 0pt \newcommand\saveCaptionSkip{% \setlength{\hvAboveCaptionSkip}{\abovecaptionskip}% @@ -331,9 +336,10 @@ \expandafter\captionsetup\expandafter{\hv@caption@format,position=below} \ifx\relax#1\relax \caption{#2}\else\caption[#1]{#2}\fi \endgroup} + % \newlength\hv@maxImageWidth -\AtBeginDocument{\hv@maxImageWidth=\columnwidth} +\AtBeginDocument{\setlength\hv@maxImageWidth{\columnwidth}} \define@key{Gin}{columnWidth}[true]{% \def\Gin@ewidth{\columnwidth}% @@ -361,7 +367,7 @@ \Gin@boolkey{false}{iso}% } \define@key{Gin}{doublefullPage}[true]{% - \def\Gin@ewidth{\dimexpr2\paperwidth-2in-2\evensidemargin}% + \def\Gin@ewidth{\the\dimexpr2\paperwidth-2in-2\evensidemargin}% % \def\Gin@eheight{\paperheight}% \Gin@boolkey{true}{iso}% } @@ -423,7 +429,6 @@ \fi } - \def\drawSepLine{% \par\noindent \if@twocolumn @@ -470,7 +475,7 @@ \def\hvFloat@i*{\@ifnextchar[{\do@hvFloat}{\do@hvFloat[]}} \def\do@hvFloat[#1]{% \begingroup - \setlength\hvWideWidth{\dimexpr\columnwidth+\marginparwidth+\marginparsep}% + \hvWideWidth=\the\dimexpr\columnwidth+\marginparwidth+\marginparsep\relax% % \setlength\hvWideWidth{\dimexpr\textwidth+\marginparwidth+\marginparsep}% % \setlength\hvWideWidth{\dimexpr\linewidth+\marginparwidth}% \hv@maxImageWidth=\textwidth @@ -630,12 +635,12 @@ \ifx\hvSet@capWidth\hv@Natural% captionwidth=\linewidth-\objectwidth-separation \ifhv@capbeside \ifhv@wide - \setlength\hvCapWidth{\the\dimexpr\hvWideWidth-\hvObjectWidth-\hv@floatCapSep\relax}% + \hvCapWidth=\the\dimexpr\hvWideWidth-\hvObjectWidth-\hv@floatCapSep\relax \else \ifhv@star - \setlength\hvCapWidth{\the\dimexpr\textwidth-\hvObjectWidth-\hv@floatCapSep\relax}% + \hvCapWidth=\the\dimexpr\textwidth-\hvObjectWidth-\hv@floatCapSep\relax \else - \setlength\hvCapWidth{\the\dimexpr\linewidth-\hvObjectWidth-\hv@floatCapSep\relax}% + \hvCapWidth=\the\dimexpr\linewidth-\hvObjectWidth-\hv@floatCapSep\relax \fi \fi \else @@ -645,13 +650,13 @@ \ifhv@capbeside \ifhv@wide \setlength\hvCapWidth{\hvSet@capWidth\hvWideWidth}% - \setlength\@tempdima{\the\dimexpr\hvWideWidth-\hvObjectWidth-\hv@floatCapSep\relax}% + \@tempdima=\the\dimexpr\hvWideWidth-\hvObjectWidth-\hv@floatCapSep\relax \else \setlength\hvCapWidth{\hvSet@capWidth\columnwidth}% - \setlength\@tempdima{\the\dimexpr\columnwidth-\hvObjectWidth-\hv@floatCapSep\relax}% + \@tempdima=\the\dimexpr\columnwidth-\hvObjectWidth-\hv@floatCapSep\relax \fi \ifdim\hvCapWidth>\@tempdima - \setlength\hvCapWidth{\@tempdima}% + \hvCapWidth=\@tempdima \fi \else \ifhv@wide @@ -1101,7 +1106,7 @@ \def\do@hvFloat@doublePage#1{% image on left and right page with caption on the right page % #1-> 0/1 caption under/right \hv@typeout{>>>doublePage: start with definitions of \hv@floatObject}% - \global\hv@leftPageObjectWidth=\dimexpr\paperwidth-1in-\evensidemargin-\hvSet@bindCorrection\relax + \global\hv@leftPageObjectWidth=\the\dimexpr\paperwidth-1in-\evensidemargin-\hvSet@bindCorrection\relax \global\hv@tempWidthA=\the\dimexpr1in+\oddsidemargin-\hvSet@bindCorrection\relax \xdef\hv@caption@format@temp{\hv@caption@format}% it gets lost otherwise for next afterpage \@dblfpbot=0\p@ \@plus 1fil% @@ -1749,7 +1754,7 @@ \endminipage}}}% \fi \else% ifnum, caption not rotated, under or over the right page - \setlength\hv@tempWidthA{\dimexpr\paperheight-\ht\hvObjectBox}% + \hv@tempWidthA=\the\dimexpr\paperheight-\ht\hvObjectBox\relax \ifdim\hv@tempWidthA > \ht\hvCaptionBox \else \put(\the\dimexpr1.5\paperwidth-\wd\hvObjectBox-\hvSet@bindCorrection,\the\dimexpr\ht\hvCaptionBox+\abovecaptionskip+\belowcaptionskip){\makebox[0pt][c]{\parbox{\textwidth}{%% @@ -1782,12 +1787,15 @@ \end{\hv@floatType}% } + + \def\setPageObject{% \ifhv@star \begin{\hv@floatType*}[p]% \else \begin{\hv@floatType}[p]% \fi + \thisfloatpagestyle{empty}% \hfuzz=\maxdimen \expandafter\hvFloatSet\expandafter{\hv@save@setting}% \ifhv@FULLPAGE @@ -1802,7 +1810,8 @@ \else \hspace*{\the\dimexpr-\oddsidemargin-\parindent-1in}% \fi - \AtBeginShipoutNext{\thispagestyle{empty}}% +% \AtBeginShipoutNext{\thispagestyle{empty}}% +% \afterpage{\AddToHookNext{shipout/after}{\thispagestyle{empty}}}% \usebox\hvObjectBox \else \usebox\hvObjectBox diff --git a/macros/latex/contrib/jsclasses/LICENSE b/macros/latex/contrib/jsclasses/LICENSE deleted file mode 100644 index 1f8bc0f533..0000000000 --- a/macros/latex/contrib/jsclasses/LICENSE +++ /dev/null @@ -1,25 +0,0 @@ -Copyright 1995-1999 ASCII MEDIA WORKS -Copyright 1999-2016 Haruhiko Okumura -Copyright 2016-2020 Japanese TeX Development Community -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - -* Redistributions of source code must retain the above copyright notice, this - list of conditions and the following disclaimer. - -* Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE -FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER -CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, -OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/macros/latex/contrib/jsclasses/Makefile b/macros/latex/contrib/jsclasses/Makefile deleted file mode 100644 index 3e91b82d58..0000000000 --- a/macros/latex/contrib/jsclasses/Makefile +++ /dev/null @@ -1,89 +0,0 @@ -STRIPTARGET = jsarticle.cls jslogo.sty okumacro.sty jsverb.sty okuverb.sty -DOCTARGET = jsclasses jslogo okumacro jsverb okuverb -PDFTARGET = $(addsuffix .pdf,$(DOCTARGET)) -DVITARGET = $(addsuffix .dvi,$(DOCTARGET)) -KANJI = -kanji=utf8 -FONTMAP = -f haranoaji.map -f ptex-haranoaji.map -TEXMF = $(shell kpsewhich -var-value=TEXMFHOME) - -default: $(STRIPTARGET) $(DVITARGET) -strip: $(STRIPTARGET) -all: $(STRIPTARGET) $(PDFTARGET) - -JSCLASSES = jsarticle.cls jsbook.cls jsreport.cls jspf.cls kiyou.cls \ - minijs.sty - -# for generating files, we use pdflatex incidentally. -# otherwise, ptexenc might convert U+2212 -> U+FF0D in okumacro.sty -jsarticle.cls: jsclasses.dtx - pdflatex jsclasses.ins - -jslogo.sty: jslogo.dtx - pdflatex jslogo.ins - -okumacro.sty: okumacro.dtx - pdflatex okumacro.ins - -jsverb.sty: jsverb.dtx - pdflatex jsverb.ins - -okuverb.sty: okuverb.dtx - pdflatex okuverb.ins - -.SUFFIXES: .dtx .dvi .pdf -.dtx.dvi: - platex $(KANJI) $< - platex $(KANJI) $< -.dvi.pdf: - dvipdfmx $(FONTMAP) $< - -.PHONY: install clean cleanstrip cleanall cleandoc jisfile -install: - mkdir -p ${TEXMF}/doc/platex/jsclasses - cp ./LICENSE ${TEXMF}/doc/platex/jsclasses/ - cp ./README.md ${TEXMF}/doc/platex/jsclasses/ - cp ./*.pdf ${TEXMF}/doc/platex/jsclasses/ - mkdir -p ${TEXMF}/source/platex/jsclasses - cp ./Makefile ${TEXMF}/source/platex/jsclasses/ - cp ./*.dtx ${TEXMF}/source/platex/jsclasses/ - cp ./*.ins ${TEXMF}/source/platex/jsclasses/ - mkdir -p ${TEXMF}/tex/platex/jsclasses - cp ./*.cls ${TEXMF}/tex/platex/jsclasses/ - cp ./*.sty ${TEXMF}/tex/platex/jsclasses/ -clean: - rm -f $(JSCLASSES) \ - jslogo.sty okumacro.sty jsverb.sty okuverb.sty \ - $(DVITARGET) -cleanstrip: - rm -f $(JSCLASSES) \ - jslogo.sty okumacro.sty jsverb.sty okuverb.sty -cleanall: - rm -f $(JSCLASSES) \ - jslogo.sty okumacro.sty jsverb.sty okuverb.sty \ - $(DVITARGET) $(PDFTARGET) -cleandoc: - rm -f $(DVITARGET) $(PDFTARGET) -jisfile: - mkdir -p jis0 - cp *.{dtx,ins,cls,sty} jis0/ - # GNU iconv can be used to convert UTF-8 -> ISO-2022-JP - for x in jis0/*; do \ - if [ -f "$$x" ]; then \ - iconv -f UTF-8 -t ISO-2022-JP "$$x" >"$$x.conv"; \ - mv "$$x.conv" "$$x"; \ - fi \ - done - # jsclasses and okumacro contain non-ASCII chars also in stripped files - for x in $(addprefix jis0/,$(JSCLASSES) jsclasses.dtx okumacro.dtx okumacro.sty); do \ - perl -pi.bak -0777 -e 's/(%\n)?\\ifx\\epTeXinputencoding\\undefined.*?\n\\fi\n(%\n)?//s' $$x; \ - rm -f $$x.bak; \ - done - # others have no non-ASCII chars in stripped files - for x in $(addprefix jis0/,$(wildcard *.dtx)); do \ - perl -pi.bak -0777 -e 's/(%\n)?% \\ifx\\epTeXinputencoding\\undefined.*?\n% \\fi\n(%\n)?//s' $$x; \ - perl -pi.bak -0777 -e 's/(%\n)?%<\*driver>\n\\ifx\\epTeXinputencoding\\undefined.*?\n\\fi\n%<\/driver>\n//s' $$x; \ - rm -f $$x.bak; \ - done - rm -f jis/*.{dtx,ins,cls,sty} - mv jis0/* jis/ - rmdir jis0 diff --git a/macros/latex/contrib/jsclasses/README.md b/macros/latex/contrib/jsclasses/README.md deleted file mode 100644 index 284efa7815..0000000000 --- a/macros/latex/contrib/jsclasses/README.md +++ /dev/null @@ -1,43 +0,0 @@ -# jsclasses - -The bundle provides Japanese classes and packages, mainly for use with -pLaTeX and upLaTeX. These were originally written by Haruhiko Okumura, -and currently maintained by the Japanese TeX Development Community -(https://texjp.org) on the GitHub repository: - -- https://github.com/texjporg/jsclasses - -The classes themselves do not automatically enable the support of -Japanese language. You'll need to set up LaTeX environment appropriately -so that it can handle Japanese. - -## Character encoding - -In the above repository, we include the pre-generated cls/sty files to -ensure proper encoding. All files are now encoded in UTF-8, since -recent versions of pLaTeX/upLaTeX recognizes `\epTeXinputencoding` -primitive of e-(u)pTeX. If you are using old (< 2015) pLaTeX/upLaTeX, -please download files in jis/ directory. - -## Contents - -- jsclasses (jsarticle, jsbook, jsreport and miscellaneous) - - Japanese classes for pLaTeX/upLaTeX. -- minijs - - Minimal jsclasses-like settings for pLaTeX/upLaTeX. -- okumacro - - Miscellaneous macros for pLaTeX/upLaTeX, written by H. Okumura. -- jsverb, okuverb - - Extended version of `\verb` and `verbatim` env. for pLaTeX/upLaTeX. -- jslogo - - Extended version of LaTeX-related logos for all *LaTeX engines. - -The package [morisawa](https://github.com/texjporg/morisawa) is now -distributed separately. - -## Release Date - -2021-07-01 - -Haruhiko Okumura, -Japanese TeX Development Community diff --git a/macros/latex/contrib/jsclasses/jsclasses.dtx b/macros/latex/contrib/jsclasses/jsclasses.dtx deleted file mode 100644 index 37567b64d9..0000000000 --- a/macros/latex/contrib/jsclasses/jsclasses.dtx +++ /dev/null @@ -1,6106 +0,0 @@ -% ^^A -*- japanese-latex -*- -% -\ifx\epTeXinputencoding\undefined\else - \epTeXinputencoding utf8 % ^^A added (2017-10-04) -\fi -% -% \iffalse meta-comment -% -% pLaTeX2ε新ドキュメントクラス(日本語 TeX 開発コミュニティ版) -% 原作者:奥村晴彦 -% -% Copyright 1993-2021 -% The LaTeX3 Project and any individual authors listed elsewhere -% in this file. -% -% Copyright 1995-1999 ASCII Corporation. -% Copyright 1999-2016 Haruhiko Okumura -% Copyright 2016-2021 Japanese TeX Development Community -% -% \fi -% -% \iffalse -% -% \begin{macrocode} -\NeedsTeXFormat{pLaTeX2e} -%
    \ProvidesClass{jsarticle} -%\ProvidesClass{jsbook} -%\ProvidesClass{jsreport} -%\ProvidesClass{jspf} -%\ProvidesClass{kiyou} -%\ProvidesPackage{minijs} -%<*driver> -\ProvidesFile{jsclasses.dtx} -% - [2021/06/28 jsclasses (okumura, texjporg)] -%<*driver> -\documentclass{jsarticle} -\usepackage{doc} -\xspcode"5C=1 %% \ -\xspcode"22=1 %% " -\addtolength{\textwidth}{-1in} -\addtolength{\evensidemargin}{1in} -\addtolength{\oddsidemargin}{1in} -\addtolength{\marginparwidth}{1in} -\setlength\marginparpush{0pt} -% \OnlyDescription -\CodelineNumbered -\DisableCrossrefs -\setcounter{StandardModuleDepth}{1} -\GetFileInfo{jsclasses.dtx} -\begin{document} - \DocInput{jsclasses.dtx} -\end{document} -% -% \end{macrocode} -% -% \fi -% -% \title{\pLaTeXe 新ドキュメントクラス} -% \author{奥村晴彦,日本語\TeX 開発コミュニティ} -% \date{\filedate} -% \maketitle -% -% \MakeShortVerb{\|} -% -% \section{はじめに} -% -% これは\LaTeX3 Projectの \texttt{classes.dtx} と -% 株式会社アスキーの \texttt{jclasses.dtx} に基づいて -% もともと奥村晴彦により作成されたものです。 -% 現在は日本語\TeX 開発コミュニティによりGitHubで管理されています。 -% \begin{quote} -% |https://github.com/texjporg/jsclasses| -% \end{quote} -% -% [2002-12-19] いろいろなものに収録していただく際にライセンスを明確にする -% 必要が生じてきました。アスキーのものが最近はmodified BSDライセンスになっ -% ていますので,私のものもそれに準じてmodified BSDとすることにします。 -% -% [2016-07-13] 日本語\TeX 開発コミュニティによる管理に移行しました。 -% -% [2009-02-22] 田中琢爾氏によるup\LaTeX 対応パッチを取り込みました。 -% -% ここでは次のドキュメントクラス(スタイルファイル)を作ります。 -% -% [2017-02-13] forum:2121の議論を機に,jsreportクラスを新設しました。 -% 従来のjsbookの |report| オプションと比べると,|abstract| 環境の使い方 -% および挙動がアスキーのjreportに近づきました。 -% -% \begin{quote} -% \begin{tabular}{lll} -% $\langle$\textsf{article}$\rangle$ & \texttt{jsarticle.cls} & 論文・レポート用 \\ -% $\langle$\textsf{book}$\rangle$ & \texttt{jsbook.cls} & 書籍用 \\ -% $\langle$\textsf{report}$\rangle$ & \texttt{jsreport.cls} & レポート用 \\ -% $\langle$\textsf{jspf}$\rangle$ & \texttt{jspf.cls} & 某学会誌用 \\ -% $\langle$\textsf{kiyou}$\rangle$ & \texttt{kiyou.cls} & 某紀要用 -% \end{tabular} -% \end{quote} -% -% \LaTeXe あるいは\pLaTeXe 標準のドキュメントクラスとの違いを説明してお -% きます。 -% -% \paragraph{JISフォントメトリックの使用} -% -% ここでは和文TFM(\TeX フォントメトリック)として東京書籍印刷の小林肇さ -% んの作られたJISフォントメトリック \texttt{jis.tfm},\texttt{jisg.tfm} -% を標準で使います。従来のフォントメトリック \texttt{min10.tfm}, -% \texttt{goth10.tfm} の類を使うには -% \begin{quote} -% |\documentclass[mingoth]{jsarticle}| -% \end{quote} -% のように \texttt{mingoth} オプションを付けます。 -% -% \paragraph{サイズオプションの扱いが違う} -% -% 標準のドキュメントクラスでは本文のポイント数を指定するオプションがあり -% ましたが,ポイント数は10,11,12しかなく,それぞれ別のクラスオプション -% ファイルを読み込むようになっていました。しかも,標準の10ポイント以外で -% は多少フォントのバランスが崩れることがあり,あまり便利ではありませんで -% した。ここでは文字サイズを増すとページを小さくし,\TeX の |\mag| プリ -% ミティブで全体的に拡大するという手を使って,9ポイントや21,25,30,36, -% 43ポイント,12Q,14Qの指定を可能にしています。 -% -% \StopEventually{} -% -% 以下では実際のコードに即して説明します。 -% -% \texttt{minijs}は,\texttt{jsclasses}に似た設定を行うパッケージです。 -% -% \begin{macrocode} -%<*minijs> -%% if jsclasses loaded, abort loading this package -\ifx\@jsc@uplatextrue\@undefined\else - \PackageInfo{minijs}{jsclasses does not need minijs, exiting} - \expandafter\endinput -\fi -%% "fake" jsarticle -\expandafter\def\csname ver@jsarticle.cls\endcsname{} -% -% \end{macrocode} -% -% \begin{macro}{\jsc@clsname} -% -% 文書クラスの名前です。エラーメッセージ表示などで使われます。 -% -% \begin{macrocode} -%<*class> -%
    \def\jsc@clsname{jsarticle} -%\def\jsc@clsname{jsbook} -%\def\jsc@clsname{jsreport} -%\def\jsc@clsname{jspf} -%\def\jsc@clsname{kiyou} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\ifjsc@needsp@tch} -% -% [2016-08-22] 従来\texttt{jsclasses}では,\pLaTeX や\LaTeX の -% 不都合な点に対して,クラスファイル内で独自に対策を施していま -% した。しかし,2016年以降,コミュニティ版\pLaTeX が次第に対策 -% コードをカーネル内に取り込むようになりました。そこで,新しい -% \pLaTeX カーネルと衝突しないように,日付が古い場合だけパッチ -% をあてる場合があります。この処理に使用するフラグを定義します。 -% -% \begin{macrocode} -% -%<*class|minijs> -\newif\ifjsc@needsp@tch -\jsc@needsp@tchfalse -% -%<*class> -% \end{macrocode} -% \end{macro} -% -% \section{オプション} -% -% これらのクラスは |\documentclass{jsarticle}| -% あるいは |\documentclass[オプション]{jsarticle}| -% のように呼び出します。 -% -% まず,オプションに関連するいくつかのコマンドやスイッチ(論理変数)を定 -% 義します。 -% -% \begin{macro}{\if@restonecol} -% -% 段組のときに真になる論理変数です。 -% -% \begin{macrocode} -\newif\if@restonecol -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\if@titlepage} -% -% これを真にすると表題,概要を独立したページに出力します。 -% -% \begin{macrocode} -\newif\if@titlepage -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\if@openright} -% -% |\chapter|,|\part| を右ページ起こしにするかどうかです。 -% 横組の書籍では真が標準で,要するに片起こし,奇数ページ起こしになります。 -% -% \begin{macrocode} -%\newif\if@openright -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\if@openleft} -% -% [2017-02-24] |\chapter|,|\part| を左ページ起こしにするかどうかです。 -% -% \begin{macrocode} -%\newif\if@openleft -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\if@mainmatter} -% -% 真なら本文,偽なら前付け・後付けです。 -% 偽なら |\chapter| で章番号が出ません。 -% -% \begin{macrocode} -%\newif\if@mainmatter \@mainmattertrue -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\if@enablejfam} -% -% 和文フォントを数式フォントとして登録するかどうかを示すスイッチです。 -% -% \begin{macrocode} -\newif\if@enablejfam \@enablejfamtrue -% \end{macrocode} -% \end{macro} -% -% 以下で各オプションを宣言します。 -% -% \paragraph{用紙サイズ} -% -% JISやISOのA0判は面積 $1\,\mathrm{m}^2$,縦横比 $1:\sqrt{2}$ -% の長方形の辺の長さを mm 単位に切り捨てたものです。 -% これを基準として順に半截しては mm 単位に切り捨てたものがA1,A2,…です。 -% -% B判はJISとISOで定義が異なります。 -% JISではB0判の面積が $1.5\,\mathrm{m}^2$ ですが, -% ISOではB1判の辺の長さがA0判とA1判の辺の長さの幾何平均です。 -% したがってISOのB0判は $1000\,\mathrm{mm} \times 1414\,\mathrm{mm}$ です。 -% このため,\LaTeXe の \texttt{b5paper} -% は $250\,\mathrm{mm} \times 176\,\mathrm{mm}$ ですが, -% \pLaTeXe の \texttt{b5paper} -% は $257\,\mathrm{mm} \times 182\,\mathrm{mm}$ になっています。 -% ここでは\pLaTeXe にならってJISに従いました。 -% -% デフォルトは \texttt{a4paper} です。 -% -% \texttt{b5var}(B5変形,182mm×230mm), -% \texttt{a4var}(A4変形,210mm×283mm)を追加しました。 -% -% \begin{macrocode} -\DeclareOption{a3paper}{% - \setlength\paperheight {420mm}% - \setlength\paperwidth {297mm}} -\DeclareOption{a4paper}{% - \setlength\paperheight {297mm}% - \setlength\paperwidth {210mm}} -\DeclareOption{a5paper}{% - \setlength\paperheight {210mm}% - \setlength\paperwidth {148mm}} -\DeclareOption{a6paper}{% - \setlength\paperheight {148mm}% - \setlength\paperwidth {105mm}} -\DeclareOption{b4paper}{% - \setlength\paperheight {364mm}% - \setlength\paperwidth {257mm}} -\DeclareOption{b5paper}{% - \setlength\paperheight {257mm}% - \setlength\paperwidth {182mm}} -\DeclareOption{b6paper}{% - \setlength\paperheight {182mm}% - \setlength\paperwidth {128mm}} -\DeclareOption{a4j}{% - \setlength\paperheight {297mm}% - \setlength\paperwidth {210mm}} -\DeclareOption{a5j}{% - \setlength\paperheight {210mm}% - \setlength\paperwidth {148mm}} -\DeclareOption{b4j}{% - \setlength\paperheight {364mm}% - \setlength\paperwidth {257mm}} -\DeclareOption{b5j}{% - \setlength\paperheight {257mm}% - \setlength\paperwidth {182mm}} -\DeclareOption{a4var}{% - \setlength\paperheight {283mm}% - \setlength\paperwidth {210mm}} -\DeclareOption{b5var}{% - \setlength\paperheight {230mm}% - \setlength\paperwidth {182mm}} -\DeclareOption{letterpaper}{% - \setlength\paperheight {11in}% - \setlength\paperwidth {8.5in}} -\DeclareOption{legalpaper}{% - \setlength\paperheight {14in}% - \setlength\paperwidth {8.5in}} -\DeclareOption{executivepaper}{% - \setlength\paperheight {10.5in}% - \setlength\paperwidth {7.25in}} -% \end{macrocode} -% -% \paragraph{横置き} -% -% 用紙の縦と横の長さを入れ換えます。 -% -% \begin{macrocode} -\newif\if@landscape -\@landscapefalse -\DeclareOption{landscape}{\@landscapetrue} -% \end{macrocode} -% -% \paragraph{slide} -% -% オプション \texttt{slide} を新設しました。 -% -% [2016-10-08] \texttt{slide} オプションは article 以外では使い物にならなかったので, -% 簡単のため article のみで使えるオプションとしました。 -% -% \begin{macrocode} -\newif\if@slide -\@slidefalse -% \end{macrocode} -% -% \paragraph{サイズオプション} -% -% 10pt,11pt,12pt のほかに,8pt,9pt,14pt,17pt,21pt,25pt,30pt,36pt,43pt を追加しました。 -% これは等比数列になるように選んだものです(従来の 20pt も残しました)。 -% |\@ptsize| の定義が変だったのでご迷惑をおかけしましたが, -% 標準的なドキュメントクラスと同様にポイント数から10を引いたものに直しました。 -% -% [2003-03-22] 14Qオプションを追加しました。 -% -% [2003-04-18] 12Qオプションを追加しました。 -% -% [2016-07-08] |\mag| を使わずに各種寸法をスケールさせるためのオプション \texttt{nomag} を新設しました。 -% \texttt{usemag} オプションの指定で従来通りの動作となります。デフォルトは \texttt{usemag} です。 -% -% [2016-07-24] オプティカルサイズを調整するためにNFSSへパッチを当てるオプション \texttt{nomag*} を新設しました。 -% -% \begin{macrocode} -\newcommand{\@ptsize}{0} -\newif\ifjsc@mag\jsc@magtrue -\newif\ifjsc@mag@xreal\jsc@mag@xrealfalse -\def\jsc@magscale{1} -%<*article> -\DeclareOption{slide}{% - \@slidetrue\def\jsc@magscale{3.583} - \renewcommand{\@ptsize}{26} - \@landscapetrue\@titlepagetrue} -%
    -\DeclareOption{8pt}{\def\jsc@magscale{0.833}\renewcommand{\@ptsize}{-2}} -\DeclareOption{9pt}{\def\jsc@magscale{0.913}\renewcommand{\@ptsize}{-1}} -\DeclareOption{10pt}{\def\jsc@magscale{1}\renewcommand{\@ptsize}{0}} -\DeclareOption{11pt}{\def\jsc@magscale{1.095}\renewcommand{\@ptsize}{1}} -\DeclareOption{12pt}{\def\jsc@magscale{1.200}\renewcommand{\@ptsize}{2}} -\DeclareOption{14pt}{\def\jsc@magscale{1.440}\renewcommand{\@ptsize}{4}} -\DeclareOption{17pt}{\def\jsc@magscale{1.728}\renewcommand{\@ptsize}{7}} -\DeclareOption{20pt}{\def\jsc@magscale{2}\renewcommand{\@ptsize}{10}} -\DeclareOption{21pt}{\def\jsc@magscale{2.074}\renewcommand{\@ptsize}{11}} -\DeclareOption{25pt}{\def\jsc@magscale{2.488}\renewcommand{\@ptsize}{15}} -\DeclareOption{30pt}{\def\jsc@magscale{2.986}\renewcommand{\@ptsize}{20}} -\DeclareOption{36pt}{\def\jsc@magscale{3.583}\renewcommand{\@ptsize}{26}} -\DeclareOption{43pt}{\def\jsc@magscale{4.300}\renewcommand{\@ptsize}{33}} -\DeclareOption{12Q}{\def\jsc@magscale{0.923}\renewcommand{\@ptsize}{1200}} -\DeclareOption{14Q}{\def\jsc@magscale{1.077}\renewcommand{\@ptsize}{1400}} -\DeclareOption{10ptj}{\def\jsc@magscale{1.085}\renewcommand{\@ptsize}{1001}} -\DeclareOption{10.5ptj}{\def\jsc@magscale{1.139}\renewcommand{\@ptsize}{1051}} -\DeclareOption{11ptj}{\def\jsc@magscale{1.194}\renewcommand{\@ptsize}{1101}} -\DeclareOption{12ptj}{\def\jsc@magscale{1.302}\renewcommand{\@ptsize}{1201}} -\DeclareOption{usemag}{\jsc@magtrue\jsc@mag@xrealfalse} -\DeclareOption{nomag}{\jsc@magfalse\jsc@mag@xrealfalse} -\DeclareOption{nomag*}{\jsc@magfalse\jsc@mag@xrealtrue} -% \end{macrocode} -% -% -% \paragraph{トンボオプション} -% -% トンボ(crop marks)を出力します。 -% 実際の処理は\pLaTeXe 本体で行います(\texttt{plcore.dtx} 参照)。 -% オプション \texttt{tombow} で日付付きのトンボ, -% オプション \texttt{tombo} で日付なしのトンボを出力します。 -% これらはアスキー版のままです。 -% カウンタ |\hour|,|\minute| はp\LaTeXe 本体で宣言されています。 -% -% \begin{macrocode} -\hour\time \divide\hour by 60\relax -\@tempcnta\hour \multiply\@tempcnta 60\relax -\minute\time \advance\minute-\@tempcnta -\DeclareOption{tombow}{% - \tombowtrue \tombowdatetrue - \setlength{\@tombowwidth}{.1\p@}% - \@bannertoken{% - \jobname\space(\number\year-\two@digits\month-\two@digits\day - \space\two@digits\hour:\two@digits\minute)}% - \maketombowbox} -\DeclareOption{tombo}{% - \tombowtrue \tombowdatefalse - \setlength{\@tombowwidth}{.1\p@}% - \maketombowbox} -% \end{macrocode} -% -% \paragraph{面付け} -% -% オプション \texttt{mentuke} で幅ゼロのトンボを出力します。 -% 面付けに便利です。これもアスキー版のままです。 -% -% \begin{macrocode} -\DeclareOption{mentuke}{% - \tombowtrue \tombowdatefalse - \setlength{\@tombowwidth}{\z@}% - \maketombowbox} -% \end{macrocode} -% -% \paragraph{両面,片面オプション} -% -% \texttt{twoside} で奇数ページ・偶数ページのレイアウトが変わります。 -% -% [2003-04-29] \texttt{vartwoside} でどちらのページも傍注が右側になります。 -% -% \begin{macrocode} -\DeclareOption{oneside}{\@twosidefalse \@mparswitchfalse} -\DeclareOption{twoside}{\@twosidetrue \@mparswitchtrue} -\DeclareOption{vartwoside}{\@twosidetrue \@mparswitchfalse} -% \end{macrocode} -% -% \paragraph{二段組} -% -% \texttt{twocolumn} で二段組になります。 -% -% \begin{macrocode} -\DeclareOption{onecolumn}{\@twocolumnfalse} -\DeclareOption{twocolumn}{\@twocolumntrue} -% \end{macrocode} -% -% \paragraph{表題ページ} -% -% \texttt{titlepage} で表題・概要を独立したページに出力します。 -% -% \begin{macrocode} -\DeclareOption{titlepage}{\@titlepagetrue} -\DeclareOption{notitlepage}{\@titlepagefalse} -% \end{macrocode} -% -% \paragraph{右左起こし} -% -% 書籍では章は通常は奇数ページ起こしになりますが,横組ではこれを -% \texttt{openright} と表すことにしてあります。 -% \texttt{openany} で偶数ページからでも始まるようになります。 -% -% [2017-02-24] \texttt{openright} は横組では奇数ページ起こし,縦組では -% 偶数ページ起こしを表します。ややこしいですが,これは\LaTeX の標準クラスが -% 西欧の横組事情しか考慮せずに,奇数ページ起こしと右起こしを一緒にしてしまっ -% たせいです。縦組での奇数ページ起こしと横組での偶数ページ起こしも表現したい -% ので,jsclassesでは新たに \texttt{openleft} も追加しました。 -% -% \begin{macrocode} -%\DeclareOption{openright}{\@openrighttrue\@openleftfalse} -%\DeclareOption{openleft}{\@openlefttrue\@openrightfalse} -%\DeclareOption{openany}{\@openrightfalse\@openleftfalse} -% \end{macrocode} -% -% \paragraph{eqnarray環境と数式の位置} -% -% 森本さんのご教示にしたがって前に移動しました。 -% -% \begin{environment}{eqnarray} -% -% \LaTeX の |eqnarray| 環境では |&| でできるアキが大きすぎる -% ようですので,少し小さくします。 -% また,中央の要素も |\displaystyle| にします。 -% -% \begin{macrocode} -\def\eqnarray{% - \stepcounter{equation}% - \def\@currentlabel{\p@equation\theequation}% - \global\@eqnswtrue - \m@th - \global\@eqcnt\z@ - \tabskip\@centering - \let\\\@eqncr - $$\everycr{}\halign to\displaywidth\bgroup - \hskip\@centering$\displaystyle\tabskip\z@skip{##}$\@eqnsel - &\global\@eqcnt\@ne \hfil$\displaystyle{{}##{}}$\hfil - &\global\@eqcnt\tw@ $\displaystyle{##}$\hfil\tabskip\@centering - &\global\@eqcnt\thr@@ \hb@xt@\z@\bgroup\hss##\egroup - \tabskip\z@skip - \cr} -% \end{macrocode} -% \end{environment} -% -% \texttt{leqno} で数式番号が左側になります。 -% \texttt{fleqn} で数式が本文左端から一定距離のところに出力されます。 -% 森本さんにしたがって訂正しました。 -% -% \begin{macrocode} -\DeclareOption{leqno}{\input{leqno.clo}} -\DeclareOption{fleqn}{\input{fleqn.clo}% -% fleqn用のeqnarray環境の再定義 - \def\eqnarray{% - \stepcounter{equation}% - \def\@currentlabel{\p@equation\theequation}% - \global\@eqnswtrue\m@th - \global\@eqcnt\z@ - \tabskip\mathindent - \let\\=\@eqncr - \setlength\abovedisplayskip{\topsep}% - \ifvmode - \addtolength\abovedisplayskip{\partopsep}% - \fi - \addtolength\abovedisplayskip{\parskip}% - \setlength\belowdisplayskip{\abovedisplayskip}% - \setlength\belowdisplayshortskip{\abovedisplayskip}% - \setlength\abovedisplayshortskip{\abovedisplayskip}% - $$\everycr{}\halign to\linewidth% $$ - \bgroup - \hskip\@centering$\displaystyle\tabskip\z@skip{##}$\@eqnsel - &\global\@eqcnt\@ne \hfil$\displaystyle{{}##{}}$\hfil - &\global\@eqcnt\tw@ - $\displaystyle{##}$\hfil \tabskip\@centering - &\global\@eqcnt\thr@@ \hb@xt@\z@\bgroup\hss##\egroup - \tabskip\z@skip\cr - }} -% \end{macrocode} -% -% \paragraph{文献リスト} -% -% 文献リストをopen形式(著者名や書名の後に改行が入る)で出力します。 -% これは使われることはないのでコメントアウトしてあります。 -% -% \begin{macrocode} -% \DeclareOption{openbib}{% -% \AtEndOfPackage{% -% \renewcommand\@openbib@code{% -% \advance\leftmargin\bibindent -% \itemindent -\bibindent -% \listparindent \itemindent -% \parsep \z@}% -% \renewcommand\newblock{\par}}} -% \end{macrocode} -% -% \paragraph{数式フォントとして和文フォントを登録しないオプション} -% -% 数式中では16通りのフォントしか使えません。 -% AMSFontsや \texttt{mathptmx} パッケージを使って数式フォントを -% たくさん使うと ``Too many math alphabets \ldots'' というエラーが -% 起こってしまいます。\texttt{disablejfam} オプションを付ければ, -% 明朝・ゴシックを数式用フォントとして登録するのをやめますので, -% 数式用フォントが二つ節約できます。 -% いずれにしても |\textmc| や |\mbox| や \texttt{amsmath} -% パッケージの |\text| を使えば数式中で和文フォントが使えますので, -% この新ドキュメントクラスでは標準で和文フォントを数式用に登録 -% しないことにしていたのですが,従来のドキュメントクラスの仕様に -% 合わせることにしました。 -% -% \begin{macrocode} -\DeclareOption{disablejfam}{\@enablejfamfalse} -% \end{macrocode} -% -% \paragraph{ドラフト} -% -% \texttt{draft} でoverfull boxの起きた行末に5ptの罫線を引きます。 -% -% [2016-07-13] |\ifdraft| を定義するのをやめました。 -% -% \begin{macrocode} -\DeclareOption{draft}{\setlength\overfullrule{5pt}} -\DeclareOption{final}{\setlength\overfullrule{0pt}} -% \end{macrocode} -% -% \paragraph{和文フォントメトリックの選択} -% -% このクラスファイルでは,和文TFMとして東京書籍印刷の小林肇さんの -% 作られたJISフォントメトリック(\texttt{jis},\texttt{jisg}) -% を標準で使うことにしますが, -% 従来の \texttt{min10},\texttt{goth10} などを使いたいときは -% \texttt{mingoth} というオプションを指定します。 -% また,\texttt{winjis} オプションで \texttt{winjis} メトリック -% (OTFパッケージと同じpsitauさん作;ソースに書かれたWindowsの -% 機種依存文字がdvips, dvipdfmxなどで出力出来るようになる)が使えます。 -% -% [2018-02-04] \texttt{winjis} オプションはコッソリ削除しました。 -% 代替として,同等なものをパッケージ化(winjis.sty)して, -% GitHubにはコッソリ置いておきます。 -% -% \begin{macrocode} -\newif\ifmingoth -\mingothfalse -\newif\ifjisfont -\jisfontfalse -\newif\if@jsc@uplatex -\@jsc@uplatexfalse -\newif\if@jsc@autodetect -\@jsc@autodetectfalse -\DeclareOption{winjis}{% - \ClassWarningNoLine{\jsc@clsname}{% - The option `winjis' has been removed;\MessageBreak - Use `\string\usepackage{winjis}' instead}} -\DeclareOption{mingoth}{\mingothtrue} -\DeclareOption{jis}{\jisfonttrue} -\DeclareOption{uplatex}{\@jsc@uplatextrue} -\DeclareOption{autodetect-engine}{\@jsc@autodetecttrue} -\def\jsc@JYn{\if@jsc@uplatex JY2\else JY1\fi} -\def\jsc@JTn{\if@jsc@uplatex JT2\else JT1\fi} -\def\jsc@pfx@{\if@jsc@uplatex u\else \fi} -% \end{macrocode} -% -% \paragraph{papersizeスペシャルの利用} -% -% dvipsやdvioutで用紙設定を自動化するには -% オプション \texttt{papersize} を与えます。 -% -% \begin{macrocode} -\newif\ifpapersize -\papersizefalse -\DeclareOption{papersize}{\papersizetrue} -% \end{macrocode} -% -% \paragraph{英語化} -% -% オプション \texttt{english} を新設しました。 -% -% \begin{macrocode} -\newif\if@english -\@englishfalse -\DeclareOption{english}{\@englishtrue} -% \end{macrocode} -% -% \paragraph{jsbookをjsreportもどきに} -% -% オプション \texttt{report} を新設しました。 -% -% [2017-02-13] 従来は「jsreport相当」をjsbookの \texttt{report} オプションで提供して -% いましたが,新しくjsreportクラスも作りました。どちらでもお好きな方を使ってください。 -% -% \begin{macrocode} -%<*book> -\newif\if@report -\@reportfalse -\DeclareOption{report}{\@reporttrue\@openrightfalse\@twosidefalse\@mparswitchfalse} -%
    -% \end{macrocode} -% -% \paragraph{\texttt{jslogo}パッケージの読み込み} -% -% \LaTeX 関連のロゴを再定義する\texttt{jslogo}パッケージを -% 読み込まないオプション\texttt{nojslogo}を新設しました。 -% \texttt{jslogo}オプションの指定で従来どおりの動作となります。 -% デフォルトは\texttt{jslogo}で,すなわちパッケージを読み込みます。 -% \begin{macrocode} -\newif\if@jslogo \@jslogotrue -\DeclareOption{jslogo}{\@jslogotrue} -\DeclareOption{nojslogo}{\@jslogofalse} -% \end{macrocode} -% -% \paragraph{オプションの実行} -% -% デフォルトのオプションを実行します。 -% |multicols| や |url| を |\RequirePackage| するのはやめました。 -% -% \begin{macrocode} -%
    \ExecuteOptions{a4paper,oneside,onecolumn,notitlepage,final} -%\ExecuteOptions{a4paper,twoside,onecolumn,titlepage,openright,final} -%\ExecuteOptions{a4paper,oneside,onecolumn,titlepage,openany,final} -%\ExecuteOptions{a4paper,twoside,twocolumn,notitlepage,fleqn,final} -%\ExecuteOptions{a4paper,twoside,twocolumn,notitlepage,final} -\ProcessOptions -% \end{macrocode} -% -% 後処理 -% -% \begin{macrocode} -\if@slide - \def\maybeblue{\@ifundefined{ver@color.sty}{}{\color{blue}}} -\fi -\if@landscape - \setlength\@tempdima {\paperheight} - \setlength\paperheight{\paperwidth} - \setlength\paperwidth {\@tempdima} -\fi -% \end{macrocode} -% -% \paragraph{使用エンジンの検査・自動判定} -% -% ユーザが |uplatex| オプションの有無により指定したエンジンが,実際に -% 使われているものと一致しているかを検査し,一致しない場合はエラー -% メッセージを表示します。 -% -% [2016-11-09] p\LaTeX / up\LaTeX を自動判別するオプション |autodetect-engine| を新設しました。 -% up\LaTeX の場合は,グローバルオプションに |uplatex| を追加することで, -% 自動判定に応じて |otf| パッケージにも |uplatex| オプションが渡るようにします。 -% -% \begin{macrocode} -\ifnum \ifx\ucs\@undefined\z@\else\ucs"3000 \fi ="3000 - \if@jsc@autodetect - \ClassInfo\jsc@clsname{Autodetected engine: upLaTeX} - \@jsc@uplatextrue - \g@addto@macro\@classoptionslist{,uplatex} - \fi - \if@jsc@uplatex\else - \ClassError\jsc@clsname - {You are running upLaTeX.\MessageBreak - Please use pLaTeX instead, or add 'uplatex' to\MessageBreak - the class option list} - {\@ehc} - \@jsc@uplatextrue - \fi -% \end{macrocode} -% -% [2016-11-11] p\LaTeX の場合は,オプション |uplatex| が指定されていれば必ずエラーを出します。 -% |autodetect-engine| が有効になっていてもエラーを出しますが,これは |otf| パッケージに -% |uplatex| オプションが渡ってしまうのを防ぐためです。 -% -% \begin{macrocode} -\else - \if@jsc@uplatex - \ClassError\jsc@clsname - {You are running pLaTeX.\MessageBreak - Please use upLaTeX instead, or remove 'uplatex' from\MessageBreak - the class option list} - {\@ehc} - \@jsc@uplatexfalse - \fi - \if@jsc@autodetect - \ClassInfo\jsc@clsname{Autodetected engine: pLaTeX} - \@jsc@uplatexfalse - \fi -\fi -% \end{macrocode} -% -% \paragraph{papersizeスペシャルの出力} -% -% |dvi| ファイルの先頭にdvipsのpapersize specialを書き込むことで, -% 出力用紙サイズを設定します。これはdvipdfmxや最近のdvioutにも有効です。 -% どうやらpapersize specialにはtrue付の単位は許されず,かつ単位は -% 常にtrueなものと扱われるようです。 -% そこで,後で出てくる(☆)の部分,「|\mag|にあわせてスケール」よりも -% 手前で実行しておくことになります。 -% -% トンボの付いたときの用紙サイズは無意味ですが, -% いわゆる「ノビ」サイズという縦横1インチずつ長い用紙に出力することを考えて, -% 1インチずつ加えました。 -% ところが\pLaTeXe はトンボ出力幅を両側に1インチとっていますので, -% dvips使用時に -% \begin{quote} -% |-O -0.5in,-0.5in| -% \end{quote} -% というオプションを与えて両側0.5インチのトンボにするといいでしょう。 -% -% [2003-05-17] トンボをプレビューに使うことを考えて1インチを2インチにしました。 -% -% [2016-07-11] memoirクラスのマニュアルによると,トンボを含めた用紙の寸法は -% |\stockwidth|,|\stockheight|と呼ぶようですので,これを使うことにしました。 -% -% [2017-01-11] トンボオプションが指定されているとき「だけ」|\stockwidth|, -% |\stockheight|を定義するようにしました。 -% -% [2020-10-04] \LaTeXe~2020-10-01でカーネルの |\shipout| コードが拡張され -% |\AtBeginDvi| の実行タイミングが変化したので,この時点で -% 発行する |\special| の中身を展開しておくようにしました。 -% こうしないと,用紙サイズ設定を間違ってしまいます(Issue \#72)。 -% -% \begin{macrocode} -\iftombow - \newdimen\stockwidth \newdimen\stockheight - \setlength{\stockwidth}{\paperwidth} - \setlength{\stockheight}{\paperheight} - \advance \stockwidth 2in - \advance \stockheight 2in -\fi -\ifpapersize - \iftombow - \edef\jsc@papersize@special{papersize=\the\stockwidth,\the\stockheight} - \else - \edef\jsc@papersize@special{papersize=\the\paperwidth,\the\paperheight} - \fi - \AtBeginDvi{\special{\jsc@papersize@special}} -\fi -% \end{macrocode} -% -% \paragraph{基準となる行送り} -% -% \begin{macro}{\n@baseline} -% -% 基準となる行送りをポイント単位で表したものです。 -% -% \begin{macrocode} -%\if@slide\def\n@baseline{13}\else\def\n@baseline{16}\fi -%\def\n@baseline{14.554375} -%\def\n@baseline{14.897} -% \end{macrocode} -% \end{macro} -% -% \paragraph{拡大率の設定} -% -% サイズの変更は\TeX のプリミティブ |\mag| を使って行います。 -% 9ポイントについては行送りも若干縮めました。 -% サイズについては全面的に見直しました。 -% -% [2008-12-26] 1000 / |\mag| に相当する |\inv@mag| を定義しました。 -% |truein| を使っていたところを |\inv@mag in| に直しましたので, -% |geometry| パッケージと共存できると思います。 -% なお,新ドキュメントクラス側で |10pt| 以外にする場合の注意: -% \begin{itemize} -% \item |geometry| 側でオプション |truedimen| を指定してください。 -% \item |geometry| 側でオプション |mag| は使えません。 -% \end{itemize} -% -% [2016-07-08] |\jsc@mpt| および |\jsc@mmm| に,それぞれ1ptおよび1mmを拡大させた値を格納します。 -% 以降のレイアウト指定ではこちらを使います。 -% -% \begin{macrocode} -\newdimen\jsc@mpt -\newdimen\jsc@mmm -\def\inv@mag{1} -\ifjsc@mag - \jsc@mpt=1\p@ - \jsc@mmm=1mm - \ifnum\@ptsize=-2 - \mag 833 - \def\inv@mag{1.20048} - \def\n@baseline{15}% - \fi - \ifnum\@ptsize=-1 - \mag 913 % formerly 900 - \def\inv@mag{1.09529} - \def\n@baseline{15}% - \fi - \ifnum\@ptsize=1 - \mag 1095 % formerly 1100 - \def\inv@mag{0.913242} - \fi - \ifnum\@ptsize=2 - \mag 1200 - \def\inv@mag{0.833333} - \fi - \ifnum\@ptsize=4 - \mag 1440 - \def\inv@mag{0.694444} - \fi - \ifnum\@ptsize=7 - \mag 1728 - \def\inv@mag{0.578704} - \fi - \ifnum\@ptsize=10 - \mag 2000 - \def\inv@mag{0.5} - \fi - \ifnum\@ptsize=11 - \mag 2074 - \def\inv@mag{0.48216} - \fi - \ifnum\@ptsize=15 - \mag 2488 - \def\inv@mag{0.401929} - \fi - \ifnum\@ptsize=20 - \mag 2986 - \def\inv@mag{0.334896} - \fi - \ifnum\@ptsize=26 - \mag 3583 - \def\inv@mag{0.279096} - \fi - \ifnum\@ptsize=33 - \mag 4300 - \def\inv@mag{0.232558} - \fi - \ifnum\@ptsize=1200 - \mag 923 - \def\inv@mag{1.0834236} - \fi - \ifnum\@ptsize=1400 - \mag 1077 - \def\inv@mag{0.928505} - \fi - \ifnum\@ptsize=1001 - \mag 1085 - \def\inv@mag{0.921659} - \fi - \ifnum\@ptsize=1051 - \mag 1139 - \def\inv@mag{0.877963} - \fi - \ifnum\@ptsize=1101 - \mag 1194 - \def\inv@mag{0.837521} - \fi - \ifnum\@ptsize=1201 - \mag 1302 - \def\inv@mag{0.768049} - \fi -\else - \jsc@mpt=\jsc@magscale\p@ - \jsc@mmm=\jsc@magscale mm - \def\inv@mag{1} - \ifnum\@ptsize=-2 - \def\n@baseline{15}% - \fi - \ifnum\@ptsize=-1 - \def\n@baseline{15}% - \fi -\fi -%<*kiyou> -\def\jsc@magscale{0.9769230} -\ifjsc@mag - \mag 977 - \def\inv@mag{1.02354} - \jsc@mpt=1\p@ - \jsc@mmm=1mm -\else - \jsc@mpt=\jsc@magscale\p@ - \jsc@mmm=\jsc@magscale mm - \def\inv@mag{1} -\fi -% -\ifjsc@mag@xreal - \RequirePackage{type1cm} - \mathchardef\jsc@csta=259 - \def\jsc@invscale#1#2{% - \begingroup \@tempdima=#1\relax \@tempdimb#2\p@\relax - \@tempcnta\@tempdima \multiply\@tempcnta\@cclvi - \divide\@tempcnta\@tempdimb \multiply\@tempcnta\@cclvi - \@tempcntb\p@ \divide\@tempcntb\@tempdimb - \advance\@tempcnta-\@tempcntb \advance\@tempcnta-\tw@ - \@tempdimb\@tempcnta\@ne - \advance\@tempcnta\@tempcntb \advance\@tempcnta\@tempcntb - \advance\@tempcnta\jsc@csta \@tempdimc\@tempcnta\@ne - \@whiledim\@tempdimb<\@tempdimc\do{% - \@tempcntb\@tempdimb \advance\@tempcntb\@tempdimc - \advance\@tempcntb\@ne \divide\@tempcntb\tw@ - \ifdim #2\@tempcntb>\@tempdima - \advance\@tempcntb\m@ne \@tempdimc=\@tempcntb\@ne - \else \@tempdimb=\@tempcntb\@ne \fi}% - \xdef\jsc@gtmpa{\the\@tempdimb}% - \endgroup #1=\jsc@gtmpa\relax} - \expandafter\let\csname OT1/cmr/m/n/10\endcsname\relax - \expandafter\let\csname OMX/cmex/m/n/10\endcsname\relax - \let\jsc@get@external@font\get@external@font - \def\get@external@font{% - \jsc@preadjust@extract@font - \jsc@get@external@font} - \def\jsc@fstrunc#1{% - \edef\jsc@tmpa{\strip@pt#1}% - \expandafter\jsc@fstrunc@a\jsc@tmpa.****\@nil} - \def\jsc@fstrunc@a#1.#2#3#4#5#6\@nil{% - \if#5*\else - \edef\jsc@tmpa{#1% - \ifnum#2#3>\z@ .#2\ifnum#3>\z@ #3\fi\fi}% - \fi} - \def\jsc@preadjust@extract@font{% - \let\jsc@req@size\f@size - \dimen@\f@size\p@ \jsc@invscale\dimen@\jsc@magscale - \advance\dimen@.005pt\relax \jsc@fstrunc\dimen@ - \let\jsc@ref@size\jsc@tmpa - \let\f@size\jsc@ref@size} - \def\execute@size@function#1{% - \let\jsc@cref@size\f@size - \let\f@size\jsc@req@size - \csname s@fct@#1\endcsname} - \let\jsc@DeclareErrorFont\DeclareErrorFont - \def\DeclareErrorFont#1#2#3#4#5{% - \@tempdimc#5\p@ \@tempdimc\jsc@magscale\@tempdimc - \edef\jsc@tmpa{{#1}{#2}{#3}{#4}{\strip@pt\@tempdimc}} - \expandafter\jsc@DeclareErrorFont\jsc@tmpa} - \def\gen@sfcnt{% - \edef\mandatory@arg{\mandatory@arg\jsc@cref@size}% - \empty@sfcnt} - \def\genb@sfcnt{% - \edef\mandatory@arg{% - \mandatory@arg\expandafter\genb@x\jsc@cref@size..\@@}% - \empty@sfcnt} - \DeclareErrorFont{OT1}{cmr}{m}{n}{10} -\fi -% \end{macrocode} -% -% [2016-11-16] latex.ltx (ltspace.dtx)で定義されている |\smallskip| の, -% 単位 |pt| を |\jsc@mpt| に置き換えた |\jsc@smallskip| を定義します。 -% これは |\maketitle| で用いられます。 -% |\jsc@medskip| と |\jsc@bigskip| は必要ないのでコメントアウトしています。 -% -% \begin{macro}{\jsc@smallskip} -% \begin{macro}{\jsc@medskip} -% \begin{macro}{\jsc@bigskip} -% \begin{macrocode} -\def\jsc@smallskip{\vspace\jsc@smallskipamount} -%\def\jsc@medskip{\vspace\jsc@medskipamount} -%\def\jsc@bigskip{\vspace\jsc@bigskipamount} -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\jsc@smallskipamount} -% \begin{macro}{\jsc@medskipamount} -% \begin{macro}{\jsc@bigskipamount} -% \begin{macrocode} -\newskip\jsc@smallskipamount -\jsc@smallskipamount=3\jsc@mpt plus 1\jsc@mpt minus 1\jsc@mpt -%\newskip\jsc@medskipamount -%\jsc@medskipamount =6\jsc@mpt plus 2\jsc@mpt minus 2\jsc@mpt -%\newskip\jsc@bigskipamount -%\jsc@bigskipamoun =12\jsc@mpt plus 4\jsc@mpt minus 4\jsc@mpt -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% -% |\paperwidth|,|\paperheight|を|\mag|にあわせてスケールしておきます(☆)。 -% -% [2016-07-11] 新しく追加した|\stockwidth|,|\stockheight|も|\mag|にあわせて -% スケールします。 -% -% [2017-01-11] トンボオプションが指定されているとき「だけ」|\stockwidth|, -% |\stockheight|が定義されています。 -% -% \begin{macrocode} -\setlength\paperwidth{\inv@mag\paperwidth}% -\setlength\paperheight{\inv@mag\paperheight}% -\iftombow - \setlength\stockwidth{\inv@mag\stockwidth}% - \setlength\stockheight{\inv@mag\stockheight}% -\fi -% \end{macrocode} -% -% \paragraph{pagesizeスペシャルの出力} -% -% [2003-05-17] dvipdfm(x)のpagesizeスペシャルを出力します。 -% -% [2004-08-08] 今のdvipdfmxはdvips用スペシャルを理解するようなので外しました。 -% -% \begin{macrocode} -% \ifpapersize -% \setlength{\@tempdima}{\paperwidth} -% \setlength{\@tempdimb}{\paperheight} -% \iftombow -% \advance \@tempdima 2truein -% \advance \@tempdimb 2truein -% \fi -% \AtBeginDvi{\special{pdf: pagesize width \the\@tempdima\space height \the\@tempdimb}} -% \fi -% \end{macrocode} -% -% \section{和文フォントの変更} -% -% JISの1ポイントは0.3514mm(約1/72.28インチ), -% PostScriptの1ポイントは1/72インチですが, -% \TeX では1/72.27インチを1pt(ポイント), -% 1/72インチを1bp(ビッグポイント)と表します。 -% QuarkXPressなどのDTPソフトは標準で1/72インチを1ポイント -% としますが,以下ではすべて1/72.27インチを1ptとしています。 -% 1インチは定義により25.4mmです。 -% -% さらにややこしいことに,\pTeX (アスキーが日本語化した\TeX ) -% の公称10ポイントの和文フォント(\texttt{min10} など)は, -% 実寸(標準の字送り量)が9.62216ptです。 -% これは3.3818mm,写研の写植機の単位では13.527級, -% PostScriptの単位では9.5862ポイントになります。 -% \texttt{jis} フォントなどもこの値を踏襲しています。 -% -% この公称10ポイントのフォントを,ここでは13級に縮小して -% 使うことにします。そのためには,$13/13.527 = 0.961$ 倍 -% すればいいことになります(\texttt{min10} や \texttt{jis} の場合)。 -% 9.62216ポイントの和文フォントをさらに0.961倍したことにより, -% 約9.25ポイント, -% DTPで使う単位(1/72インチ)では9.21ポイントということになり, -% 公称10ポイントといっても実は9ポイント強になります。 -% -% [2018-02-04] 上記のとおりの「クラスファイルが意図する -% 和文スケール値($1\,\mathrm{zw} \div \textmc{要求サイズ}$)」を -% 表す実数値マクロ |\Cjascale| を定義します。このマクロが定義されて -% いる場合,OTFパッケージ(2018/02/01以降のバージョン)はこれに -% 従います。jsarticle, jsbook, jsreportでは, -% $9.62216\,\mathrm{pt} * 0.961 / 10\,\mathrm{pt} = 0.924690$ です。 -% -% \begin{macrocode} -% -%<*minijs> -%% min/goth -> jis/jisg (for pLaTeX only) -\ifnum\jis"2121="3000 \else -\@for\@tempa:=5,6,7,8,9,10,10.95,12,14.4,17.28,20.74,24.88\do{% - \expandafter\let\csname JY1/mc/m/n/\@tempa\endcsname\relax - \expandafter\let\csname JY1/gt/m/n/\@tempa\endcsname\relax - \expandafter\let\csname JT1/mc/m/n/\@tempa\endcsname\relax - \expandafter\let\csname JT1/gt/m/n/\@tempa\endcsname\relax -} -\def\Cjascale{0.924690} -\DeclareFontShape{JY1}{mc}{m}{n}{<-> s * [0.961] jis}{} -\DeclareFontShape{JY1}{gt}{m}{n}{<-> s * [0.961] jisg}{} -\DeclareFontShape{JT1}{mc}{m}{n}{<-> s * [0.961] tmin10}{} -\DeclareFontShape{JT1}{gt}{m}{n}{<-> s * [0.961] tgoth10}{} -\fi -% -%<*class> -%<*!jspf> -\def\Cjascale{0.924690} -\ifmingoth - \DeclareFontShape{\jsc@JYn}{mc}{m}{n}{<-> s * [0.961] \jsc@pfx@ min10}{} - \DeclareFontShape{\jsc@JYn}{gt}{m}{n}{<-> s * [0.961] \jsc@pfx@ goth10}{} - \DeclareFontShape{\jsc@JTn}{mc}{m}{n}{<-> s * [0.961] \jsc@pfx@ tmin10}{} - \DeclareFontShape{\jsc@JTn}{gt}{m}{n}{<-> s * [0.961] \jsc@pfx@ tgoth10}{} -\else - \ifjisfont - \DeclareFontShape{\jsc@JYn}{mc}{m}{n}{<-> s * [0.961] \jsc@pfx@ jis}{} - \DeclareFontShape{\jsc@JYn}{gt}{m}{n}{<-> s * [0.961] \jsc@pfx@ jisg}{} - \DeclareFontShape{\jsc@JTn}{mc}{m}{n}{<-> s * [0.961] \jsc@pfx@ tmin10}{} - \DeclareFontShape{\jsc@JTn}{gt}{m}{n}{<-> s * [0.961] \jsc@pfx@ tgoth10}{} - \else - \if@jsc@uplatex - \DeclareFontShape{JY2}{mc}{m}{n}{<-> s * [0.924690] upjisr-h}{} - \DeclareFontShape{JY2}{gt}{m}{n}{<-> s * [0.924690] upjisg-h}{} - \DeclareFontShape{JT2}{mc}{m}{n}{<-> s * [0.924690] upjisr-v}{} - \DeclareFontShape{JT2}{gt}{m}{n}{<-> s * [0.924690] upjisg-v}{} - \else - \DeclareFontShape{\jsc@JYn}{mc}{m}{n}{<-> s * [0.961] \jsc@pfx@ jis}{} - \DeclareFontShape{\jsc@JYn}{gt}{m}{n}{<-> s * [0.961] \jsc@pfx@ jisg}{} - \DeclareFontShape{\jsc@JTn}{mc}{m}{n}{<-> s * [0.961] \jsc@pfx@ tmin10}{} - \DeclareFontShape{\jsc@JTn}{gt}{m}{n}{<-> s * [0.961] \jsc@pfx@ tgoth10}{} - \fi - \fi -\fi -% -% \end{macrocode} -% -% 某学会誌では, -% 和文フォントをPostScriptの9ポイントにするために, -% $9/(9.62216*72/72.27) = 0.93885$ 倍します。 -% -% [2018-02-04] 和文スケール値 |\Cjascale| は -% $9.62216\,\mathrm{pt} * 0.93885 / 10\,\mathrm{pt} = 0.903375$ です。 -% -% \begin{macrocode} -%<*jspf> -\def\Cjascale{0.903375} -\ifmingoth - \DeclareFontShape{\jsc@JYn}{mc}{m}{n}{<-> s * [0.93885] \jsc@pfx@ min10}{} - \DeclareFontShape{\jsc@JYn}{gt}{m}{n}{<-> s * [0.93885] \jsc@pfx@ goth10}{} - \DeclareFontShape{\jsc@JTn}{mc}{m}{n}{<-> s * [0.93885] \jsc@pfx@ tmin10}{} - \DeclareFontShape{\jsc@JTn}{gt}{m}{n}{<-> s * [0.93885] \jsc@pfx@ tgoth10}{} -\else - \ifjisfont - \DeclareFontShape{\jsc@JYn}{mc}{m}{n}{<-> s * [0.93885] \jsc@pfx@ jis}{} - \DeclareFontShape{\jsc@JYn}{gt}{m}{n}{<-> s * [0.93885] \jsc@pfx@ jisg}{} - \DeclareFontShape{\jsc@JTn}{mc}{m}{n}{<-> s * [0.93885] \jsc@pfx@ tmin10}{} - \DeclareFontShape{\jsc@JTn}{gt}{m}{n}{<-> s * [0.93885] \jsc@pfx@ tgoth10}{} - \else - \if@jsc@uplatex - \DeclareFontShape{JY2}{mc}{m}{n}{<-> s * [0.903375] upjisr-h}{} - \DeclareFontShape{JY2}{gt}{m}{n}{<-> s * [0.903375] upjisg-h}{} - \DeclareFontShape{JT2}{mc}{m}{n}{<-> s * [0.903375] upjisr-v}{} - \DeclareFontShape{JT2}{gt}{m}{n}{<-> s * [0.903375] upjisg-v}{} - \else - \DeclareFontShape{\jsc@JYn}{mc}{m}{n}{<-> s * [0.93885] \jsc@pfx@ jis}{} - \DeclareFontShape{\jsc@JYn}{gt}{m}{n}{<-> s * [0.93885] \jsc@pfx@ jisg}{} - \DeclareFontShape{\jsc@JTn}{mc}{m}{n}{<-> s * [0.93885] \jsc@pfx@ tmin10}{} - \DeclareFontShape{\jsc@JTn}{gt}{m}{n}{<-> s * [0.93885] \jsc@pfx@ tgoth10}{} - \fi - \fi -\fi -% -% \end{macrocode} -% -% 和文でイタリック体,斜体,サンセリフ体, -% タイプライタ体の代わりにゴシック体を使うことにします。 -% -% [2003-03-16] イタリック体,斜体について,和文でゴシックを当てていましたが, -% 数学の定理環境などで多量のイタリック体を使うことがあり,ゴシックに -% すると黒々となってしまうという弊害がありました。 -% |amsthm| を使わない場合は定理の本文が明朝になるように |\newtheorem| -% 環境を手直ししてしのいでいましたが, -% \TeX が数学で多用されることを考えると,イタリック体に明朝体を -% 当てたほうがいいように思えてきましたので, -% イタリック体・斜体に対応する和文を明朝体に変えることにしました。 -% -% [2004-11-03] |\rmfamily| も和文対応にしました。 -% -% \begin{macrocode} -% \DeclareFontShape{\jsc@JYn}{mc}{bx}{n}{<->ssub*gt/m/n}{} % in \jsc@JYnmc -% \DeclareFontShape{\jsc@JYn}{gt}{bx}{n}{<->ssub*gt/m/n}{} % in \jsc@JYngt -\DeclareFontShape{\jsc@JYn}{mc}{m}{it}{<->ssub*mc/m/n}{} -\DeclareFontShape{\jsc@JYn}{mc}{m}{sl}{<->ssub*mc/m/n}{} -\DeclareFontShape{\jsc@JYn}{mc}{m}{sc}{<->ssub*mc/m/n}{} -\DeclareFontShape{\jsc@JYn}{gt}{m}{it}{<->ssub*gt/m/n}{} -\DeclareFontShape{\jsc@JYn}{gt}{m}{sl}{<->ssub*gt/m/n}{} -\DeclareFontShape{\jsc@JYn}{mc}{bx}{it}{<->ssub*gt/m/n}{} -\DeclareFontShape{\jsc@JYn}{mc}{bx}{sl}{<->ssub*gt/m/n}{} -% \DeclareFontShape{\jsc@JTn}{mc}{bx}{n}{<->ssub*gt/m/n}{} % in \jsc@JTnmc -% \DeclareFontShape{\jsc@JTn}{gt}{bx}{n}{<->ssub*gt/m/n}{} % in \jsc@JTngt -\DeclareFontShape{\jsc@JTn}{mc}{m}{it}{<->ssub*mc/m/n}{} -\DeclareFontShape{\jsc@JTn}{mc}{m}{sl}{<->ssub*mc/m/n}{} -\DeclareFontShape{\jsc@JTn}{mc}{m}{sc}{<->ssub*mc/m/n}{} -\DeclareFontShape{\jsc@JTn}{gt}{m}{it}{<->ssub*gt/m/n}{} -\DeclareFontShape{\jsc@JTn}{gt}{m}{sl}{<->ssub*gt/m/n}{} -\DeclareFontShape{\jsc@JTn}{mc}{bx}{it}{<->ssub*gt/m/n}{} -\DeclareFontShape{\jsc@JTn}{mc}{bx}{sl}{<->ssub*gt/m/n}{} -% \end{macrocode} -% -% [2020-02-02] \LaTeXe~2020-02-02でNFSSが拡張され, -% それに伴いオリジナルの |\rmfamily| などの定義が変化しました。 -% |\DeclareRobustCommand| で直接定義すると,これを上書きして -% NFSSの拡張部分を壊してしまいますので, -% 新たに提供されたフックにコードを挿入します。 -% 従来のコードも\LaTeXe~2019-10-01以前のために残してありますが, -% \texttt{mweights}パッケージ対策も施しました(forum:2763)。 -% -% [2020-10-04] \LaTeXe~2020-10-01では |\AddToHook| を利用します。 -% -% ^^A Note that |\AddToHook| is defined as follows: -% ^^A \begin{itemize} -% ^^A \item Format date 2020-02-02 or older: undefined -% ^^A \item Format date 2020-10-01 or newer: available -% ^^A \item ... under \texttt{latexrelease} rollback: defined but no-op -% ^^A \end{itemize} -% -% \begin{macrocode} -% -%<*class|minijs> -%% ad-hoc "relation font" -\@ifl@t@r\fmtversion{2020/10/01} - {\jsc@needsp@tchfalse}{\jsc@needsp@tchtrue} -\ifjsc@needsp@tch % --- for 2020-02-02 or older BEGIN -\ifx\@rmfamilyhook\@undefined % old -\DeclareRobustCommand\rmfamily - {\not@math@alphabet\rmfamily\mathrm - \romanfamily\rmdefault\kanjifamily\mcdefault\selectfont} -\DeclareRobustCommand\sffamily - {\not@math@alphabet\sffamily\mathsf - \romanfamily\sfdefault\kanjifamily\gtdefault\selectfont} -\DeclareRobustCommand\ttfamily - {\not@math@alphabet\ttfamily\mathtt - \romanfamily\ttdefault\kanjifamily\gtdefault\selectfont} -\AtBeginDocument{% - \ifx\mweights@init\@undefined\else % mweights.sty is loaded - % my definitions above should have been overwritten, recover it! - % \selectfont is executed twice but I don't care about speed... - \expandafter\g@addto@macro\csname rmfamily \endcsname - {\kanjifamily\mcdefault\selectfont}% - \expandafter\g@addto@macro\csname sffamily \endcsname - {\kanjifamily\gtdefault\selectfont}% - \expandafter\g@addto@macro\csname ttfamily \endcsname - {\kanjifamily\gtdefault\selectfont}% - \fi} -\else % 2020-02-02 -\g@addto@macro\@rmfamilyhook - {\prepare@family@series@update@kanji{mc}\mcdefault} -\g@addto@macro\@sffamilyhook - {\prepare@family@series@update@kanji{gt}\gtdefault} -\g@addto@macro\@ttfamilyhook - {\prepare@family@series@update@kanji{gt}\gtdefault} -\fi -\else % --- for 2020-02-02 or older END & for 2020-10-01 BEGIN -\AddToHook{rmfamily}% - {\prepare@family@series@update@kanji{mc}\mcdefault} -\AddToHook{sffamily}% - {\prepare@family@series@update@kanji{gt}\gtdefault} -\AddToHook{ttfamily}% - {\prepare@family@series@update@kanji{gt}\gtdefault} -\fi % --- for 2020-10-01 END -% -%<*class> -% \end{macrocode} -% -% \begin{macro}{\textmc} -% \begin{macro}{\textgt} -% -% 次のコマンドはイタリック補正なども含めて定義されていますが, -% 和文ではイタリック補正はあまり役に立たず, -% 欧文・和文間のグルーが入らないという副作用もありますので, -% 単純な定義に直します。 -% -% [2016-08-26] 和欧文間の |\xkanjiskip| が入らない問題は, -% plfonts.dtx v1.3i (2000/07/13) -% の時点で修正されていました。逆に,\texttt{amsmath}パッケージを -% 読み込んだ場合に,数式内の添字で文字サイズが変化するようになる -% はずのところが,変わらなくなっていましたので,修正しました。 -% -% [2017-09-03] Yue ZHANGさん作の\texttt{fixjfm}パッケージが -% |\documentclass| より前に |\RequirePackage{fixjfm}| として -% 読み込まれていた場合には,その定義を優先するため, -% このクラスファイルでは再定義しません。 -% -% [2017-09-19] 2010年の\pTeX の修正で,イタリック補正と和欧文間の -% |\xkanjiskip| の衝突が起きなくなっていますから,もうここにある -% ような単純化は必要ありません。ただし,このクラスファイルが -% 古い\TeX 環境で利用される可能性も捨てきれないので,とりあえず -% 残しておきます。 -% -% \begin{macrocode} -\ifx\DeclareFixJFMCJKTextFontCommand\@undefined -\DeclareRobustCommand\textmc[1]{% - \relax\ifmmode \expandafter\nfss@text \fi{\mcfamily #1}} -\DeclareRobustCommand\textgt[1]{% - \relax\ifmmode \expandafter\nfss@text \fi{\gtfamily #1}} -\fi -% \end{macrocode} -% \end{macro} -% \end{macro} -% -% 新クラスでも \texttt{disablejfam} オプションを与えなければ数式内で -% 日本語が使えるようにしました。 -% -% さらに2005/12/01版のLaTeXに対応したpLaTeXに対応しました -% (Thanks: ymtさん)。 -% -% [2010-03-14] |http://oku.edu.mie-u.ac.jp/tex/mod/forum/discuss.php?d=411| -% での山本さんのご指摘に従って修正しました。 -% -% \begin{macrocode} -\def\reDeclareMathAlphabet#1#2#3{% - \edef\@tempa{\expandafter\@gobble\string#2}% - \edef\@tempb{\expandafter\@gobble\string#3}% - \edef\@tempc{\string @\expandafter\@gobbletwo\string#2}% - \ifx\@tempc\@tempa% - \edef\@tempa{\expandafter\@gobbletwo\string#2}% - \edef\@tempb{\expandafter\@gobbletwo\string#3}% - \fi - \begingroup - \let\protect\noexpand - \def\@tempaa{\relax}% - \expandafter\ifx\csname RDMAorg@\@tempa\endcsname\relax - \edef\@tempaa{\expandafter\def\expandafter\noexpand% - \csname RDMAorg@\@tempa\endcsname{% - \expandafter\noexpand\csname\@tempa\endcsname}}% - \fi - \def\@tempbb{\relax}% - \expandafter\ifx\csname RDMAorg@\@tempb\endcsname\relax - \edef\@tempbb{\expandafter\def\expandafter\noexpand% - \csname RDMAorg@\@tempb\endcsname{% - \expandafter\noexpand\csname\@tempb\endcsname}}% - \fi - \edef\@tempc{\@tempaa\@tempbb}% - \expandafter\endgroup\@tempc% - \edef#1{\noexpand\protect\expandafter\noexpand\csname% - \expandafter\@gobble\string#1\space\space\endcsname}% - \expandafter\edef\csname\expandafter\@gobble\string#1\space\space\endcsname% - {\noexpand\DualLang@mathalph@bet% - {\expandafter\noexpand\csname RDMAorg@\@tempa\endcsname}% - {\expandafter\noexpand\csname RDMAorg@\@tempb\endcsname}% - }% -} -\@onlypreamble\reDeclareMathAlphabet -\def\DualLang@mathalph@bet#1#2{% - \relax\ifmmode - \ifx\math@bgroup\bgroup% 2e normal style (\mathrm{...}) - \bgroup\let\DualLang@Mfontsw\DLMfontsw@standard - \else - \ifx\math@bgroup\relax% 2e two letter style (\rm->\mathrm) - \let\DualLang@Mfontsw\DLMfontsw@oldstyle - \else - \ifx\math@bgroup\@empty% 2.09 oldlfont style ({\mathrm ...}) - \let\DualLang@Mfontsw\DLMfontsw@oldlfont - \else% panic! assume 2e normal style - \bgroup\let\DualLang@Mfontsw\DLMfontsw@standard - \fi - \fi - \fi - \else - \let\DualLang@Mfontsw\@firstoftwo - \fi - \DualLang@Mfontsw{#1}{#2}% -} -\def\DLMfontsw@standard#1#2#3{#1{#2{#3}}\egroup} -\def\DLMfontsw@oldstyle#1#2{#1\relax\@fontswitch\relax{#2}} -\def\DLMfontsw@oldlfont#1#2{#1\relax#2\relax} -\if@enablejfam - \DeclareSymbolFont{mincho}{\jsc@JYn}{mc}{m}{n} - \DeclareSymbolFontAlphabet{\mathmc}{mincho} - \SetSymbolFont{mincho}{bold}{\jsc@JYn}{gt}{m}{n} - \jfam\symmincho - \DeclareMathAlphabet{\mathgt}{\jsc@JYn}{gt}{m}{n} - \AtBeginDocument{% - \reDeclareMathAlphabet{\mathrm}{\@mathrm}{\@mathmc} - \reDeclareMathAlphabet{\mathbf}{\@mathbf}{\@mathgt}} -\fi -% \end{macrocode} -% -% \begin{macro}{\textsterling} -% -% これは |\pounds| 命令で実際に呼び出される文字です。 -% 従来からのOT1エンコーディングでは |\$| のイタリック体が |\pounds| -% なので \texttt{cmti} が使われていましたが, -% 1994年春からは \texttt{cmu}(upright italic,直立イタリック体) -% に変わりました。 -% しかし \texttt{cmu} はその性格からして実験的なものであり, -% |\pounds| 以外で使われるとは思えないので, -% ここでは \texttt{cmti} に戻してしまいます。 -% -% [2003-08-20] Computer Modernフォントを使う機会も減り,T1エンコーディング -% が一般的になってきました。この定義はもうあまり意味がないので消します。 -% -% \begin{macrocode} -% \DeclareTextCommand{\textsterling}{OT1}{{\itshape\char`\$}} -% \end{macrocode} -% \end{macro} -% -% 禁則パラメータも若干修正します。 -% -% アスキーの \texttt{kinsoku.dtx} では次の三つが5000に設定されています。 -% これを10000に再設定します。 -% -% \begin{macrocode} -\prebreakpenalty\jis"2147=10000 % 5000 ’ -\postbreakpenalty\jis"2148=10000 % 5000 “ -\prebreakpenalty\jis"2149=10000 % 5000 ” -% \end{macrocode} -% -% 「\TeX!」「〒515」の記号と数字の間に四分アキが入らないようにします。 -% -% \begin{macrocode} -\inhibitxspcode`!=1 -\inhibitxspcode`〒=2 -% \end{macrocode} -% -% 以前の版では,たとえば「ベース名.拡張子」のように和文文字で書いたとき, -% ピリオドの後に四分アキが入らないようにするために -% \begin{macrocode} -% \xspcode`.=0 -% \end{macrocode} -% のようにしていました。ただ,「Foo Inc.は……」のように書いたときにも -% スペースが入らなくなるので,ちょっとまずい修正だったかもしれません。 -% 元に戻しました。 -% -% とりあえず「|ベース名.\mbox{}拡張子|」と書いてください。 -% -% 「CやC++では……」と書くと,C++の直後に四分アキが入らないのでバランスが悪くなります。 -% 四分アキが入るようにしました。\% の両側も同じです。 -% -% \begin{macrocode} -\xspcode`+=3 -\xspcode`\%=3 -% \end{macrocode} -% -% これ以外にT1エンコーディングで80〜ffの文字もすべて欧文文字ですので, -% 両側の和文文字との間にスペースが入らなければなりません。 -% -% \begin{macrocode} -\xspcode`^^80=3 -\xspcode`^^81=3 -\xspcode`^^82=3 -\xspcode`^^83=3 -\xspcode`^^84=3 -\xspcode`^^85=3 -\xspcode`^^86=3 -\xspcode`^^87=3 -\xspcode`^^88=3 -\xspcode`^^89=3 -\xspcode`^^8a=3 -\xspcode`^^8b=3 -\xspcode`^^8c=3 -\xspcode`^^8d=3 -\xspcode`^^8e=3 -\xspcode`^^8f=3 -\xspcode`^^90=3 -\xspcode`^^91=3 -\xspcode`^^92=3 -\xspcode`^^93=3 -\xspcode`^^94=3 -\xspcode`^^95=3 -\xspcode`^^96=3 -\xspcode`^^97=3 -\xspcode`^^98=3 -\xspcode`^^99=3 -\xspcode`^^9a=3 -\xspcode`^^9b=3 -\xspcode`^^9c=3 -\xspcode`^^9d=3 -\xspcode`^^9e=3 -\xspcode`^^9f=3 -\xspcode`^^a0=3 -\xspcode`^^a1=3 -\xspcode`^^a2=3 -\xspcode`^^a3=3 -\xspcode`^^a4=3 -\xspcode`^^a5=3 -\xspcode`^^a6=3 -\xspcode`^^a7=3 -\xspcode`^^a8=3 -\xspcode`^^a9=3 -\xspcode`^^aa=3 -\xspcode`^^ab=3 -\xspcode`^^ac=3 -\xspcode`^^ad=3 -\xspcode`^^ae=3 -\xspcode`^^af=3 -\xspcode`^^b0=3 -\xspcode`^^b1=3 -\xspcode`^^b2=3 -\xspcode`^^b3=3 -\xspcode`^^b4=3 -\xspcode`^^b5=3 -\xspcode`^^b6=3 -\xspcode`^^b7=3 -\xspcode`^^b8=3 -\xspcode`^^b9=3 -\xspcode`^^ba=3 -\xspcode`^^bb=3 -\xspcode`^^bc=3 -\xspcode`^^bd=3 -\xspcode`^^be=3 -\xspcode`^^bf=3 -\xspcode`^^c0=3 -\xspcode`^^c1=3 -\xspcode`^^c2=3 -\xspcode`^^c3=3 -\xspcode`^^c4=3 -\xspcode`^^c5=3 -\xspcode`^^c6=3 -\xspcode`^^c7=3 -\xspcode`^^c8=3 -\xspcode`^^c9=3 -\xspcode`^^ca=3 -\xspcode`^^cb=3 -\xspcode`^^cc=3 -\xspcode`^^cd=3 -\xspcode`^^ce=3 -\xspcode`^^cf=3 -\xspcode`^^d0=3 -\xspcode`^^d1=3 -\xspcode`^^d2=3 -\xspcode`^^d3=3 -\xspcode`^^d4=3 -\xspcode`^^d5=3 -\xspcode`^^d6=3 -\xspcode`^^d7=3 -\xspcode`^^d8=3 -\xspcode`^^d9=3 -\xspcode`^^da=3 -\xspcode`^^db=3 -\xspcode`^^dc=3 -\xspcode`^^dd=3 -\xspcode`^^de=3 -\xspcode`^^df=3 -\xspcode`^^e0=3 -\xspcode`^^e1=3 -\xspcode`^^e2=3 -\xspcode`^^e3=3 -\xspcode`^^e4=3 -\xspcode`^^e5=3 -\xspcode`^^e6=3 -\xspcode`^^e7=3 -\xspcode`^^e8=3 -\xspcode`^^e9=3 -\xspcode`^^ea=3 -\xspcode`^^eb=3 -\xspcode`^^ec=3 -\xspcode`^^ed=3 -\xspcode`^^ee=3 -\xspcode`^^ef=3 -\xspcode`^^f0=3 -\xspcode`^^f1=3 -\xspcode`^^f2=3 -\xspcode`^^f3=3 -\xspcode`^^f4=3 -\xspcode`^^f5=3 -\xspcode`^^f6=3 -\xspcode`^^f7=3 -\xspcode`^^f8=3 -\xspcode`^^f9=3 -\xspcode`^^fa=3 -\xspcode`^^fb=3 -\xspcode`^^fc=3 -\xspcode`^^fd=3 -\xspcode`^^fe=3 -\xspcode`^^ff=3 -% \end{macrocode} -% -% \begin{macro}{\@} -% -% 欧文といえば,\LaTeX の |\def\@{\spacefactor\@m}| という定義(|\@m| は1000) -% では |I watch TV\@.| と書くと V とピリオドのペアカーニングが効かなくなります。 -% そこで,次のような定義に直し,|I watch TV.\@| と書くことにします。 -% -% [2016-07-14] 2015-01-01の\LaTeX で,auxiliary filesに書き出されたときに -% スペースが食われないようにする修正が入りました。これに合わせて |{}| を補いました。 -% -% \begin{macrocode} -\def\@{\spacefactor3000{}} -% \end{macrocode} -% \end{macro} -% -% \section{フォントサイズ} -% -% フォントサイズを変える命令(|\normalsize|,|\small| など) -% の実際の挙動の設定は,三つの引数をとる命令 |\@setfontsize| を使って, -% たとえば -% \begin{quote} -% |\@setfontsize{\normalsize}{10}{16}| -% \end{quote} -% のようにして行います。これは -% \begin{quote} -% |\normalsize| は10ポイントのフォントを使い,行送りは16ポイントである -% \end{quote} -% という意味です。 -% ただし,処理を速くするため, -% 以下では10と同義の\LaTeX の内部命令 |\@xpt| を使っています。 -% この |\@xpt| の類は次のものがあり,\LaTeX 本体で定義されています。 -%\begin{verbatim} -% \@vpt 5 \@vipt 6 \@viipt 7 -% \@viiipt 8 \@ixpt 9 \@xpt 10 -% \@xipt 10.95 \@xiipt 12 \@xivpt 14.4 -%\end{verbatim} -% -% \begin{macro}{\@setfontsize} -% -% ここでは |\@setfontsize| の定義を少々変更して, -% 段落の字下げ |\parindent|, -% 和文文字間のスペース |\kanjiskip|, -% 和文・欧文間のスペース |\xkanjiskip| を変更しています。 -% -% |\kanjiskip| は\pLaTeXe で |0pt plus .4pt minus .5pt| に設定していますが, -% これはそもそも文字サイズの変更に応じて変わるべきものです。 -% それに,プラスになったりマイナスになったりするのは, -% 追い出しと追い込みの混在が生じ,統一性を欠きます。 -% なるべく追い出しになるようにプラスの値だけにしたいところですが, -% ごくわずかなマイナスは許すことにしました。 -% -% |\xkanjiskip| については,四分つまり全角の1/4を標準として, -% 追い出すために三分あるいは二分まで延ばすのが一般的ですが, -% ここではTimesやPalatinoのスペースがほぼ四分であることに着目して, -% これに一致させています。これなら書くときにスペースを空けても -% 空けなくても同じ出力になります。 -% -% |\parindent| については,0(以下)でなければ全角幅(1zw)に直します。 -% -% [2008-02-18] |english| オプションで |\parindent| を 1em にしました。 -% -% \begin{macrocode} -% -%<*class|minijs> -%% \@setfontsize with \parindent and \(x)kanjiskip settings -\def\@setfontsize#1#2#3{% -% \@nomath#1% - \ifx\protect\@typeset@protect - \let\@currsize#1% - \fi - \fontsize{#2}{#3}\selectfont - \ifdim\parindent>\z@ -% \if@english -% \parindent=1em -% \else - \parindent=1zw -% \fi - \fi - \kanjiskip=0zw plus .1zw minus .01zw -% \ifdim\xkanjiskip>\z@ -% \if@slide \xkanjiskip=0.1em \else - \xkanjiskip=0.25em plus 0.15em minus 0.06em -% \fi -% \fi -} -% -%<*class> -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\jsc@setfontsize} -% クラスファイルの内部では,拡大率も考慮した |\jsc@setfontsize| を -% |\@setfontsize| の変わりに用いることにします。 -% \begin{macrocode} -\def\jsc@setfontsize#1#2#3{% - \@setfontsize#1{#2\jsc@mpt}{#3\jsc@mpt}} -% \end{macrocode} -% \end{macro} -% -% これらのグルーをもってしても行分割ができない場合は, -% |\emergencystretch| に訴えます。 -% -% \begin{macrocode} -\emergencystretch 3zw -% \end{macrocode} -% -% \begin{macro}{\ifnarrowbaselines} -% \begin{macro}{\narrowbaselines} -% \begin{macro}{\widebaselines} -% -% 欧文用に行間を狭くする論理変数と,それを真・偽にするためのコマンドです。 -% -% [2003-06-30] 数式に入るところで |\narrowbaselines| -% を実行しているので |\abovedisplayskip| 等が初期化 -% されてしまうというshintokさんのご指摘に対して, -% しっぽ愛好家さんが次の修正を教えてくださいました。 -% -% [2008-02-18] |english| オプションで最初の段落のインデントをしないようにしました。 -% -% TODO: Hasumiさん [qa:54539] のご指摘は考慮中です。 -% -% \begin{macrocode} -\newif\ifnarrowbaselines -\if@english - \narrowbaselinestrue -\fi -\def\narrowbaselines{% - \narrowbaselinestrue - \skip0=\abovedisplayskip - \skip2=\abovedisplayshortskip - \skip4=\belowdisplayskip - \skip6=\belowdisplayshortskip - \@currsize\selectfont - \abovedisplayskip=\skip0 - \abovedisplayshortskip=\skip2 - \belowdisplayskip=\skip4 - \belowdisplayshortskip=\skip6\relax} -\def\widebaselines{\narrowbaselinesfalse\@currsize\selectfont} -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\normalsize} -% -% 標準のフォントサイズと行送りを選ぶコマンドです。 -% -% 本文10ポイントのときの行送りは, -% 欧文の標準クラスファイルでは12ポイント, -% アスキーの和文クラスファイルでは15ポイントになっていますが, -% ここでは16ポイントにしました。 -% ただし |\narrowbaselines| で欧文用の12ポイントになります。 -% -% 公称10ポイントの和文フォントが約9.25ポイント -% (アスキーのものの0.961倍)であることもあり, -% 行送りがかなりゆったりとしたと思います。 -% 実際,$16/9.25 \approx 1.73$ であり, -% 和文の推奨値の一つ「二分四分」(1.75) -% に近づきました。 -% -% \begin{macrocode} -\renewcommand{\normalsize}{% - \ifnarrowbaselines - \jsc@setfontsize\normalsize\@xpt\@xiipt - \else - \jsc@setfontsize\normalsize\@xpt{\n@baseline}% - \fi -% \end{macrocode} -% -% 数式の上のアキ(|\abovedisplayskip|), -% 短い数式の上のアキ(|\abovedisplayshortskip|), -% 数式の下のアキ(|\belowdisplayshortskip|)の設定です。 -% -% [2003-02-16] ちょっと変えました。 -% -% [2009-08-26] \TeX\ Q\,\&\,A 52569から始まる議論について逡巡して -% いましたが,結局,微調節してみることにしました。 -% -% \begin{macrocode} - \abovedisplayskip 11\jsc@mpt \@plus3\jsc@mpt \@minus4\jsc@mpt - \abovedisplayshortskip \z@ \@plus3\jsc@mpt - \belowdisplayskip 9\jsc@mpt \@plus3\jsc@mpt \@minus4\jsc@mpt - \belowdisplayshortskip \belowdisplayskip -% \end{macrocode} -% -% 最後に,リスト環境のトップレベルのパラメータ |\@listI| を, -% |\@listi| にコピーしておきます。|\@listI| の設定は後で出てきます。 -% -% \begin{macrocode} - \let\@listi\@listI} -% \end{macrocode} -% -% ここで実際に標準フォントサイズで初期化します。 -% -% \begin{macrocode} -% -%<*class|minijs> -%% initialize -\normalsize -% -%<*class> -% \end{macrocode} -% -% \end{macro} -% -% \begin{macro}{\Cht} -% \begin{macro}{\Cdp} -% \begin{macro}{\Cwd} -% \begin{macro}{\Cvs} -% \begin{macro}{\Chs} -% -% 基準となる長さの設定をします。 -% \pLaTeXe カーネル(\texttt{plfonts.dtx})で宣言されている -% パラメータに実際の値を設定します。 -% たとえば |\Cwd| は |\normalfont| の全角幅(1zw)です。 -% -% [2017-08-31] 基準とする文字を「全角空白」(EUCコード\texttt{0xA1A1})から -% 「漢」(JISコード\texttt{0x3441})へ変更しました。 -% -% [2017-09-19] 内部的に使った |\box0| を空にします。 -% \begin{macrocode} -\setbox0\hbox{\char\jis"3441}% -\setlength\Cht{\ht0} -\setlength\Cdp{\dp0} -\setlength\Cwd{\wd0} -\setlength\Cvs{\baselineskip} -\setlength\Chs{\wd0} -\setbox0=\box\voidb@x -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\small} -% -% |\small| も |\normalsize| と同様に設定します。 -% 行送りは,|\normalsize| が16ポイントなら, -% 割合からすれば$16 \times 0.9 = 14.4$ポイントになりますが, -% |\small| の使われ方を考えて,ここでは和文13ポイント, -% 欧文11ポイントとします。 -% また,|\topsep| と |\parsep| は,元はそれぞれ$4 \pm 2$,$2 \pm 1$ -% ポイントでしたが,ここではゼロ(|\z@|)にしました。 -% -% \begin{macrocode} -\newcommand{\small}{% - \ifnarrowbaselines -% \jsc@setfontsize\small\@ixpt{11}% -% \jsc@setfontsize\small{8.8888}{11}% - \else -% \jsc@setfontsize\small\@ixpt{13}% -% \jsc@setfontsize\small{8.8888}{13.2418}% - \fi - \abovedisplayskip 9\jsc@mpt \@plus3\jsc@mpt \@minus4\jsc@mpt - \abovedisplayshortskip \z@ \@plus3\jsc@mpt - \belowdisplayskip \abovedisplayskip - \belowdisplayshortskip \belowdisplayskip - \def\@listi{\leftmargin\leftmargini - \topsep \z@ - \parsep \z@ - \itemsep \parsep}} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\footnotesize} -% -% |\footnotesize| も同様です。 -% |\topsep| と |\parsep| は,元はそれぞれ$3 \pm 1$,$2 \pm 1$ -% ポイントでしたが,ここではゼロ(|\z@|)にしました。 -% -% \begin{macrocode} -\newcommand{\footnotesize}{% - \ifnarrowbaselines -% \jsc@setfontsize\footnotesize\@viiipt{9.5}% -% \jsc@setfontsize\footnotesize{8.8888}{11}% - \else -% \jsc@setfontsize\footnotesize\@viiipt{11}% -% \jsc@setfontsize\footnotesize{8.8888}{13.2418}% - \fi - \abovedisplayskip 6\jsc@mpt \@plus2\jsc@mpt \@minus3\jsc@mpt - \abovedisplayshortskip \z@ \@plus2\jsc@mpt - \belowdisplayskip \abovedisplayskip - \belowdisplayshortskip \belowdisplayskip - \def\@listi{\leftmargin\leftmargini - \topsep \z@ - \parsep \z@ - \itemsep \parsep}} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\scriptsize} -% \begin{macro}{\tiny} -% \begin{macro}{\large} -% \begin{macro}{\Large} -% \begin{macro}{\LARGE} -% \begin{macro}{\huge} -% \begin{macro}{\Huge} -% \begin{macro}{\HUGE} -% -% それ以外のサイズは,本文に使うことがないので, -% 単にフォントサイズと行送りだけ変更します。 -% 特に注意すべきは |\large| で, -% これは二段組のときに節見出しのフォントとして使い, -% 行送りを |\normalsize| と同じにすることによって, -% 節見出しが複数行にわたっても段間で行が揃うようにします。 -% -% [2004-11-03] |\HUGE| を追加。 -% -% \begin{macrocode} -\newcommand{\scriptsize}{\jsc@setfontsize\scriptsize\@viipt\@viiipt} -\newcommand{\tiny}{\jsc@setfontsize\tiny\@vpt\@vipt} -\if@twocolumn -% \newcommand{\large}{\jsc@setfontsize\large\@xiipt{\n@baseline}} -% \newcommand{\large}{\jsc@setfontsize\large{11.111}{\n@baseline}} -\else -% \newcommand{\large}{\jsc@setfontsize\large\@xiipt{17}} -% \newcommand{\large}{\jsc@setfontsize\large{11.111}{17}} -\fi -%\newcommand{\Large}{\jsc@setfontsize\Large\@xivpt{21}} -%\newcommand{\Large}{\jsc@setfontsize\Large{12.222}{21}} -\newcommand{\LARGE}{\jsc@setfontsize\LARGE\@xviipt{25}} -\newcommand{\huge}{\jsc@setfontsize\huge\@xxpt{28}} -\newcommand{\Huge}{\jsc@setfontsize\Huge\@xxvpt{33}} -\newcommand{\HUGE}{\jsc@setfontsize\HUGE{30}{40}} -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% -% 別行立て数式の中では |\narrowbaselines| にします。 -% 和文の行送りのままでは,行列や場合分けの行送り, -% 連分数の高さなどが不釣合いに大きくなるためです。 -% -% 本文中の数式の中では |\narrowbaselines| にしていません。 -% 本文中ではなるべく行送りが変わるような大きいものを使わず, -% 行列は |amsmath| の |smallmatrix| 環境を使うのがいいでしょう。 -% -% \begin{macrocode} -\everydisplay=\expandafter{\the\everydisplay \narrowbaselines} -% \end{macrocode} -% -% しかし,このおかげで別行数式の上下のスペースが少し違ってしまいました。 -% とりあえず |amsmath| の |equation| 関係は |okumacro| のほうで逃げていますが, -% もっとうまい逃げ道があればお教えください。 -% -% 見出し用のフォントは |\bfseries| 固定ではなく,|\headfont| -% という命令で定めることにします。 -% これは太ゴシックが使えるときは |\sffamily| |\bfseries| -% でいいと思いますが,通常の中ゴシックでは単に |\sffamily| -% だけのほうがよさそうです。 -% 『p\LaTeXe 美文書作成入門』(1997年)では |\sffamily| -% |\fontseries{sbc}| として新ゴMと合わせましたが, -% |\fontseries{sbc}| はちょっと幅が狭いように感じました。 -% -% \begin{macrocode} -% \newcommand{\headfont}{\bfseries} -\newcommand{\headfont}{\gtfamily\sffamily} -% \newcommand{\headfont}{\sffamily\fontseries{sbc}\selectfont} -% \end{macrocode} -% -% \section{レイアウト} -% -% \paragraph{二段組} -% -% \begin{macro}{\columnsep} -% \begin{macro}{\columnseprule} -% -% |\columnsep| は二段組のときの左右の段間の幅です。 -% 元は10ptでしたが,2zwにしました。 -% このスペースの中央に |\columnseprule| の幅の罫線が引かれます。 -% -% \begin{macrocode} -%\setlength\columnsep{2zw} -%\setlength\columnsep{28truebp} -\setlength\columnseprule{\z@} -% \end{macrocode} -% \end{macro} -% \end{macro} -% -% \paragraph{段落} -% -% \begin{macro}{\lineskip} -% \begin{macro}{\normallineskip} -% \begin{macro}{\lineskiplimit} -% \begin{macro}{\normallineskiplimit} -% -% 上下の行の文字が |\lineskiplimit| より接近したら, -% |\lineskip| より近づかないようにします。 -% 元は0ptでしたが1ptに変更しました。 -% \texttt{normal...} の付いた方は保存用です。 -% -% \begin{macrocode} -\setlength\lineskip{1\jsc@mpt} -\setlength\normallineskip{1\jsc@mpt} -\setlength\lineskiplimit{1\jsc@mpt} -\setlength\normallineskiplimit{1\jsc@mpt} -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\baselinestretch} -% -% 実際の行送りが |\baselineskip| の何倍かを表すマクロです。たとえば -% \begin{quote} -% |\renewcommand{\baselinestretch}{2}| -% \end{quote} -% とすると,行送りが通常の2倍になります。ただし, -% これを設定すると,たとえ |\baselineskip| が伸縮するように -% 設定しても,行送りの伸縮ができなくなります。 -% 行送りの伸縮はしないのが一般的です。 -% -% \begin{macrocode} -\renewcommand{\baselinestretch}{} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\parskip} -% \begin{macro}{\parindent} -% -% |\parskip| は段落間の追加スペースです。 -% 元は 0pt plus 1pt になっていましたが,ここではゼロにしました。 -% |\parindent| は段落の先頭の字下げ幅です。 -% -% \begin{macrocode} -\setlength\parskip{\z@} -\if@slide - \setlength\parindent{0zw} -\else - \setlength\parindent{1zw} -\fi -% \end{macrocode} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\@lowpenalty} -% \begin{macro}{\@medpenalty} -% \begin{macro}{\@highpenalty} -% -% |\nopagebreak|,|\nolinebreak| は引数に応じて次のペナルティ値 -% のうちどれかを選ぶようになっています。 -% ここはオリジナル通りです。 -% -% \begin{macrocode} -\@lowpenalty 51 -\@medpenalty 151 -\@highpenalty 301 -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\interlinepenalty} -% -% 段落中の改ページのペナルティです。デフォルトは 0 です。 -% -% \begin{macrocode} -% \interlinepenalty 0 -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\brokenpenalty} -% -% ページの最後の行がハイフンで終わる際のペナルティです。 -% デフォルトは100です。 -% -% \begin{macrocode} -% \brokenpenalty 100 -% \end{macrocode} -% \end{macro} -% -% \subsection{ページレイアウト} -% -% \paragraph{縦方向のスペース} -% -% \begin{macro}{\headheight} -% \begin{macro}{\topskip} -% -% |\topskip| は本文領域上端と本文1行目のベースラインとの距離です。 -% あまりぎりぎりの値にすると,本文中に $\int$ のような高い文字が -% 入ったときに1行目のベースラインが他のページより下がってしまいます。 -% ここでは本文の公称フォントサイズ(10pt)にします。 -% -% [2003-06-26] |\headheight| はヘッダの高さで, -% 元は12ptでしたが,新ドキュメントクラスでは |\topskip| -% と等しくしていました。ところが,|fancyhdr| パッケージ -% で |\headheight| が小さいとおかしいことになるようです -% ので,2倍に増やしました。代わりに,版面の上下揃えの -% 計算では |\headheight| ではなく |\topskip| を使う -% ことにしました。 -% -% [2016-08-17] 圏点やルビが一行目に来た場合に下がるのを防ぐた -% め,|\topskip| を10ptから1.38zwに増やしました。 -% |\headheight| は従来と同じ20ptのままとします。 -% -% \begin{macrocode} -\setlength\topskip{1.38zw}%% from 10\jsc@mpt (2016-08-17) -\if@slide - \setlength\headheight{0\jsc@mpt} -\else - \setlength\headheight{20\jsc@mpt}%% from 2\topskip (2016-08-17); from \topskip (2003-06-26) -\fi -% \end{macrocode} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\footskip} -% -% |\footskip| は本文領域下端とフッタ下端との距離です。 -% 標準クラスファイルでは,book で0.35in(約8.89mm), -% book 以外で30pt(約10.54mm)となっていましたが, -% ここではA4判のときちょうど1cmとなるように, -% |\paperheight| の0.03367倍(最小 |\baselineskip|)としました。 -% 書籍については,フッタは使わないことにして,ゼロにしました。 -% -% \begin{macrocode} -%<*article|kiyou> -\if@slide - \setlength\footskip{0pt} -\else - \setlength\footskip{0.03367\paperheight} - \ifdim\footskip<\baselineskip - \setlength\footskip{\baselineskip} - \fi -\fi -% -%\setlength\footskip{9\jsc@mmm} -%<*book> -\if@report - \setlength\footskip{0.03367\paperheight} - \ifdim\footskip<\baselineskip - \setlength\footskip{\baselineskip} - \fi -\else - \setlength\footskip{0pt} -\fi -% -%<*report> -\setlength\footskip{0.03367\paperheight} -\ifdim\footskip<\baselineskip - \setlength\footskip{\baselineskip} -\fi -% -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\headsep} -% -% |\headsep| はヘッダ下端と本文領域上端との距離です。 -% 元は book で18pt(約6.33mm), -% それ以外で25pt(約8.79mm)になっていました。 -% ここでは article は |\footskip| $-$ |\topskip| としました。 -% -% [2016-10-08] article の \texttt{slide} のとき, -% および book の非 \texttt{report} と kiyou のときに |\headsep| を -% 減らしそこねていたのを修正しました(2016-08-17での修正漏れ)。 -% -% \begin{macrocode} -%<*article> -\if@slide - \setlength\headsep{0\jsc@mpt} - \addtolength\headsep{-\topskip}%% added (2016-10-08) - \addtolength\headsep{10\jsc@mpt}%% added (2016-10-08) -\else - \setlength\headsep{\footskip} - \addtolength\headsep{-\topskip} -\fi -%
    -%<*book> -\if@report - \setlength\headsep{\footskip} - \addtolength\headsep{-\topskip} -\else - \setlength\headsep{6\jsc@mmm} - \addtolength\headsep{-\topskip}%% added (2016-10-08) - \addtolength\headsep{10\jsc@mpt}%% added (2016-10-08) -\fi -% -%<*report> -\setlength\headsep{\footskip} -\addtolength\headsep{-\topskip} -% -%<*jspf> -\setlength\headsep{9\jsc@mmm} -\addtolength\headsep{-\topskip} -% -%<*kiyou> -\setlength\headheight{0\jsc@mpt} -\setlength\headsep{0\jsc@mpt} -\addtolength\headsep{-\topskip}%% added (2016-10-08) -\addtolength\headsep{10\jsc@mpt}%% added (2016-10-08) -% -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\maxdepth} -% -% |\maxdepth| は本文最下行の最大の深さで, -% plain \TeX や\LaTeX~2.09では4ptに固定でした。 -% \LaTeX2e では |\maxdepth| $+$ |\topskip| を本文フォントサイズ -% の1.5倍にしたいのですが,|\topskip| は本文フォントサイズ -% (ここでは10pt)に等しいので,結局 |\maxdepth| は |\topskip| -% の半分の値(具体的には5pt)にします。 -% -% \begin{macrocode} -\setlength\maxdepth{.5\topskip} -% \end{macrocode} -% \end{macro} -% -% \paragraph{本文の幅と高さ} -% -% \begin{macro}{\fullwidth} -% -% 本文の幅が全角40文字を超えると読みにくくなります。 -% そこで,書籍の場合に限って, -% 紙の幅が広いときは外側のマージンを余分にとって全角40文字に押え, -% ヘッダやフッタは本文領域より広く取ることにします。 -% このときヘッダやフッタの幅を表す |\fullwidth| という長さを定義します。 -% -% \begin{macrocode} -\newdimen\fullwidth -% \end{macrocode} -% -% この |\fullwidth| は article では紙幅 |\paperwidth|の0.76倍を超えない -% 全角幅の整数倍(二段組では全角幅の偶数倍)にします。0.76倍という数値は -% A4縦置きの場合に紙幅から約2インチを引いた値になるように選びました。 -% book では紙幅から36ミリを引いた値にしました。 -% -% \begin{macro}{\textwidth} -% -% 書籍以外では本文領域の幅 |\textwidth| は |\fullwidth| と等しくします。 -% |article| ではA4縦置きで49文字となります。 -% 某学会誌スタイルでは50zw(25文字×2段)+段間8mmとします。 -% -% \begin{macrocode} -%<*article> -\if@slide - \setlength\fullwidth{0.9\paperwidth} -\else - \setlength\fullwidth{0.76\paperwidth} -\fi -\if@twocolumn \@tempdima=2zw \else \@tempdima=1zw \fi -\divide\fullwidth\@tempdima \multiply\fullwidth\@tempdima -\setlength\textwidth{\fullwidth} -%
    -%<*book> -\if@report - \setlength\fullwidth{0.76\paperwidth} -\else - \setlength\fullwidth{\paperwidth} - \addtolength\fullwidth{-36\jsc@mmm} -\fi -\if@twocolumn \@tempdima=2zw \else \@tempdima=1zw \fi -\divide\fullwidth\@tempdima \multiply\fullwidth\@tempdima -\setlength\textwidth{\fullwidth} -\if@report \else - \if@twocolumn \else - \ifdim \fullwidth>40zw - \setlength\textwidth{40zw} - \fi - \fi -\fi -%
    -%<*report> -\setlength\fullwidth{0.76\paperwidth} -\if@twocolumn \@tempdima=2zw \else \@tempdima=1zw \fi -\divide\fullwidth\@tempdima \multiply\fullwidth\@tempdima -\setlength\textwidth{\fullwidth} -% -%<*jspf> -\setlength\fullwidth{50zw} -\addtolength\fullwidth{8\jsc@mmm} -\setlength\textwidth{\fullwidth} -% -%<*kiyou> -\setlength\fullwidth{48zw} -\addtolength\fullwidth{\columnsep} -\setlength\textwidth{\fullwidth} -% -% \end{macrocode} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\textheight} -% -% 紙の高さ |\paperheight| は,1インチと |\topmargin| -% と |\headheight| と |\headsep| と |\textheight| -% と |\footskip| とページ下部の余白を加えたものです。 -% -% 本文部分の高さ |\textheight| は, -% 紙の高さ |\paperheight| の0.83倍から, -% ヘッダの高さ,ヘッダと本文の距離,本文とフッタ下端の距離, -% |\topskip| を引き, -% それを |\baselineskip| の倍数に切り捨て, -% 最後に |\topskip| を加えます。 -% 念のため0.1ポイント余分に加えておきます。 -% 0.83倍という数値は,A4縦置きの場合に紙の高さから -% 上下マージン各約1インチを引いた値になるように選びました。 -% -% 某学会誌スタイルでは44行にします。 -% -% [2003-06-26] |\headheight| を |\topskip| に直しました。 -% 以前はこの二つは値が同じであったので,変化はないはずです。 -% -% [2016-08-26] |\topskip| を10ptから1.38zwに増やしましたので, -% その分 |\textheight| を増やします(2016-08-17での修正漏れ)。 -% -% [2016-10-08] article の slide のときに |\headheight| はゼロ -% なので,さらに修正しました(2016-08-17での修正漏れ)。 -% -% \begin{macrocode} -%<*article|book|report> -\if@slide - \setlength{\textheight}{0.95\paperheight} -\else - \setlength{\textheight}{0.83\paperheight} -\fi -\addtolength{\textheight}{-10\jsc@mpt}%% from -\topskip (2016-10-08); from -\headheight (2003-06-26) -\addtolength{\textheight}{-\headsep} -\addtolength{\textheight}{-\footskip} -\addtolength{\textheight}{-\topskip} -\divide\textheight\baselineskip -\multiply\textheight\baselineskip -% -%\setlength{\textheight}{51\baselineskip} -%\setlength{\textheight}{47\baselineskip} -\addtolength{\textheight}{\topskip} -\addtolength{\textheight}{0.1\jsc@mpt} -%\setlength{\mathindent}{10\jsc@mmm} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\flushbottom} -% -% [2016-07-18] |\textheight| に念のため0.1ポイント余裕を持たせて -% いるのと同様に,|\flushbottom| にも余裕を持たせます。 -% 元の\LaTeXe での完全な |\flushbottom| の定義は -%\begin{verbatim} -% \def\flushbottom{% -% \let\@textbottom\relax \let\@texttop\relax} -%\end{verbatim} -% ですが,次のようにします。 -% -% \begin{macrocode} -\def\flushbottom{% - \def\@textbottom{\vskip \z@ \@plus.1\jsc@mpt}% - \let\@texttop\relax} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\marginparsep} -% \begin{macro}{\marginparpush} -% -% |\marginparsep| は欄外の書き込みと本文との間隔です。 -% |\marginparpush| は欄外の書き込みどうしの最小の間隔です。 -% -% \begin{macrocode} -\setlength\marginparsep{\columnsep} -\setlength\marginparpush{\baselineskip} -% \end{macrocode} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\oddsidemargin} -% \begin{macro}{\evensidemargin} -% -% それぞれ奇数ページ,偶数ページの左マージンから1インチ引いた値です。 -% 片面印刷では |\oddsidemargin| が使われます。 -% \TeX は上・左マージンに |1truein| を挿入しますが, -% トンボ関係のオプションが指定されるとp\LaTeXe (|plcore.ltx|) -% はトンボの内側に |1in| のスペース(|1truein| ではなく)を挿入するので, -% 場合分けしています。 -% -% \begin{macrocode} -\setlength{\oddsidemargin}{\paperwidth} -\addtolength{\oddsidemargin}{-\fullwidth} -\setlength{\oddsidemargin}{.5\oddsidemargin} -\iftombow - \addtolength{\oddsidemargin}{-1in} -\else - \addtolength{\oddsidemargin}{-\inv@mag in} -\fi -\setlength{\evensidemargin}{\oddsidemargin} -\if@mparswitch - \addtolength{\evensidemargin}{\fullwidth} - \addtolength{\evensidemargin}{-\textwidth} -\fi -% \end{macrocode} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\marginparwidth} -% -% |\marginparwidth| は欄外の書き込みの横幅です。 -% 外側マージンの幅(|\evensidemargin| $+$ 1インチ)から1センチを引き, -% さらに |\marginparsep|(欄外の書き込みと本文のアキ)を引いた値に -% しました。最後に1\,zwの整数倍に切り捨てます。 -% -% \begin{macrocode} -\setlength\marginparwidth{\paperwidth} -\addtolength\marginparwidth{-\oddsidemargin} -\addtolength\marginparwidth{-\inv@mag in} -\addtolength\marginparwidth{-\textwidth} -\addtolength\marginparwidth{-10\jsc@mmm} -\addtolength\marginparwidth{-\marginparsep} -\@tempdima=1zw -\divide\marginparwidth\@tempdima -\multiply\marginparwidth\@tempdima -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\topmargin} -% -% 上マージン(紙の上端とヘッダ上端の距離) -% から1インチ引いた値です。 -% -% [2003-06-26] |\headheight| を |\topskip| に直しました。 -% 以前はこの二つは値が同じであったので,変化はないはずです。 -% -% [2016-08-17] |\topskip| を10ptから1.38zwに直しましたが, -% |\topmargin| は従来の値から変わらないように調節しました。 -% …のつもりでしたが,|\textheight| を増やし忘れていたので -% 変わってしまっていました(2016-08-26修正済み)。 -% -% \begin{macrocode} -\setlength\topmargin{\paperheight} -\addtolength\topmargin{-\textheight} -\if@slide - \addtolength\topmargin{-\headheight} -\else - \addtolength\topmargin{-10\jsc@mpt}%% from -\topskip (2016-10-08); from -\headheight (2003-06-26) -\fi -\addtolength\topmargin{-\headsep} -\addtolength\topmargin{-\footskip} -\setlength\topmargin{0.5\topmargin} -%\setlength\topmargin{81truebp} -\iftombow - \addtolength\topmargin{-1in} -\else - \addtolength\topmargin{-\inv@mag in} -\fi -% \end{macrocode} -% \end{macro} -% -% \paragraph{脚注} -% -% \begin{macro}{\footnotesep} -% -% 各脚注の頭に入る支柱(strut)の高さです。 -% 脚注間に余分のアキが入らないように, -% |\footnotesize| の支柱の高さ(行送りの0.7倍)に等しくします。 -% -% \begin{macrocode} -{\footnotesize\global\setlength\footnotesep{\baselineskip}} -\setlength\footnotesep{0.7\footnotesep} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\footins} -% -% |\skip\footins| は本文の最終行と最初の脚注との間の距離です。 -% 標準の10ポイントクラスでは 9 plus 4 minus 2 ポイントになっていますが, -% 和文の行送りを考えてもうちょっと大きくします。 -% -% \begin{macrocode} -\setlength{\skip\footins}{16\jsc@mpt \@plus 5\jsc@mpt \@minus 2\jsc@mpt} -% \end{macrocode} -% \end{macro} -% -% \paragraph{フロート関連} -% -% フロート(図,表)関連のパラメータは\LaTeXe 本体で定義されていますが, -% ここで設定変更します。本文ページ(本文とフロートが共存するページ) -% とフロートだけのページで設定が異なります。 -% ちなみに,カウンタは内部では |\c@| を名前に冠したマクロになっています。 -% -% \begin{macro}{\c@topnumber} -% -% |topnumber| カウンタは本文ページ上部のフロートの最大数です。 -% -% [2003-08-23] ちょっと増やしました。 -% -% \begin{macrocode} -\setcounter{topnumber}{9} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\topfraction} -% -% 本文ページ上部のフロートが占有できる最大の割合です。 -% フロートが入りやすいように,元の値 0.7 を 0.8 [2003-08-23: 0.85] に変えてあります。 -% -% \begin{macrocode} -\renewcommand{\topfraction}{.85} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\c@bottomnumber} -% -% |bottomnumber| カウンタは本文ページ下部のフロートの最大数です。 -% -% [2003-08-23] ちょっと増やしました。 -% -% \begin{macrocode} -\setcounter{bottomnumber}{9} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\bottomfraction} -% -% 本文ページ下部のフロートが占有できる最大の割合です。元は 0.3 でした。 -% -% \begin{macrocode} -\renewcommand{\bottomfraction}{.8} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\c@totalnumber} -% -% |totalnumber| カウンタは本文ページに入りうるフロートの最大数です。 -% -% [2003-08-23] ちょっと増やしました。 -% -% \begin{macrocode} -\setcounter{totalnumber}{20} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\textfraction} -% -% 本文ページに最低限入らなければならない本文の割合です。 -% フロートが入りやすいように元の 0.2 を 0.1 に変えました。 -% -% \begin{macrocode} -\renewcommand{\textfraction}{.1} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\floatpagefraction} -% -% フロートだけのページでのフロートの最小割合です。 -% これも 0.5 を 0.8 に変えてあります。 -% -% \begin{macrocode} -\renewcommand{\floatpagefraction}{.8} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\c@dbltopnumber} -% -% 二段組のとき本文ページ上部に出力できる -% 段抜きフロートの最大数です。 -% -% [2003-08-23] ちょっと増やしました。 -% -% \begin{macrocode} -\setcounter{dbltopnumber}{9} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\dbltopfraction} -% -% 二段組のとき本文ページ上部に出力できる -% 段抜きフロートが占めうる最大の割合です。 -% 0.7 を 0.8 に変えてあります。 -% -% \begin{macrocode} -\renewcommand{\dbltopfraction}{.8} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\dblfloatpagefraction} -% -% 二段組のときフロートだけのページに入るべき -% 段抜きフロートの最小割合です。 -% 0.5 を 0.8 に変えてあります。 -% -% \begin{macrocode} -\renewcommand{\dblfloatpagefraction}{.8} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\floatsep} -% \begin{macro}{\textfloatsep} -% \begin{macro}{\intextsep} -% -% |\floatsep| はページ上部・下部のフロート間の距離です。 -% |\textfloatsep| はページ上部・下部のフロートと本文との距離です。 -% |\intextsep| は本文の途中に出力されるフロートと本文との距離です。 -% -% \begin{macrocode} -\setlength\floatsep {12\jsc@mpt \@plus 2\jsc@mpt \@minus 2\jsc@mpt} -\setlength\textfloatsep{20\jsc@mpt \@plus 2\jsc@mpt \@minus 4\jsc@mpt} -\setlength\intextsep {12\jsc@mpt \@plus 2\jsc@mpt \@minus 2\jsc@mpt} -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\dblfloatsep} -% \begin{macro}{\dbltextfloatsep} -% -% 二段組のときの段抜きのフロートについての値です。 -% -% \begin{macrocode} -\setlength\dblfloatsep {12\jsc@mpt \@plus 2\jsc@mpt \@minus 2\jsc@mpt} -\setlength\dbltextfloatsep{20\jsc@mpt \@plus 2\jsc@mpt \@minus 4\jsc@mpt} -% \end{macrocode} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\@fptop} -% \begin{macro}{\@fpsep} -% \begin{macro}{\@fpbot} -% -% フロートだけのページに入るグルーです。 -% |\@fptop| はページ上部, -% |\@fpbot| はページ下部, -% |\@fpsep| はフロート間に入ります。 -% -% \begin{macrocode} -\setlength\@fptop{0\jsc@mpt \@plus 1fil} -\setlength\@fpsep{8\jsc@mpt \@plus 2fil} -\setlength\@fpbot{0\jsc@mpt \@plus 1fil} -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\@dblfptop} -% \begin{macro}{\@dblfpsep} -% \begin{macro}{\@dblfpbot} -% -% 段抜きフロートについての値です。 -% -% \begin{macrocode} -\setlength\@dblfptop{0\jsc@mpt \@plus 1fil} -\setlength\@dblfpsep{8\jsc@mpt \@plus 2fil} -\setlength\@dblfpbot{0\jsc@mpt \@plus 1fil} -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% -% \section{改ページ(日本語\TeX{}開発コミュニティ版のみ)}\label{sec:cleardoublepage} -% -% \begin{macro}{\pltx@cleartorightpage} -% \begin{macro}{\pltx@cleartoleftpage} -% \begin{macro}{\pltx@cleartooddpage} -% \begin{macro}{\pltx@cleartoevenpage} -% [2017-02-24] コミュニティ版\pLaTeX の標準クラス2017/02/15に合わせて, -% 同じ命令を追加しました。 -% \begin{enumerate} -% \item|\pltx@cleartorightpage|:右ページになるまでページを繰る命令 -% \item|\pltx@cleartoleftpage|:左ページになるまでページを繰る命令 -% \item|\pltx@cleartooddpage|:奇数ページになるまでページを繰る命令 -% \item|\pltx@cleartoevenpage|:偶数ページになるまでページを繰る命令 -% \end{enumerate} -% となっています。 -% -% \begin{macrocode} -%<*article|book|report> -\def\pltx@cleartorightpage{\clearpage\if@twoside - \ifodd\c@page - \iftdir - \hbox{}\thispagestyle{empty}\newpage - \if@twocolumn\hbox{}\newpage\fi - \fi - \else - \ifydir - \hbox{}\thispagestyle{empty}\newpage - \if@twocolumn\hbox{}\newpage\fi - \fi - \fi\fi} -\def\pltx@cleartoleftpage{\clearpage\if@twoside - \ifodd\c@page - \ifydir - \hbox{}\thispagestyle{empty}\newpage - \if@twocolumn\hbox{}\newpage\fi - \fi - \else - \iftdir - \hbox{}\thispagestyle{empty}\newpage - \if@twocolumn\hbox{}\newpage\fi - \fi - \fi\fi} -\def\pltx@cleartooddpage{\clearpage\if@twoside - \ifodd\c@page\else - \hbox{}\thispagestyle{empty}\newpage - \if@twocolumn\hbox{}\newpage\fi - \fi\fi} -\def\pltx@cleartoevenpage{\clearpage\if@twoside - \ifodd\c@page - \hbox{}\thispagestyle{empty}\newpage - \if@twocolumn\hbox{}\newpage\fi - \fi\fi} -% -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\cleardoublepage} -% [2017-02-24] コミュニティ版\pLaTeX の標準クラス2017/02/15に合わせて, -% reportとbookクラスの場合に|\cleardoublepage|を再定義します。 -% \begin{macrocode} -%<*book|report> -\if@openleft - \let\cleardoublepage\pltx@cleartoleftpage -\else\if@openright - \let\cleardoublepage\pltx@cleartorightpage -\fi\fi -% -% \end{macrocode} -% \end{macro} -% -% \section{ページスタイル}\label{sec:pagestyle} -% -% ページスタイルとして,\LaTeXe (欧文版)の標準クラス -% では |empty|,|plain|,|headings|,|myheadings| があります。 -% このうち |empty|,|plain| スタイルは\LaTeXe 本体 -% で定義されています。 -% -% アスキーのクラスファイルでは |headnombre|,|footnombre|, -% |bothstyle|,|jpl@in| が追加されていますが, -% ここでは欧文標準のものだけにしました。 -% -% ページスタイルは |\ps@...| の形のマクロで定義されています。 -% -% \begin{macro}{\@evenhead} -% \begin{macro}{\@oddhead} -% \begin{macro}{\@evenfoot} -% \begin{macro}{\@oddfoot} -% -% |\@oddhead|,|\@oddfoot|,|\@evenhead|,|\@evenfoot| は -% 偶数・奇数ページの柱(ヘッダ,フッタ)を出力する命令です。 -% これらは |\fullwidth| 幅の |\hbox| の中で呼び出されます。 -% |\ps@...| の中で定義しておきます。 -% -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% -% 柱の内容は,|\chapter| が呼び出す |\chaptermark{何々}|, -% |\section| が呼び出す |\sectionmark{何々}| で設定します。 -% 柱を扱う命令には次のものがあります。 -% -% \begin{quote} -% \begin{tabbing} -% |\markboth{左}{右} | \= 両方の柱を設定します。\\ -% |\markright{右}| \> 右の柱を設定します。\\ -% |\leftmark| \> 左の柱を出力します。\\ -% |\rightmark| \> 右の柱を出力します。 -% \end{tabbing} -% \end{quote} -% -% 柱を設定する命令は,右の柱が左の柱の下位にある場合は十分まともに -% 動作します。たとえば左マークを |\chapter|,右マークを |\section| -% で変更する場合がこれにあたります。 -% しかし,同一ページに複数の |\markboth| があると, -% おかしな結果になることがあります。 -% -% |\tableofcontents| のような命令で使われる |\@mkboth| は, -% |\ps@...| コマンド中で |\markboth| か |\@gobbletwo|(何もしない) -% に |\let| されます。 -% -% \begin{macro}{\ps@empty} -% -% |empty| ページスタイルの定義です。 -% \LaTeX 本体で定義されているものをコメントアウトした形で -% 載せておきます。 -% -% \begin{macrocode} -% \def\ps@empty{% -% \let\@mkboth\@gobbletwo -% \let\@oddhead\@empty -% \let\@oddfoot\@empty -% \let\@evenhead\@empty -% \let\@evenfoot\@empty} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\ps@plainhead} -% \begin{macro}{\ps@plainfoot} -% \begin{macro}{\ps@plain} -% -% |plainhead| はシンプルなヘッダだけのページスタイルです。 -% -% |plainfoot| はシンプルなフッタだけのページスタイルです。 -% -% |plain| は |book| では |plainhead|,それ以外では |plainfoot| になります。 -% -% \begin{macrocode} -\def\ps@plainfoot{% - \let\@mkboth\@gobbletwo - \let\@oddhead\@empty - \def\@oddfoot{\normalfont\hfil\thepage\hfil}% - \let\@evenhead\@empty - \let\@evenfoot\@oddfoot} -\def\ps@plainhead{% - \let\@mkboth\@gobbletwo - \let\@oddfoot\@empty - \let\@evenfoot\@empty - \def\@evenhead{% - \if@mparswitch \hss \fi - \hbox to \fullwidth{\textbf{\thepage}\hfil}% - \if@mparswitch\else \hss \fi}% - \def\@oddhead{% - \hbox to \fullwidth{\hfil\textbf{\thepage}}\hss}} -%\if@report \let\ps@plain\ps@plainfoot \else \let\ps@plain\ps@plainhead \fi -%\let\ps@plain\ps@plainfoot -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\ps@headings} -% -% |headings| スタイルはヘッダに見出しとページ番号を出力します。 -% ここではヘッダにアンダーラインを引くようにしてみました。 -% -% まず article の場合です。 -% -% \begin{macrocode} -%<*article|kiyou> -\if@twoside - \def\ps@headings{% - \let\@oddfoot\@empty - \let\@evenfoot\@empty - \def\@evenhead{\if@mparswitch \hss \fi - \underline{\hbox to \fullwidth{\textbf{\thepage}\hfil\leftmark}}% - \if@mparswitch\else \hss \fi}% - \def\@oddhead{% - \underline{% - \hbox to \fullwidth{{\rightmark}\hfil\textbf{\thepage}}}\hss}% - \let\@mkboth\markboth - \def\sectionmark##1{\markboth{% - \ifnum \c@secnumdepth >\z@ \thesection \hskip1zw\fi - ##1}{}}% - \def\subsectionmark##1{\markright{% - \ifnum \c@secnumdepth >\@ne \thesubsection \hskip1zw\fi - ##1}}% - } -\else % if not twoside - \def\ps@headings{% - \let\@oddfoot\@empty - \def\@oddhead{% - \underline{% - \hbox to \fullwidth{{\rightmark}\hfil\textbf{\thepage}}}\hss}% - \let\@mkboth\markboth - \def\sectionmark##1{\markright{% - \ifnum \c@secnumdepth >\z@ \thesection \hskip1zw\fi - ##1}}} -\fi -% -% \end{macrocode} -% -% 次は book および report の場合です。 -% [2011-05-10] しっぽ愛好家さん [qa:6370] のパッチを取り込ませていただきました -% (北見さん [qa:55896] のご指摘ありがとうございます)。 -% -% \begin{macrocode} -%<*book|report> -\newif\if@omit@number -\def\ps@headings{% - \let\@oddfoot\@empty - \let\@evenfoot\@empty - \def\@evenhead{% - \if@mparswitch \hss \fi - \underline{\hbox to \fullwidth{\autoxspacing - \textbf{\thepage}\hfil\leftmark}}% - \if@mparswitch\else \hss \fi}% - \def\@oddhead{\underline{\hbox to \fullwidth{\autoxspacing - {\if@twoside\rightmark\else\leftmark\fi}\hfil\textbf{\thepage}}}\hss}% - \let\@mkboth\markboth - \def\chaptermark##1{\markboth{% - \ifnum \c@secnumdepth >\m@ne -% \if@mainmatter - \if@omit@number\else - \@chapapp\thechapter\@chappos\hskip1zw - \fi -% \fi - \fi - ##1}{}}% - \def\sectionmark##1{\markright{% - \ifnum \c@secnumdepth >\z@ \thesection \hskip1zw\fi - ##1}}}% -% -% \end{macrocode} -% -% 最後は学会誌の場合です。 -% -% \begin{macrocode} -%<*jspf> -\def\ps@headings{% - \def\@oddfoot{\normalfont\hfil\thepage\hfil} - \def\@evenfoot{\normalfont\hfil\thepage\hfil} - \def\@oddhead{\normalfont\hfil \@title \hfil} - \def\@evenhead{\normalfont\hfil プラズマ・核融合学会誌\hfil}} -% -% \end{macrocode} -% -% \end{macro} -% -% \begin{macro}{\ps@myheadings} -% -% |myheadings| ページスタイルではユーザが |\markboth| や |\markright| で -% 柱を設定するため,ここでの定義は非常に簡単です。 -% -% [2004-01-17] 渡辺徹さんのパッチを適用しました。 -% -% \begin{macrocode} -\def\ps@myheadings{% - \let\@oddfoot\@empty\let\@evenfoot\@empty - \def\@evenhead{% - \if@mparswitch \hss \fi% - \hbox to \fullwidth{\thepage\hfil\leftmark}% - \if@mparswitch\else \hss \fi}% - \def\@oddhead{% - \hbox to \fullwidth{\rightmark\hfil\thepage}\hss}% - \let\@mkboth\@gobbletwo -% \let\chaptermark\@gobble - \let\sectionmark\@gobble -% \let\subsectionmark\@gobble -} -% \end{macrocode} -% \end{macro} -% -% \section{文書のマークアップ} -% -% \subsection{表題} -% -% \begin{macro}{\title} -% \begin{macro}{\author} -% \begin{macro}{\date} -% -% これらは\LaTeX 本体で次のように定義されています。 -% ここではコメントアウトした形で示します。 -% -% \begin{macrocode} -% \newcommand*{\title}[1]{\gdef\@title{#1}} -% \newcommand*{\author}[1]{\gdef\@author{#1}} -% \newcommand*{\date}[1]{\gdef\@date{#1}} -% \date{\today} -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\etitle} -% \begin{macro}{\eauthor} -% \begin{macro}{\keywords} -% -% 某学会誌スタイルで使う英語のタイトル,英語の著者名,キーワード,メールアドレスです。 -% -% \begin{macrocode} -%<*jspf> -\newcommand*{\etitle}[1]{\gdef\@etitle{#1}} -\newcommand*{\eauthor}[1]{\gdef\@eauthor{#1}} -\newcommand*{\keywords}[1]{\gdef\@keywords{#1}} -\newcommand*{\email}[1]{\gdef\authors@mail{#1}} -\newcommand*{\AuthorsEmail}[1]{\gdef\authors@mail{author's e-mail:\ #1}} -% -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\plainifnotempty} -% -% 従来の標準クラスでは,文書全体のページスタイルを |empty| に -% しても表題のあるページだけ |plain| になってしまうことが -% ありました。これは |\maketitle| の定義中 -% に |\thispagestyle|\hspace{0pt}|{plain}| が入っている -% ためです。この問題を解決するために, -% 「全体のページスタイルが |empty| でないなら -% このページのスタイルを |plain| にする」という次の -% 命令を作ることにします。 -% -% \begin{macrocode} -\def\plainifnotempty{% - \ifx \@oddhead \@empty - \ifx \@oddfoot \@empty - \else - \thispagestyle{plainfoot}% - \fi - \else - \thispagestyle{plainhead}% - \fi} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\maketitle} -% -% 表題を出力します。 -% 著者名を出力する部分は,欧文の標準クラスファイルでは |\large|, -% 和文のものでは |\Large| になっていましたが,ここでは |\large| -% にしました。 -% -% [2016-11-16] 新設された \texttt{nomag} および \texttt{nomag*} オプション -% の場合をデフォルト(\texttt{usemag} 相当)に合わせるため,|\smallskip| を -% |\jsc@smallskip| に置き換えました。|\smallskip| のままでは -% \texttt{nomag(*)} の場合にスケールしなくなり,レイアウトが変わってしまいます。 -% -% \begin{macrocode} -%<*article|book|report|kiyou> -\if@titlepage - \newcommand{\maketitle}{% - \begin{titlepage}% - \let\footnotesize\small - \let\footnoterule\relax - \let\footnote\thanks - \null\vfil - \if@slide - {\footnotesize \@date}% - \begin{center} - \mbox{} \\[1zw] - \large - {\maybeblue\hrule height0\jsc@mpt depth2\jsc@mpt\relax}\par - \jsc@smallskip - \@title - \jsc@smallskip - {\maybeblue\hrule height0\jsc@mpt depth2\jsc@mpt\relax}\par - \vfill - {\small \@author}% - \end{center} - \else - \vskip 60\jsc@mpt - \begin{center}% - {\LARGE \@title \par}% - \vskip 3em% - {\large - \lineskip .75em - \begin{tabular}[t]{c}% - \@author - \end{tabular}\par}% - \vskip 1.5em - {\large \@date \par}% - \end{center}% - \fi - \par - \@thanks\vfil\null - \end{titlepage}% - \setcounter{footnote}{0}% - \global\let\thanks\relax - \global\let\maketitle\relax - \global\let\@thanks\@empty - \global\let\@author\@empty - \global\let\@date\@empty - \global\let\@title\@empty - \global\let\title\relax - \global\let\author\relax - \global\let\date\relax - \global\let\and\relax - }% -\else - \newcommand{\maketitle}{\par - \begingroup - \renewcommand\thefootnote{\@fnsymbol\c@footnote}% - \def\@makefnmark{\rlap{\@textsuperscript{\normalfont\@thefnmark}}}% - \long\def\@makefntext##1{\advance\leftskip 3zw - \parindent 1zw\noindent - \llap{\@textsuperscript{\normalfont\@thefnmark}\hskip0.3zw}##1}% - \if@twocolumn - \ifnum \col@number=\@ne - \@maketitle - \else - \twocolumn[\@maketitle]% - \fi - \else - \newpage - \global\@topnum\z@ % Prevents figures from going at top of page. - \@maketitle - \fi - \plainifnotempty - \@thanks - \endgroup - \setcounter{footnote}{0}% - \global\let\thanks\relax - \global\let\maketitle\relax - \global\let\@thanks\@empty - \global\let\@author\@empty - \global\let\@date\@empty - \global\let\@title\@empty - \global\let\title\relax - \global\let\author\relax - \global\let\date\relax - \global\let\and\relax - } -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\@maketitle} -% -% 独立した表題ページを作らない場合の表題の出力形式です。 -% -% \begin{macrocode} - \def\@maketitle{% - \newpage\null - \vskip 2em - \begin{center}% - \let\footnote\thanks - {\LARGE \@title \par}% - \vskip 1.5em - {\large - \lineskip .5em - \begin{tabular}[t]{c}% - \@author - \end{tabular}\par}% - \vskip 1em - {\large \@date}% - \end{center}% - \par\vskip 1.5em -% \ifvoid\@abstractbox\else\centerline{\box\@abstractbox}\vskip1.5em\fi - } -\fi -% -%<*jspf> -\newcommand{\maketitle}{\par - \begingroup - \renewcommand\thefootnote{\@fnsymbol\c@footnote}% - \def\@makefnmark{\rlap{\@textsuperscript{\normalfont\@thefnmark}}}% - \long\def\@makefntext##1{\advance\leftskip 3zw - \parindent 1zw\noindent - \llap{\@textsuperscript{\normalfont\@thefnmark}\hskip0.3zw}##1}% - \twocolumn[\@maketitle]% - \plainifnotempty - \@thanks - \endgroup - \setcounter{footnote}{0}% - \global\let\thanks\relax - \global\let\maketitle\relax - \global\let\@thanks\@empty - \global\let\@author\@empty - \global\let\@date\@empty -% \global\let\@title\@empty % \@title は柱に使う - \global\let\title\relax - \global\let\author\relax - \global\let\date\relax - \global\let\and\relax - \ifx\authors@mail\@undefined\else{% - \def\@makefntext{\advance\leftskip 3zw \parindent -3zw}% - \footnotetext[0]{\itshape\authors@mail}% - }\fi - \global\let\authors@mail\@undefined} -\def\@maketitle{% - \newpage\null - \vskip 6em % used to be 2em - \begin{center} - \let\footnote\thanks - \ifx\@title\@undefined\else{\LARGE\headfont\@title\par}\fi - \lineskip .5em - \ifx\@author\@undefined\else - \vskip 1em - \begin{tabular}[t]{c}% - \@author - \end{tabular}\par - \fi - \ifx\@etitle\@undefined\else - \vskip 1em - {\large \@etitle \par}% - \fi - \ifx\@eauthor\@undefined\else - \vskip 1em - \begin{tabular}[t]{c}% - \@eauthor - \end{tabular}\par - \fi - \vskip 1em - \@date - \end{center} - \vskip 1.5em - \centerline{\box\@abstractbox} - \ifx\@keywords\@undefined\else - \vskip 1.5em - \centerline{\parbox{157\jsc@mmm}{\textsf{Keywords:}\\ \small\@keywords}} - \fi - \vskip 1.5em} -% -% \end{macrocode} -% \end{macro} -% -% \subsection{章・節} -% -% \paragraph{構成要素} -% -% |\@startsection| マクロは6個の必須引数と,オプションとして |*| と -% 1個のオプション引数と1個の必須引数をとります。 -% -% \begin{quote} -% |\@startsection{名}{レベル}{字下げ}{前アキ}{後アキ}{スタイル}| \\ -% | *[別見出し]{見出し}| -% \end{quote} -% -% それぞれの引数の意味は次の通りです。 -% -% \begin{description} -% \item[名] ユーザレベルコマンドの名前です(例: section)。 -% \item[レベル] 見出しの深さを示す数値です -% (chapter=1, section=2, \ldots )。 -% この数値が |secnumdepth| 以下のとき見出し番号を出力します。 -% \item[字下げ] 見出しの字下げ量です。 -% \item[前アキ] この値の絶対値が見出し上側の空きです。 -% 負の場合は,見出し直後の段落をインデントしません。 -% \item[後アキ] 正の場合は,見出しの下の空きです。 -% 負の場合は,絶対値が見出しの右の空きです -% (見出しと同じ行から本文を始めます)。 -% \item[スタイル] 見出しの文字スタイルの設定です。 -% \item[\texttt{*}] この \texttt{*} 印がないと,見出し番号を付け, -% 見出し番号のカウンタに1を加算します。 -% \item[別見出し] 目次や柱に出力する見出しです。 -% \item[見出し] 見出しです。 -% \end{description} -% -% 見出しの命令は通常 |\@startsection| とその最初の6個の引数として -% 定義されます。 -% -% 次は |\@startsection| の定義です。 -% 情報処理学会論文誌スタイルファイル(\texttt{ipsjcommon.sty}) -% を参考にさせていただきましたが,完全に行送りが |\baselineskip| -% の整数倍にならなくてもいいから前の行と重ならないようにしました。 -% -% \begin{macrocode} -\def\@startsection#1#2#3#4#5#6{% - \if@noskipsec \leavevmode \fi - \par -% 見出し上の空きを \@tempskipa にセットする - \@tempskipa #4\relax -% \@afterindent は見出し直後の段落を字下げするかどうかを表すスイッチ - \if@english \@afterindentfalse \else \@afterindenttrue \fi -% 見出し上の空きが負なら見出し直後の段落を字下げしない - \ifdim \@tempskipa <\z@ - \@tempskipa -\@tempskipa \@afterindentfalse - \fi - \if@nobreak -% \everypar{\everyparhook}% これは間違い - \everypar{}% - \else - \addpenalty\@secpenalty -% 次の行は削除 -% \addvspace\@tempskipa -% 次の \noindent まで追加 - \ifdim \@tempskipa >\z@ - \if@slide\else - \null - \vspace*{-\baselineskip}% - \fi - \vskip\@tempskipa - \fi - \fi - \noindent -% 追加終わり - \@ifstar - {\@ssect{#3}{#4}{#5}{#6}}% - {\@dblarg{\@sect{#1}{#2}{#3}{#4}{#5}{#6}}}} -% \end{macrocode} -% -% |\@sect| と |\@xsect| は, -% 前のアキがちょうどゼロの場合にもうまくいくように,多少変えてあります。 -% |\everyparhook| も挿入しています。 -% -% \begin{macrocode} -\def\@sect#1#2#3#4#5#6[#7]#8{% - \ifnum #2>\c@secnumdepth - \let\@svsec\@empty - \else - \refstepcounter{#1}% - \protected@edef\@svsec{\@seccntformat{#1}\relax}% - \fi -% 見出し後の空きを \@tempskipa にセット - \@tempskipa #5\relax -% 条件判断の順序を入れ換えました - \ifdim \@tempskipa<\z@ - \def\@svsechd{% - #6{\hskip #3\relax - \@svsec #8}% - \csname #1mark\endcsname{#7}% - \addcontentsline{toc}{#1}{% - \ifnum #2>\c@secnumdepth \else - \protect\numberline{\csname the#1\endcsname}% - \fi - #7}}% 目次にフルネームを載せるなら #8 - \else - \begingroup - \interlinepenalty \@M % 下から移動 - #6{% - \@hangfrom{\hskip #3\relax\@svsec}% -% \interlinepenalty \@M % 上に移動 - #8\@@par}% - \endgroup - \csname #1mark\endcsname{#7}% - \addcontentsline{toc}{#1}{% - \ifnum #2>\c@secnumdepth \else - \protect\numberline{\csname the#1\endcsname}% - \fi - #7}% 目次にフルネームを載せるならここは #8 - \fi - \@xsect{#5}} -% \end{macrocode} -% -% 二つ挿入した |\everyparhook| のうち後者が |\paragraph| 類の後で2回実行され, -% それ以降は前者が実行されます。 -% -% [2016-07-28] \texttt{slide}オプションと\texttt{twocolumn}オプションを -% 同時に指定した場合の罫線の位置を微調整しました。 -% -% \begin{macrocode} -\def\@xsect#1{% -% 見出しの後ろの空きを \@tempskipa にセット - \@tempskipa #1\relax -% 条件判断の順序を変えました - \ifdim \@tempskipa<\z@ - \@nobreakfalse - \global\@noskipsectrue - \everypar{% - \if@noskipsec - \global\@noskipsecfalse - {\setbox\z@\lastbox}% - \clubpenalty\@M - \begingroup \@svsechd \endgroup - \unskip - \@tempskipa #1\relax - \hskip -\@tempskipa - \else - \clubpenalty \@clubpenalty - \everypar{\everyparhook}% - \fi\everyparhook}% - \else - \par \nobreak - \vskip \@tempskipa - \@afterheading - \fi - \if@slide - {\vskip\if@twocolumn-5\jsc@mpt\else-6\jsc@mpt\fi - \maybeblue\hrule height0\jsc@mpt depth1\jsc@mpt - \vskip\if@twocolumn 4\jsc@mpt\else 7\jsc@mpt\fi\relax}% - \fi - \par % 2000-12-18 - \ignorespaces} -\def\@ssect#1#2#3#4#5{% - \@tempskipa #3\relax - \ifdim \@tempskipa<\z@ - \def\@svsechd{#4{\hskip #1\relax #5}}% - \else - \begingroup - #4{% - \@hangfrom{\hskip #1}% - \interlinepenalty \@M #5\@@par}% - \endgroup - \fi - \@xsect{#3}} -% \end{macrocode} -% -% \paragraph{柱関係の命令} -% -% \begin{macro}{\chaptermark} -% \begin{macro}{\sectionmark} -% \begin{macro}{\subsectionmark} -% \begin{macro}{\subsubsectionmark} -% \begin{macro}{\paragraphmark} -% \begin{macro}{\subparagraphmark} -% -% |\...mark| の形の命令を初期化します(第\ref{sec:pagestyle}節参照)。 -% |\chaptermark| 以外は\LaTeX 本体で定義済みです。 -% -% \begin{macrocode} -\newcommand*\chaptermark[1]{} -% \newcommand*{\sectionmark}[1]{} -% \newcommand*{\subsectionmark}[1]{} -% \newcommand*{\subsubsectionmark}[1]{} -% \newcommand*{\paragraphmark}[1]{} -% \newcommand*{\subparagraphmark}[1]{} -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% -% \paragraph{カウンタの定義} -% -% \begin{macro}{\c@secnumdepth} -% -% |secnumdepth| は第何レベルの見出しまで -% 番号を付けるかを決めるカウンタです。 -% -% \begin{macrocode} -%\setcounter{secnumdepth}{3} -%\setcounter{secnumdepth}{2} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\c@chapter} -% \begin{macro}{\c@section} -% \begin{macro}{\c@subsection} -% \begin{macro}{\c@subsubsection} -% \begin{macro}{\c@paragraph} -% \begin{macro}{\c@subparagraph} -% -% 見出し番号のカウンタです。 -% |\newcounter| の第1引数が新たに作るカウンタです。 -% これは第2引数が増加するたびに 0 に戻されます。 -% 第2引数は定義済みのカウンタです。 -% -% \begin{macrocode} -\newcounter{part} -%\newcounter{chapter} -%\newcounter{section}[chapter] -%\newcounter{section} -\newcounter{subsection}[section] -\newcounter{subsubsection}[subsection] -\newcounter{paragraph}[subsubsection] -\newcounter{subparagraph}[paragraph] -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\thepart} -% \begin{macro}{\thechapter} -% \begin{macro}{\thesection} -% \begin{macro}{\thesubsection} -% \begin{macro}{\thesubsubsection} -% \begin{macro}{\theparagraph} -% \begin{macro}{\thesubparagraph} -% -% カウンタの値を出力する命令 |\the何々| を定義します。 -% -% カウンタを出力するコマンドには次のものがあります。 -% -% \begin{quote} -% |\arabic{COUNTER} | 1, 2, 3, \ldots \\ -% |\roman{COUNTER} | i, ii, iii, \ldots \\ -% |\Roman{COUNTER} | I, II, III, \ldots \\ -% |\alph{COUNTER} | a, b, c, \ldots \\ -% |\Alph{COUNTER} | A, B, C, \ldots \\ -% |\kansuji{COUNTER} | 一, 二, 三, \ldots -% \end{quote} -% -% 以下ではスペース節約のため |@| の付いた内部表現を多用しています。 -% -% \begin{macrocode} -\renewcommand{\thepart}{\@Roman\c@part} -%% \renewcommand{\thesection}{\@arabic\c@section} -%\renewcommand{\thesection}{\presectionname\@arabic\c@section\postsectionname} -%\renewcommand{\thesubsection}{\@arabic\c@section.\@arabic\c@subsection} -%<*book|report> -\renewcommand{\thechapter}{\@arabic\c@chapter} -\renewcommand{\thesection}{\thechapter.\@arabic\c@section} -\renewcommand{\thesubsection}{\thesection.\@arabic\c@subsection} -% -\renewcommand{\thesubsubsection}{% - \thesubsection.\@arabic\c@subsubsection} -\renewcommand{\theparagraph}{% - \thesubsubsection.\@arabic\c@paragraph} -\renewcommand{\thesubparagraph}{% - \theparagraph.\@arabic\c@subparagraph} -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\@chapapp} -% \begin{macro}{\@chappos} -% -% |\@chapapp| の初期値は |\prechaptername|(第)です。 -% -% |\@chappos| の初期値は |\postchaptername|(章)です。 -% -% |\appendix| は |\@chapapp| を |\appendixname| に, -% |\@chappos| を空に再定義します。 -% -% [2003-03-02] |\@secapp| は外しました。 -% -% \begin{macrocode} -%\newcommand{\@chapapp}{\prechaptername} -%\newcommand{\@chappos}{\postchaptername} -% \end{macrocode} -% \end{macro} -% \end{macro} -% -% \paragraph{前付,本文,後付} -% -% 本のうち章番号があるのが「本文」, -% それ以外が「前付」「後付」です。 -% -% \begin{macro}{\frontmatter} -% -% ページ番号をローマ数字にし,章番号を付けないようにします。 -% -% [2017-03-05] |\frontmatter| と |\mainmatter| の2つの命令は, -% 改丁または改ページした後で |\pagenumbering{...}| でノンブルを1に -% リセットします。長い間 |\frontmatter| は \texttt{openany} のときに -% 単なる改ページとしていましたが,これではノンブルをリセットする際に -% 偶奇逆転が起こる場合がありました。\texttt{openany} かどうかに依らず -% 奇数ページまで繰るように修正することで,問題を解消しました。 -% 実は,\LaTeX の標準クラスでは1998年に修正されていた問題です -% (コミュニティ版\pLaTeX の標準クラス2017/03/05も参照)。 -% -% \begin{macrocode} -%<*book> -\newcommand\frontmatter{% - \pltx@cleartooddpage - \@mainmatterfalse - \pagenumbering{roman}} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\mainmatter} -% -% ページ番号を算用数字にし,章番号を付けるようにします。 -% -% \begin{macrocode} -\newcommand\mainmatter{% - \pltx@cleartooddpage - \@mainmattertrue - \pagenumbering{arabic}} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\backmatter} -% -% 章番号を付けないようにします。ページ番号の付け方は変わりません。 -% -% \begin{macrocode} -\newcommand\backmatter{% - \if@openleft - \cleardoublepage - \else\if@openright - \cleardoublepage - \else - \clearpage - \fi\fi - \@mainmatterfalse} -% -% \end{macrocode} -% \end{macro} -% -% \paragraph{部} -% -% \begin{macro}{\part} -% -% 新しい部を始めます。 -% -% |\secdef| を使って見出しを定義しています。 -% このマクロは二つの引数をとります。 -% -% \begin{quote} -% |\secdef{星なし}{星あり}| -% \end{quote} -% -% \begin{description} -% \item[星なし] \texttt{*} のない形の定義です。 -% \item[星あり] \texttt{*} のある形の定義です。 -% \end{description} -% -% |\secdef| は次のようにして使います。 -% -%\begin{verbatim} -% \def\chapter { ... \secdef \CMDA \CMDB } -% \def\CMDA [#1]#2{....} % \chapter[...]{...} の定義 -% \def\CMDB #1{....} % \chapter*{...} の定義 -%\end{verbatim} -% -% まず |book| と |report| のクラス以外です。 -% -% \begin{macrocode} -%<*!book&!report> -\newcommand\part{% - \if@noskipsec \leavevmode \fi - \par - \addvspace{4ex}% - \if@english \@afterindentfalse \else \@afterindenttrue \fi - \secdef\@part\@spart} -% -% \end{macrocode} -% -% |book| および |report| クラスの場合は,少し複雑です。 -% -% \begin{macrocode} -%<*book|report> -\newcommand\part{% - \if@openleft - \cleardoublepage - \else\if@openright - \cleardoublepage - \else - \clearpage - \fi\fi - \thispagestyle{empty}% 欧文用標準スタイルでは plain - \if@twocolumn - \onecolumn - \@restonecoltrue - \else - \@restonecolfalse - \fi - \null\vfil - \secdef\@part\@spart} -% -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\@part} -% -% 部の見出しを出力します。 -% |\bfseries| を |\headfont| に変えました。 -% -% |book| および |report| クラス以外では |secnumdepth| が $-1$ より大きいとき -% 部番号を付けます。 -% -% \begin{macrocode} -%<*!book&!report> -\def\@part[#1]#2{% - \ifnum \c@secnumdepth >\m@ne - \refstepcounter{part}% - \addcontentsline{toc}{part}{% - \prepartname\thepart\postpartname\hspace{1zw}#1}% - \else - \addcontentsline{toc}{part}{#1}% - \fi - \markboth{}{}% - {\parindent\z@ - \raggedright - \interlinepenalty \@M - \normalfont - \ifnum \c@secnumdepth >\m@ne - \Large\headfont\prepartname\thepart\postpartname - \par\nobreak - \fi - \huge \headfont #2% - \markboth{}{}\par}% - \nobreak - \vskip 3ex - \@afterheading} -% -% \end{macrocode} -% -% |book| および |report| クラスでは |secnumdepth| が $-2$ より大きいとき部番号を付けます。 -% -% \begin{macrocode} -%<*book|report> -\def\@part[#1]#2{% - \ifnum \c@secnumdepth >-2\relax - \refstepcounter{part}% - \addcontentsline{toc}{part}{% - \prepartname\thepart\postpartname\hspace{1zw}#1}% - \else - \addcontentsline{toc}{part}{#1}% - \fi - \markboth{}{}% - {\centering - \interlinepenalty \@M - \normalfont - \ifnum \c@secnumdepth >-2\relax - \huge\headfont \prepartname\thepart\postpartname - \par\vskip20\jsc@mpt - \fi - \Huge \headfont #2\par}% - \@endpart} -% -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\@spart} -% -% 番号を付けない部です。 -% -% \begin{macrocode} -%<*!book&!report> -\def\@spart#1{{% - \parindent \z@ \raggedright - \interlinepenalty \@M - \normalfont - \huge \headfont #1\par}% - \nobreak - \vskip 3ex - \@afterheading} -% -%<*book|report> -\def\@spart#1{{% - \centering - \interlinepenalty \@M - \normalfont - \Huge \headfont #1\par}% - \@endpart} -% -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\@endpart} -% -% |\@part| と |\@spart| の最後で実行されるマクロです。 -% 両面印刷のときは白ページを追加します。 -% 二段組のときには,二段組に戻します。 -% -% [2016-12-13] \texttt{openany} のときには白ページが追加されるのは変なので, -% その場合は追加しないようにしました。このバグは\LaTeX では -% classes.dtx v1.4b (2000/05/19) -% で修正されています。 -% -% \begin{macrocode} -%<*book|report> -\def\@endpart{\vfil\newpage - \if@twoside - \if@openleft %% added (2017/02/24) - \null\thispagestyle{empty}\newpage - \else\if@openright %% added (2016/12/13) - \null\thispagestyle{empty}\newpage - \fi\fi %% added (2016/12/13, 2017/02/24) - \fi - \if@restonecol - \twocolumn - \fi} -% -% \end{macrocode} -% \end{macro} -% -% \paragraph{章} -% -% \begin{macro}{\chapter} -% -% 章の最初のページスタイルは,全体が |empty| でなければ |plain| に -% します。 -% また,|\@topnum| を 0 にして, -% 章見出しの上に図や表が来ないようにします。 -% -% \begin{macrocode} -%<*book|report> -\newcommand{\chapter}{% - \if@openleft\cleardoublepage\else - \if@openright\cleardoublepage\else\clearpage\fi\fi - \plainifnotempty % 元: \thispagestyle{plain} - \global\@topnum\z@ - \if@english \@afterindentfalse \else \@afterindenttrue \fi - \secdef - {\@omit@numberfalse\@chapter}% - {\@omit@numbertrue\@schapter}} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\@chapter} -% -% 章見出しを出力します。 -% |secnumdepth| が0以上かつ |\@mainmatter| が真のとき章番号を出力します。 -% -% \begin{macrocode} -\def\@chapter[#1]#2{% - \ifnum \c@secnumdepth >\m@ne -% \if@mainmatter - \refstepcounter{chapter}% - \typeout{\@chapapp\thechapter\@chappos}% - \addcontentsline{toc}{chapter}% - {\protect\numberline - % {\if@english\thechapter\else\@chapapp\thechapter\@chappos\fi}% - {\@chapapp\thechapter\@chappos}% - #1}% -% \else\addcontentsline{toc}{chapter}{#1}\fi - \else - \addcontentsline{toc}{chapter}{#1}% - \fi - \chaptermark{#1}% - \addtocontents{lof}{\protect\addvspace{10\jsc@mpt}}% - \addtocontents{lot}{\protect\addvspace{10\jsc@mpt}}% - \if@twocolumn - \@topnewpage[\@makechapterhead{#2}]% - \else - \@makechapterhead{#2}% - \@afterheading - \fi} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\@makechapterhead} -% -% 実際に章見出しを組み立てます。 -% |\bfseries| を |\headfont| に変えました。 -% -% \begin{macrocode} -\def\@makechapterhead#1{% - \vspace*{2\Cvs}% 欧文は50pt - {\parindent \z@ \raggedright \normalfont - \ifnum \c@secnumdepth >\m@ne -% \if@mainmatter - \huge\headfont \@chapapp\thechapter\@chappos - \par\nobreak - \vskip \Cvs % 欧文は20pt -% \fi - \fi - \interlinepenalty\@M - \Huge \headfont #1\par\nobreak - \vskip 3\Cvs}} % 欧文は40pt -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\@schapter} -% -% |\chapter*{...}| コマンドの本体です。 -% |\chaptermark| を補いました。 -% -% \begin{macrocode} -\def\@schapter#1{% - \chaptermark{#1}% - \if@twocolumn - \@topnewpage[\@makeschapterhead{#1}]% - \else - \@makeschapterhead{#1}\@afterheading - \fi} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\@makeschapterhead} -% -% 番号なしの章見出しです。 -% -% \begin{macrocode} -\def\@makeschapterhead#1{% - \vspace*{2\Cvs}% 欧文は50pt - {\parindent \z@ \raggedright - \normalfont - \interlinepenalty\@M - \Huge \headfont #1\par\nobreak - \vskip 3\Cvs}} % 欧文は40pt -% -% \end{macrocode} -% \end{macro} -% -% \paragraph{下位レベルの見出し} -% -% \begin{macro}{\section} -% -% 欧文版では |\@startsection| の第4引数を負にして最初の段落の -% 字下げを禁止していますが, -% 和文版では正にして字下げするようにしています。 -% -% 段組のときはなるべく左右の段が狂わないように工夫しています。 -% -% \begin{macrocode} -\if@twocolumn - \newcommand{\section}{% -%\ifx\maketitle\relax\else\maketitle\fi - \@startsection{section}{1}{\z@}% -% {0.6\Cvs}{0.4\Cvs}% -% {\Cvs}{0.5\Cvs}% -% {\normalfont\large\headfont\@secapp}} - {\normalfont\large\headfont\raggedright}} -\else - \newcommand{\section}{% - \if@slide\clearpage\fi - \@startsection{section}{1}{\z@}% - {\Cvs \@plus.5\Cdp \@minus.2\Cdp}% 前アキ - {.5\Cvs \@plus.3\Cdp}% 後アキ -% {\normalfont\Large\headfont\@secapp}} - {\normalfont\Large\headfont\raggedright}} -\fi -% \end{macrocode} -% -% \end{macro} -% -% \begin{macro}{\subsection} -% -% 同上です。 -% -% \begin{macrocode} -\if@twocolumn - \newcommand{\subsection}{\@startsection{subsection}{2}{\z@}% - {\z@}{\if@slide .4\Cvs \else \z@ \fi}% - {\normalfont\normalsize\headfont}} -\else - \newcommand{\subsection}{\@startsection{subsection}{2}{\z@}% - {\Cvs \@plus.5\Cdp \@minus.2\Cdp}% 前アキ - {.5\Cvs \@plus.3\Cdp}% 後アキ - {\normalfont\large\headfont}} -\fi -% \end{macrocode} -% -% \end{macro} -% -% \begin{macro}{\subsubsection} -% -% [2016-07-22] \texttt{slide}オプション指定時に |\subsubsection| の文字列 -% と罫線が重なる問題に対処しました(forum:1982)。 -% -% \begin{macrocode} -\if@twocolumn - \newcommand{\subsubsection}{\@startsection{subsubsection}{3}{\z@}% - {\z@}{\if@slide .4\Cvs \else \z@ \fi}% - {\normalfont\normalsize\headfont}} -\else - \newcommand{\subsubsection}{\@startsection{subsubsection}{3}{\z@}% - {\Cvs \@plus.5\Cdp \@minus.2\Cdp}% - {\if@slide .5\Cvs \@plus.3\Cdp \else \z@ \fi}% - {\normalfont\normalsize\headfont}} -\fi -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\paragraph} -% \begin{macro}{\jsParagraphMark} -% -% 見出しの後ろで改行されません。 -% -% [2016-11-16] 従来は |\paragraph| の最初に出るマークを「■」に固定して -% いましたが,このマークを変更可能にするため |\jsParagraphMark| というマクロ -% に切り出しました。これで,たとえば -%\begin{verbatim} -% \renewcommand{\jsParagraphMark}{★} -%\end{verbatim} -% とすれば「★」に変更できますし,マークを空にすることも容易です。 -% なお,某学会クラスでは従来どおりマークは付きません。 -% -% \begin{macrocode} -%\newcommand{\jsParagraphMark}{■} -\if@twocolumn - \newcommand{\paragraph}{\@startsection{paragraph}{4}{\z@}% - {\z@}{\if@slide .4\Cvs \else -1zw\fi}% 改行せず 1zw のアキ -% {\normalfont\normalsize\headfont}} -% {\normalfont\normalsize\headfont\jsParagraphMark}} -\else - \newcommand{\paragraph}{\@startsection{paragraph}{4}{\z@}% - {0.5\Cvs \@plus.5\Cdp \@minus.2\Cdp}% - {\if@slide .5\Cvs \@plus.3\Cdp \else -1zw\fi}% 改行せず 1zw のアキ -% {\normalfont\normalsize\headfont}} -% {\normalfont\normalsize\headfont\jsParagraphMark}} -\fi -% \end{macrocode} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\subparagraph} -% -% 見出しの後ろで改行されません。 -% -% \begin{macrocode} -\if@twocolumn - \newcommand{\subparagraph}{\@startsection{subparagraph}{5}{\z@}% - {\z@}{\if@slide .4\Cvs \@plus.3\Cdp \else -1zw\fi}% - {\normalfont\normalsize\headfont}} -\else - \newcommand{\subparagraph}{\@startsection{subparagraph}{5}{\z@}% - {\z@}{\if@slide .5\Cvs \@plus.3\Cdp \else -1zw\fi}% - {\normalfont\normalsize\headfont}} -\fi -% \end{macrocode} -% \end{macro} -% -% \subsection{リスト環境} -% -% 第 $k$ レベルのリストの初期化をするのが |\@list|$k$ です -% ($k = \mathtt{i}, \mathtt{ii}, \mathtt{iii}, \mathtt{iv}$)。 -% |\@list|$k$ は |\leftmargin| を |\leftmargin|$k$ に設定します。 -% -% \begin{macro}{\leftmargini} -% -% 二段組であるかないかに応じてそれぞれ 2em,2.5em でしたが, -% ここでは全角幅の2倍にしました。 -% -% [2002-05-11] 3zw に変更しました。 -% -% [2005-03-19] 二段組は 2zw に戻しました。 -% -% \begin{macrocode} -\if@slide - \setlength\leftmargini{1zw} -\else - \if@twocolumn - \setlength\leftmargini{2zw} - \else - \setlength\leftmargini{3zw} - \fi -\fi -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\leftmarginii} -% \begin{macro}{\leftmarginiii} -% \begin{macro}{\leftmarginiv} -% \begin{macro}{\leftmarginv} -% \begin{macro}{\leftmarginvi} -% -% |ii|,|iii|,|iv| は |\labelsep| と -% それぞれ `(m)',`vii.',`M.' の幅との和より大きくする -% ことになっています。ここでは全角幅の整数倍に丸めました。 -% -% \begin{macrocode} -\if@slide - \setlength\leftmarginii {1zw} - \setlength\leftmarginiii{1zw} - \setlength\leftmarginiv {1zw} - \setlength\leftmarginv {1zw} - \setlength\leftmarginvi {1zw} -\else - \setlength\leftmarginii {2zw} - \setlength\leftmarginiii{2zw} - \setlength\leftmarginiv {2zw} - \setlength\leftmarginv {1zw} - \setlength\leftmarginvi {1zw} -\fi -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\labelsep} -% \begin{macro}{\labelwidth} -% -% |\labelsep| はラベルと本文の間の距離です。 -% |\labelwidth| はラベルの幅です。 -% これは二分に変えました。 -% -% \begin{macrocode} -\setlength \labelsep {0.5zw} % .5em -\setlength \labelwidth{\leftmargini} -\addtolength\labelwidth{-\labelsep} -% \end{macrocode} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\partopsep} -% -% リスト環境の前に空行がある場合, -% |\parskip| と |\topsep| に |\partopsep| を -% 加えた値だけ縦方向の空白ができます。 -% 0 に改変しました。 -% -% \begin{macrocode} -\setlength\partopsep{\z@} % {2\p@ \@plus 1\p@ \@minus 1\p@} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\@beginparpenalty} -% \begin{macro}{\@endparpenalty} -% \begin{macro}{\@itempenalty} -% -% リストや段落環境の前後,リスト項目間に挿入されるペナルティです。 -% -% \begin{macrocode} -\@beginparpenalty -\@lowpenalty -\@endparpenalty -\@lowpenalty -\@itempenalty -\@lowpenalty -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\@listi} -% \begin{macro}{\@listI} -% -% |\@listi| は |\leftmargin|,|\parsep|,|\topsep|,|\itemsep| などの -% トップレベルの定義をします。 -% この定義は,フォントサイズコマンドによって変更されます -% (たとえば |\small| の中では小さい値に設定されます)。 -% このため,|\normalsize| がすべてのパラメータを戻せるように, -% |\@listI| で |\@listi| のコピーを保存します。 -% 元の値はかなり複雑ですが,ここでは簡素化してしまいました。 -% 特に最初と最後に行送りの半分の空きが入るようにしてあります。 -% アスキーの標準スタイルでは -% トップレベルの |itemize|,|enumerate| 環境でだけ -% 最初と最後に行送りの半分の空きが入るようになっていました。 -% -% [2004-09-27] |\topsep| のグルー $_{-0.1}^{+0.2}$ |\baselineskip| -% を思い切って外しました。 -% -% \begin{macrocode} -\def\@listi{\leftmargin\leftmargini - \parsep \z@ - \topsep 0.5\baselineskip - \itemsep \z@ \relax} -\let\@listI\@listi -% \end{macrocode} -% -% 念のためパラメータを初期化します(実際には不要のようです)。 -% -% \begin{macrocode} -\@listi -% \end{macrocode} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\@listii} -% \begin{macro}{\@listiii} -% \begin{macro}{\@listiv} -% \begin{macro}{\@listv} -% \begin{macro}{\@listvi} -% -% 第2〜6レベルのリスト環境のパラメータの設定です。 -% -% \begin{macrocode} -\def\@listii{\leftmargin\leftmarginii - \labelwidth\leftmarginii \advance\labelwidth-\labelsep - \topsep \z@ - \parsep \z@ - \itemsep\parsep} -\def\@listiii{\leftmargin\leftmarginiii - \labelwidth\leftmarginiii \advance\labelwidth-\labelsep - \topsep \z@ - \parsep \z@ - \itemsep\parsep} -\def\@listiv {\leftmargin\leftmarginiv - \labelwidth\leftmarginiv - \advance\labelwidth-\labelsep} -\def\@listv {\leftmargin\leftmarginv - \labelwidth\leftmarginv - \advance\labelwidth-\labelsep} -\def\@listvi {\leftmargin\leftmarginvi - \labelwidth\leftmarginvi - \advance\labelwidth-\labelsep} -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% -% \paragraph{enumerate環境} -% -% |enumerate| 環境はカウンタ |enumi|,|enumii|,|enumiii|, -% |enumiv| を使います。|enum|$n$ は第 $n$ レベルの番号です。 -% -% \begin{macro}{\theenumi} -% \begin{macro}{\theenumii} -% \begin{macro}{\theenumiii} -% \begin{macro}{\theenumiv} -% -% 出力する番号の書式を設定します。 -% これらは\LaTeX 本体(\texttt{ltlists.dtx} 参照)で定義済みですが, -% ここでは表し方を変えています。 -% |\@arabic|,|\@alph|,|\@roman|,|\@Alph| はそれぞれ -% 算用数字,小文字アルファベット,小文字ローマ数字,大文字アルファベット -% で番号を出力する命令です。 -% -% \begin{macrocode} -\renewcommand{\theenumi}{\@arabic\c@enumi} -\renewcommand{\theenumii}{\@alph\c@enumii} -\renewcommand{\theenumiii}{\@roman\c@enumiii} -\renewcommand{\theenumiv}{\@Alph\c@enumiv} -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\labelenumi} -% \begin{macro}{\labelenumii} -% \begin{macro}{\labelenumiii} -% \begin{macro}{\labelenumiv} -% -% |enumerate| 環境の番号を出力する命令です。 -% 第2レベル以外は最後に欧文のピリオドが付きますが, -% これは好みに応じて取り払ってください。 -% 第2レベルの番号のかっこは和文用に換え, -% その両側に入る余分なグルーを |\inhibitglue| で -% 取り除いています。 -% -% \begin{macrocode} -\newcommand{\labelenumi}{\theenumi.} -\newcommand{\labelenumii}{\inhibitglue (\theenumii )\inhibitglue} -\newcommand{\labelenumiii}{\theenumiii.} -\newcommand{\labelenumiv}{\theenumiv.} -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\p@enumii} -% \begin{macro}{\p@enumiii} -% \begin{macro}{\p@enumiv} -% -% |\p@enum|$n$ は |\ref| コマンドで |enumerate| 環境の第 $n$ レベルの -% 項目が参照されるときの書式です。 -% これも第2レベルは和文用かっこにしました。 -% -% \begin{macrocode} -\renewcommand{\p@enumii}{\theenumi} -\renewcommand{\p@enumiii}{\theenumi\inhibitglue (\theenumii )} -\renewcommand{\p@enumiv}{\p@enumiii\theenumiii} -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% -% \paragraph{itemize環境} -% -% \begin{macro}{\labelitemi} -% \begin{macro}{\labelitemii} -% \begin{macro}{\labelitemiii} -% \begin{macro}{\labelitemiv} -% |itemize| 環境の第 $n$ レベルのラベルを作るコマンドです。 -% \begin{macrocode} -\newcommand\labelitemi{\textbullet} -\newcommand\labelitemii{\normalfont\bfseries \textendash} -\newcommand\labelitemiii{\textasteriskcentered} -\newcommand\labelitemiv{\textperiodcentered} -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% -% \paragraph{description環境} -% -% \begin{environment}{description} -% -% 本来の |description| 環境では,項目名が短いと,説明部分の頭が -% それに引きずられて左に出てしまいます。 -% これを解決した新しい |description| の実装です。 -% -% \begin{macrocode} -\newenvironment{description}{% - \list{}{% - \labelwidth=\leftmargin - \labelsep=1zw - \advance \labelwidth by -\labelsep - \let \makelabel=\descriptionlabel}}{\endlist} -% \end{macrocode} -% \end{environment} -% -% \begin{macro}{\descriptionlabel} -% -% |description| 環境のラベルを出力するコマンドです。 -% 好みに応じて |#1| の前に適当な空き -% (たとえば |\hspace{1zw}|)を入れるのもいいと思います。 -% -% \begin{macrocode} -\newcommand*\descriptionlabel[1]{\normalfont\headfont #1\hfil} -% \end{macrocode} -% \end{macro} -% -% \paragraph{概要} -% -% \begin{environment}{abstract} -% -% 概要(要旨,梗概)を出力する環境です。 -% |book| クラスでは各章の初めにちょっとしたことを書くのに使います。 -% |titlepage| オプション付きの |article| クラスでは, -% 独立したページに出力されます。 -% |abstract| 環境は元は |quotation| 環境で作られていましたが, -% |quotation| 環境の右マージンをゼロにしたので, -% |list| 環境で作り直しました。 -% -% JSPFスタイルでは実際の出力は |\maketitle| で行われます。 -% -% \begin{macrocode} -%<*book> -\newenvironment{abstract}{% - \begin{list}{}{% - \listparindent=1zw - \itemindent=\listparindent - \rightmargin=0pt - \leftmargin=5zw}\item[]}{\end{list}\vspace{\baselineskip}} -% -%<*article|report|kiyou> -\newbox\@abstractbox -\if@titlepage - \newenvironment{abstract}{% - \titlepage - \null\vfil - \@beginparpenalty\@lowpenalty - \begin{center}% - \headfont \abstractname - \@endparpenalty\@M - \end{center}}% - {\par\vfil\null\endtitlepage} -\else - \newenvironment{abstract}{% - \if@twocolumn - \ifx\maketitle\relax - \section*{\abstractname}% - \else - \global\setbox\@abstractbox\hbox\bgroup - \begin{minipage}[b]{\textwidth} - \small\parindent1zw - \begin{center}% - {\headfont \abstractname\vspace{-.5em}\vspace{\z@}}% - \end{center}% - \list{}{% - \listparindent\parindent - \itemindent \listparindent - \rightmargin \leftmargin}% - \item\relax - \fi - \else - \small - \begin{center}% - {\headfont \abstractname\vspace{-.5em}\vspace{\z@}}% - \end{center}% - \list{}{% - \listparindent\parindent - \itemindent \listparindent - \rightmargin \leftmargin}% - \item\relax - \fi}{\if@twocolumn - \ifx\maketitle\relax - \else - \endlist\end{minipage}\egroup - \fi - \else - \endlist - \fi} -\fi -% -%<*jspf> -\newbox\@abstractbox -\newenvironment{abstract}{% - \global\setbox\@abstractbox\hbox\bgroup - \begin{minipage}[b]{157\jsc@mmm}{\sffamily Abstract}\par - \small - \if@english \parindent6\jsc@mmm \else \parindent1zw \fi}% - {\end{minipage}\egroup} -% -% \end{macrocode} -% \end{environment} -% -% \paragraph{キーワード} -% -% \begin{environment}{keywords} -% -% キーワードを準備する環境です。 -% 実際の出力は |\maketitle| で行われます。 -% -% \begin{macrocode} -%<*jspf> -%\newbox\@keywordsbox -%\newenvironment{keywords}{% -% \global\setbox\@keywordsbox\hbox\bgroup -% \begin{minipage}[b]{1570\jsc@mmm}{\sffamily Keywords:}\par -% \small\parindent0zw}% -% {\end{minipage}\egroup} -% -% \end{macrocode} -% \end{environment} -% -% \paragraph{verse環境} -% -% \begin{environment}{verse} -% -% 詩のための |verse| 環境です。 -% -% \begin{macrocode} -\newenvironment{verse}{% - \let \\=\@centercr - \list{}{% - \itemsep \z@ - \itemindent -2zw % 元: -1.5em - \listparindent\itemindent - \rightmargin \z@ - \advance\leftmargin 2zw}% 元: 1.5em - \item\relax}{\endlist} -% \end{macrocode} -% \end{environment} -% -% \paragraph{quotation環境} -% -% \begin{environment}{quotation} -% -% 段落の頭の字下げ量を1.5emから |\parindent| に変えました。 -% また,右マージンを 0 にしました。 -% -% \begin{macrocode} -\newenvironment{quotation}{% - \list{}{% - \listparindent\parindent - \itemindent\listparindent - \rightmargin \z@}% - \item\relax}{\endlist} -% \end{macrocode} -% \end{environment} -% -% \paragraph{quote環境} -% -% \begin{environment}{quote} -% -% |quote| 環境は,段落がインデントされないことを除き, -% |quotation| 環境と同じです。 -% -% \begin{macrocode} -\newenvironment{quote}% - {\list{}{\rightmargin\z@}\item\relax}{\endlist} -% \end{macrocode} -% \end{environment} -% -% \paragraph{定理など} -% -% |ltthm.dtx| 参照。たとえば次のように定義します。 -%\begin{verbatim} -% \newtheorem{definition}{定義} -% \newtheorem{axiom}{公理} -% \newtheorem{theorem}{定理} -%\end{verbatim} -% -% [2001-04-26] 定理の中はイタリック体になりましたが, -% これでは和文がゴシック体になってしまうので, -% |\itshape| を削除しました。 -% -% [2009-08-23] |\bfseries| を |\headfont| に直し, -% |\labelsep| を 1\,zw にし,括弧を全角にしました。 -% -% \begin{macrocode} -\def\@begintheorem#1#2{\trivlist\labelsep=1zw - \item[\hskip \labelsep{\headfont #1\ #2}]} -\def\@opargbegintheorem#1#2#3{\trivlist\labelsep=1zw - \item[\hskip \labelsep{\headfont #1\ #2(#3)}]} -% \end{macrocode} -% -% \begin{environment}{titlepage} -% -% タイトルを独立のページに出力するのに使われます。 -% -% [2017-02-24] コミュニティ版\pLaTeX の標準クラス2017/02/15に合わせて, -% bookクラスでタイトルを必ず奇数ページに送るようにしました。といっても, -% 横組クラスしかありませんでしたので,従来の挙動は何も変わっていません。 -% また,book以外の場合のページ番号のリセットもコミュニティ版\pLaTeX の -% 標準クラス2017/02/15に合わせましたが,こちらも片面印刷あるいは -% 独立のタイトルページを作らないクラスばかりでしたので,従来の挙動は -% 何も変わらずに済みました。 -% -% \begin{macrocode} -\newenvironment{titlepage}{% -% \pltx@cleartooddpage %% 2017-02-24 - \if@twocolumn - \@restonecoltrue\onecolumn - \else - \@restonecolfalse\newpage - \fi - \thispagestyle{empty}% - \ifodd\c@page\setcounter{page}\@ne\else\setcounter{page}\z@\fi %% 2017-02-24 - }% - {\if@restonecol\twocolumn \else \newpage \fi - \if@twoside\else - \setcounter{page}\@ne - \fi} -% \end{macrocode} -% \end{environment} -% -% \paragraph{付録} -% -% \begin{macro}{\appendix} -% -% 本文と付録を分離するコマンドです。 -% -% \begin{macrocode} -%<*!book&!report> -\newcommand{\appendix}{\par - \setcounter{section}{0}% - \setcounter{subsection}{0}% - \gdef\presectionname{\appendixname}% - \gdef\postsectionname{}% -% \gdef\thesection{\@Alph\c@section}% [2003-03-02] - \gdef\thesection{\presectionname\@Alph\c@section\postsectionname}% - \gdef\thesubsection{\@Alph\c@section.\@arabic\c@subsection}} -% -%<*book|report> -\newcommand{\appendix}{\par - \setcounter{chapter}{0}% - \setcounter{section}{0}% - \gdef\@chapapp{\appendixname}% - \gdef\@chappos{}% - \gdef\thechapter{\@Alph\c@chapter}} -% -% \end{macrocode} -% \end{macro} -% -% \subsection{パラメータの設定} -% -% \paragraph{arrayとtabular環境} -% -% \begin{macro}{\arraycolsep} -% -% |array| 環境の列間には |\arraycolsep| の2倍の幅の空きが入ります。 -% -% \begin{macrocode} -\setlength\arraycolsep{5\jsc@mpt} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\tabcolsep} -% -% |tabular| 環境の列間には |\tabcolsep| の2倍の幅の空きが入ります。 -% -% \begin{macrocode} -\setlength\tabcolsep{6\jsc@mpt} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\arrayrulewidth} -% -% |array|,|tabular| 環境内の罫線の幅です。 -% -% \begin{macrocode} -\setlength\arrayrulewidth{.4\jsc@mpt} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\doublerulesep} -% -% |array|,|tabular| 環境での二重罫線間のアキです。 -% -% \begin{macrocode} -\setlength\doublerulesep{2\jsc@mpt} -% \end{macrocode} -% \end{macro} -% -% \paragraph{tabbing環境} -% -% \begin{macro}{\tabbingsep} -% -% |\'| コマンドで入るアキです。 -% -% \begin{macrocode} -\setlength\tabbingsep{\labelsep} -% \end{macrocode} -% \end{macro} -% -% \paragraph{minipage環境} -% -% \begin{macro}{\@mpfootins} -% -% |minipage| 環境の脚注の |\skip|\hspace{0pt}|\@mpfootins| -% は通常のページの |\skip|\hspace{0pt}|\footins| -% と同じ働きをします。 -% -% \begin{macrocode} -\skip\@mpfootins = \skip\footins -% \end{macrocode} -% \end{macro} -% -% \paragraph{framebox環境} -% -% \begin{macro}{\fboxsep} -% -% |\fbox|,|\framebox| で内側のテキストと枠との間の空きです。 -% -% \begin{macro}{\fboxrule} -% -% |\fbox|,|\framebox| の罫線の幅です。 -% -% \begin{macrocode} -\setlength\fboxsep{3\jsc@mpt} -\setlength\fboxrule{.4\jsc@mpt} -% \end{macrocode} -% \end{macro} -% \end{macro} -% -% \paragraph{equationとeqnarray環境} -% -% \begin{macro}{\theequation} -% -% 数式番号を出力するコマンドです。 -% -% \begin{macrocode} -%\renewcommand \theequation {\@arabic\c@equation} -%<*book|report> -\@addtoreset{equation}{chapter} -\renewcommand\theequation - {\ifnum \c@chapter>\z@ \thechapter.\fi \@arabic\c@equation} -% -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\jot} -% -% |eqnarray| の行間に余分に入るアキです。 -% デフォルトの値をコメントアウトして示しておきます。 -% -% \begin{macrocode} -% \setlength\jot{3pt} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\@eqnnum} -% -% 数式番号の形式です。 -% デフォルトの値をコメントアウトして示しておきます。 -% -% |\inhibitglue (\theequation )\inhibitglue| のように和文かっこ -% を使うことも可能です。 -% -% \begin{macrocode} -% \def\@eqnnum{(\theequation)} -% \end{macrocode} -% \end{macro} -% -% |amsmath| パッケージを使う場合は |\tagform@| を次のように修正します。 -% -% \begin{macrocode} -% \def\tagform@#1{\maketag@@@{(\ignorespaces#1\unskip\@@italiccorr )}} -% \end{macrocode} -% -% \subsection{フロート} -% -% タイプ \texttt{TYPE} のフロートオブジェクトを -% 扱うには,次のマクロを定義します。 -% \begin{description} -% \item[\texttt{\bslash fps@TYPE}] -% フロートを置く位置(float placement specifier)です。 -% \item[\texttt{\bslash ftype@TYPE}] -% フロートの番号です。2の累乗(1,2,4,\ldots )でなければなりません。 -% \item[\texttt{\bslash ext@TYPE}] -% フロートの目次を出力するファイルの拡張子です。 -% \item[\texttt{\bslash fnum@TYPE}] -% キャプション用の番号を生成するマクロです。 -% \item[\texttt{\bslash @makecaption}{\meta{num}}{\meta{text}}] -% キャプションを出力するマクロです。 -% \meta{num} は |\fnum@...| の生成する番号, -% \meta{text} はキャプションのテキストです。 -% テキストは適当な幅の |\parbox| に入ります。 -% \end{description} -% -% \paragraph{figure環境} -% -% \begin{macro}{\c@figure} -% -% 図番号のカウンタです。 -% -% \begin{macro}{\thefigure} -% -% 図番号を出力するコマンドです。 -% -% \begin{macrocode} -%<*!book&!report> -\newcounter{figure} -\renewcommand \thefigure {\@arabic\c@figure} -% -%<*book|report> -\newcounter{figure}[chapter] -\renewcommand \thefigure - {\ifnum \c@chapter>\z@ \thechapter.\fi \@arabic\c@figure} -% -% \end{macrocode} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\fps@figure} -% \begin{macro}{\ftype@figure} -% \begin{macro}{\ext@figure} -% \begin{macro}{\fnum@figure} -% -% |figure| のパラメータです。 -% |\figurename| の直後に |~| が入っていましたが, -% ここでは外しました。 -% -% \begin{macrocode} -\def\fps@figure{tbp} -\def\ftype@figure{1} -\def\ext@figure{lof} -\def\fnum@figure{\figurename\nobreak\thefigure} -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% -% \begin{environment}{figure} -% \begin{environment}{figure*} -% -% |*| 形式は段抜きのフロートです。 -% -% \begin{macrocode} -\newenvironment{figure}% - {\@float{figure}}% - {\end@float} -\newenvironment{figure*}% - {\@dblfloat{figure}}% - {\end@dblfloat} -% \end{macrocode} -% \end{environment} -% \end{environment} -% -% \paragraph{table環境} -% -% \begin{macro}{\c@table} -% \begin{macro}{\thetable} -% -% 表番号カウンタと表番号を出力するコマンドです。 -% アスキー版では |\thechapter.| が |\thechapter{}・| になっていますが, -% ここではオリジナルのままにしています。 -% -% \begin{macrocode} -%<*!book&!report> -\newcounter{table} -\renewcommand\thetable{\@arabic\c@table} -% -%<*book|report> -\newcounter{table}[chapter] -\renewcommand \thetable - {\ifnum \c@chapter>\z@ \thechapter.\fi \@arabic\c@table} -% -% \end{macrocode} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\fps@table} -% \begin{macro}{\ftype@table} -% \begin{macro}{\ext@table} -% \begin{macro}{\fnum@table} -% -% |table| のパラメータです。 -% |\tablename| の直後に |~| が入っていましたが, -% ここでは外しました。 -% -% \begin{macrocode} -\def\fps@table{tbp} -\def\ftype@table{2} -\def\ext@table{lot} -\def\fnum@table{\tablename\nobreak\thetable} -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% -% \begin{environment}{table} -% \begin{environment}{table*} -% -% |*| は段抜きのフロートです。 -% -% \begin{macrocode} -\newenvironment{table}% - {\@float{table}}% - {\end@float} -\newenvironment{table*}% - {\@dblfloat{table}}% - {\end@dblfloat} -% \end{macrocode} -% \end{environment} -% \end{environment} -% -% \subsection{キャプション} -% -% \begin{macro}{\@makecaption} -% -% |\caption| コマンドにより呼び出され, -% 実際にキャプションを出力するコマンドです。 -% 第1引数はフロートの番号, -% 第2引数はテキストです。 -% -% \begin{macro}{\abovecaptionskip} -% \begin{macro}{\belowcaptionskip} -% -% それぞれキャプションの前後に挿入されるスペースです。 -% |\belowcaptionskip| が0になっていましたので, -% キャプションを表の上につけた場合にキャプションと表が -% くっついてしまうのを直しました。 -% -% \begin{macrocode} -\newlength\abovecaptionskip -\newlength\belowcaptionskip -\setlength\abovecaptionskip{5\jsc@mpt} % 元: 10\p@ -\setlength\belowcaptionskip{5\jsc@mpt} % 元: 0\p@ -% \end{macrocode} -% \end{macro} -% \end{macro} -% -% 実際のキャプションを出力します。 -% オリジナルと異なり,文字サイズを |\small| にし, -% キャプションの幅を2cm狭くしました。 -% -% [2003-11-05] ロジックを少し変えてみました。 -% -% [2018-12-11] 遅くなりましたが,|listings| パッケージを使うときに -% |title| を指定すると ``1zw'' が出力されてしまう -% 問題 (forum:1543,Issue \#71) に対処しました。 -% -% \begin{macrocode} -%<*!jspf> -% \long\def\@makecaption#1#2{{\small -% \advance\leftskip10\jsc@mmm -% \advance\rightskip10\jsc@mmm -% \vskip\abovecaptionskip -% \sbox\@tempboxa{#1\hskip1zw\relax #2}% -% \ifdim \wd\@tempboxa >\hsize -% #1\hskip1zw\relax #2\par -% \else -% \global \@minipagefalse -% \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}% -% \fi -% \vskip\belowcaptionskip}} -\long\def\@makecaption#1#2{{\small - \advance\leftskip .0628\linewidth - \advance\rightskip .0628\linewidth - \vskip\abovecaptionskip - \sbox\@tempboxa{#1\hskip1zw\relax #2}% - \ifdim \wd\@tempboxa <\hsize \centering \fi - #1{\hskip1zw\relax}#2\par - \vskip\belowcaptionskip}} -% -%<*jspf> -\long\def\@makecaption#1#2{% - \vskip\abovecaptionskip - \sbox\@tempboxa{\small\sffamily #1\quad #2}% - \ifdim \wd\@tempboxa >\hsize - {\small\sffamily - \list{#1}{% - \renewcommand{\makelabel}[1]{##1\hfil} - \itemsep \z@ - \itemindent \z@ - \labelsep \z@ - \labelwidth 11\jsc@mmm - \listparindent\z@ - \leftmargin 11\jsc@mmm}\item\relax #2\endlist} - \else - \global \@minipagefalse - \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}% - \fi - \vskip\belowcaptionskip} -% -% \end{macrocode} -% \end{macro} -% -% \section{フォントコマンド} -% -% ここでは\LaTeX~2.09で使われていたコマンドを定義します。 -% これらはテキストモードと数式モードのどちらでも動作します。 -% これらは互換性のためのもので, -% できるだけ |\text...| と |\math...| を使ってください。 -% -% \begin{macro}{\mc} -% \begin{macro}{\gt} -% \begin{macro}{\rm} -% \begin{macro}{\sf} -% \begin{macro}{\tt} -% -% フォントファミリを変更します。 -% -% \begin{macrocode} -\DeclareOldFontCommand{\mc}{\normalfont\mcfamily}{\mathmc} -\DeclareOldFontCommand{\gt}{\normalfont\gtfamily}{\mathgt} -\DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm} -\DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf} -\DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt} -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\bf} -% -% ボールドシリーズにします。通常のミーディアムシリーズに戻す -% コマンドは |\mdseries| です。 -% -% \begin{macrocode} -\DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\it} -% \begin{macro}{\sl} -% \begin{macro}{\sc} -% -% フォントシェイプを変えるコマンドです。 -% 斜体とスモールキャップスは数式中では何もしません -% (警告メッセージを出力します)。 -% 通常のアップライト体に戻すコマンドは |\upshape| です。 -% -% \begin{macrocode} -\DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit} -\DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl} -\DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc} -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\cal} -% \begin{macro}{\mit} -% -% 数式モード以外では何もしません(警告を出します)。 -% -% \begin{macrocode} -\DeclareRobustCommand*{\cal}{\@fontswitch\relax\mathcal} -\DeclareRobustCommand*{\mit}{\@fontswitch\relax\mathnormal} -% \end{macrocode} -% \end{macro} -% \end{macro} -% -% \section{相互参照} -% -% \subsection{目次の類} -% -% |\section| コマンドは |.toc| ファイルに次のような行を出力します。 -% \begin{quote} -% |\contentsline{section}{タイトル}{ページ}| -% \end{quote} -% たとえば |\section| に見出し番号が付く場合,上の「タイトル」は -% \begin{quote} -% |\numberline{番号}{見出し}| -% \end{quote} -% となります。 -% この「番号」は |\thesection| コマンドで生成された見出し番号です。 -% -% |figure| 環境の |\caption| コマンドは |.lof| ファイルに -% 次のような行を出力します。 -% \begin{quote} -% |\contentsline{figure}{\numberline{番号}{キャプション}{ページ}| -% \end{quote} -% この「番号」は |\thefigure| コマンドで生成された図番号です。 -% -% |table| 環境も同様です。 -% -% |\contentsline{...}| は |\l@...| というコマンドを実行するので, -% あらかじめ |\l@chapter|,|\l@section|,|\l@figure| などを -% 定義しておかなければなりません。 -% これらの多くは |\@dottedtocline| コマンドを使って定義します。 -% これは -% \begin{quote} -% |\@dottedtocline{レベル}{インデント}{幅}{タイトル}{ページ}| -% \end{quote} -% という書式です。 -% \begin{description} -% \item[レベル] この値が |tocdepth| 以下のときだけ出力されます。 -% |\chapter| はレベル0,|\section| はレベル1,等々です。 -% \item[インデント] 左側の字下げ量です。 -% \item[幅] 「タイトル」に |\numberline| コマンドが含まれる場合, -% 節番号が入る箱の幅です。 -% \end{description} -% -% \begin{macro}{\@pnumwidth} -% -% ページ番号の入る箱の幅です。 -% -% \begin{macro}{\@tocrmarg} -% -% 右マージンです。 -% |\@tocrmarg| $\ge$ |\@pnumwidth| とします。 -% -% \begin{macro}{\@dotsep} -% -% 点の間隔です(単位 mu)。 -% -% \begin{macro}{\c@tocdepth} -% -% 目次ページに出力する見出しレベルです。 -% 元は \texttt{article} で3,その他で2でしたが, -% ここでは一つずつ減らしています。 -% -% \begin{macrocode} -\newcommand\@pnumwidth{1.55em} -\newcommand\@tocrmarg{2.55em} -\newcommand\@dotsep{4.5} -%\setcounter{tocdepth}{2} -%\setcounter{tocdepth}{1} -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% -% \paragraph{目次} -% -% \begin{macro}{\tableofcontents} -% -% 目次を生成します。 -% -% \begin{macro}{\jsc@tocl@width} -% -% [2013-12-30] |\prechaptername| などから見積もった目次のラベルの長さです。(by ts) -% -% \begin{macrocode} -\newdimen\jsc@tocl@width -\newcommand{\tableofcontents}{% -%<*book|report> - \settowidth\jsc@tocl@width{\headfont\prechaptername\postchaptername}% - \settowidth\@tempdima{\headfont\appendixname}% - \ifdim\jsc@tocl@width<\@tempdima \setlength\jsc@tocl@width{\@tempdima}\fi - \ifdim\jsc@tocl@width<2zw \divide\jsc@tocl@width by 2 \advance\jsc@tocl@width 1zw\fi - \if@twocolumn - \@restonecoltrue\onecolumn - \else - \@restonecolfalse - \fi - \chapter*{\contentsname}% - \@mkboth{\contentsname}{}% -% -%<*!book&!report> - \settowidth\jsc@tocl@width{\headfont\presectionname\postsectionname}% - \settowidth\@tempdima{\headfont\appendixname}% - \ifdim\jsc@tocl@width<\@tempdima\relax\setlength\jsc@tocl@width{\@tempdima}\fi - \ifdim\jsc@tocl@width<2zw \divide\jsc@tocl@width by 2 \advance\jsc@tocl@width 1zw\fi - \section*{\contentsname}% - \@mkboth{\contentsname}{\contentsname}% -% - \@starttoc{toc}% -% \if@restonecol\twocolumn\fi -} -% \end{macrocode} -% \end{macro}\end{macro} -% -% \begin{macro}{\l@part} -% -% 部の目次です。 -% -% \begin{macrocode} -\newcommand*{\l@part}[2]{% - \ifnum \c@tocdepth >-2\relax -% \addpenalty\@secpenalty -% \addpenalty{-\@highpenalty}% - \addvspace{2.25em \@plus\jsc@mpt}% - \begingroup - \parindent \z@ -% \@pnumwidth should be \@tocrmarg -% \rightskip \@pnumwidth - \rightskip \@tocrmarg - \parfillskip -\rightskip - {\leavevmode - \large \headfont - \setlength\@lnumwidth{4zw}% - #1\hfil \hb@xt@\@pnumwidth{\hss #2}}\par - \nobreak -% \global\@nobreaktrue -% \everypar{\global\@nobreakfalse\everypar{}}% - \endgroup - \fi} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\l@chapter} -% -% 章の目次です。|\@lnumwidth| を4.683zwに増やしました。 -% -% [2013-12-30] |\@lnumwidth| を |\jsc@tocl@width| から -% 決めるようにしてみました。(by ts) -% -% \begin{macrocode} -%<*book|report> -\newcommand*{\l@chapter}[2]{% - \ifnum \c@tocdepth >\m@ne - \addpenalty{-\@highpenalty}% - \addvspace{1.0em \@plus\jsc@mpt} -% \vskip 1.0em \@plus\p@ % book.clsでは↑がこうなっている - \begingroup - \parindent\z@ -% \rightskip\@pnumwidth - \rightskip\@tocrmarg - \parfillskip-\rightskip - \leavevmode\headfont - % \if@english\setlength\@lnumwidth{5.5em}\else\setlength\@lnumwidth{4.683zw}\fi - \setlength\@lnumwidth{\jsc@tocl@width}\advance\@lnumwidth 2.683zw - \advance\leftskip\@lnumwidth \hskip-\leftskip - #1\nobreak\hfil\nobreak\hbox to\@pnumwidth{\hss#2}\par - \penalty\@highpenalty - \endgroup - \fi} -% -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\l@section} -% -% 節の目次です。 -% -% \begin{macrocode} -%<*!book&!report> -\newcommand*{\l@section}[2]{% - \ifnum \c@tocdepth >\z@ - \addpenalty{\@secpenalty}% - \addvspace{1.0em \@plus\jsc@mpt}% - \begingroup - \parindent\z@ -% \rightskip\@pnumwidth - \rightskip\@tocrmarg - \parfillskip-\rightskip - \leavevmode\headfont - %\setlength\@lnumwidth{4zw}% 元1.5em [2003-03-02] - \setlength\@lnumwidth{\jsc@tocl@width}\advance\@lnumwidth 2zw - \advance\leftskip\@lnumwidth \hskip-\leftskip - #1\nobreak\hfil\nobreak\hbox to\@pnumwidth{\hss#2}\par - \endgroup - \fi} -% -% \end{macrocode} -% -% インデントと幅はそれぞれ1.5em,2.3emでしたが, -% 1zw,3.683zwに変えました。 -% \begin{macrocode} -% % \newcommand*{\l@section}{\@dottedtocline{1}{1zw}{3.683zw}} -% \end{macrocode} -% -% [2013-12-30] 上のインデントは |\jsc@tocl@width| から決めるように -% しました。(by ts) -% -% \end{macro} -% -% \begin{macro}{\l@subsection} -% \begin{macro}{\l@subsubsection} -% \begin{macro}{\l@paragraph} -% \begin{macro}{\l@subparagraph} -% -% さらに下位レベルの目次項目の体裁です。 -% あまり使ったことがありませんので,要修正かもしれません。 -% -% [2013-12-30] ここも |\jsc@tocl@width| から決めるように -% してみました。(by ts) -% -% \begin{macrocode} -%<*!book&!report> -% \newcommand*{\l@subsection} {\@dottedtocline{2}{1.5em}{2.3em}} -% \newcommand*{\l@subsubsection}{\@dottedtocline{3}{3.8em}{3.2em}} -% \newcommand*{\l@paragraph} {\@dottedtocline{4}{7.0em}{4.1em}} -% \newcommand*{\l@subparagraph} {\@dottedtocline{5}{10em}{5em}} -% -% \newcommand*{\l@subsection} {\@dottedtocline{2}{1zw}{3zw}} -% \newcommand*{\l@subsubsection}{\@dottedtocline{3}{2zw}{3zw}} -% \newcommand*{\l@paragraph} {\@dottedtocline{4}{3zw}{3zw}} -% \newcommand*{\l@subparagraph} {\@dottedtocline{5}{4zw}{3zw}} -% -\newcommand*{\l@subsection}{% - \@tempdima\jsc@tocl@width \advance\@tempdima -1zw - \@dottedtocline{2}{\@tempdima}{3zw}} -\newcommand*{\l@subsubsection}{% - \@tempdima\jsc@tocl@width \advance\@tempdima 0zw - \@dottedtocline{3}{\@tempdima}{4zw}} -\newcommand*{\l@paragraph}{% - \@tempdima\jsc@tocl@width \advance\@tempdima 1zw - \@dottedtocline{4}{\@tempdima}{5zw}} -\newcommand*{\l@subparagraph}{% - \@tempdima\jsc@tocl@width \advance\@tempdima 2zw - \@dottedtocline{5}{\@tempdima}{6zw}} -% -%<*book|report> -% \newcommand*{\l@subsection} {\@dottedtocline{2}{3.8em}{3.2em}} -% \newcommand*{\l@subsubsection}{\@dottedtocline{3}{7.0em}{4.1em}} -% \newcommand*{\l@paragraph} {\@dottedtocline{4}{10em}{5em}} -% \newcommand*{\l@subparagraph} {\@dottedtocline{5}{12em}{6em}} -\newcommand*{\l@section}{% - \@tempdima\jsc@tocl@width \advance\@tempdima -1zw - \@dottedtocline{1}{\@tempdima}{3.683zw}} -\newcommand*{\l@subsection}{% - \@tempdima\jsc@tocl@width \advance\@tempdima 2.683zw - \@dottedtocline{2}{\@tempdima}{3.5zw}} -\newcommand*{\l@subsubsection}{% - \@tempdima\jsc@tocl@width \advance\@tempdima 6.183zw - \@dottedtocline{3}{\@tempdima}{4.5zw}} -\newcommand*{\l@paragraph}{% - \@tempdima\jsc@tocl@width \advance\@tempdima 10.683zw - \@dottedtocline{4}{\@tempdima}{5.5zw}} -\newcommand*{\l@subparagraph}{% - \@tempdima\jsc@tocl@width \advance\@tempdima 16.183zw - \@dottedtocline{5}{\@tempdima}{6.5zw}} -% -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\numberline} -% \begin{macro}{\@lnumwidth} -% -% 欧文版\LaTeX では |\numberline{...}| は幅 |\@tempdima| の箱に左詰め -% で出力する命令ですが, -% アスキー版では |\@tempdima| の代わりに |\@lnumwidth| という変数 -% で幅を決めるように再定義しています。 -% 後続文字が全角か半角かでスペースが変わらないように |\hspace| -% を入れておきました。 -% -% \begin{macrocode} -\newdimen\@lnumwidth -\def\numberline#1{\hb@xt@\@lnumwidth{#1\hfil}\hspace{0pt}} -% \end{macrocode} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\@dottedtocline} -% \begin{macro}{\jsTocLine} -% -% \LaTeX 本体(\texttt{ltsect.dtx} 参照)での定義と同じですが, -% |\@tempdima| を |\@lnumwidth| に変えています。 -% -% [2018-06-23] デフォルトでは\jsTocLine のようにベースラインになります。\par -% これを変更可能にするため,|\jsTocLine| というマクロに切り出しました。 -% 例えば,仮想ボディの中央 -% {\renewcommand{\jsTocLine}{\leaders \hbox {\hss ・\hss}\hfill}\jsTocLine} -% に変更したい場合は -%\begin{verbatim} -% \renewcommand{\jsTocLine}{\leaders \hbox {\hss ・\hss}\hfill} -%\end{verbatim} -% とします。 -% -% \begin{macrocode} -\def\jsTocLine{\leaders\hbox{% - $\m@th \mkern \@dotsep mu\hbox{.}\mkern \@dotsep mu$}\hfill} -\def\@dottedtocline#1#2#3#4#5{\ifnum #1>\c@tocdepth \else - \vskip \z@ \@plus.2\jsc@mpt - {\leftskip #2\relax \rightskip \@tocrmarg \parfillskip -\rightskip - \parindent #2\relax\@afterindenttrue - \interlinepenalty\@M - \leavevmode - \@lnumwidth #3\relax - \advance\leftskip \@lnumwidth \null\nobreak\hskip -\leftskip - {#4}\nobreak - \jsTocLine \nobreak\hb@xt@\@pnumwidth{% - \hfil\normalfont \normalcolor #5}\par}\fi} -% \end{macrocode} -% \end{macro} -% \end{macro} -% -% \paragraph{図目次と表目次} -% -% \begin{macro}{\listoffigures} -% -% 図目次を出力します。 -% -% \begin{macrocode} -\newcommand{\listoffigures}{% -%<*book|report> - \if@twocolumn\@restonecoltrue\onecolumn - \else\@restonecolfalse\fi - \chapter*{\listfigurename}% - \@mkboth{\listfigurename}{}% -% -%<*!book&!report> - \section*{\listfigurename}% - \@mkboth{\listfigurename}{\listfigurename}% -% - \@starttoc{lof}% -% \if@restonecol\twocolumn\fi -} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\l@figure} -% -% 図目次の項目を出力します。 -% -% \begin{macrocode} -\newcommand*{\l@figure}{\@dottedtocline{1}{1zw}{3.683zw}} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\listoftables} -% -% 表目次を出力します。 -% -% \begin{macrocode} -\newcommand{\listoftables}{% -%<*book|report> - \if@twocolumn\@restonecoltrue\onecolumn - \else\@restonecolfalse\fi - \chapter*{\listtablename}% - \@mkboth{\listtablename}{}% -% -%<*!book&!report> - \section*{\listtablename}% - \@mkboth{\listtablename}{\listtablename}% -% - \@starttoc{lot}% -% \if@restonecol\twocolumn\fi -} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\l@table} -% -% 表目次は図目次と同じです。 -% -% \begin{macrocode} -\let\l@table\l@figure -% \end{macrocode} -% \end{macro} -% -% \subsection{参考文献} -% -% \begin{macro}{\bibindent} -% -% オープンスタイルの参考文献で使うインデント幅です。 -% 元は 1.5em でした。 -% -% \begin{macrocode} -\newdimen\bibindent -\setlength\bibindent{2zw} -% \end{macrocode} -% \end{macro} -% -% \begin{environment}{thebibliography} -% -% 参考文献リストを出力します。 -% -% \begin{macrocode} -\newenvironment{thebibliography}[1]{% - \global\let\presectionname\relax - \global\let\postsectionname\relax -% \section*{\refname}\@mkboth{\refname}{\refname}% -%<*kiyou> - \vspace{1.5\baselineskip} - \subsubsection*{\refname}\@mkboth{\refname}{\refname}% - \vspace{0.5\baselineskip} -% -% \chapter*{\bibname}\@mkboth{\bibname}{}% -% \addcontentsline{toc}{chapter}{\bibname}% - \list{\@biblabel{\@arabic\c@enumiv}}% - {\settowidth\labelwidth{\@biblabel{#1}}% - \leftmargin\labelwidth - \advance\leftmargin\labelsep - \@openbib@code - \usecounter{enumiv}% - \let\p@enumiv\@empty - \renewcommand\theenumiv{\@arabic\c@enumiv}}% -% \small - \sloppy - \clubpenalty4000 - \@clubpenalty\clubpenalty - \widowpenalty4000% - \sfcode`\.\@m} - {\def\@noitemerr - {\@latex@warning{Empty `thebibliography' environment}}% - \endlist} -% \end{macrocode} -% \end{environment} -% -% \begin{macro}{\newblock} -% -% |\newblock| はデフォルトでは小さなスペースを生成します。 -% -% \begin{macrocode} -\newcommand{\newblock}{\hskip .11em\@plus.33em\@minus.07em} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\@openbib@code} -% -% |\@openbib@code| はデフォルトでは何もしません。 -% この定義は |openbib| オプションによって変更されます。 -% -% \begin{macrocode} -\let\@openbib@code\@empty -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\@biblabel} -% -% |\bibitem[...]| のラベルを作ります。 -% \texttt{ltbibl.dtx} の定義の半角 [] を全角[]に変え, -% 余分なスペースが入らないように |\inhibitglue| ではさみました。 -% とりあえずコメントアウトしておきますので,必要に応じて生かしてください。 -% -% \begin{macrocode} -% \def\@biblabel#1{\inhibitglue [#1]\inhibitglue} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\cite} -% \begin{macro}{\@cite} -% \begin{macro}{\@citex} -% -% 文献の番号を出力する部分は \texttt{ltbibl.dtx} で定義されていますが, -% コンマとかっこを和文フォントにするには次のようにします。 -% とりあえずコメントアウトしておきましたので,必要に応じて生かしてください。 -% かっこの前後に入るグルーを |\inhibitglue| で取っていますので, -% オリジナル同様,\verb*+Knuth~\cite{knu} + のように半角空白 -% で囲んでください。 -% -% \begin{macrocode} -% \def\@citex[#1]#2{\leavevmode -% \let\@citea\@empty -% \@cite{\@for\@citeb:=#2\do -% {\@citea\def\@citea{,\inhibitglue\penalty\@m\ }% -% \edef\@citeb{\expandafter\@firstofone\@citeb\@empty}% -% \if@filesw\immediate\write\@auxout{\string\citation{\@citeb}}\fi -% \@ifundefined{b@\@citeb}{\mbox{\normalfont\bfseries ?}% -% \G@refundefinedtrue -% \@latex@warning -% {Citation `\@citeb' on page \thepage \space undefined}}% -% {\@cite@ofmt{\csname b@\@citeb\endcsname}}}}{#1}} -% \def\@cite#1#2{\inhibitglue [{#1\if@tempswa ,#2\fi}]\inhibitglue} -% \end{macrocode} -% -% 引用番号を上ツキの 1)のようなスタイルにするには次のようにします。 -% |\cite| の先頭に |\unskip| を付けて先行のスペース(\verb|~| も) -% を帳消しにしています。 -% -% \begin{macrocode} -% \DeclareRobustCommand\cite{\unskip -% \@ifnextchar [{\@tempswatrue\@citex}{\@tempswafalse\@citex[]}} -% \def\@cite#1#2{$^{\hbox{\scriptsize{#1\if@tempswa -% ,\inhibitglue\ #2\fi})}}$} -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% -% \subsection{索引} -% -% \begin{environment}{theindex} -% -% 2〜3段組の索引を作成します。 -% 最後が偶数ページのときにマージンがずれる現象を直しました(Thanks: 藤村さん)。 -% -% \begin{macrocode} -\newenvironment{theindex}{% 索引を3段組で出力する環境 - \if@twocolumn - \onecolumn\@restonecolfalse - \else - \clearpage\@restonecoltrue - \fi - \columnseprule.4pt \columnsep 2zw - \ifx\multicols\@undefined -% \twocolumn[\@makeschapterhead{\indexname}% -% \addcontentsline{toc}{chapter}{\indexname}]% -% \def\presectionname{}\def\postsectionname{}% -% \twocolumn[\section*{\indexname}]% - \else - \ifdim\textwidth<\fullwidth - \setlength{\evensidemargin}{\oddsidemargin} - \setlength{\textwidth}{\fullwidth} - \setlength{\linewidth}{\fullwidth} -% \begin{multicols}{3}[\chapter*{\indexname}% -% \addcontentsline{toc}{chapter}{\indexname}]% -% \def\presectionname{}\def\postsectionname{}% -% \begin{multicols}{3}[\section*{\indexname}]% - \else -% \begin{multicols}{2}[\chapter*{\indexname}% -% \addcontentsline{toc}{chapter}{\indexname}]% -% \def\presectionname{}\def\postsectionname{}% -% \begin{multicols}{2}[\section*{\indexname}]% - \fi - \fi -% \@mkboth{\indexname}{}% -% \@mkboth{\indexname}{\indexname}% - \plainifnotempty % \thispagestyle{plain} - \parindent\z@ - \parskip\z@ \@plus .3\jsc@mpt\relax - \let\item\@idxitem - \raggedright - \footnotesize\narrowbaselines - }{ - \ifx\multicols\@undefined - \if@restonecol\onecolumn\fi - \else - \end{multicols} - \fi - \clearpage - } -% \end{macrocode} -% \end{environment} -% -% \begin{macro}{\@idxitem} -% \begin{macro}{\subitem} -% \begin{macro}{\subsubitem} -% -% 索引項目の字下げ幅です。|\@idxitem| は |\item| の項目の字下げ幅です。 -% -% \begin{macrocode} -\newcommand{\@idxitem}{\par\hangindent 4zw} % 元 40pt -\newcommand{\subitem}{\@idxitem \hspace*{2zw}} % 元 20pt -\newcommand{\subsubitem}{\@idxitem \hspace*{3zw}} % 元 30pt -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\indexspace} -% -% 索引で先頭文字ごとのブロックの間に入るスペースです。 -% -% \begin{macrocode} -\newcommand{\indexspace}{\par \vskip 10\jsc@mpt \@plus5\jsc@mpt \@minus3\jsc@mpt\relax} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\seename} -% \begin{macro}{\alsoname} -% -% 索引の |\see|,|\seealso| コマンドで出力されるものです。 -% デフォルトはそれぞれ \emph{see},\emph{see also} という英語ですが, -% ここではとりあえず両方とも「→」に変えました。 -% $\Rightarrow$(|$\Rightarrow$|)などでもいいでしょう。 -% -% \begin{macrocode} -\newcommand\seename{\if@english see\else →\fi} -\newcommand\alsoname{\if@english see also\else →\fi} -% \end{macrocode} -% \end{macro} -% \end{macro} -% -% \subsection{脚注} -% -% \begin{macro}{\footnote} -% \begin{macro}{\footnotemark} -% -% 和文の句読点・閉じかっこ類の直後で用いた際に -% 余分なアキが入るのを防ぐため, -% |\inhibitglue| を入れることにします。 -% p\LaTeX の日付が2016/09/03より新しい場合は,このパッチが不要なのであてません。 -% -% \begin{macrocode} -\@ifl@t@r\pfmtversion{2016/09/03} - {\jsc@needsp@tchfalse}{\jsc@needsp@tchtrue} -\ifjsc@needsp@tch - \let\footnotes@ve=\footnote - \def\footnote{\inhibitglue\footnotes@ve} - \let\footnotemarks@ve=\footnotemark - \def\footnotemark{\inhibitglue\footnotemarks@ve} -\fi -% \end{macrocode} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\@makefnmark} -% -% 脚注番号を付ける命令です。 -% ここでは脚注番号の前に記号 $*$ を付けています。 -% 「注1」の形式にするには |\textasteriskcentered| -% を |注\kern0.1em| にしてください。 -% |\@xfootnotenext| と合わせて, -% もし脚注番号が空なら記号も出力しないようにしてあります。 -% -% [2002-04-09] インプリメントの仕方を変えたため消しました。 -% -% [2013-04-23] 新しい\pTeX では脚注番号のまわりにスペースが入りすぎることを防ぐため, -% 北川さんのパッチ [qa:57090] を取り込みました。 -% -% [2013-05-14] plcore.ltx に倣った形に書き直しました(Thanks: 北川さん)。 -% -% [2016-07-11] コミュニティ版p\LaTeX の変更に追随しました(Thanks: 角藤さん)。 -% p\LaTeX の日付が2016/04/17より新しい場合は,このパッチが不要なのであてません。 -% -% \begin{macrocode} -\@ifl@t@r\pfmtversion{2016/04/17} - {\jsc@needsp@tchfalse}{\jsc@needsp@tchtrue} -\ifjsc@needsp@tch -\renewcommand\@makefnmark{% - \ifydir \hbox{}\hbox{\@textsuperscript{\normalfont\@thefnmark}}\hbox{}% - \else\hbox{\yoko\@textsuperscript{\normalfont\@thefnmark}}\fi} -\fi -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\thefootnote} -% -% 脚注番号に * 印が付くようにしました。 -% ただし,番号がゼロのときは * 印も脚注番号も付きません。 -% -% [2003-08-15] |\textasteriskcentered| ではフォントによって -% 下がりすぎるので変更しました。 -% -% [2016-10-08] TODO: 脚注番号が |newtxtext| や |newpxtext| の使用時に -% おかしくなってしまいます。これらのパッケージは内部で |\thefootnote| を -% 再定義していますので,気になる場合はパッケージを読み込むときに -% \texttt{defaultsups} オプションを付けてください(qa:57284, qa:57287)。 -% -% \begin{macrocode} -\def\thefootnote{\ifnum\c@footnote>\z@\leavevmode\lower.5ex\hbox{*}\@arabic\c@footnote\fi} -% \end{macrocode} -% -% 「注1」の形式にするには次のようにしてください。 -% -% \begin{macrocode} -% \def\thefootnote{\ifnum\c@footnote>\z@ 注\kern0.1zw\@arabic\c@footnote\fi} -% \end{macrocode} -% -% \end{macro} -% -% \begin{macro}{\footnoterule} -% -% 本文と脚注の間の罫線です。 -% -% \begin{macrocode} -\renewcommand{\footnoterule}{% - \kern-3\jsc@mpt - \hrule width .4\columnwidth height 0.4\jsc@mpt - \kern 2.6\jsc@mpt} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\c@footnote} -% -% 脚注番号は章ごとにリセットされます。 -% -% \begin{macrocode} -%\@addtoreset{footnote}{chapter} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\@footnotetext} -% -% 脚注で |\verb| が使えるように改変してあります。 -% Jeremy Gibbons, \textit{\TeX\ and TUG NEWS}, -% Vol.~2, No.~4 (1993), p.~9) -% -% [2016-08-25] コミュニティ版\pLaTeX の「閉じ括弧類の直後に -% |\footnotetext| が続く場合に改行が起きることがある問題に対処」 -% と同等のコードを追加しました。 -% -% [2016-09-08] コミュニティ版\pLaTeX のバグ修正に追随しました。 -% -% [2016-11-29] 古い\pLaTeX で使用された場合を考慮してコードを改良。 -% ^^A 脚注直後に改行を可能にするために|\null|を入れる場合, -% ^^A 同時にペナルティも考慮しなければ誤った改行が起きる可能性がある。 -% ^^A このため,|\ifhmode\null\fi|は -% ^^A |\ifx\pltx@foot@penalty\@undefined\else ... \fi| -% ^^A 条件の内側に置いておくのが安全。 -% -% [2018-03-11] |\next|などいくつかの内部命令を |\jsc@...| 付きの -% ユニークな名前にしました。 -% \begin{macrocode} -\long\def\@footnotetext{% - \insert\footins\bgroup - \normalfont\footnotesize - \interlinepenalty\interfootnotelinepenalty - \splittopskip\footnotesep - \splitmaxdepth \dp\strutbox \floatingpenalty \@MM - \hsize\columnwidth \@parboxrestore - \protected@edef\@currentlabel{% - \csname p@footnote\endcsname\@thefnmark - }% - \color@begingroup - \@makefntext{% - \rule\z@\footnotesep\ignorespaces}% - \futurelet\jsc@next\jsc@fo@t} -\def\jsc@fo@t{\ifcat\bgroup\noexpand\jsc@next \let\jsc@next\jsc@f@@t - \else \let\jsc@next\jsc@f@t\fi \jsc@next} -\def\jsc@f@@t{\bgroup\aftergroup\jsc@@foot\let\jsc@next} -\def\jsc@f@t#1{#1\jsc@@foot} -\def\jsc@@foot{\@finalstrut\strutbox\color@endgroup\egroup - \ifx\pltx@foot@penalty\@undefined\else - \ifhmode\null\fi - \ifnum\pltx@foot@penalty=\z@\else - \penalty\pltx@foot@penalty - \pltx@foot@penalty\z@ - \fi - \fi} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\@makefntext} -% -% 実際に脚注を出力する命令です。 -% |\@makefnmark| は脚注の番号を出力する命令です。 -% ここでは脚注が左端から一定距離に来るようにしてあります。 -% -% \begin{macrocode} -\newcommand\@makefntext[1]{% - \advance\leftskip 3zw - \parindent 1zw - \noindent - \llap{\@makefnmark\hskip0.3zw}#1} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\@xfootnotenext} -% -% 最初の |\footnotetext{...}| は番号が付きません。 -% 著者の所属などを脚注の欄に書くときに便利です。 -% -% すでに |\footnote| を使った後なら |\footnotetext[0]{...}| -% とすれば番号を付けない脚注になります。 -% ただし,この場合は脚注番号がリセットされてしまうので, -% 工夫が必要です。 -% -% [2002-04-09] インプリメントの仕方を変えたため消しました。 -% -% \begin{macrocode} -% \def\@xfootnotenext[#1]{% -% \begingroup -% \ifnum#1>\z@ -% \csname c@\@mpfn\endcsname #1\relax -% \unrestored@protected@xdef\@thefnmark{\thempfn}% -% \else -% \unrestored@protected@xdef\@thefnmark{}% -% \fi -% \endgroup -% \@footnotetext} -% \end{macrocode} -% \end{macro} -% -% \section{段落の頭へのグルー挿入禁止} -% -% 段落頭のかぎかっこなどを見かけ1字半下げから全角1字下げに直します。 -% -% [2016-07-18] |\inhibitglue| の発行対象を |\inhibitxspcode| が2に -% 設定されているものすべてに拡大しました。 -% -% [2016-12-01] すぐ上の変更で |\@tempa| を使っていたのがよくなかった -% ので,プレフィックスを付けて |\jsc@tempa| にしました(forum:2085)。 -% -% [2017-02-13] |\jsc@tempa| は実はテンポラリではなく「この処理専用の -% ユニーク制御綴」である必要があります。間違って別の箇所で使う危険性が -% 高いので,専用の命令 |\jsc@ig@temp| に置き換えました(Issue \#54)。 -% -% \begin{macrocode} -\def\@inhibitglue{% - \futurelet\@let@token\@@inhibitglue} -\begingroup -\let\GDEF=\gdef -\let\CATCODE=\catcode -\let\ENDGROUP=\endgroup -\CATCODE`k=12 -\CATCODE`a=12 -\CATCODE`n=12 -\CATCODE`j=12 -\CATCODE`i=12 -\CATCODE`c=12 -\CATCODE`h=12 -\CATCODE`r=12 -\CATCODE`t=12 -\CATCODE`e=12 -\GDEF\KANJI@CHARACTER{kanji character } -\ENDGROUP -\def\@@inhibitglue{% - \expandafter\expandafter\expandafter\jsc@inhibitglue\expandafter\meaning\expandafter\@let@token\KANJI@CHARACTER\relax\jsc@end} -\expandafter\def\expandafter\jsc@inhibitglue\expandafter#\expandafter1\KANJI@CHARACTER#2#3\jsc@end{% - \def\jsc@ig@temp{#1}% - \ifx\jsc@ig@temp\@empty - \ifnum\the\inhibitxspcode`#2=2\relax - \inhibitglue - \fi - \fi} -\let\everyparhook=\@inhibitglue -\AtBeginDocument{\everypar{\everyparhook}} -% \end{macrocode} -% -% これだけではいけないようです。あちこちに |\everypar| を初期化するコマンドが -% 隠されていました。 -% -% まず,環境の直後の段落です。 -% -% [2016-11-19] ltlists.dtx 2015/05/10 v1.0tの変更に追随して |\clubpenalty| の -% リセットを追加しました。 -% -% \begin{macrocode} -\def\@doendpe{% - \@endpetrue - \def\par{% - \@restorepar\clubpenalty\@clubpenalty\everypar{\everyparhook}\par\@endpefalse}% - \everypar{{\setbox\z@\lastbox}\everypar{\everyparhook}\@endpefalse\everyparhook}} -% \end{macrocode} -% -% [2017-08-31] minipage環境にも対策します。 -% -% \begin{macrocode} -\def\@setminipage{% - \@minipagetrue - \everypar{\@minipagefalse\everypar{\everyparhook}}% -} -% \end{macrocode} -% -% |\item| 命令の直後です。 -% -% \begin{macrocode} -\def\@item[#1]{% - \if@noparitem - \@donoparitem - \else - \if@inlabel - \indent \par - \fi - \ifhmode - \unskip\unskip \par - \fi - \if@newlist - \if@nobreak - \@nbitem - \else - \addpenalty\@beginparpenalty - \addvspace\@topsep - \addvspace{-\parskip}% - \fi - \else - \addpenalty\@itempenalty - \addvspace\itemsep - \fi - \global\@inlabeltrue - \fi - \everypar{% - \@minipagefalse - \global\@newlistfalse - \if@inlabel - \global\@inlabelfalse - {\setbox\z@\lastbox - \ifvoid\z@ - \kern-\itemindent - \fi}% - \box\@labels - \penalty\z@ - \fi - \if@nobreak - \@nobreakfalse - \clubpenalty \@M - \else - \clubpenalty \@clubpenalty - \everypar{\everyparhook}% - \fi\everyparhook}% - \if@noitemarg - \@noitemargfalse - \if@nmbrlist - \refstepcounter\@listctr - \fi - \fi - \sbox\@tempboxa{\makelabel{#1}}% - \global\setbox\@labels\hbox{% - \unhbox\@labels - \hskip \itemindent - \hskip -\labelwidth - \hskip -\labelsep - \ifdim \wd\@tempboxa >\labelwidth - \box\@tempboxa - \else - \hbox to\labelwidth {\unhbox\@tempboxa}% - \fi - \hskip \labelsep}% - \ignorespaces} -% \end{macrocode} -% -% 二つ挿入した |\everyparhook| のうち後者が |\section| 類の直後に2回, -% 前者が3回目以降に実行されます。 -% -% \begin{macrocode} -\def\@afterheading{% - \@nobreaktrue - \everypar{% - \if@nobreak - \@nobreakfalse - \clubpenalty \@M - \if@afterindent \else - {\setbox\z@\lastbox}% - \fi - \else - \clubpenalty \@clubpenalty - \everypar{\everyparhook}% - \fi\everyparhook}} -% \end{macrocode} -% -% |\@gnewline| についてはちょっと複雑な心境です。 -% もともとのp\LaTeXe は段落の頭にグルーが入る方で統一されていました。 -% しかし |\\| の直後にはグルーが入らず,不統一でした。 -% そこで |\\| の直後にもグルーを入れるように直していただいた経緯があります。 -% しかし,ここでは逆にグルーを入れない方で統一したいので, -% また元に戻してしまいました。 -% -% しかし単に戻すだけでも駄目みたいなので,ここでも最後にグルーを消しておきます。 -% -% \begin{macrocode} -\def\@gnewline #1{% - \ifvmode - \@nolnerr - \else - \unskip \reserved@e {\reserved@f#1}\nobreak \hfil \break \null - \inhibitglue \ignorespaces - \fi} -% \end{macrocode} -% -% \section{いろいろなロゴ} -% -% \LaTeX 関連のロゴを作り直します。 -% -% [2016-07-14] ロゴの定義は\texttt{jslogo}パッケージに移転しました。 -% 後方互換のため,\texttt{jsclasses}ではデフォルトでこれを読み込みます。 -% \texttt{nojslogo}オプションが指定されている場合は読み込みません。 -% -% \begin{macro}{\小} -% \begin{macro}{\上小} -% -% 文字を小さめに出したり上寄りに小さめに出したりする命令を, -% \texttt{jslogo.sty}では名称変更してありますので,コピーします。 -% \begin{macrocode} -\if@jslogo - \IfFileExists{jslogo.sty}{% - \RequirePackage{jslogo}% - \def\小{\jslg@small}% - \def\上小{\jslg@uppersmall}% - }{% - \ClassWarningNoLine{\jsc@clsname}{% - The redefinitions of LaTeX-related logos has\MessageBreak - been moved to jslogo.sty since 2016, but\MessageBreak - jslogo.sty not found. Current release of\MessageBreak - 'jsclasses' includes it, so please check\MessageBreak - the installation}% - } -\fi -% \end{macrocode} -% \end{macro} -% \end{macro} -% -% -% \section{\texttt{amsmath} との衝突の回避} -% -% \begin{macro}{\ltx@ifnextchar} -% \begin{macro}{\ProvidesFile} -% -% \texttt{amsmath} パッケージでは行列中で |\@ifnextchar| -% を再定義していますが,これが\LaTeX の |\ProvidesFile| -% で悪さをする例がFTeXで報告されています。 -% これを避けるためのtDBさんのフィックスを挿入しておきます。 -% 副作用がありましたらお知らせください。 -% -% この現象については私のTeX掲示板 4273〜,16058〜 で議論がありました。 -% なお,AMS関係のパッケージを読み込む際に psamsfonts オプションを -% 与えても回避できます(Thanks: しっぽ愛好家さん)。 -% -% [2016-11-19] 本家の ltclass.dtx 2004/01/28 v1.1g で修正されているので -% コメントアウトしました。 -% -% \begin{macrocode} -%\let\ltx@ifnextchar\@ifnextchar -%\def\ProvidesFile#1{% -% \begingroup -% \catcode`\ 10 % -% \ifnum \endlinechar<256 % -% \ifnum \endlinechar>\m@ne -% \catcode\endlinechar 10 % -% \fi -% \fi -% \@makeother\/% -% \@makeother\&% -% \ltx@ifnextchar[{\@providesfile{#1}}{\@providesfile{#1}[]}} -% \end{macrocode} -% \end{macro} -% \end{macro} -% -% \section{初期設定} -% -% \paragraph{いろいろな語} -% -% \begin{macro}{\prepartname} -% \begin{macro}{\postpartname} -% \begin{macro}{\prechaptername} -% \begin{macro}{\postchaptername} -% \begin{macro}{\presectionname} -% \begin{macro}{\postsectionname} -% \begin{macrocode} -\newcommand{\prepartname}{\if@english Part~\else 第\fi} -\newcommand{\postpartname}{\if@english\else 部\fi} -%\newcommand{\prechaptername}{\if@english Chapter~\else 第\fi} -%\newcommand{\postchaptername}{\if@english\else 章\fi} -\newcommand{\presectionname}{}% 第 -\newcommand{\postsectionname}{}% 節 -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\contentsname} -% \begin{macro}{\listfigurename} -% \begin{macro}{\listtablename} -% \begin{macrocode} -\newcommand{\contentsname}{\if@english Contents\else 目次\fi} -\newcommand{\listfigurename}{\if@english List of Figures\else 図目次\fi} -\newcommand{\listtablename}{\if@english List of Tables\else 表目次\fi} -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\refname} -% \begin{macro}{\bibname} -% \begin{macro}{\indexname} -% \begin{macrocode} -\newcommand{\refname}{\if@english References\else 参考文献\fi} -\newcommand{\bibname}{\if@english Bibliography\else 参考文献\fi} -\newcommand{\indexname}{\if@english Index\else 索引\fi} -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\figurename} -% \begin{macro}{\tablename} -% \begin{macrocode} -%\newcommand{\figurename}{\if@english Fig.~\else 図\fi} -%\newcommand{\figurename}{Fig.~} -%\newcommand{\tablename}{\if@english Table~\else 表\fi} -%\newcommand{\tablename}{Table~} -% \end{macrocode} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\appendixname} -% \begin{macro}{\abstractname} -% \begin{macrocode} -% \newcommand{\appendixname}{\if@english Appendix~\else 付録\fi} -\newcommand{\appendixname}{\if@english \else 付録\fi} -%\newcommand{\abstractname}{\if@english Abstract\else 概要\fi} -% \end{macrocode} -% \end{macro} -% \end{macro} -% -% \paragraph{今日の日付} -% -% \LaTeX で処理した日付を出力します。 -% ^^A |jarticle| などと違って,標準を西暦にし, -% ^^A 余分な空白が入らないように改良しました。 -% ^^A -- 2018年7月以降は |jarticle| なども標準が西暦, -% ^^A -- 2019年4月以降は余分な空白が入らなくなっています。 -% 和暦にするには |\和暦| と書いてください。 -% ちなみにこの文章の作成日は西暦では{\西暦\today}で, -% 和暦では{\和暦\today}です。 -% -% \begin{macro}{\today} -% \begin{macrocode} -\newif\if西暦 \西暦true -\def\西暦{\西暦true} -\def\和暦{\西暦false} -\newcount\heisei \heisei\year \advance\heisei-1988\relax -\def\pltx@today@year@#1{% - \ifnum\numexpr\year-#1=1 元\else - \ifnum1=\iftdir\ifmdir0\else1\fi\else0\fi - \kansuji\numexpr\year-#1\relax - \else - \number\numexpr\year-#1\relax\nobreak - \fi - \fi 年 -} -\def\pltx@today@year{% - \ifnum\numexpr\year*10000+\month*100+\day<19890108 - 昭和\pltx@today@year@{1925}% - \else\ifnum\numexpr\year*10000+\month*100+\day<20190501 - 平成\pltx@today@year@{1988}% - \else - 令和\pltx@today@year@{2018}% - \fi\fi} -\def\today{% - \if@english - \ifcase\month\or - January\or February\or March\or April\or May\or June\or - July\or August\or September\or October\or November\or December\fi - \space\number\day, \number\year - \else\if西暦 - \ifnum1=\iftdir\ifmdir0\else1\fi\else0\fi \kansuji\year - \else\number\year\nobreak\fi 年 - \else - \pltx@today@year - \fi - \ifnum1=\iftdir\ifmdir0\else1\fi\else0\fi - \kansuji\month 月 - \kansuji\day 日 - \else - \number\month\nobreak 月 - \number\day\nobreak 日 - \fi\fi} -% \end{macrocode} -% \end{macro} -% -% \paragraph{ハイフネーション例外} -% -% \TeX のハイフネーションルールの補足です(ペンディング:eng-lish) -% -% \begin{macrocode} -\hyphenation{ado-be post-script ghost-script phe-nom-e-no-log-i-cal man-u-script} -% \end{macrocode} -% -% \paragraph{ページ設定} -% -% ページ設定の初期化です。 -% -% \begin{macrocode} -%
    \if@slide \pagestyle{empty} \else \pagestyle{plain} \fi -%\if@report \pagestyle{plain} \else \pagestyle{headings} \fi -%\pagestyle{plain} -%\pagestyle{headings} -\pagenumbering{arabic} -\if@twocolumn - \twocolumn - \sloppy - \flushbottom -\else - \onecolumn - \raggedbottom -\fi -\if@slide - \renewcommand\kanjifamilydefault{\gtdefault} - \renewcommand\familydefault{\sfdefault} - \raggedright - \xkanjiskip=0.1em\relax -\fi -% \end{macrocode} -% -% -% \section{実験的コード} -% -% [2016-11-29] コミュニティ版p\LaTeX で新設されたテスト用パッケージ -% (\texttt{exppl2e}パッケージ)が文書クラスより先に読み込まれていた -% 場合は,jsclassesもテスト版として動作します。この処置は -% jsarticle,jsbook,jsreportにのみ行い,jspfとkiyouは除外しておきます。 -% exppl2eパッケージが読みこまれていない場合は通常版として動作しますので, -% ここで終了します。 -% -% \begin{macrocode} -%<*article|book|report> -\@ifpackageloaded{exppl2e}{\jsc@needsp@tchtrue}{\jsc@needsp@tchfalse} -\ifjsc@needsp@tch\else - \expandafter\endinput -\fi -% \end{macrocode} -% -% 以下は実験的コードです。具体的には,2016/11/29の\texttt{exppl2e}パッケージ -% で説明されている|\@gnewline|のパッチを入れてあります。 -% -% \begin{macro}{\@gnewline} -% \begin{macrocode} -\def\@gnewline #1{% - \ifvmode - \@nolnerr - \else - \unskip \reserved@e {\reserved@f#1}\nobreak \hfil \break \hskip \z@ - \ignorespaces - \fi} -% -% -% \end{macrocode} -% \end{macro} -% -% 以上です。 -% -% \Finale -% -\endinput diff --git a/macros/latex/contrib/jsclasses/jsclasses.ins b/macros/latex/contrib/jsclasses/jsclasses.ins deleted file mode 100644 index b7e4ca24ab..0000000000 --- a/macros/latex/contrib/jsclasses/jsclasses.ins +++ /dev/null @@ -1,18 +0,0 @@ -\input docstrip -\preamble - -Maintained on GitHub: https://github.com/texjporg/jsclasses - -\endpreamble - -\def\batchfile{jsclasses.ins} -\input docstrip.tex -\keepsilent -\generateFile{jsarticle.cls}{f}{\from{jsclasses.dtx}{class,article}} -\generateFile{jsbook.cls}{f}{\from{jsclasses.dtx}{class,book}} -\generateFile{jsreport.cls}{f}{\from{jsclasses.dtx}{class,report}} -\generateFile{jspf.cls}{f}{\from{jsclasses.dtx}{class,jspf}} -\generateFile{kiyou.cls}{f}{\from{jsclasses.dtx}{class,kiyou}} -\generateFile{minijs.sty}{f}{\from{jsclasses.dtx}{minijs}} - -\endbatchfile diff --git a/macros/latex/contrib/jsclasses/jsclasses.pdf b/macros/latex/contrib/jsclasses/jsclasses.pdf deleted file mode 100644 index f41951d9e6..0000000000 Binary files a/macros/latex/contrib/jsclasses/jsclasses.pdf and /dev/null differ diff --git a/macros/latex/contrib/jsclasses/jslogo.dtx b/macros/latex/contrib/jsclasses/jslogo.dtx deleted file mode 100644 index e8350bdb61..0000000000 --- a/macros/latex/contrib/jsclasses/jslogo.dtx +++ /dev/null @@ -1,424 +0,0 @@ -% ^^A -*- japanese-latex -*- -% -% \ifx\epTeXinputencoding\undefined\else -% \epTeXinputencoding utf8 % ^^A added (2017-10-04) -% \fi -% -% \iffalse meta-comment -% -%<*driver> -\ifx\epTeXinputencoding\undefined\else - \epTeXinputencoding utf8 -\fi -% -% -% LaTeX 関連のロゴ(pLaTeX2ε新ドキュメントクラス付録) -% -% Copyright 1999-2016 Haruhiko Okumura -% Copyright 2016-2019 Japanese TeX Development Community -% -% \fi -% -% \iffalse -% -% \begin{macrocode} -%\NeedsTeXFormat{LaTeX2e} -%\ProvidesPackage{jslogo} -%<*driver> -\ProvidesFile{jslogo.dtx} -% - [2019/07/25 okumura, texjporg] -%<*driver> -\documentclass{jsarticle} -\usepackage{doc} -\xspcode"5C=1 %% \ -\xspcode"22=1 %% " -\addtolength{\textwidth}{-1in} -\addtolength{\evensidemargin}{1in} -\addtolength{\oddsidemargin}{1in} -\addtolength{\marginparwidth}{1in} -\setlength\marginparpush{0pt} -% \OnlyDescription -\CodelineNumbered -\DisableCrossrefs -\setcounter{StandardModuleDepth}{1} -\GetFileInfo{jslogo.dtx} -\begin{document} - \DocInput{jslogo.dtx} -\end{document} -% -% \end{macrocode} -% -% \fi -% -% \title{\pLaTeXe 新ドキュメントクラス付録 ロゴパッケージ} -% \author{奥村晴彦,日本語\TeX 開発コミュニティ} -% \date{\filedate} -% \maketitle -% -% \MakeShortVerb{\|} -% -% \section{はじめに} -% -% これはもともと奥村晴彦氏による\texttt{jsclasses.dtx}で定義され -% ていた\LaTeX 関連のロゴを,独立のパッケージに抽出したものです。 -% \texttt{jsclasses}ではデフォルトで読み込まれます。 -% 現在は日本語\TeX 開発コミュニティによりGitHubで管理されています。 -% \begin{quote} -% |https://github.com/texjporg/jsclasses| -% \end{quote} -% ライセンスはmodified BSDです。 -% -% \StopEventually{} -% -% 以下では実際のコードに即して説明します。 -% -% -% \section{いろいろなロゴ} -% -% \LaTeX 関連のロゴを作り直します。 -% -% \begin{macro}{\jslg@small} -% \begin{macro}{\jslg@uppersmall} -% -% 文字を小さめに出したり上寄りに小さめに出したりする命令です。 -% -% \begin{macrocode} -\def\jslg@small#1{\hbox{$\m@th$% - \csname S@\f@size\endcsname - \fontsize\sf@size\z@ - \math@fontsfalse\selectfont - #1}} -\def\jslg@uppersmall#1{{\sbox\z@ T\vbox to\ht0{\jslg@small{#1}\vss}}} -% \end{macrocode} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\TeX} -% \begin{macro}{\LaTeX} -% -% これらは \texttt{ltlogos.dtx} で定義されていますが, -% TimesやHelveticaでも見栄えがするように若干変更しました。 -% -% Computer Modern Romanです(ファミリ名\texttt{cmr})。 -% 元の定義に最も近いので,特別に定義しない場合に用います。 -% -% \begin{macrocode} -\def\cmrTeX{% - \ifdim \fontdimen\@ne\font >\z@ - T\kern-.25em\lower.5ex\hbox{E}\kern-.125emX\@ - \else - T\kern-.1667em\lower.5ex\hbox{E}\kern-.125emX\@ - \fi} -\def\cmrLaTeX{% - \ifdim \fontdimen\@ne\font >\z@ - L\kern-.32em\jslg@uppersmall{A}\kern-.22em\cmrTeX - \else - L\kern-.36em\jslg@uppersmall{A}\kern-.15em\cmrTeX - \fi} -% \end{macrocode} -% -% Computer Modern Sans Serif(ファミリ名\texttt{cmss})や -% Helvetica(ファミリ名\texttt{phv})などのサンセリフ体です。 -% -% \begin{macrocode} -\def\sfTeX{T\kern-.1em\lower.4ex\hbox{E}\kern-.07emX\@} -\def\sfLaTeX{L\kern-.25em\jslg@uppersmall{A}\kern-.08em\sfTeX} -% \end{macrocode} -% -% Timesです(ファミリ名\texttt{ptm})。 -% TXフォント(ファミリ名\texttt{txr})でも用います。 -% -% \begin{macrocode} -\def\ptmTeX{% - \ifdim \fontdimen\@ne\font >\z@ - T\kern-.12em\lower.37ex\hbox{E}\kern-.02emX\@ - \else - T\kern-.07em\lower.37ex\hbox{E}\kern-.05emX\@ - \fi} -\def\ptmLaTeX{% - \ifdim \fontdimen\@ne\font >\z@ - L\kern-.2em\jslg@uppersmall{A}\kern-.1em\ptmTeX - \else - L\kern-.3em\jslg@uppersmall{A}\kern-.1em\ptmTeX - \fi} -% \end{macrocode} -% -% New Century Schoolbookです(ファミリ名\texttt{pnc})。 -% -% \begin{macrocode} -\def\pncTeX{% - \ifdim \fontdimen\@ne\font >\z@ - T\kern-.2em\lower.5ex\hbox{E}\kern-.08emX\@ - \else - T\kern-.13em\lower.5ex\hbox{E}\kern-.13emX\@ - \fi} -\def\pncLaTeX{% - \ifdim \fontdimen\@ne\font >\z@ - L\kern-.3em\jslg@uppersmall{A}\kern-.1em\pncTeX - \else - L\kern-.3em\jslg@uppersmall{A}\kern-.1em\pncTeX - \fi} -% \end{macrocode} -% -% Palatinoです(ファミリ名\texttt{ppl})。 -% PXフォント(ファミリ名\texttt{pxr})でも用います。 -% -% \begin{macrocode} -\def\pplTeX{% - \ifdim \fontdimen\@ne\font >\z@ - T\kern-.17em\lower.32ex\hbox{E}\kern-.15emX\@ - \else - T\kern-.12em\lower.34ex\hbox{E}\kern-.1emX\@ - \fi} -\def\pplLaTeX{% - \ifdim \fontdimen\@ne\font >\z@ - L\kern-.27em\jslg@uppersmall{A}\kern-.12em\pplTeX - \else - L\kern-.3em\jslg@uppersmall{A}\kern-.15em\pplTeX - \fi} -% \end{macrocode} -% -% URW Garamondです(ファミリ名\texttt{ugm})。 -% -% \begin{macrocode} -\def\ugmTeX{% - \ifdim \fontdimen\@ne\font >\z@ - T\kern-.1em\lower.32ex\hbox{E}\kern-.06emX\@ - \else - T\kern-.12em\lower.34ex\hbox{E}\kern-.1emX\@ - \fi} -\def\ugmLaTeX{% - \ifdim \fontdimen\@ne\font >\z@ - L\kern-.2em\jslg@uppersmall{A}\kern-.13em\ugmTeX - \else - L\kern-.3em\jslg@uppersmall{A}\kern-.13em\ugmTeX - \fi} -% \end{macrocode} -% -% 以上の定義を,ファミリによって使い分けます。 -% -% [2003-06-12] Palatinoも加えました(要調整)。 -% -% \begin{macrocode} -\DeclareRobustCommand{\TeX}{% - \def\@tempa{cmss}% - \ifx\f@family\@tempa\sfTeX - \else - \def\@tempa{phv}% - \ifx\f@family\@tempa\sfTeX - \else - \def\@tempa{qhv}% - \ifx\f@family\@tempa\sfTeX - \else - \def\@tempa{ptm}% - \ifx\f@family\@tempa\ptmTeX - \else - \def\@tempa{qtm}% - \ifx\f@family\@tempa\ptmTeX - \else - \def\@tempa{txr}% - \ifx\f@family\@tempa\ptmTeX - \else - \def\@tempa{ntxtlf}% - \ifx\f@family\@tempa\ptmTeX - \else - \def\@tempa{pnc}% - \ifx\f@family\@tempa\pncTeX - \else - \def\@tempa{ppl}% - \ifx\f@family\@tempa\pplTeX - \else - \def\@tempa{qpl}% - \ifx\f@family\@tempa\pplTeX - \else - \def\@tempa{pplx}% - \ifx\f@family\@tempa\pplTeX - \else - \def\@tempa{pplj}% - \ifx\f@family\@tempa\pplTeX - \else - \def\@tempa{pxr}% - \ifx\f@family\@tempa\pplTeX - \else - \def\@tempa{zpltlf}% - \ifx\f@family\@tempa\pplTeX - \else - \def\@tempa{ugm}% - \ifx\f@family\@tempa\ugmTeX - \else\cmrTeX - \fi - \fi\fi - \fi\fi\fi\fi - \fi - \fi\fi - \fi\fi - \fi\fi\fi} -\DeclareRobustCommand{\LaTeX}{% - \def\@tempa{cmss}% - \ifx\f@family\@tempa\sfLaTeX - \else - \def\@tempa{phv}% - \ifx\f@family\@tempa\sfLaTeX - \else - \def\@tempa{qhv}% - \ifx\f@family\@tempa\sfLaTeX - \else - \def\@tempa{ptm}% - \ifx\f@family\@tempa\ptmLaTeX - \else - \def\@tempa{qtm}% - \ifx\f@family\@tempa\ptmLaTeX - \else - \def\@tempa{txr}% - \ifx\f@family\@tempa\ptmLaTeX - \else - \def\@tempa{ntxtlf}% - \ifx\f@family\@tempa\ptmLaTeX - \else - \def\@tempa{pnc}% - \ifx\f@family\@tempa\pncLaTeX - \else - \def\@tempa{ppl}% - \ifx\f@family\@tempa\pplLaTeX - \else - \def\@tempa{qpl}% - \ifx\f@family\@tempa\pplLaTeX - \else - \def\@tempa{pplx}% - \ifx\f@family\@tempa\pplLaTeX - \else - \def\@tempa{pplj}% - \ifx\f@family\@tempa\pplLaTeX - \else - \def\@tempa{pxr}% - \ifx\f@family\@tempa\pplLaTeX - \else - \def\@tempa{zpltlf}% - \ifx\f@family\@tempa\pplLaTeX - \else - \def\@tempa{ugm}% - \ifx\f@family\@tempa\ugmLaTeX - \else\cmrLaTeX - \fi - \fi\fi - \fi\fi\fi\fi - \fi - \fi\fi - \fi\fi - \fi\fi\fi} -% \end{macrocode} -% -% \end{macro} -% \end{macro} -% -% \begin{macro}{\LaTeXe} -% -% |\LaTeXe| コマンドの |\mbox{\m@th ...| で始まる新しい定義では -% 直後の和文との間に |\xkanjiskip| が入りません。また, -% |mathptmx| パッケージなどと併用すると,最後の $\varepsilon$ が -% 下がりすぎてしまいます。そのため,ちょっと手を加えました。 -% -% \begin{macrocode} -\DeclareRobustCommand{\LaTeXe}{$\mbox{% - \if b\expandafter\@car\f@series\@nil\boldmath\fi - \LaTeX\kern.15em2\raisebox{-.37ex}{$\textstyle\varepsilon$}}$} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\pTeX} -% \begin{macro}{\pLaTeX} -% \begin{macro}{\pLaTeXe} -% -% \pTeX ,\pLaTeXe のロゴを出す命令です。 -% -% \begin{macrocode} -\def\pTeX{p\kern-.05em\TeX} -\def\pLaTeX{p\LaTeX} -\def\pLaTeXe{p\LaTeXe} -% \end{macrocode} -% -% \end{macro} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\upTeX} -% \begin{macro}{\upLaTeX} -% \begin{macro}{\upLaTeXe} -% -% [2016-07-14] \upTeX ,\upLaTeXe のロゴを出す命令も定義します。 -% -% \begin{macrocode} -\def\upTeX{u\pTeX} -\def\upLaTeX{u\pLaTeX} -\def\upLaTeXe{u\pLaTeXe} -% \end{macrocode} -% -% \end{macro} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\AmSTeX} -% -% \texttt{amstex.sty} で定義されています。 -% -% \begin{macrocode} -\def\AmSTeX{\protect\AmS-\protect\TeX{}} -% \end{macrocode} -% -% \end{macro} -% -% \begin{macro}{\BibTeX} -% \begin{macro}{\SliTeX} -% -% これらは \texttt{doc.dtx} から取ったものです。 -% ただし,|\BibTeX| だけはちょっと修正しました。 -% -% \begin{macrocode} -% \@ifundefined{BibTeX} -% {\def\BibTeX{{\rmfamily B\kern-.05em% -% \textsc{i\kern-.025em b}\kern-.08em% -% T\kern-.1667em\lower.7ex\hbox{E}\kern-.125emX}}}{} -\DeclareRobustCommand{\BibTeX}{% - B\kern-.05em\jslg@small{I\kern-.025em B}\kern-.15em\TeX} -\DeclareRobustCommand{\SliTeX}{% - S\kern-.06emL\kern-.18em\jslg@uppersmall{I}\kern -.03em\TeX} -% \end{macrocode} -% \end{macro} -% \end{macro} -% -% -% \section{PDF文字列中でロゴが使われた場合への対策} -% -% 以上でロゴの定義は終わりですが,|hyperref|を読み込んだ状態で |jslogo| の命令を -% PDF文字列として解釈される箇所(例 |\section| など)で使うと警告が出てしまいます。 -%\begin{verbatim} -% Package hyperref Warning: Token not allowed in a PDF string (PDFDocEncoding): -% (hyperref) \kern -0.50003pt -% (hyperref) removed on input line 5. -%\end{verbatim} -% そこで,この警告が出ないように対策します(Issue \#51)。 -% -% まず,|\pdfstringdefPreHook| を(なければ)用意します。 -% \begin{macrocode} -\providecommand*\pdfstringdefPreHook{} -% \end{macrocode} -% -% そして,警告が出てしまうロゴに対するPDF文字列中での定義を追加します。 -% \begin{macrocode} -\g@addto@macro\pdfstringdefPreHook{% - \def\pTeX{p\TeX}% - \def\AmS{AMS}% - \def\SliTeX{Sli\TeX}% - \def\BibTeX{Bib\TeX}% -} -% \end{macrocode} -% -% |hyperref| 読込時に |\pdfstringdefPreHook| が定義済ならそれはそのまま保持され, -% 警告が出なくなります。 -% -% 以上です。 -% -% \Finale -% -\endinput diff --git a/macros/latex/contrib/jsclasses/jslogo.ins b/macros/latex/contrib/jsclasses/jslogo.ins deleted file mode 100644 index 0f8f287a42..0000000000 --- a/macros/latex/contrib/jsclasses/jslogo.ins +++ /dev/null @@ -1,13 +0,0 @@ -\input docstrip -\preamble - -Maintained on GitHub: https://github.com/texjporg/jsclasses - -\endpreamble - -\def\batchfile{jslogo.ins} -\input docstrip.tex -\keepsilent -\generateFile{jslogo.sty}{f}{\from{jslogo.dtx}{package}} - -\endbatchfile diff --git a/macros/latex/contrib/jsclasses/jslogo.pdf b/macros/latex/contrib/jsclasses/jslogo.pdf deleted file mode 100644 index 6975d75515..0000000000 Binary files a/macros/latex/contrib/jsclasses/jslogo.pdf and /dev/null differ diff --git a/macros/latex/contrib/jsclasses/jsverb.dtx b/macros/latex/contrib/jsclasses/jsverb.dtx deleted file mode 100644 index ed6fefde63..0000000000 --- a/macros/latex/contrib/jsclasses/jsverb.dtx +++ /dev/null @@ -1,333 +0,0 @@ -% ^^A -*- japanese-latex -*- -% -% \ifx\epTeXinputencoding\undefined\else -% \epTeXinputencoding utf8 % ^^A added (2017-10-04) -% \fi -% -% \iffalse -% -%<*driver> -\ifx\epTeXinputencoding\undefined\else - \epTeXinputencoding utf8 -\fi -% -% -% jsverb.dtx -% verb/verbatim 関係マクロ (煮ても焼いてもかまいません) -% 奥村晴彦 -% http://oku.edu.mie-u.ac.jp/~okumura/ -% -% 「煮ても焼いてもかまいません」で困る場合はmodified BSDということでお願いします。 -% -%\NeedsTeXFormat{pLaTeX2e} -%\ProvidesFile{jsverb.sty}[2007/01/28 okumura] -%<*driver> -\documentclass{jsarticle} -\usepackage{doc} -\xspcode"5C=1 %% \ -\xspcode"22=1 %% " -\usepackage{okumacro} -\usepackage{jsverb} -\addtolength{\textwidth}{-1in} -\addtolength{\evensidemargin}{1in} -\addtolength{\oddsidemargin}{1in} -\addtolength{\marginparwidth}{1in} -\setlength\marginparsep{5pt} -\setlength\marginparpush{0pt} -% \OnlyDescription -\CodelineNumbered -\DisableCrossrefs -\setcounter{StandardModuleDepth}{1} -\GetFileInfo{jsverb.sty} -\begin{document} - \DocInput{jsverb.dtx} -\end{document} -% -% -% \fi -% -% \title{\pLaTeXe 用 \texttt{verb...} 関係マクロ} -% \author{奥村晴彦} -% \date{\filedate} -% \maketitle -% -% \StopEventually{} -% -% \MakeShortVerb{\|} -% -% 旧 |okuverb| は\LaTeX の |\verb| 命令と |verbatim| 環境を拡張したもので, -% |yen| オプションを付けると \ttbslash\ が \ttyen\ になるほか,|verbatim| 環境の -% 組み方を簡単にカスタマイズできるようにしたものです。 -% -% 一方,\TeX ではASCII |0x60|の |`| と|0x27|の |'| を入力すると -% それぞれ \texttt{`} と \texttt{'} になります。 -% これらは文字としてはそれぞれ -% U+2018 LEFT SINGLE QUOTATION MARK, -% U+2019 RIGHT SINGLE QUOTATION MARKですので, -% dvipdfmxでPDFに変換して日本語テキストにコピー&ペーストすると, -% 全角文字になってしまいます。 -% |\verb| や |verbatim| はプログラムリストによく用いるので, -% 意図としてはそれぞれU+0060 GRAVE ACCENT,U+0027 APOSTROPHEに -% なってほしいと思います。 -% そこで,ZRさんのご助言 -% \begin{itemize} -% \item |http://oku.edu.mie-u.ac.jp/~okumura/texfaq/qa/46673.html| -% \item |http://oku.edu.mie-u.ac.jp/~okumura/texfaq/qa/46688.html| -% \end{itemize} -% にしたがって旧 |okuverb| を大幅に書き直したものがこの |jsverb| です。 -% -% なお,\ttyen\ をコピー&ペーストした場合は, -% OT1エンコーディングで使えば Y= という2文字に, -% T1エンコーディングで使えばU+00A5 YEN SIGNになります。 -% バックスラッシュ(U+005C REVERSE SOLIDUS)にしたい場合は \ttbslash\ -% のほうをお使いください。 -% -% なお,|doc.sty| が提供する |macrocode| 環境は書き換えていませんので, -% 以下のリストでは |` '| が \texttt{` '} になっています。 -% -% [2008-01-05] |http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html| -% が参考になります。|upquote.sty| というものもありました。 -% -% 以下は内部の解説です。 -% -% まずオプションの宣言です。 -% -% \begin{macro}{\if@yen} -% -% |\verb|,|verbatim| 等で |\| を円印 \ttyen\ にするかどうかのスイッチです。 -% これはデフォールトで偽ですが,|yen| オプションで真になります。 -% -% \begin{macrocode} -%<*jsverb> -\newif\if@yen \@yenfalse -\DeclareOption{yen}{\@yentrue} -\ProcessOptions\relax -% \end{macrocode} -% -% \end{macro} -% -% T1を使うのにTS1がない場合の対処です。 -% |textcomp.sty| は副作用があるので |ts1enc.def| -% を読み込むだけにしています(これは複数回読み込んでも -% 問題なさそうです)。 -% -% \begin{macrocode} -\AtBeginDocument{% - \expandafter\ifx\csname T@T1\endcsname\relax \else - \expandafter\ifx\csname T@TS1\endcsname\relax - \input{ts1enc.def}% - \fi\fi -} -% \end{macrocode} -% -% \begin{macro}{\y@n} -% \begin{macro}{\ttyen} -% -% 簡単な円記号の定義です。後でT1エンコーディングの場合は再定義します。 -% -% \begin{macrocode} -\def\y@n{Y\llap=} -\def\ttyen{{\ttfamily\y@n}} -% \end{macrocode} -% -% \end{macro} -% \end{macro} -% -% \begin{macro}{\ttbslash} -% -% タイプライタフォントのバックスラッシュです。 -% -% \begin{macrocode} -\def\ttbslash{{\ttfamily\char`\\}} -% \end{macrocode} -% -% \end{macro} -% -% \begin{macro}{\BS} -% -% タイプライタフォントの円記号かバックスラッシュのどちらかになります。 -% -% \begin{macrocode} -\if@yen - \let\BS=\ttyen -\else - \let\BS=\ttbslash -\fi -% \end{macrocode} -% -% \end{macro} -% -% \begin{macro}{\verbh@@k} -% -% |\verb|,|verbatim| 等で使うフックです。 -% -% \begin{macrocode} -\if@yen - \begingroup - \catcode`\|=0 \catcode`\\=13 - |gdef|verbh@@k{|catcode`|\=13 |let\=|y@n} - |endgroup -\else - \let\verbh@@k=\relax -\fi -% \end{macrocode} -% -% \end{macro} -% -% \begin{macro}{\verbh@@@k} -% \begin{macro}{\verbh@@@k@} -% -% さらなるフックです。 -% -% \begin{macrocode} -\begingroup - \catcode`\'=13 - \catcode`\`=13 - \gdef\verbh@@@k{\catcode39=13 \let'=\@rq \catcode96=13 \let`=\@lq} -\endgroup -\def\@OTone{OT1} -\def\@Tone{T1} -\def\verbh@@@k@{% - \ifx\f@encoding\@OTone - \chardef\@lq=18 - \chardef\@rq=13 - \verbh@@@k - \else - \ifx\f@encoding\@Tone - \chardef\@lq=0 - \def\@rq{{\fontencoding{TS1}\selectfont\textquotesingle}}% - \def\y@n{{\fontencoding{TS1}\selectfont\textyen}}% - \verbh@@@k - \fi - \fi -} -% \end{macrocode} -% -% \end{macro} -% \end{macro} -% -% \begin{macro}{\verbatim@font} -% -% これは |latex.ltx| に |\normalfont\ttfamily| -% と定義されていますが,|\bfseries| |\verb...| といった使い方もしたいので, -% |\normalfont| は削除してしまいました。 -% -% \begin{macrocode} -\def\verbatim@font{\ttfamily} -% \end{macrocode} -% -% \end{macro} -% -% \begin{macro}{\verb} -% -% 元は数式モード時だけ |\hbox| に入るようになっていましたが, -% |\noautoxspacing| の効果を得るため,常に |\hbox| に入るようにしました。 -% -% \begin{macrocode} -\def\verb{% - \leavevmode\hbox - \bgroup - \verb@eol@error \let\do\@makeother \dospecials - \verbatim@font\@noligs - \noautoxspacing - \verbh@@k \verbh@@@k@ - \@ifstar\@sverb\@verb} -% \end{macrocode} -% -% \end{macro} -% -% \begin{macro}{\@xverbatim} -% \begin{macro}{\@sxverbatim} -% -% |\| の |\catcode| を12から13に変えました。 -% -% \begin{macrocode} -\if@yen -\begingroup \catcode `|=0 \catcode `[= 1 -\catcode`]=2 \catcode `\{=12 \catcode `\}=12 -\catcode`\\=13 |gdef|@xverbatim#1\end{verbatim}[#1|end[verbatim]] -|gdef|@sxverbatim#1\end{verbatim*}[#1|end[verbatim*]] -|endgroup -\fi -% \end{macrocode} -% -% \end{macro} -% \end{macro} -% -% \begin{macro}{\verbatimleftmargin} -% -% |verbatim| 環境の余分な左マージンです。 -% 文書ファイル中などで自由に再定義してください。 -% -% \begin{macrocode} -\newdimen\verbatimleftmargin -\verbatimleftmargin=2zw -% \end{macrocode} -% -% \end{macro} -% -% \begin{macro}{\verbatimsize} -% -% |verbatim| 環境のフォントサイズです。 -% 文書ファイル中などで自由に再定義してください。 -% -% \begin{macrocode} -\def\verbatimsize{\fontsize{9}{11pt}\selectfont} -% \end{macrocode} -% -% \end{macro} -% -% \begin{macro}{\@verbatim} -% -% |verbatim| 環境で使うフォントの行送りとサイズ(|\f@size|)が -% 本文と違うと,前後の間隔が違ってしまいます。それを補正します。 -% -% \begin{macrocode} -\def\@verbatim{% - \trivlist \item\relax - \if@minipage - \verbatimsize - \else - \vskip\baselineskip - \vskip-\f@size pt - \verbatimsize - \vskip-\baselineskip - \vskip\f@size pt - \vskip\parskip - \fi - \leftskip\@totalleftmargin - \if@minipage \else - \advance \leftskip \verbatimleftmargin - \fi - \rightskip\z@skip - \parindent\z@ - \parfillskip\@flushglue - \parskip\z@skip - \@@par - \@tempswafalse - \def\par{% - \if@tempswa - \leavevmode \null \@@par\penalty\interlinepenalty - \else - \@tempswatrue - \ifhmode\@@par\penalty\interlinepenalty\fi - \fi}% - \let\do\@makeother \dospecials - \obeylines \verbatim@font \@noligs - \noautoxspacing - \verbh@@k \verbh@@@k@ - \hyphenchar\font\m@ne - \everypar \expandafter{\the\everypar \unpenalty}% -} -% \end{macrocode} -% -% \end{macro} -% -% 以上で終わりです。 -% -% \begin{macrocode} -% -\endinput -% \end{macrocode} -% -% \Finale diff --git a/macros/latex/contrib/jsclasses/jsverb.ins b/macros/latex/contrib/jsclasses/jsverb.ins deleted file mode 100644 index 20279cfb8d..0000000000 --- a/macros/latex/contrib/jsclasses/jsverb.ins +++ /dev/null @@ -1,13 +0,0 @@ -\input docstrip -\preamble - -Maintained on GitHub: https://github.com/texjporg/jsclasses - -\endpreamble - -\def\batchfile{jsverb.ins} -\input docstrip.tex -\keepsilent -\generateFile{jsverb.sty}{f}{\from{jsverb.dtx}{jsverb}} - -\endbatchfile diff --git a/macros/latex/contrib/jsclasses/jsverb.pdf b/macros/latex/contrib/jsclasses/jsverb.pdf deleted file mode 100644 index a2273084a5..0000000000 Binary files a/macros/latex/contrib/jsclasses/jsverb.pdf and /dev/null differ diff --git a/macros/latex/contrib/jsclasses/okumacro.dtx b/macros/latex/contrib/jsclasses/okumacro.dtx deleted file mode 100644 index e2d70e4770..0000000000 --- a/macros/latex/contrib/jsclasses/okumacro.dtx +++ /dev/null @@ -1,1190 +0,0 @@ -% ^^A -*- japanese-latex -*- -% -\ifx\epTeXinputencoding\undefined\else - \epTeXinputencoding utf8 % ^^A added (2017-10-04) -\fi -% -% \iffalse -% -% okumacro.dtx -% 私家版マクロ集 -% okumura@okumuralab.org -% http://oku.edu.mie-u.ac.jp/~okumura/ -% -%\NeedsTeXFormat{pLaTeX2e} -%\ProvidesPackage{okumacro}[2021/07/01 okumura, texjporg] -%<*driver> -\documentclass{jsarticle} -\usepackage{doc} -\xspcode"5C=1 %% \ -\xspcode"22=1 %% " -\usepackage{okumacro} -\addtolength{\textwidth}{-1in} -\addtolength{\evensidemargin}{1in} -\addtolength{\oddsidemargin}{1in} -\addtolength{\marginparwidth}{1in} -\setlength\marginparsep{5pt} -\setlength\marginparpush{0pt} -% \OnlyDescription -\CodelineNumbered -\DisableCrossrefs -\setcounter{StandardModuleDepth}{1} -\GetFileInfo{okumacro.sty} -\begin{document} - \DocInput{okumacro.dtx} -\end{document} -% -% -% \fi -% -% \title{私家版マクロ集} -% \author{奥村晴彦} -% \date{\filedate} -% \maketitle -% -% \MakeShortVerb{\|} -% -% \section{はじめに} -% -% これは『\pLaTeXe 美文書作成入門』などの本を作ったときに使ったマクロを -% 集めたものです。作っただけでテストもしていないものなども混じっている -% 可能性があります。概して他の方にはあまり利用価値がないものです。 -% -% [2002-12-19] いろいろなものに収録していただく際にライセンスを明確にする -% 必要が生じてきました。アスキーのものが最近は(modified)BSDライセンスになっ -% ていますので,私のものもそれに準じて(modified)BSDとすることにします。 -% -% [2016-07-30] 従来は,ascmac→okumacroの順に読み込んだ場合にエラーが出て -% いましたが,新しい仕様では,ascmacとokumacroの両方を読み込む場合には -% 「後に読み込んだほう」が勝ちます。 -% 具体的には |\keytop|,|\return|,screen環境,shadebox環境があります。 -% -% \section{数値集} -% -% \begin{itemize} -% \item B5: $182\,\mathrm{mm} \times 257\,\mathrm{mm}$ -% \item B4: $257\,\mathrm{mm} \times 364\,\mathrm{mm}$ -% \item A5: $148\,\mathrm{mm} \times 210\,\mathrm{mm}$ -% \item A4: $210\,\mathrm{mm} \times 297\,\mathrm{mm}$ -% \item $1\,\mathrm{in} = 72.27\,\mathrm{pt} = 2.54\,\mathrm{cm}$ -% \item $1\,\mathrm{Q} = 0.25\,\mathrm{mm} = 0.711319\,\mathrm{pt}$ -% \item $1\,\mathrm{pt} = 1.405839\,\mathrm{Q} = 0.3514598\,\mathrm{mm}$ -% \item min10: $1\,\mathrm{zw} = 9.62216\,\mathrm{pt} -% = 3.3818\,\mathrm{mm} = 13.5272\,\mathrm{Q}$, -% $1\,\mathrm{zh} = 9.16443\,\mathrm{pt}$ -% \item cmr10: $1\,\mathrm{em} = 10\,\mathrm{pt}$, -% $1\,\mathrm{ex} = 4.30554\,\mathrm{pt}$ -% \end{itemize} -% -% \StopEventually{} -% -% \section{雑マクロ} -% -% 以下が実際のマクロ集です。 -% -% \begin{macrocode} -%<*okumacro> -% \end{macrocode} -% -% \begin{macro}{\ruby} -% -% |\ruby{奥}{おく}\ruby{村}{むら}| で\ruby{奥}{おく}\ruby{村}{むら}と -% なります。|\ruby{奥村}{おくむら}| でもかまいませんが,奥と村の間で -% 行分割ができなくなります。 -% -% 和文ベースラインが $88:12$ の位置にあることを仮定して支柱を入れました。 -% -% バグ: |1\ruby{奥}{おく}1| のような場合に |\xkanjiskip| が入りません。 -% -% [2003-02-09] ゴシック体のルビがゴシック体になるバグ?を修正しました。 -% -% [2003-05-29] 齋藤修三郎さんのOTFパッケージのexpertオプションに対応しました。 -% -% [2003-09-01] オプション引数で幅が指定できるようにしました [2003-10-02バグフィックス]。 -% -% [2010-03-14] ルビの直後で改行できなかったので, -% 親字が和文と仮定して直後に |\kanjiskip| を入れました。 -% -% [2016-08-16] 縦組に対応。 -% -% [2016-08-16] 「前に |\kanjiskip| が入らない」 -% 「前後の欧文文字との間に |\xkanjiskip| が入らない」 -% 「後ろの禁則処理が効かない」問題を解決するために和文ゴースト処理を追加。 -% -% \begin{macrocode} -\providecommand{\rubyfamily}{} -\def\kanjistrut{\iftdir - \vrule \@height0.5zw \@depth0.5zw \@width\z@ -\else - \vrule \@height0.88zw \@depth0.12zw \@width\z@ -\fi} -\chardef\okumacro@zsp=\jis"2121\relax -\newcommand{\ruby}[3][0zw]{% - \okumacro@zsp - \kern-1zw\relax - \dimen3=\f@size\p@ - \setbox1=\hbox{#2}% - \setbox3=\hbox{\rubyfamily\fontsize{0.5\dimen3}{0pt}\selectfont #3}% - \dimen1=#1\relax - \ifdim\dimen1=\z@ - \ifdim\wd1>\wd3 \dimen1=\wd1 \else \dimen1=\wd3 \fi - \else - \ifdim\dimen1<\wd1 - \dimen1=\wd1 - \fi - \fi - \hbox{% - \kanjiskip=0pt plus 2fil - \xkanjiskip=0pt plus 2fil - \vbox{% - \hbox to \dimen1{\rubyfamily - \fontsize{0.5\dimen3}{0pt}\selectfont \kanjistrut - \ifdim\dimen1<\wd3 - \hss\unhbox3\hss - \else - \hfil\unhbox3\hfil - \fi - }% - \nointerlineskip - \hbox to \dimen1{\kanjistrut\hfil\unhbox1\hfil}}}% - \kern-1zw\relax\okumacro@zsp} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\Ruby} -% -% ルビが両側にルビの半文字分ずつはみ出してもいい場合に使います。 -% ただ,これを連続して使うと,ルビが重なり合ってしまいます。 -% -% これはあまり存在意義がないのでとりあえず消しておきます。 -% -% \begin{macrocode} -% \newcommand{\Ruby}[2]{% -% \leavevmode -% \setbox0=\hbox{#1}% -% \mytempdima=\f@size\p@ -% \setbox1=\hbox{\fontsize{0.5\mytempdima}{0pt}\selectfont #2}% -% \dimen0=\wd1 \advance \dimen0 by -0.5\mytempdima -% \ifdim\wd0>\dimen0 \dimen0=\wd0 \fi -% \hbox{% -% \kanjiskip=0pt plus 2fil -% \xkanjiskip=0pt plus 2fil -% \vbox{% -% \hbox to \dimen0{\normalfont\rubyfamily -% \fontsize{0.5\mytempdima}{0pt}\selectfont \kanjistrut\hss#2\hss}% -% \nointerlineskip -% \hbox to \dimen0{\kanjistrut\hfil#1\hfil}}}} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\kenten} -% -% \kenten{圏点}を振るコマンドです。 -% -% [2016-07-30] ルビと圏点の高さを合わせるつもりでしたが,間違って -% 上シフト量を0.63zwとしていましたので,正しい値0.75zwに直しました。 -% -% [2017-03-11] 「前後の欧文文字との間に |\xkanjiskip| が入らない」 -% 「後ろの禁則処理が効かない」問題を解決するために和文ゴースト処理を追加。 -% -% [2017-10-04] もともと |\kenten| では -%\begin{verbatim} -% \setbox1=\hbox to \z@{・\hss}% -%\end{verbatim} -% としていましたが,2017年9月の\pTeX (p3.7.2)に対応するため -%\begin{verbatim} -% \setbox1=\hbox to\z@{\hbox to 1zw{\hss ・\hss}\hss}% -%\end{verbatim} -% に変更しました。これで,p3.7.1以前・p3.7.2以降どちらもOKです。 -% -% \begin{macrocode} -\def\kenten#1{% - \okumacro@zsp - \kern-1zw\relax - \setbox1=\hbox to\z@{\hbox to 1zw{\hss ・\hss}\hss}% - \ht1=.63zw - \@kenten#1\end\relax - \kern-1zw\relax\okumacro@zsp} -\def\@kenten#1#2{% - \ifx#1\end \let\next=\relax \else - \raise.75zw\copy1\nobreak #1\ifx#2\end\else\hskip\kanjiskip\relax\fi - \let\next=\@kenten - \fi\next#2} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\kintou} -% -% 簡単な均等割りコマンドです。 -% -% \begin{macrocode} -\newcommand{\kintou}[2]{% - \leavevmode - \hbox to #1{% - \kanjiskip=0pt plus 1fil minus 1fil - \xkanjiskip=\kanjiskip - #2}} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\曜} -% -% 今日の曜日を出力します。 -% -% \begin{macrocode} -\newcommand{\曜}{{\@tempcnta=\year \@tempcntb=\month - \ifnum \@tempcntb<3 - \advance \@tempcnta by -1 - \advance \@tempcntb by 12 - \fi - \multiply \@tempcntb by 13 - \advance \@tempcntb by 8 - \divide \@tempcntb by 5 - \advance \@tempcntb by \@tempcnta - \divide \@tempcnta by 4 - \advance \@tempcntb by \@tempcnta - \divide \@tempcnta by 25 - \advance \@tempcntb by -\@tempcnta - \divide \@tempcnta by 4 - \advance \@tempcntb by \@tempcnta - \advance \@tempcntb by \day - \@tempcnta=\@tempcntb - \divide \@tempcntb by 7 - \multiply \@tempcntb by 7 - \advance \@tempcnta by -\@tempcntb - \ifcase \@tempcnta 日\or 月\or 火\or 水\or 木\or 金\or 土\fi}} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\挨拶} -% -% 時候の挨拶を出力します。 -% -% \begin{macrocode} -\def\挨拶{\noindent 拝啓\hspace{1zw}\ifcase\month\or - 厳寒\or 春寒\or 早春\or 陽春\or 新緑\or 向暑\or - 猛暑\or 残暑\or 初秋\or 仲秋\or 晩秋\or 初冬\fi - の候,ますますご清栄のこととお喜び申し上げます。} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\mytt} -% -% |\texttt| では \verb/|/ |!| |@| |*| |-| |+| |=| |[| |]| |:| |;| -% |"| |`| |'| |<| |>| |?| |,| |.| |/| はそのまま出せますが, -% |!| |?| |.| |:| の後は余分な空きが入ります。 -% また,|#| |$| |&| |_| |{| |}| は \texttt{\bslash} で逃げれば使えますが, -% そうしても |_| |{| |}| は正しい \texttt{cmtt} フォントになりません。 -% さらに,|~| |^| は \texttt{\bslash} を付けても後続の文字のアクセント -% のようになってしまいます(|\~{}|,|\^{}| のようにすれば何とか -% なりますが)。ここで定義する |\mytt| マクロを使えば, -% |{| |}| は \texttt{\bslash} で逃げれば正しい \texttt{cmtt} フォント -% になり, -% |#| |&| |_| |~| |^| は \texttt{\bslash} で逃げなくてもそのまま -% で出力できます。 -% |$| もそのまま出力できるようにしていたのですが, -% 数式モードは使えた方が便利なので,外しました。 -% また,|\\| で円印が出ます。 -% |/|,|\\|,|.|,|@|,|-| の後ろで改行できるようにしてあります。 -% |{\mytt ...}| のようにして使います(|\mytt{...}| ではありません)。 -% スペースは若干伸縮するようにしました。 -% |\mbox{\mytt ...}| のようにして使えば, -% 和文・欧文間のグルーの自動挿入はしません。 -% -% \begin{macrocode} -\def\myallowbreak{\@ifnextchar\egroup{}{\penalty\exhyphenpenalty}{}} -\begingroup - \catcode`\-=\active - \catcode`\.=\active - \catcode`\/=\active - \gdef\mytth@@k{% - \catcode`\-=\active \def-{\char`\-\myallowbreak}% - \catcode`\.=\active \def.{\char`\.\myallowbreak}% - \catcode`\/=\active \def/{\char`\/\myallowbreak}% - } -\endgroup -\def\mytt{\ttfamily - \catcode`\#=12 - \catcode`\&=12 - \catcode`\^=12 - \catcode`\~=12 - \catcode`\_=12 - \chardef\{=`\{ - \chardef\}=`\} - \chardef\_=`\_ -% \def\\{Y\llap=\penalty\exhyphenpenalty{}}% ¥記号 - \def\\{\char"5C\penalty\exhyphenpenalty{}}% バックスラッシュ -% \spaceskip=.5em plus.25em minus.15em - \spaceskip=.32em plus.16em minus.09em - \frenchspacing - \noautoxspacing - \mytth@@k} -% \end{macrocode} -% \end{macro} -% -% これ以外の記号は次のようにして出力できます。 -% -% \begin{quote} -% |\texttt{\char"20}| \qquad \texttt{\char"20} 見える空白 \\ -% |\texttt{\char"5C}| \qquad \texttt{\char"5C} バックスペース \\ -% |\texttt{\char"0B}| \qquad \texttt{\char"0B} 上向き矢印 \\ -% |\texttt{\char"0C}| \qquad \texttt{\char"0C} 下向き矢印 \\ -% |\texttt{\char"0D}| \qquad \texttt{\char"0D} 左右対称なシングルクォート -% \end{quote} -% -% \begin{macro}{\yen} -% \begin{macro}{\BS} -% -% |\yen| は円印,|\BS| はバックスラッシュです。 -% -% \begin{macrocode} -\DeclareRobustCommand{\yen}{{\ooalign{Y\crcr\hss=\hss}}} -\providecommand{\BS}{\texttt{\char"5C}} -% \end{macrocode} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\bslash} -% -% バックスラッシュは |doc| パッケージなどでの定義に従っておきます。 -% -% \begin{macrocode} -{\catcode`\|=\z@ \catcode`\\=12|gdef|bslash{\}} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\asciibar} -% -% 真ん中が少し途切れた縦棒 \asciibar\ です。 -% \verb/|/ に対応するASCII文字です。 -% -% \begin{macrocode} -\newcommand{\asciibar}{% - \makebox[0.525em]{\rule[-0.2ex]{0.15ex}{0.7ex}\kern-0.15ex - \rule[0.8ex]{0.15ex}{0.7ex}}} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\−−} -% \begin{macro}{\――} -% -% 倍角のダーシです。昔は |\rule[0.33zh]{2zw}{.03zh}| としていましたが, -% ちょっと低すぎるようです。和文フォントのベースライン -% は $88:12$ のところにあるものが多いので,0.38\,zwのところに中心線が -% 来るほうがいいようです。太さもちょっとだけ太くしました。 -% -% \begin{macrocode} -% \def\−−{\rule[0.36zw]{2zw}{0.04zw}} -% \end{macrocode} -% -% さらによく考えたら |\scalebox{2}[1]{―}| のほうがよさそうなので, -% |graphics| または |graphicx| パッケージを読み込んだ場合はこちらを使うようにしました。 -% -% \begin{macrocode} -% \def\−−{\@ifundefined{scalebox}{\rule[0.36zw]{2zw}{0.04zw}}{\scalebox{2}[1]{―}}} -% \end{macrocode} -% -% さらにいろいろなご意見をいただき,次のように直しました。 -% -% \begin{macrocode} -\def\−−{―\kern-.5zw―\kern-.5zw―} -% \end{macrocode} -% -% 上のものは全角マイナス二つでしたが,全角ダーシ二つでもいいようにしました。 -% -% \begin{macrocode} -\def\――{―\kern-.5zw―\kern-.5zw―} -% \end{macrocode} -% -% [2016-12-04] \pLaTeX で通るコードが \upLaTeX で通らなくなることを防ぐために,u\pLaTeX の場合にはU+FF0D,U+2014で定義したものも別途用意しました。 -% -% \begin{macrocode} -\ifnum\jis"2121="3000 % upTeX check - \begingroup - \kansujichar1="FF0D - \kansujichar2="2014 - \expandafter\expandafter\expandafter\gdef - \expandafter\csname\expandafter\kansuji\expandafter1% - \expandafter\endcsname\kansuji1{―\kern-.5zw―\kern-.5zw―} - \expandafter\expandafter\expandafter\gdef - \expandafter\csname\expandafter\kansuji\expandafter2% - \expandafter\endcsname\kansuji2{―\kern-.5zw―\kern-.5zw―} - \endgroup -\fi -% \end{macrocode} -% -% \end{macro} -% \end{macro} -% -% -% \section{キートップ,○数字} -% -% \begin{macro}{\removept} -% -% |#1| に与えたdimenレジスタの pt を消した数値を |#2| のマクロに -% 定義します。 -% -% \begin{macrocode} -\newcommand{\removept}[2]{% - \edef#2{\expandafter\@removePT\the#1}} -{\catcode`p=12 \catcode`t=12 \gdef\@removePT#1pt{#1}} -% しかし latex.ltx で次のように定義されていました。 -% これをそのまま使ったらよかった。 -% \begingroup -% \catcode`P=12 -% \catcode`T=12 -% \lowercase{ -% \def\x{\def\rem@pt##1.##2PT{##1\ifnum##2>\z@.##2\fi}}} -% \expandafter\endgroup\x -% \def\strip@pt{\expandafter\rem@pt\the} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\keytop} -% -% これを使ってキートップ記号を作ります。 -% -% [2016-07-30] |\keytop| はp\LaTeX のascmacパッケージ(tascmac.sty)でも -% 定義されていますが,ascmacの定義では周囲と同じファミリのままになっていて, -% okumacroでは中の文字をサンセリフ体に変更しています。 -% 両方のパッケージを読み込む場合は,後に読み込んだほうの定義が勝ちます。 -% okumacroが勝つ場合には常にサンセリフ体に変更するキートップ記号を出力しますし, -% ascmacが勝つ場合は周囲と同じファミリになります。 -% -% また,新たに |\okukeytop| という命令を追加します。これはascmacと干渉せず, -% 常にサンセリフ体に変更するキートップ記号を出力できます。 -% -% \begin{macrocode} -\newcommand{\okukeytop}[1]{{\leavevmode\kern1pt - \setbox1=\hbox{\normalfont\sffamily [}% - \dimen1=\ht1 - \removept{\dimen1}{\tempC}% - \setbox0=\hbox{\normalfont\sffamily #1}% - \dp0=0pt - \dimen0=\wd0 - \ifdim\dimen0<\ht1 \dimen0=\ht1 \fi - \advance \dimen0 by 5pt - \removept{\dimen0}{\tempA}% - \divide \dimen0 by 2 - \removept{\dimen0}{\tempB}% - \unitlength=1pt - \advance \dimen1 by 2pt - \hbox{\vrule height\dimen1 depth2pt width0pt}% - \begin{picture}(\tempA,\tempC) - \put(0,0){\line(0,1){\tempC}} - \put(\tempA,0){\line(0,1){\tempC}} - \put(\tempB,0){\oval(\tempA,4)[b]} - \put(\tempB,\tempC){\oval(\tempA,4)[t]} - \put(\tempB,0){\makebox(0,0)[b]{\box0}} - \end{picture}\kern1pt}} -\expandafter\ifx\csname ver@tascmac.sty\endcsname\relax - \newcommand{\keytop}{\okukeytop} -\else - \renewcommand{\keytop}{\okukeytop} -\fi -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\return} -% -% リターンキーの記号です。 -% -% [2016-07-30] |\return| はp\LaTeX のascmacパッケージ(tascmac.sty)でも -% 定義されていますが,okumacroがリターンのキートップ記号を出力するのに対し, -% ascmacではリターンの矢印文字{\font\ASCGRP=ascgrp \ASCGRP\char"20}だけ -% を出す命令になっています。 -% 両方のパッケージを読み込む場合は,後に読み込んだほうの定義が勝ちます。 -% okumacroが勝つ場合には\okureturn を出力しますし, -% ascmacが勝つ場合は{\font\ASCGRP=ascgrp \ASCGRP\char"20}を出力します。 -% -% また,新たに |\okureturn| という命令を追加します。これはascmacと干渉せず, -% 常にリターンのキートップ記号\okureturn を出力できます。 -% -% \begin{macrocode} -\def\RETMARK{{\unitlength=1pt - \setbox0=\hbox{\normalfont\ttfamily [}% - \dimen0=\ht0 - \removept{\dimen0}{\tempA}% - \advance \dimen0 by -1pt - \removept{\dimen0}{\tempB}% - \begin{picture}(\tempA,\tempA) - \put(\tempA,1){\line(0,1){\tempB}} - \put(\tempA,1){\vector(-1,0){\tempA}} - \end{picture}}} -\newcommand{\okureturn}{\okukeytop{\RETMARK}} -\expandafter\ifx\csname ver@tascmac.sty\endcsname\relax - \newcommand{\return}{\okureturn} -\else - \renewcommand{\return}{\okureturn} -\fi -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\upkey} -% \begin{macro}{\downkey} -% \begin{macro}{\rightkey} -% \begin{macro}{\leftkey} -% -% 上下右左の矢印キーです。 -% -% \begin{macrocode} -\newcommand{\upkey}{\raisebox{-2pt}{% - \setlength{\unitlength}{1pt}% - \thinlines - \begin{picture}(14,9) - \put(7,2){\vector(0,1){8}} - \put(1,2){\line(0,1){7}} - \put(13,2){\line(0,1){7}} - \put(7,9){\oval(12,4)[t]} - \put(7,2){\oval(12,4)[b]} - \end{picture}% -}} -\newcommand{\downkey}{\raisebox{-2pt}{% - \setlength{\unitlength}{1pt}% - \thinlines - \begin{picture}(14,9) - \put(7,10){\vector(0,-1){8}} - \put(1,2){\line(0,1){7}} - \put(13,2){\line(0,1){7}} - \put(7,9){\oval(12,4)[t]} - \put(7,2){\oval(12,4)[b]} - \end{picture}% -}} -\newcommand{\rightkey}{\raisebox{-2pt}{% - \setlength{\unitlength}{1pt}% - \thinlines - \begin{picture}(14,9) - \put(3,6){\vector(1,0){8}} - \put(1,2){\line(0,1){7}} - \put(13,2){\line(0,1){7}} - \put(7,9){\oval(12,4)[t]} - \put(7,2){\oval(12,4)[b]} - \end{picture}% -}} -\newcommand{\leftkey}{\raisebox{-2pt}{% - \setlength{\unitlength}{1pt}% - \thinlines - \begin{picture}(14,9) - \put(11,6){\vector(-1,0){8}} - \put(1,2){\line(0,1){7}} - \put(13,2){\line(0,1){7}} - \put(7,9){\oval(12,4)[t]} - \put(7,2){\oval(12,4)[b]} - \end{picture}% -}} -% \end{macrocode} -% \end{macro} -% \end{macro} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\MARU} -% -% 丸で囲んだ文字です。 -% -% [2003-01-24] |graphicx| のとき少し見映えが良くなるようにしました。 -% -% \begin{macrocode} -% \newcommand{\MARU}[1]{{% -% \ooalign{\hfil#1\/\hfil\crcr\raise.167ex\hbox{\mathhexbox20D}}}} -\newcommand{\MARU}[1]{{% - \ooalign{\hfil - \@ifundefined{scalebox}{% - #1\/\hfil\crcr\raise.167ex}{\raise.1zw\hbox{\scalebox{0.8}{#1\/}}\hfil\crcr\raise.1zw}% - \hbox{\fontencoding{OMS}\fontfamily{cmsy}\fontseries{m}\fontshape{n}\selectfont - \char"0D}}}} -% \end{macrocode} -% \end{macro} -% -% その他のロゴです。 -% -% \begin{macrocode} -% \newcommand{\MuTeX}{M\kern-.15em\raise.2ex\hbox{u}\kern-.32em\TeX} -\newcommand{\PiC}{P\kern-.12em\lower.5ex\hbox{I}\kern-.075emC} -\newcommand{\PiCTeX}{\PiC\kern-.11em\TeX} -\newcommand{\JTeX}{\leavevmode\lower.5ex\hbox{J}\kern-.17em\TeX} -\newcommand{\JLaTeX}{\leavevmode\lower.5ex\hbox{\rm J}\kern-.17em\LaTeX} -\DeclareRobustCommand{\JBibTeX}{$\m@th\mbox{% - \lower.5ex\hbox{J}\kern-.05em\BibTeX}$} -\newcommand{\pTeXsT}{p\kern-.21em\TeX\kern-.10em s\kern-.21em T} -% インプレスの新 TeX の仮称 -\newcommand{\iTeX}{\accent'27\i\TeX} -% 桜井さんの新 TeX のロゴ(仮) -\newcommand{\MlTeX}{M\kern-.1667em\lower.5ex\hbox{L}\kern-.25em\TeX} -% \end{macrocode} -% -% METAFONTのロゴを出す方法はいろいろあります。まず古い方法で, -% |manfnt| を使うものです。 -% -%\begin{verbatim} -% \font\manual=manfnt -% \font\manLarge=manfnt scaled \magstep 2 -% \font\manHuge=manfnt scaled \magstep 5 -% \newcommand{\MF}{% -% \ifx\@currsize\small -% {\manual hijk}\-{\manual lmnj}% 9pt -% \else -% \ifx\@currsize\footnotesize -% \ifdim \fontdimen\@ne\font>\z@ -% {\manual \char92\char93\char94\char95efg\char94}% 8pt slanted -% \else -% {\manual opqr}\-{\manual stuq}% 8pt -% \fi -% \else -% \ifx\@currsize\Large -% {\manLarge META}\-{\manLarge FONT}% mag2 (14pt) -% \else -% \ifx\@currsize\Huge -% {\manHuge META}\-{\manHuge FONT}% mag5 (25pt) -% \else % \normalsize -% \ifdim \fontdimen\@ne\font>\z@ -% {\manual 89:;<=>:}% 10pt slanted -% \else -% {\manual META}\-{\manual FONT}% 10pt -% \fi -% \fi -% \fi -% \fi -% \fi} -%\end{verbatim} -% -% 次は |logo| を使う方法です。 -% -%\begin{verbatim} -%\font\logoTen=logo10 -%\font\logoEight=logo8 -%\font\logoLarge=logo10 scaled \magstep 2 -%\font\logoHuge=logo10 scaled \magstep 5 -%\newcommand{\MF}{% -% \ifx\@currsize\Large -% {\logoLarge META}\-{\logoLarge FONT}% -% \else -% \ifx\@currsize\Huge -% {\logoHuge META}\-{\logoHuge FONT}% -% \else -% \ifx\@currsize\footnotesize -% {\logoEight META}\-{\logoEight FONT}% -% \else -% {\logoTen META}\-{\logoTen FONT}% -% \fi -% \fi -% \fi} -%\end{verbatim} -% -% \LaTeXe の方法としては, -% 次のような |ulogo.fd| を作っておきます。 -% -%\begin{verbatim} -%\DeclareFontFamily{U}{logo}{} -%\DeclareFontShape{U}{logo}{m}{n}{% -% <5><6><7><8>logo8% -% <9>logo9% -% <10><10.95><12><14.4><17.28><20.74><24.88>logo10}{} -%\DeclareFontShape{U}{logo}{m}{sl}{% -% <5><6><7><8><9>logosl9% -% <10><10.95><12><14.4><17.28><20.74><24.88>logosl10}{} -%\DeclareFontShape{U}{logo}{bx}{n}{% -% <5><6><7><8><9>% -% <10><10.95><12><14.4><17.28><20.74><24.88>logobf10}{} -%\DeclareFontShape{U}{logo}{m}{it} -% {<->ssub*logo/m/sl}{} -%\end{verbatim} -% -% これで次のようにします。 -% -%\begin{verbatim} -% \DeclareRobustCommand{\MF}{{\fontfamily{logo}\selectfont META}\-% -% {\fontfamily{logo}\selectfont FONT}} -% \DeclareRobustCommand{\MP}{{\fontfamily{logo}\selectfont META}\-% -% {\fontfamily{logo}\selectfont POST}} -%\end{verbatim} -% -% しかしよく調べてみたら同様なものが |mflogo.sty|,|ulogo.fd| -% として配布されていましたので,そちらを使うことにします。 -% -% \section{いろいろな環境} -% -% \begin{environment}{dangerous} -% -% 参考事項をメモ風に付ける環境です。鉛筆記号を使うようにしました。 -% -% \begin{macrocode} -%\newcommand{\dangerouslabel}[1]{{% -% \setlength{\fboxsep}{1pt}% -% \fbox{\footnotesize\bfseries #1}}} -\newenvironment{dangerous}{% - \vspace{3pt}% - \begin{list}{\ding{"2E}}{% -% \let\makelabel=\dangerouslabel - \setlength{\leftmargin}{3zw}% - \setlength{\itemindent}{0pt}% - \setlength{\labelwidth}{2zw}% - \setlength{\labelsep}{6pt}% - \setlength{\rightmargin}{0pt}% - \setlength{\itemsep}{0.5\baselineskip}% - \setlength{\parsep}{0pt}% - \setlength{\topsep}{0.5\baselineskip}% - \setlength{\partopsep}{0pt}% - \setlength{\listparindent}{0zw}% - }\small}{\end{list}} -% \end{macrocode} -% \end{environment} -% -% \begin{environment}{namelist} -% |\begin{namelist}{xxxx} \item[...] ... \end{namelist}| で -% 見出しを |xxxx| の幅にしたリストを作ります。 -% \begin{macrocode} -% \newcommand{\namelistlabel}[1]{{#1}\ \dotfill\ } -\newcommand{\namelistlabel}[1]{\hspace{1zw}#1\hfil} -\newenvironment{namelist}[1]{% - \begin{list}{}{% - \let\makelabel=\namelistlabel - \settowidth{\labelwidth}{#1}% - \addtolength{\labelwidth}{2zw}% - \setlength{\leftmargin}{\labelwidth}% - \setlength{\labelsep}{0pt}% - }}{\end{list}} -% \end{macrocode} -% \end{environment} -% -% \begin{environment}{mybibliography} -% -% |thebibliography| とほぼ同じ参考文献リスト環境ですが, -% 章(節)見出しを出力せず,カウンタをリセットしません。 -% |thebibliography| と同じ |enumiv| というカウンタを使っていますので, -% 必要に応じて -% \begin{quote} -% |\setcounter{enumiv}{0}| -% \end{quote} -% として初期化してください。 -% -% \begin{macrocode} -\newenvironment{mybibliography}[1]{% - \list{\@biblabel{\@arabic\c@enumiv}}% - {\settowidth\labelwidth{\@biblabel{#1}}% - \leftmargin\labelwidth - \advance\leftmargin\labelsep - \@openbib@code - \@nmbrlisttrue\def\@listctr{enumiv}% - \let\p@enumiv\@empty - \renewcommand\theenumiv{\@arabic\c@enumiv}}% - \sloppy - \clubpenalty4000 - \@clubpenalty\clubpenalty - \widowpenalty4000% - \sfcode`\.\@m} - {\def\@noitemerr - {\@latex@warning{Empty `mybibliography' environment}}% - \endlist} -% \end{macrocode} -% \end{environment} -% -% \begin{environment}{FRAME} -% -% 枠です。 -% -% \begin{macrocode} -\newenvironment{FRAME}{\begin{trivlist}\item[] - \hrule width\linewidth - \hbox to \linewidth\bgroup - \advance\linewidth by -30pt - \hsize=\linewidth - \vrule\hfill - \vbox\bgroup - \vskip15pt - \def\thempfootnote{\arabic{mpfootnote}}% 脚注を算用数字に - \begin{minipage}{\linewidth}}{% - \end{minipage}\vskip15pt - \egroup\hfill\vrule - \egroup\hrule width\linewidth - \end{trivlist}} -\newcommand{\SHUTTEN}[1]{% - \par\nobreak\removelastskip\rightline{\small#1}\medbreak} -% \end{macrocode} -% \end{environment} -% -% \begin{environment}{screen} -% -% スクリーン風の環境です。元は |ascmac.sty| にあったのだと -% 思いますが,かなり改変したかもしれません。 -% -% |\begin{screen}[0.75]| のようにオプションの数値を与えると -% 横幅を0.75倍するようにしてみました。 -% 倍率が 1 以外の場合は \texttt{graphicx} パッケージが必要です。 -% 画面出力例がコラム幅を超える場合の対処法として有効かもしれません。 -% ただ,screen環境の最初に |[| が来る場合は誤動作しますので,|\relax| -% か |{}| を入れて誤魔化してください。 -% -% [2016-07-30] 元になっているp\LaTeX のascmacパッケージ(tascmac.sty)の -% screen環境は,オプション引数の数値で角の丸みの大きさを整数値(0--8)で指定し -% ますが,okumacroパッケージでは横の倍率を指定するという違いがあります。 -% 両方のパッケージを読み込む場合は,後に読み込んだほうの定義が勝ちます。 -% screen環境は,okumacroが勝つ場合には横の倍率を指定できる -% スクリーン風の環境になりますし,ascmacが勝つ場合は角の丸みを指定できる -% スクリーン風の環境になります。 -% -% [2016-10-08] 画面出力例がコラム幅を超える場合の対処法として横倍率指定の -% オプションを追加しましたが,同じ枠内に改行可能な文章も含まれる場合に -% 枠の右端から離れた不自然な位置(横倍率を縮めない場合に端にあたっていた -% 位置)で改行していました。これを修正しました。 -% -% また,新たにokuscreen環境を追加します。これはascmacと干渉せず,常に横の -% 倍率を指定できるスクリーン風の環境になります。 -% -% [2018-06-11] 2017/10/04版までは,枠の中身の深さを考慮していなかったので, -% 表(tabular)や深さのある数式を囲むと枠からはみ出していました。この問題を -% 修正しましたが,なるべく既存文書のレイアウトが変わらないように,通常の -% テキストの深さ分だけ引いておきました(|!| と印をつけた部分)。 -% -% \begin{macrocode} -\expandafter\ifx\csname ver@tascmac.sty\endcsname\relax - \newdimen\@scw - \newbox\scb@x -\fi -\newenvironment{okuscreen}[1][1]% - {\def\screensc@le{#1}\@scw=\linewidth \advance \@scw by -20pt - \dimen1=#1\p@\relax - \@tempcnta=\dimen1\relax - \@tempcntb=65536\relax - \divide\@scw by \@tempcnta - \multiply\@scw by \@tempcntb - \setbox\scb@x=\hbox\bgroup\begin{minipage}[b]{\@scw}}% - % または \setbox\scb@x=\vbox\bgroup\advance \linewidth by -20pt \relax - {\end{minipage}\egroup - \dimen0=\linewidth \removept{\dimen0}{\hsPT}% - \divide \dimen0 by 2 \removept{\dimen0}{\hhsPT}% - \dimen0=\dp\scb@x \advance \dimen0 by 5pt - \advance \dimen0 by -.5\cdp %% ! - \removept{\dimen0}{\hdxPT}% - \advance \dimen0 by \ht\scb@x \advance \dimen0 by 5pt - \advance \dimen0 by -.5\cdp %% ! - \removept{\dimen0}{\htxPT}% - \begin{flushleft} - \vspace{6.5pt}% - \begin{picture}(\hsPT,\htxPT) - \put(\hhsPT,\htxPT){\oval(\hsPT,10)[t]} - \put(0,0){\line(0,1){\htxPT}} - \put(\hsPT,0){\line(0,1){\htxPT}} - \put(\hhsPT,0){\oval(\hsPT,10)[b]} - \put(10,\hdxPT){\ifdim\screensc@le pt=1pt \box\scb@x - \else\scalebox{\screensc@le}[1]{\box\scb@x}\fi} - \end{picture}% - \end{flushleft}} -\let\screen\okuscreen \let\endscreen\endokuscreen -% \end{macrocode} -% \end{environment} -% -% \begin{environment}{EXAMPLE} -% -% 出力例です。ずいぶん前に作ったので,再検討の要があります。 -% -% \begin{macrocode} -\newdimen\EXAMPLEWIDTH -\newenvironment{EXAMPLE}{\begin{flushleft}\EXAMPLEWIDTH=\linewidth - }{\end{flushleft}} -\newenvironment{IN}{% - \makebox[35pt][l]{\small\fbox{入力}}% - \advance \linewidth by -35pt - \begin{minipage}[t]{\linewidth}}{% - \end{minipage}\\[6pt]} -\newenvironment{OUT}{% - \makebox[35pt][l]{\small\fbox{出力}}% - \advance \linewidth by -35pt - \begin{minipage}[t]{\linewidth}}{% - \end{minipage}} -\newcommand{\INEX}{\medbreak\noindent - \framebox[\columnwidth][l]{\small\hskip2zw 入力}\nobreak - \begin{quote}\small} -\newcommand{\OUTEX}{\end{quote} - \framebox[\columnwidth][l]{\small\hskip2zw 出力}\nobreak - \begin{quotation}\small} -\newcommand{\ENDEX}{\end{quotation}\bigbreak} -\newcommand{\ENDEXC}[1]{\end{quotation}\nobreak - \begin{flushright}\footnotesize#1\end{flushright}\bigbreak} -% \end{macrocode} -% \end{environment} -% -% \section{雑} - -% \begin{macro}{\whichpage} -% -% |\whichpage{参照名}| で,そのページが同じページにあれば何も出力せず, -% そうでなければ(次ページ)(前ページ)(123ページ)のような形式で -% 場所を出力します。 -% -% \begin{macrocode} -\def\whichpage#1{% - \expandafter\ifx\csname r@#1\endcsname\relax - \else - \@tempcnta\pageref{#1}\relax - \advance\@tempcnta-\c@page - \ifnum\@tempcnta=0 - \else - \ifnum\@tempcnta=1 (次ページ) - \else - \ifnum\@tempcnta=-1 (前ページ) - \else (\pageref{#1}ページ) - \fi - \fi - \fi - \fi} -% \end{macrocode} -% \end{macro} -% -% \begin{environment}{migiake} -% -% ごく簡単な右空けコマンドです。使っていません。 -% -% \begin{macrocode} -% \newenvironment{migiake}[1]{% -% \setlength{\rightskip}{#1}\samepage}{\par} -% \end{macrocode} -% \end{environment} -% -% \begin{macro}{\rightfig} -% -% もう少しましな右空けです。 -% |#1| は空け幅, |#2| は行数, |#3| は図や表です。 -% -% \begin{macrocode} -% \def\rightfig#1#2#3{\noindent -% \dimen0=\baselineskip \multiply \dimen0 by #2 -% \advance\dimen0 by -\baselineskip \advance\dimen0 by 2ex -% \hangindent=-#1 \hangafter=-#2 -% \raise 2ex \hbox to 0pt{\smash{\vtop to \dimen0{\vfil -% \vbox{\hfill \hbox to #1{ \ \hfill #3}}\vfil -% }}\hss}\hskip\parindent\ignorespaces} -% \end{macrocode} -% \end{macro} -% -% 漢字の幅をttフォント2文字分にします。使っていません。 -% -% \begin{macrocode} -% \newcommand{\kanjitt}[1]{\texttt{\kanjiskip0.083595em\relax#1}} -% \end{macrocode} -% -% \begin{environment}{shadebox} -% -% 影付きの箱です。|ascmac.sty| から取りました。 -% -% [2016-07-30] 元になっているp\LaTeX のascmacパッケージ(tascmac.sty)と -% 衝突しないように,新しい仕様では,ascmacとokumacroの両方を読み込む場合には -% 「後に読み込んだほう」が勝ちます。 -% -% また,新たにokushadebox環境を追加します。これはascmacと干渉せず,常に -% okumacro流の定義になります。 -% -% \begin{macrocode} -\expandafter\ifx\csname ver@tascmac.sty\endcsname\relax - \newdimen\shaderule \shaderule 5\p@ -\fi -\def\okushadebox{\dimen0\linewidth \advance\dimen0-20\p@ - \advance\dimen0-2\fboxrule \advance\dimen0-\shaderule - \setbox\@tempboxa=\hbox\bgroup\minipage{\dimen0}} -\def\endokushadebox{\endminipage\egroup\dimen0=10\p@ \advance\dimen0-\fboxrule - \setbox\@tempboxa=\hbox{\kern\dimen0\unhbox\@tempboxa\kern\dimen0}% - \setbox0=\vbox{\hrule\@height \fboxrule - \hbox{\vrule\@width \fboxrule \hskip-\fboxrule - \vbox{\vskip\fboxsep \box\@tempboxa\vskip\fboxsep}% - \hskip-\fboxrule\vrule \@width \fboxrule}\hrule \@height \fboxrule}% - \dimen0=\ht0 \advance\dimen0-\shaderule - \hbox{\hbox to \shaderule{\copy0\hss}\kern \z@ - \vrule\@width\wd0\@height\z@\@depth\shaderule\hskip-\shaderule - \vrule\@width\shaderule\@height\dimen0}} -\let\shadebox\okushadebox \let\endshadebox\endokushadebox -% \end{macrocode} -% \end{environment} -% -% \begin{environment}{sankou} -% -% 参考(dangerous bend 風)の環境です。 -% -% \begin{macrocode} -\def\sankoumark{{\small ★}} -\newenvironment{sankou}{\vspace{3pt}% - \begin{list}{}{% - \setlength{\leftmargin}{3zw}% - \setlength{\itemindent}{0pt}% - \setlength{\labelwidth}{2zw}% - \setlength{\labelsep}{6pt}% - \setlength{\rightmargin}{0pt}% - \setlength{\itemsep}{0pt}% - \setlength{\parsep}{0pt}% - \setlength{\topsep}{0.5\baselineskip}% - \setlength{\partopsep}{0pt}% - \setlength{\listparindent}{0zw}% - }\item[\sankoumark]\small}{\end{list}} -% \end{macrocode} -% \end{environment} -% -% \begin{environment}{toi} -% -% 問いの環境です。 -% -% \begin{macrocode} -\def\toimark{{\small\bf 【問】}} -\newenvironment{toi}{\vspace{3pt}% - \begin{list}{}{% - \setlength{\leftmargin}{3zw}% - \setlength{\itemindent}{0pt}% - \setlength{\labelwidth}{2zw}% - \setlength{\labelsep}{6pt}% - \setlength{\rightmargin}{0pt}% - \setlength{\itemsep}{0pt}% - \setlength{\parsep}{3pt plus 1pt minus 1pt}% - \setlength{\topsep}{3pt plus 1pt minus 1pt}% - \setlength{\partopsep}{3pt plus 6pt minus 1pt}% - \setlength{\listparindent}{0zw}% - }\item[\toimark]\small}{\end{list}} -% \end{macrocode} -% \end{environment} -% -% 英語用の行送りに切り替えるコマンドですが,使っていません。 -% -% \begin{macrocode} -% \def\english{% -% \ifx\@currsize\normalsize \fontsize{10}{12pt}\selectfont\else -% \ifx\@currsize\small \fontsize{9}{11pt}\selectfont\else -% \ifx\@currsize\footnotesize \fontsize{8}{9.5pt}\selectfont\fi\fi\fi} -% \end{macrocode} -% -% \begin{macrocode} -% \newcommand{\shima}{dvi\-out\slash dvi\-prt\index{dviout/dviprt}} -\providecommand{\eps}{\varepsilon} -% \newcommand{\zip}{〒\kern0pt\relax} -% \def\mathpalette#1#2{\mathchoice{#1\displaystyle{#2}}% -% {#1\textstyle{#2}}{#1\scriptstyle{#2}}{#1\scriptscriptstyle{#2}}} -% ≦, ≧,=の上下に点 -\def\LEQQ{\mathrel{\mathpalette\gl@align<}} -\def\GEQQ{\mathrel{\mathpalette\gl@align>}} -\def\gl@align#1#2{\lower.6ex\vbox{\baselineskip\z@skip\lineskip\z@ - \ialign{$\m@th#1\hfil##\hfil$\crcr#2\crcr=\crcr}}} -\def\APPROX{\mathrel{\mathpalette\ap@align{\smash.}}} -\def\ap@align#1#2{\lower.2ex\vbox{\baselineskip\z@skip\lineskip\z@ - \def\finsm@sh{\ht\z@.2ex \dp\z@.2ex \box\z@}% - \ialign{$\m@th#1\hfil##\hfil$\crcr#2\crcr=\crcr#2\crcr}}} -%%% Fractions like 1/2 by DEK (TUGboat, 6(1):36, TeXbook (Excercise 11.6)) -\def\FRAC#1#2{\leavevmode\kern.1em - \raise.5ex\hbox{\the\scriptfont0 #1}\kern-.1em - /\kern-.15em\lower.25ex\hbox{\the\scriptfont0 #2}} -\newcommand{\hk}{\hspace{\kanjiskip}} -\newcommand{\hx}{\hspace{\xkanjiskip}} -\newcommand{\3}{\penalty300 } -\newcommand{\5}{\penalty50 } % \penalty\exhyphenpenalty -% \end{macrocode} -% -% \begin{macro}{\>} -% 全角コンマの直後に半角文字が来た場合,全角コンマの後に挿入して, -% 半角空白と同じだけの伸縮を持たせるためのグルー挿入コマンドです。 -% 使っていません。 -% \begin{macrocode} -% \newcommand{\>}{\relax -% \ifmmode\mskip\medmuskip\else\hskip0em plus0.167em minus0.111em\fi} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\ANGLE} -% Angle brackets です。 -% \begin{macrocode} -\newcommand{\ANGLE}[1]{% - $\langle$\kern0pt\nobreak{#1}\kern0pt\nobreak$\rangle$} -% \end{macrocode} -% \end{macro} -% -% 分数関係です。\texttt{amstex} パッケージでもほぼ同じものが -% 定義されていますが,\texttt{amstex} パッケージの |\cfrac| で -% は |\mathstrut| ではなく |\strut| が使われているため, -% 和文スタイルで行送りが大きい場合には,ちょっと間延びしてしまいます。 -% \begin{macrocode} -% \providecommand{\tfrac}[2]{{\textstyle\frac{#1}{#2}}} -% \providecommand{\dfrac}[2]{{\displaystyle\frac{#1}{#2}}} -% \providecommand{\cfrac}[2]{\dfrac{\mathstrut #1}{#2}} -% \end{macrocode} -% -% \begin{macro}{\dalembert} -% D'Alembertian(|\Box| より少々大きい四角)です。 -% \begin{macrocode} -% \newcommand{\dalembert}{{% -% \setlength{\unitlength}{0.1em}% -% \begin{picture}(8,8) -% \thinlines -% \put(1,0){\framebox(6,6){}} -% \end{picture}}} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\kanjibox} -% 漢字の大きさの箱です。使っていません。 -% \begin{macrocode} -% \newcommand{\kanjibox}{{\setlength{\unitlength}{0.1091175zw}% -% \begin{picture}(9.62216,7.77588)\thinlines -% \put(0,-1.38855){\framebox(9.16443,9.16443){}}\end{picture}}} -% \end{macrocode} -% \end{macro} -% -% Poor person's blackboard boldです -% \footnote{Robert Messer, ``Blackboard Bold.'' -% \textit{TUGboat} 9(1):19--20, 1988.}。 -% -% \begin{macro}{\R} -% \begin{macro}{\C} -% \begin{macrocode} -% \def\R{{\rm I\kern-.17em R}} % (-.25em in the above literature) -% \def\C{{\rm\kern.24em\vrule width.02em height1.4ex depth-.05ex\kern-.26em C}} -% \end{macrocode} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\株} -% \begin{macrocode} -\newcommand{\株}{\hspace{\kanjiskip}\<(株)\<\hspace{\kanjiskip}} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\CVS} -% -% CVS用。 -% -% \begin{macrocode} -% \def\CVS$#1: #2 ${\expandafter\def\csname CVS#1\endcsname{#2}} -% \end{macrocode} -% \end{macro} -% -%\begin{verbatim} -% \CVS$Revision: 1.7 $ -% \CVS$Date: 2000/06/09 05:55:02 $ -% この文書のバージョンは\CVSRevision 版である。 -%\end{verbatim} -% のように使います。 -% -% [2003-02-16..17] |js*| クラスで数式の前後のスペースが若干変わってしまいます。 -% とりあえず |amsmath| の |equation(*)|,|align(*)| 環境の類だけここで直しておきます。 -% このあたりはまた見直します。 -% -% [2021-07-01] |okumacro| が有ると |xalignat| 上部のアキが大きくなる現象 -% (forum:3029)が報告されました。|js*| クラスのための修正だったはずですが, -% |js*| クラスを使った場合でも「修正しない方がバランスが良い」という挙動 -% ^^A 少なくとも\TeX\ Live 2014--2021は同じ挙動。 -% ^^A https://oku.edu.mie-u.ac.jp/tex/mod/forum/discuss.php?d=3029 -% だったため,削除しました。 -% -% \begin{macrocode} -%\@ifundefined{widebaselines}{}{% -% \let\endmathdisplaysave=\endmathdisplay -% \def\endmathdisplay{\widebaselines\endmathdisplaysave}} -% \let\start@alignsave=\start@align -% \def\start@align{\vspace{4pt}\start@alignsave} -% \end{macrocode} -% -% 以上で終わりです。 -% -% \begin{macrocode} -% -\endinput -% \end{macrocode} -% -% ^^A \endinput の後に \CharacterTable を書いておけば,子ファイルには -% ^^A 出力されません。チェックは *.dtx を処理したときにしてくれます。 -% ^^A [2016-09-03] →削除しました。 -% -% \Finale diff --git a/macros/latex/contrib/jsclasses/okumacro.ins b/macros/latex/contrib/jsclasses/okumacro.ins deleted file mode 100644 index 57a45c97a0..0000000000 --- a/macros/latex/contrib/jsclasses/okumacro.ins +++ /dev/null @@ -1,13 +0,0 @@ -\input docstrip -\preamble - -Maintained on GitHub: https://github.com/texjporg/jsclasses - -\endpreamble - -\def\batchfile{okumacro.ins} -\input docstrip.tex -\keepsilent -\generateFile{okumacro.sty}{f}{\from{okumacro.dtx}{okumacro}} - -\endbatchfile diff --git a/macros/latex/contrib/jsclasses/okumacro.pdf b/macros/latex/contrib/jsclasses/okumacro.pdf deleted file mode 100644 index d01f531572..0000000000 Binary files a/macros/latex/contrib/jsclasses/okumacro.pdf and /dev/null differ diff --git a/macros/latex/contrib/jsclasses/okuverb.dtx b/macros/latex/contrib/jsclasses/okuverb.dtx deleted file mode 100644 index b6cc0256ec..0000000000 --- a/macros/latex/contrib/jsclasses/okuverb.dtx +++ /dev/null @@ -1,254 +0,0 @@ -% ^^A -*- japanese-latex -*- -% -% \ifx\epTeXinputencoding\undefined\else -% \epTeXinputencoding utf8 % ^^A added (2017-10-04) -% \fi -% -% \iffalse -% -%<*driver> -\ifx\epTeXinputencoding\undefined\else - \epTeXinputencoding utf8 -\fi -% -% -% okuverb.dtx -% verb/verbatim 関係マクロ -% 奥村晴彦 -% http://oku.edu.mie-u.ac.jp/~okumura/ -% -%\NeedsTeXFormat{pLaTeX2e} -%\ProvidesFile{okuverb.sty}[2003/09/03 okumura] -%<*driver> -\documentclass{jsarticle} -\usepackage{doc} -\xspcode"5C=1 %% \ -\xspcode"22=1 %% " -\usepackage{okumacro} -\usepackage{okuverb} -\addtolength{\textwidth}{-1in} -\addtolength{\evensidemargin}{1in} -\addtolength{\oddsidemargin}{1in} -\addtolength{\marginparwidth}{1in} -\setlength\marginparsep{5pt} -\setlength\marginparpush{0pt} -% \OnlyDescription -\CodelineNumbered -\DisableCrossrefs -\setcounter{StandardModuleDepth}{1} -\GetFileInfo{okuverb.sty} -\begin{document} - \DocInput{okuverb.dtx} -\end{document} -% -% -% \fi -% -% \title{\pLaTeXe 用 \texttt{verb...} 関係マクロ} -% \author{奥村晴彦} -% \date{\filedate} -% \maketitle -% -% \StopEventually{} -% -% \MakeShortVerb{\|} -% -% |okuverb| は\LaTeX の |\verb| 命令と |verbatim| 環境を拡張したものです。 -% 今では |okuverb| を大幅に書き直した |jsverb| もあります。 -% -% [2002-12-19] いろいろなものに収録していただく際にライセンスを明確にする -% 必要が生じてきました。アスキーのものが最近はmodified BSDライセンスになっ -% ていますので,私のものもそれに準じてmodified BSDとすることにします。 -% -% まずオプションの宣言です。 -% \begin{macro}{\if@yen} -% |\verb|,|verbatim| 等で |\| を円印にするかどうかのスイッチです。 -% これはデフォールトで偽ですが,|yen| オプションで真になります。 -% \begin{macrocode} -%<*okuverb> -\newif\if@yen \@yenfalse -\DeclareOption{yen}{\@yentrue} -\ProcessOptions\relax -% \end{macrocode} -% \end{macro} -% -% |\verb|, |verbatim| の変更です。 -% |ltmiscen.dtx| をご参照ください。 -% -% \begin{macro}{\yen} -% \begin{macro}{\ttyen} -% -% 円記号の定義です。 -% -% \begin{macrocode} -\DeclareRobustCommand{\yen}{{\ooalign{Y\crcr\hss=\hss}}} -\def\y@n{Y\llap=} -\def\ttyen{{\ttfamily\y@n}} -% \end{macrocode} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\ttbslash} -% -% タイプライタフォントのバックスラッシュです。 -% -% \begin{macrocode} -\def\ttbslash{{\ttfamily\char`\\}} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\BS} -% -% タイプライタフォントの円記号かバックスラッシュのどちらかになります。 -% -% \begin{macrocode} -\if@yen - \let\BS=\ttyen -\else - \let\BS=\ttbslash -\fi -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\verbh@@k} -% -% |\verb|,|verbatim| 等で使うフックです。 -% -% \begin{macrocode} -\if@yen - \begingroup - \catcode`\|=0 \catcode`\\=13 - |gdef|verbh@@k{|catcode`|\=13 |let\=|y@n} - |endgroup -\else - \let\verbh@@k=\relax -\fi -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\verbatim@font} -% -% これは |latex.ltx| に |\normalfont\ttfamily| -% と定義されていますが,|\bfseries\verb...| といった使い方もしたいので, -% |\normalfont| は削除してしまいました。 -% -% \begin{macrocode} -\def\verbatim@font{\ttfamily} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\verb} -% -% 元は数式モードだけで |\hbox| に入れるようになっていましたが, -% |\noautoxspacing| の効果を得るため,|\hbox| に入れるようにしました。 -% -% \begin{macrocode} -\def\verb{% - \leavevmode\hbox % changed - \bgroup - \verb@eol@error \let\do\@makeother \dospecials - \verbatim@font\@noligs - \noautoxspacing % added - \verbh@@k % added - \@ifstar\@sverb\@verb} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\@xverbatim} -% \begin{macro}{\@sxverbatim} -% -% |\| の |\catcode| を12から13に変えました。 -% -% \begin{macrocode} -\if@yen -\begingroup \catcode `|=0 \catcode `[= 1 -\catcode`]=2 \catcode `\{=12 \catcode `\}=12 -\catcode`\\=13 |gdef|@xverbatim#1\end{verbatim}[#1|end[verbatim]] -|gdef|@sxverbatim#1\end{verbatim*}[#1|end[verbatim*]] -|endgroup -\fi -% \end{macrocode} -% \end{macro} -% \end{macro} -% -% \begin{macro}{\verbatimleftmargin} -% -% |verbatim| 環境の余分な左マージンです。 -% -% \begin{macrocode} -\newdimen\verbatimleftmargin -\verbatimleftmargin=2zw -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\verbatimsize} -% -% |verbatim| 環境のフォントサイズです。 -% -% \begin{macrocode} -% \def\verbatimsize{\small\narrowbaselines} -\def\verbatimsize{\fontsize{9}{11pt}\selectfont} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\@verbatim} -% -% |verbatim| 環境で使うフォントの行送りとサイズ(|\f@size|)が -% 本文と違うと,前後の間隔が違ってしまいます。それを補正します。 -% -% \begin{macrocode} -\def\@verbatim{% - \trivlist \item\relax - \if@minipage -% 追加はじめ - \verbatimsize -% 追加おわり - \else -% 追加はじめ - \vskip\baselineskip - \vskip-\f@size pt - \verbatimsize - \vskip-\baselineskip - \vskip\f@size pt -% 追加おわり - \vskip\parskip - \fi - \leftskip\@totalleftmargin -% 追加はじめ - \if@minipage \else - \advance \leftskip \verbatimleftmargin - \fi -% 追加おわり - \rightskip\z@skip - \parindent\z@ - \parfillskip\@flushglue - \parskip\z@skip - \@@par - \@tempswafalse - \def\par{% - \if@tempswa - \leavevmode \null \@@par\penalty\interlinepenalty - \else - \@tempswatrue - \ifhmode\@@par\penalty\interlinepenalty\fi - \fi}% - \let\do\@makeother \dospecials - \obeylines \verbatim@font -% 追加はじめ - \noautoxspacing \verbh@@k -% 追加おわり - \@noligs - \hyphenchar\font\m@ne - \everypar \expandafter{\the\everypar \unpenalty}% -} -% \end{macrocode} -% \end{macro} -% -% 以上で終わりです。 -% -% \begin{macrocode} -% -\endinput -% \end{macrocode} -% -% \Finale diff --git a/macros/latex/contrib/jsclasses/okuverb.ins b/macros/latex/contrib/jsclasses/okuverb.ins deleted file mode 100644 index a9076d54d1..0000000000 --- a/macros/latex/contrib/jsclasses/okuverb.ins +++ /dev/null @@ -1,13 +0,0 @@ -\input docstrip -\preamble - -Maintained on GitHub: https://github.com/texjporg/jsclasses - -\endpreamble - -\def\batchfile{okuverb.ins} -\input docstrip.tex -\keepsilent -\generateFile{okuverb.sty}{f}{\from{okuverb.dtx}{okuverb}} - -\endbatchfile diff --git a/macros/latex/contrib/jsclasses/okuverb.pdf b/macros/latex/contrib/jsclasses/okuverb.pdf deleted file mode 100644 index b8014b3c66..0000000000 Binary files a/macros/latex/contrib/jsclasses/okuverb.pdf and /dev/null differ diff --git a/macros/latex/contrib/pxcjkcat/LICENSE b/macros/latex/contrib/pxcjkcat/LICENSE deleted file mode 100644 index 71f0e1f5a2..0000000000 --- a/macros/latex/contrib/pxcjkcat/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -The MIT License - -Copyright (c) 2010-2022 Takayuki YATO (aka. "ZR") - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. diff --git a/macros/latex/contrib/pxcjkcat/README-ja.md b/macros/latex/contrib/pxcjkcat/README-ja.md deleted file mode 100644 index 4c93dc9b04..0000000000 --- a/macros/latex/contrib/pxcjkcat/README-ja.md +++ /dev/null @@ -1,55 +0,0 @@ -PXcjkcat パッケージバンドル -=========================== - -LaTeX: upTeX の和文文字カテゴリを扱う LaTeX 上のインタフェース - -upTeX の和文文字カテゴリ(kcatcode)を扱う LaTeX 上のインタフェースを -提供する。 - -### 前提環境 - - * フォーマット: LaTeX - * エンジン: upTeX、pTeX-ng - * DVIウェア: 不問 - -### インストール - - - `*.sty` → $TEXMF/tex/platex/PXcjkcat - -### ライセンス - -本パッケージは MIT ライセンスの下で配布される。 - - -pxcjkcat パッケージ ー 本体 ---------------------------- - -詳細についてはマニュアル `pxcjkcat.pdf` を参照されたい。 - - -更新履歴 --------- - - * Version 1.4 〈2022/06/06〉 - - `\cjkcategory` 命令でブロックを符号値で指定可能にした。 - - * Version 1.3 〈2022/05/28〉 - - upTeX 1.25 版以降のブロック定義を新たに CCV 4 と規定する。 - - (試験的) key-value オプションのサポート。 - - * Version 1.2 〈2022/05/25〉 - - 最新の upTeX に対応させる。 - - `nomode` オプションを追加。 - - `ccv+` オプションの別名 `real` を追加。 - - * Version 1.1 〈2018/04/01〉 - - upTeX 1.23 版以降に対応する CCV 3(`ccv3` オプション)を追加した。 - - `ccv+` オプションを追加。 - - * Version 1.0 〈2012/09/22〉 - - PXbase バンドル中の pxcjkcat パッケージを分離して本バンドルを作成。 - - pxcjkcat の中身は PXbase 0.5 版収録の「0.4a 版」と同一。 - --------------------- -Takayuki YATO (aka. "ZR") -https://github.com/zr-tex8r diff --git a/macros/latex/contrib/pxcjkcat/README.md b/macros/latex/contrib/pxcjkcat/README.md deleted file mode 100644 index 11fcfe0132..0000000000 --- a/macros/latex/contrib/pxcjkcat/README.md +++ /dev/null @@ -1,101 +0,0 @@ -PXcjkcat Package -================ - -LaTeX: LaTeX interface for the CJK category codes of upTeX - -The package provides management of the CJK category code (‘kcatcode’) -table of the upTeX extended TeX engine. - -Package options are available for tailored use in the cases of documents -that are principally written in Japanese, or principally written in English -or other Western languages. - -### System Requirements - - * TeX format: LaTeX. - * TeX engine: upTeX, pTeX-ng. - * DVI-ware: Anything. - -### Installation - -In the distribution in conformance with TDS 1.1: - - - `*.sty` → $TEXMF/tex/platex/PXcjkcat - -### License - -This package is distributed under the MIT License. - - -The pxcjkcat Package ー main ----------------------------- - -Please refer to the manual `pxcjkcat.pdf` (in Japanese) for detail. - -Below is described the most basic use. - -### Overview - -The upTeX engine is an extention to the TeX engine and is developed by -Takuji TANAKA since 2007. This extension mainly aims in providing -better Unicode support to the pTeX engine, which has long been the -de facto standard of the TeX engine in Japan. The upTeX engine inherits -the basic architecture of pTeX, and only Japanese processing (which is -already on multi-byte basis in pTeX) is lift to the full Unicode range, -and non-Japanese processing remains on 8-bit basis (just like the -original TeX engine). Thus one can typeset UTF-8 encoded documents that -contain all kinds of Unicode letters with use of upTeX accompanied with -the standard techniques for handling UTF-8 letters in the traditional -8-bit TeX engines (such as pdfTeX). - -Since upTeX could treat all the Unicode letters either as non-CJK or -CJK letter, it has the mechanism (called “CJK category table”) for -specifying which letters should be treated as CJK. The pxcjkcat package -provides a concise and user-friendly LaTeX interface to the mechanism. - -### Basic Usage - -If your document is mainly in English (or some other Western language) -and has sporadic occurrences of Japanese words/phrases, then put the -following lines in the preamble: - - \usepackage[prefernoncjk]{pxcjkcat} - \usepackage[utf8]{inputenc} - -If your document is mainly in Japanese, then put the following lines -in the preamble: - - \usepackage[ccv3,japanesevar]{pxcjkcat} - \usepackage[utf8]{inputenc} - -The former setting treats the “CJK-ambiguous” punctuation symbols as -non-CJK letters, while the latter as CJK letters. Of course, your -document must in encoded in UTF-8. - -### A Sample Document - - % upLaTeX; UTF-8 - \documentclass[a4paper]{article} - \usepackage[T1]{fontenc} - \usepackage[utf8]{inputenc} - \usepackage[prefernoncjk]{pxcjkcat} - \usepackage[french]{babel} - \begin{document} - \emph{Je suis un chat} (吾輩は猫である) est un roman japonais - écrit par Sōseki Natsume (夏目漱石) de 1905 à 1906 - dans la revue littéraire \emph{Hototogisu} (ホトトギス). - \end{document} - - -Revision History ----------------- - - * Version 1.4 〈2022/06/06〉 - * Version 1.3 〈2022/05/28〉 - * Version 1.2 〈2022/05/25〉 - * Version 1.1 〈2018/04/01〉 - * Version 1.0 〈2012/09/22〉 - --------------------- -Takayuki YATO (aka. "ZR") -https://github.com/zr-tex8r diff --git a/macros/latex/contrib/pxcjkcat/pxcjkcat.pdf b/macros/latex/contrib/pxcjkcat/pxcjkcat.pdf deleted file mode 100644 index 8772b88c4a..0000000000 Binary files a/macros/latex/contrib/pxcjkcat/pxcjkcat.pdf and /dev/null differ diff --git a/macros/latex/contrib/pxcjkcat/pxcjkcat.sty b/macros/latex/contrib/pxcjkcat/pxcjkcat.sty deleted file mode 100644 index 04fad06654..0000000000 --- a/macros/latex/contrib/pxcjkcat/pxcjkcat.sty +++ /dev/null @@ -1,1130 +0,0 @@ -%% -%% This is file 'pxcjkcat.sty'. -%% -%% Copyright (c) 2010-2022 Takayuki YATO (aka. "ZR") -%% GitHub: https://github.com/zr-tex8r -%% Twitter: @zr_tex8r -%% -%% This package is distributed under the MIT License. -%% - -%% package declaration -\NeedsTeXFormat{pLaTeX2e} -\ProvidesPackage{pxcjkcat}[2022/06/06 v1.4 PX cjk-category mode] -\def\pxkc@pkgname{pxcjkcat} - -%% code guards -\edef\pxkc@restore@codes{% -\catcode33=\the\catcode33% -\catcode34=\the\catcode34% -\catcode39=\the\catcode39% -\catcode43=\the\catcode43% -\catcode45=\the\catcode45% -\catcode46=\the\catcode46% -\catcode47=\the\catcode47% -\catcode58=\the\catcode58% -\catcode60=\the\catcode60% -\catcode62=\the\catcode62% -\catcode63=\the\catcode63% -\catcode94=\the\catcode94% -\catcode96=\the\catcode96% -\catcode239=\the\catcode239% -\endlinechar=\the\endlinechar% -\relax}% -\catcode33=12 % -\catcode34=12 % <"> -\catcode39=12 % <'> -\catcode43=12 % <+> -\catcode45=12 % <-> -\catcode46=12 % <.> -\catcode47=12 % -\catcode58=12 % <:> -\catcode60=12 % <<> -\catcode62=12 % <>> -\catcode63=12 % -\catcode94=7 % <^> -\catcode96=12 % <`> -\catcode239=13 % -\AtEndOfPackage{% -\pxkc@restore@codes -\let\pxkc@restore@codes\relax} - -%--------------------------------------- general - -%% error messages -\def\pxkc@error{\PackageError\pxkc@pkgname} -\def\pxkc@err@ivcsy#1{% - \PackageError\pxkc@pkgname - {Invalid name (#1) for cjk-category}% - {It was replaced by 18(cjk).\MessageBreak - \@ehc}} -\def\pxkc@err@ivbsy#1{% - \PackageError\pxkc@pkgname - {Invalid name (#1) for Unicode block}% - {\@eha}} -\def\pxkc@err@ivmsy#1{% - \PackageError\pxkc@pkgname - {Invalid name (#1) for cjk-category mode}% - {\@eha}} -\def\pxkc@err@naltn{% - \PackageError\pxkc@pkgname - {Change to cjk-category of 'latn' is forbidden}% - {\@eha}} -\def\pxkc@warn@dfblk#1{% - \PackageWarning\pxkc@pkgname - {Unsupported Unicode block '#1' is\MessageBreak - specified}} -\def\pxkc@err@ivfmt#1{% - \PackageError\pxkc@pkgname - {Block specs are given in bad format% - \ifx\detokenize\@undefined\else - :\MessageBreak \space'\detokenize{#1}'\fi}% - {\@eha}} - -%% \pxkc@debug{} -\ifx\bxUseDebug\@undefined -\let\pxkc@debug\@gobble -\else -\def\pxkc@debug#1{\typeout{**[\pxkc@pkgname] #1}} -\fi - -%% packages -\RequirePackage{keyval}\relax - -%% unique tokens -\def\pxkc@end{\pxkc@end@} -\def\pxkc@mt{\pxkc@mt@} -\let\pxkc@mk\indent - -%% variables -\newif\ifpxkc@ok -\newif\ifpxkc@warn@bad \pxkc@warn@badtrue -\let\pxkc@good@mccv\relax -\let\pxkc@mccv\relax -\let\pxkc@ccmode@opt\relax -\let\pxkc@arg\relax -\let\pxkc@blk\relax -\let\pxkc@cp\relax - -%% \pxkc@letcs\CSa{} -\def\pxkc@letcs#1#2{% - \expandafter\let\expandafter#1\csname#2\endcsname} - -%% \pxkc@expanded{} -\def\pxkc@expanded#1{% - \edef\pxkc@next{#1}\pxkc@next} - -%% \pxkc@setup{=,...} -\def\pxkc@setup#1{% - \let\pxkc@KV@errx\KV@errx \def\KV@errx##1{\@unknownoptionerror}% - \setkeys{\pxkc@pkgname}{#1} - \let\KV@errx\pxkc@KV@errx} - -%% \pxkc@handle@key{}{}{} -\def\pxkc@handle@key#1#2#3{% - \expandafter\let\expandafter\pxkc@tmpa\csname pxkc@#3\endcsname - \ifx\pxkc@tmpa\relax - \PackageError\pxkc@pkgname - {Invalid value for key '#1':\MessageBreak\@spaces#2}% - {\@eha}% - \else \pxkc@tmpa - \fi} - -%--------------------------------------- package options - -%% mode CCV options -\DeclareOption{ccv1}{\chardef\pxkc@mccv=1 } -\DeclareOption{ccv2}{\chardef\pxkc@mccv=2 } -\DeclareOption{ccv3}{\chardef\pxkc@mccv=3 } -\DeclareOption{ccv4}{\chardef\pxkc@mccv=4 } -\DeclareOption{ccv+}{\chardef\pxkc@mccv=0 } -\DeclareOption{real}{\chardef\pxkc@mccv=0 } -%% mode options -% NB. \[pxkc@M@@...] is later redefined. -\def\pxkc@M@@forcecjk {1} -\def\pxkc@M@@prefercjk {1} -\def\pxkc@M@@prefercjkvar {1} -\def\pxkc@M@@japanese {3} -\def\pxkc@M@@japanesevar {3} -\def\pxkc@M@@prefernoncjk {1} -\def\pxkc@M@@default {1} -\def\pxkc@M@@nomode {0}% special -\chardef\pxkc@good@mccv=0 -%% key-value options -\define@key{\pxkc@pkgname}{ccv}{% - \pxkc@handle@key{ccv}{#1}{kv@ccv@@#1}} -\@namedef{pxkc@kv@ccv@@1}{\chardef\pxkc@mccv=1 } -\@namedef{pxkc@kv@ccv@@2}{\chardef\pxkc@mccv=2 } -\@namedef{pxkc@kv@ccv@@3}{\chardef\pxkc@mccv=3 } -\@namedef{pxkc@kv@ccv@@4}{\chardef\pxkc@mccv=4 } -\@namedef{pxkc@kv@ccv@@real}{\chardef\pxkc@mccv=0 } -%% dispatch -\DeclareOption*{% - \@ifundefined{pxkc@M@@\CurrentOption}{% key option - \expandafter\pxkc@setup\expandafter{\CurrentOption}% - }{%else; mode option - \chardef\pxkc@good@mccv=\@nameuse{pxkc@M@@\CurrentOption}\relax - \edef\pxkc@ccmode@opt{\CurrentOption}}} -\ProcessOptions\relax - -%% clear up -\ifnum\pxkc@good@mccv=0 - \let\pxkc@ccmode@opt\relax -\fi -\let\pxkc@M@@nomode\@undefined - -%% set default mode CCV (ccv1) -\ifx\pxkc@mccv\relax - \chardef\pxkc@mccv=1 -\else - \chardef\pxkc@good@mccv=0 % disable check -\fi - -%--------------------------------------- environment check - -%% check engine -\def\pxkc@tmpa{Native upTeX is required} -\ifx\ucs\@undefined\else \ifnum\ucs"3000="3000 - \ifx\forcecjktoken\@undefined - \def\pxkc@tmpa{This upTeX is too old} - \else \let\pxkc@tmpa\relax - \fi -\fi\fi -\ifx\pxkc@tmpa\relax\else - \PackageError\pxkc@pkgname - {\pxkc@tmpa}% - {Package loading is aborted.\MessageBreak - \@ehc} -\expandafter\endinput\fi\relax - -%% engine version -\chardef\pxkc@uptex@version=0 -\def\pxkc@next#1.#2#3#4\pxkc@end{% - \ifx\pxkc@mk#1\pxkc@mk \ifnum99<1#2#3 - \chardef\pxkc@uptex@version=\the\uptexversion#2#3\relax - \fi\fi} -\ifx\uptexversion\@undefined\else \ifx\uptexrevision\@undefined\else - \expandafter\pxkc@next\uptexrevision...\pxkc@end -\fi\fi - -%%-------- classification version check - -%% \pxkc@is@same@block -\def\pxkc@is@same@block#1#2{% - \pxkc@okfalse - \begingroup - \kcatcode#1=16\kcatcode#2=17\relax - \ifnum\kcatcode#1=17 \aftergroup\pxkc@oktrue\fi - \endgroup} - -%% \pxkc@ccv : real CCV -\pxkc@is@same@block{"FF01}{"FF11}\ifpxkc@ok - \chardef\pxkc@ccv=1 % v0.11+ -\else - \pxkc@is@same@block{"A0}{"C0}\ifpxkc@ok - \chardef\pxkc@ccv=2 % v0.29+ - \else\ifnum\pxkc@uptex@version<125 - \chardef\pxkc@ccv=3 % v1.23+ - \else - \chardef\pxkc@ccv=4 % v1.25+ - \fi\fi -\fi -\ifx\bxDebugCcv\@undefined\else % override - \chardef\pxkc@ccv=\bxDebugCcv\relax -\fi -\pxkc@debug{upTeX version \number\pxkc@uptex@version} -\pxkc@debug{CJK category version \number\pxkc@ccv} - -%% Here show warning about the buggy engine version (v1.24) -\ifnum\pxkc@ccv=1 \ifnum\pxkc@uptex@version=124 - \PackageWarningNoLine\pxkc@pkgname - {The upTeX engine of version 1.24 is used!\MessageBreak - This version has a bug on CJK category,\MessageBreak - and here real CCV is regard as 1} -\fi\fi - -%% Here show warning for mode CCV recommendation. -%% (No warning if the good mode CCV is unavailable.) -\ifnum\pxkc@good@mccv>\pxkc@mccv \ifnum\pxkc@good@mccv>\pxkc@ccv\else - \PackageWarningNoLine\pxkc@pkgname - {Mode CCV \number\pxkc@good@mccv\space - (option 'ccv\number\pxkc@good@mccv') is recommended\MessageBreak - for the use of category mode '\pxkc@ccmode@opt'!\MessageBreak - Or you can simply suppress this warning by giving\MessageBreak - option 'ccv\number\pxkc@mccv' explicitly} -\fi\fi - -%% set mode CCV if 'ccv+' is given -\ifnum\pxkc@mccv=\z@ - \let\pxkc@mccv\pxkc@ccv -\fi - -%% mode CCV cannot be newer than real CCV -\ifnum\pxkc@mccv>\pxkc@ccv - \PackageError\pxkc@pkgname - {Bad mode-CCV option (ccv\number\pxkc@mccv) is given!\MessageBreak - The mode-CCV (\number\pxkc@mccv) is newer than - the real CCV (\number\pxkc@ccv)} - {I assume the mode-CCV equals the real CCV.\MessageBreak - \@ehc} - \let\pxkc@mccv\pxkc@ccv -\fi - -%--------------------------------------- helpers - -%% constants -\chardef\pxkc@ascii@max="7F - -%% \pxkc@cond\ifXXX...\fi{}{} -\def\pxkc@cond#1\fi{% - #1\expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi} - -%% \pxkc@get@jchar{} -\def\pxkc@get@jchar#1{% - \begingroup - \forcecjktoken - \kansujichar\@ne=#1\relax - \xdef\pxkc@jchar{\kansuji\@ne}% - \endgroup} - -%% \pxkc@kcatcode{}{} -\ifx\bxUseDebug\@undefined -\def\pxkc@kcatcode#1#2{\kcatcode#1=#2\relax} -\else -\def\pxkc@kcatcode#1#2{% - \kcatcode#1=#2\relax - \chardef\pxkc@tmpa=#1\relax - \expandafter\pxkc@kcatcode@a\meaning\pxkc@tmpa\pxkc@end} -\def\pxkc@kcatcode@a#1"#2\pxkc@end{% - \pxkc@debug{\string\kcatcode"#2 set to \number\kcatcode\pxkc@tmpa}} -\fi - -%--------------------------------------- data tables - -%% variables -%\[pxkc@B@@] : start charcode of the block -%\[pxkc@G@@] : members of the group block -%\[pxkc@C@@] : kcatcode value of the category - -%% \pxkc@bslst -\def\pxkc@bslst{\@gobble} -\def\pxkc@bbslst{} -%% \pxkc@bval{}{}{}{} -\def\pxkc@bval#1#2#3#4{% #4 is unused for now - \ifnum#1<\z@\else - % check if min_ccv >= 2 (now min_ccv has no other role) - \ifnum#1<\tw@ \pxkc@okfalse - \else - \@tempcnta=#3\relax - \@tempcntb\@tempcnta \advance\@tempcntb\m@ne - \pxkc@is@same@block\@tempcnta\@tempcntb - \fi - \ifpxkc@ok % bad - \@namedef{pxkc@B@@#2}{-1}% - \edef\pxkc@bbslst{\pxkc@bbslst\space#2}% - \else\ifnum#3=\z@ % 'latn' - \@namedef{pxkc@B@@#2}{0}% - \else - \@namedef{pxkc@B@@#2}{#3}% - \edef\pxkc@bslst{\pxkc@bslst,#2}% - \fi\fi - \fi} -%% \pxkc@gval{}{,...}{} -\def\pxkc@gval#1#2#3{\@namedef{pxkc@G@@#1}{#2}} - -%% \pxkc@cval{}{} -\def\pxkc@cval#1#2{\@namedef{pxkc@C@@#1}{#2}} -\pxkc@cval{noncjk}{15} -\pxkc@cval{kanji}{16} -\pxkc@cval{han}{16} -\pxkc@cval{kana}{17} -\pxkc@cval{cjk}{18} -\pxkc@cval{hangul}{19} - -%% Basic blocks -%B====================================== -\pxkc@bval{1}{latn}{"0} {Basic Latin} -\pxkc@bval{1}{latn1}{"80} {Latin-1 Supplement} -\pxkc@bval{1}{latnA}{"100} {Latin Extended-A} -\pxkc@bval{1}{latnB}{"180} {Latin Extended-B} -\pxkc@bval{1}{latn2}{"250} {IPA Extensions} -\pxkc@bval{1}{sym01}{"2B0} {Spacing Modifier Letters} -\pxkc@bval{1}{sym02}{"300} {Combining Diacritical Marks} -\pxkc@bval{1}{grek}{"370} {Greek and Coptic} -\pxkc@bval{1}{cyrl}{"400} {Cyrillic} -\pxkc@bval{1}{cyrl1}{"500} {Cyrillic Supplement} -\pxkc@bval{1}{armn}{"530} {Armenian} -\pxkc@bval{1}{hebr}{"590} {Hebrew} -\pxkc@bval{1}{arab}{"600} {Arabic} -\pxkc@bval{1}{syrc}{"700} {Syriac} -\pxkc@bval{1}{arab1}{"750} {Arabic Supplement} -\pxkc@bval{1}{thaa}{"780} {Thaana} -\pxkc@bval{1}{nkoo}{"7C0} {NKo} -\pxkc@bval{2}{samr}{"800} {Samaritan} -\pxkc@bval{2}{mand}{"840} {Mandaic} -\pxkc@bval{3}{syrc1}{"860} {Syriac Supplement} -\pxkc@bval{2}{arabA}{"8A0} {Arabic Extended-A} -\pxkc@bval{1}{deva}{"900} {Devanagari} -\pxkc@bval{1}{beng}{"980} {Bengali} -\pxkc@bval{1}{guru}{"A00} {Gurmukhi} -\pxkc@bval{1}{gujr}{"A80} {Gujarati} -\pxkc@bval{1}{orya}{"B00} {Oriya} -\pxkc@bval{1}{taml}{"B80} {Tamil} -\pxkc@bval{1}{telu}{"C00} {Telugu} -\pxkc@bval{1}{knda}{"C80} {Kannada} -\pxkc@bval{1}{mlym}{"D00} {Malayalam} -\pxkc@bval{1}{sinh}{"D80} {Sinhala} -\pxkc@bval{1}{thai}{"E00} {Thai} -\pxkc@bval{1}{laoo}{"E80} {Lao} -\pxkc@bval{1}{tibt}{"F00} {Tibetan} -\pxkc@bval{1}{mymr}{"1000} {Myanmar} -\pxkc@bval{1}{geor}{"10A0} {Georgian} -\pxkc@bval{1}{hang1}{"1100} {Hangul Jamo} -\pxkc@bval{1}{ethi}{"1200} {Ethiopic} -\pxkc@bval{1}{ethi1}{"1380} {Ethiopic Supplement} -\pxkc@bval{1}{cher}{"13A0} {Cherokee} -\pxkc@bval{1}{cans}{"1400} {Unified Canadian Aboriginal Syllabics} -\pxkc@bval{1}{ogam}{"1680} {Ogham} -\pxkc@bval{1}{runr}{"16A0} {Runic} -\pxkc@bval{1}{tglg}{"1700} {Tagalog} -\pxkc@bval{1}{hano}{"1720} {Hanunoo} -\pxkc@bval{1}{buhd}{"1740} {Buhid} -\pxkc@bval{1}{tagb}{"1760} {Tagbanwa} -\pxkc@bval{1}{khmr}{"1780} {Khmer} -\pxkc@bval{1}{mong}{"1800} {Mongolian} -\pxkc@bval{2}{cans1}{"18B0} {Unified Canadian Aboriginal Syllabics Extended} -\pxkc@bval{1}{limb}{"1900} {Limbu} -\pxkc@bval{1}{tale}{"1950} {Tai Le} -\pxkc@bval{1}{talu}{"1980} {New Tai Lue} -\pxkc@bval{1}{khmr1}{"19E0} {Khmer Symbols} -\pxkc@bval{1}{bugi}{"1A00} {Buginese} -\pxkc@bval{2}{lana}{"1A20} {Tai Tham} -\pxkc@bval{2}{sym52}{"1AB0} {Combining Diacritical Marks Extended} -\pxkc@bval{1}{bali}{"1B00} {Balinese} -\pxkc@bval{2}{sund}{"1B80} {Sundanese} -\pxkc@bval{2}{batk}{"1BC0} {Batak} -\pxkc@bval{2}{lepc}{"1C00} {Lepcha} -\pxkc@bval{2}{olck}{"1C50} {Ol Chiki} -\pxkc@bval{2}{cyrlC}{"1C80} {Cyrillic Extended-C} -\pxkc@bval{4}{geor2}{"1C90} {Georgian Extended} -\pxkc@bval{2}{sund1}{"1CC0} {Sundanese Supplement} -\pxkc@bval{2}{sym38}{"1CD0} {Vedic Extensions} -\pxkc@bval{1}{latn4}{"1D00} {Phonetic Extensions} -\pxkc@bval{1}{latn5}{"1D80} {Phonetic Extensions Supplement} -\pxkc@bval{1}{sym03}{"1DC0} {Combining Diacritical Marks Supplement} -\pxkc@bval{1}{latn3}{"1E00} {Latin Extended Additional} -\pxkc@bval{1}{grek1}{"1F00} {Greek Extended} -\pxkc@bval{1}{sym04}{"2000} {General Punctuation} -\pxkc@bval{1}{sym05}{"2070} {Superscripts and Subscripts} -\pxkc@bval{1}{sym06}{"20A0} {Currency Symbols} -\pxkc@bval{1}{sym07}{"20D0} {Combining Diacritical Marks for Symbols} -\pxkc@bval{1}{sym08}{"2100} {Letterlike Symbols} -\pxkc@bval{1}{sym09}{"2150} {Number Forms} -\pxkc@bval{1}{sym10}{"2190} {Arrows} -\pxkc@bval{1}{sym11}{"2200} {Mathematical Operators} -\pxkc@bval{1}{sym12}{"2300} {Miscellaneous Technical} -\pxkc@bval{1}{sym13}{"2400} {Control Pictures} -\pxkc@bval{1}{sym14}{"2440} {Optical Character Recognition} -\pxkc@bval{1}{sym15}{"2460} {Enclosed Alphanumerics} -\pxkc@bval{1}{sym16}{"2500} {Box Drawing} -\pxkc@bval{1}{sym17}{"2580} {Block Elements} -\pxkc@bval{1}{sym18}{"25A0} {Geometric Shapes} -\pxkc@bval{1}{sym19}{"2600} {Miscellaneous Symbols} -\pxkc@bval{1}{sym20}{"2700} {Dingbats} -\pxkc@bval{1}{sym21}{"27C0} {Miscellaneous Mathematical Symbols-A} -\pxkc@bval{1}{sym22}{"27F0} {Supplemental Arrows-A} -\pxkc@bval{1}{brai}{"2800} {Braille Patterns} -\pxkc@bval{1}{sym23}{"2900} {Supplemental Arrows-B} -\pxkc@bval{1}{sym24}{"2980} {Miscellaneous Mathematical Symbols-B} -\pxkc@bval{1}{sym25}{"2A00} {Supplemental Mathematical Operators} -\pxkc@bval{1}{sym26}{"2B00} {Miscellaneous Symbols and Arrows} -\pxkc@bval{1}{glag}{"2C00} {Glagolitic} -\pxkc@bval{1}{latnC}{"2C60} {Latin Extended-C} -\pxkc@bval{1}{copt}{"2C80} {Coptic} -\pxkc@bval{1}{geor1}{"2D00} {Georgian Supplement} -\pxkc@bval{1}{tfng}{"2D30} {Tifinagh} -\pxkc@bval{1}{ethi2}{"2D80} {Ethiopic Extended} -\pxkc@bval{2}{cyrlA}{"2DE0} {Cyrillic Extended-A} -\pxkc@bval{1}{sym27}{"2E00} {Supplemental Punctuation} -\pxkc@bval{1}{cjk01}{"2E80} {CJK Radicals Supplement} -\pxkc@bval{1}{cjk02}{"2F00} {Kangxi Radicals} -\pxkc@bval{1}{cjk03}{"2FF0} {Ideographic Description Characters} -\pxkc@bval{1}{cjk04}{"3000} {CJK Symbols and Punctuation} -\pxkc@bval{1}{hira}{"3040} {Hiragana} -\pxkc@bval{1}{kana}{"30A0} {Katakana} -\pxkc@bval{1}{bopo}{"3100} {Bopomofo} -\pxkc@bval{1}{hang2}{"3130} {Hangul Compatibility Jamo} -\pxkc@bval{1}{cjk05}{"3190} {Kanbun} -\pxkc@bval{1}{bopo1}{"31A0} {Bopomofo Extended} -\pxkc@bval{1}{cjk06}{"31C0} {CJK Strokes} -\pxkc@bval{1}{kana1}{"31F0} {Katakana Phonetic Extensions} -\pxkc@bval{1}{cjk07}{"3200} {Enclosed CJK Letters and Months} -\pxkc@bval{1}{cjk08}{"3300} {CJK Compatibility} -\pxkc@bval{1}{haniA}{"3400} {CJK Unified Ideographs Extension A} -\pxkc@bval{1}{sym28}{"4DC0} {Yijing Hexagram Symbols} -\pxkc@bval{1}{hani}{"4E00} {CJK Unified Ideographs} -\pxkc@bval{1}{yiii}{"A000} {Yi Syllables} -\pxkc@bval{1}{yiii1}{"A490} {Yi Radicals} -\pxkc@bval{2}{lisu}{"A4D0} {Lisu} -\pxkc@bval{2}{vaii}{"A500} {Vai} -\pxkc@bval{2}{cyrlB}{"A640} {Cyrillic Extended-B} -\pxkc@bval{2}{bamu}{"A6A0} {Bamum} -\pxkc@bval{1}{sym29}{"A700} {Modifier Tone Letters} -\pxkc@bval{1}{latnD}{"A720} {Latin Extended-D} -\pxkc@bval{1}{sylo}{"A800} {Syloti Nagri} -\pxkc@bval{2}{sym39}{"A830} {Common Indic Number Forms} -\pxkc@bval{1}{phag}{"A840} {Phags-pa} -\pxkc@bval{2}{saur}{"A880} {Saurashtra} -\pxkc@bval{2}{deva1}{"A8E0} {Devanagari Extended} -\pxkc@bval{2}{kali}{"A900} {Kayah Li} -\pxkc@bval{2}{rjng}{"A930} {Rejang} -\pxkc@bval{2}{hangA}{"A960} {Hangul Jamo Extended-A} -\pxkc@bval{2}{java}{"A980} {Javanese} -\pxkc@bval{2}{mymrB}{"A9E0} {Myanmar Extended-B} -\pxkc@bval{2}{cham}{"AA00} {Cham} -\pxkc@bval{2}{mymrA}{"AA60} {Myanmar Extended-A} -\pxkc@bval{2}{tavt}{"AA80} {Tai Viet} -\pxkc@bval{2}{mtei1}{"AAE0} {Meetei Mayek Extensions} -\pxkc@bval{2}{ethiA}{"AB00} {Ethiopic Extended-A} -\pxkc@bval{2}{latnE}{"AB30} {Latin Extended-E} -\pxkc@bval{2}{cher1}{"AB70} {Cherokee Supplement} -\pxkc@bval{2}{mtei}{"ABC0} {Meetei Mayek} -\pxkc@bval{1}{hang}{"AC00} {Hangul Syllables} -\pxkc@bval{2}{hangB}{"D7B0} {Hangul Jamo Extended-B} -\pxkc@bval{1}{spc01}{"D800} {High Surrogates} -\pxkc@bval{1}{spc02}{"DB80} {High Private Use Surrogates} -\pxkc@bval{1}{spc03}{"DC00} {Low Surrogates} -\pxkc@bval{1}{spc04}{"E000} {Private Use Area} -\pxkc@bval{1}{hani1}{"F900} {CJK Compatibility Ideographs} -\pxkc@bval{1}{latn6}{"FB00} {Alphabetic Presentation Forms} -\pxkc@bval{1}{arab2}{"FB50} {Arabic Presentation Forms-A} -\pxkc@bval{1}{spc05}{"FE00} {Variation Selectors} -\pxkc@bval{1}{cjk09}{"FE10} {Vertical Forms} -\pxkc@bval{1}{sym30}{"FE20} {Combining Half Marks} -\pxkc@bval{1}{cjk10}{"FE30} {CJK Compatibility Forms} -\pxkc@bval{1}{cjk11}{"FE50} {Small Form Variants} -\pxkc@bval{1}{arab3}{"FE70} {Arabic Presentation Forms-B} -\pxkc@bval{1}{cjk12}{"FF00} {Halfwidth and Fullwidth Forms} -\pxkc@bval{1}{spc06}{"FFF0} {Specials} -\pxkc@bval{1}{linb}{"10000} {Linear B Syllabary} -\pxkc@bval{1}{linb1}{"10080} {Linear B Ideograms} -\pxkc@bval{1}{sym31}{"10100} {Aegean Numbers} -\pxkc@bval{1}{grek2}{"10140} {Ancient Greek Numbers} -\pxkc@bval{2}{sym40}{"10190} {Ancient Symbols} -\pxkc@bval{2}{sym41}{"101D0} {Phaistos Disc} -\pxkc@bval{2}{lyci}{"10280} {Lycian} -\pxkc@bval{2}{cari}{"102A0} {Carian} -\pxkc@bval{2}{copt1}{"102E0} {Coptic Epact Numbers} -\pxkc@bval{1}{ital}{"10300} {Old Italic} -\pxkc@bval{1}{goth}{"10330} {Gothic} -\pxkc@bval{2}{perm}{"10350} {Old Permic} -\pxkc@bval{1}{ugar}{"10380} {Ugaritic} -\pxkc@bval{1}{xpeo}{"103A0} {Old Persian} -\pxkc@bval{1}{dsrt}{"10400} {Deseret} -\pxkc@bval{1}{shaw}{"10450} {Shavian} -\pxkc@bval{1}{osma}{"10480} {Osmanya} -\pxkc@bval{2}{osge}{"104B0} {Osage} -\pxkc@bval{2}{elba}{"10500} {Elbasan} -\pxkc@bval{2}{aghb}{"10530} {Caucasian Albanian} -\pxkc@bval{2}{lina}{"10600} {Linear A} -\pxkc@bval{1}{cprt}{"10800} {Cypriot Syllabary} -\pxkc@bval{2}{armi}{"10840} {Imperial Aramaic} -\pxkc@bval{2}{palm}{"10860} {Palmyrene} -\pxkc@bval{2}{nbat}{"10880} {Nabataean} -\pxkc@bval{2}{hatr}{"108E0} {Hatran} -\pxkc@bval{1}{phnx}{"10900} {Phoenician} -\pxkc@bval{2}{lydi}{"10920} {Lydian} -\pxkc@bval{2}{mero}{"10980} {Meroitic Hieroglyphs} -\pxkc@bval{2}{merc}{"109A0} {Meroitic Cursive} -\pxkc@bval{1}{khar}{"10A00} {Kharoshthi} -\pxkc@bval{2}{sarb}{"10A60} {Old South Arabian} -\pxkc@bval{2}{narb}{"10A80} {Old North Arabian} -\pxkc@bval{2}{mani}{"10AC0} {Manichaean} -\pxkc@bval{2}{avst}{"10B00} {Avestan} -\pxkc@bval{2}{prti}{"10B40} {Inscriptional Parthian} -\pxkc@bval{2}{phli}{"10B60} {Inscriptional Pahlavi} -\pxkc@bval{2}{phlp}{"10B80} {Psalter Pahlavi} -\pxkc@bval{2}{orkh}{"10C00} {Old Turkic} -\pxkc@bval{2}{hung}{"10C80} {Old Hungarian} -\pxkc@bval{4}{rohg}{"10D00} {Hanifi Rohingya} -\pxkc@bval{2}{sym42}{"10E60} {Rumi Numeral Symbols} -\pxkc@bval{4}{yezi}{"10E80} {Yezidi} -\pxkc@bval{4}{sogo}{"10F00} {Old Sogdian} -\pxkc@bval{4}{sogd}{"10F30} {Sogdian} -\pxkc@bval{4}{chrs}{"10FB0} {Chorasmian} -\pxkc@bval{4}{elym}{"10FE0} {Elymaic} -\pxkc@bval{2}{brah}{"11000} {Brahmi} -\pxkc@bval{2}{kthi}{"11080} {Kaithi} -\pxkc@bval{2}{sora}{"110D0} {Sora Sompeng} -\pxkc@bval{2}{cakm}{"11100} {Chakma} -\pxkc@bval{2}{mahj}{"11150} {Mahajani} -\pxkc@bval{2}{shrd}{"11180} {Sharada} -\pxkc@bval{2}{sinh1}{"111E0} {Sinhala Archaic Numbers} -\pxkc@bval{2}{khoj}{"11200} {Khojki} -\pxkc@bval{2}{mult}{"11280} {Multani} -\pxkc@bval{2}{sind}{"112B0} {Khudawadi} -\pxkc@bval{2}{gran}{"11300} {Grantha} -\pxkc@bval{2}{newa}{"11400} {Newa} -\pxkc@bval{2}{tirh}{"11480} {Tirhuta} -\pxkc@bval{2}{sidd}{"11580} {Siddham} -\pxkc@bval{2}{modi}{"11600} {Modi} -\pxkc@bval{2}{mong1}{"11660} {Mongolian Supplement} -\pxkc@bval{2}{takr}{"11680} {Takri} -\pxkc@bval{2}{ahom}{"11700} {Ahom} -\pxkc@bval{4}{dogr}{"11800} {Dogra} -\pxkc@bval{2}{wara}{"118A0} {Warang Citi} -\pxkc@bval{4}{diak}{"11900} {Dives Akuru} -\pxkc@bval{4}{nand}{"119A0} {Nandinagari} -\pxkc@bval{3}{zanb}{"11A00} {Zanabazar Square} -\pxkc@bval{3}{soyo}{"11A50} {Soyombo} -\pxkc@bval{2}{pauc}{"11AC0} {Pau Cin Hau} -\pxkc@bval{2}{bhks}{"11C00} {Bhaiksuki} -\pxkc@bval{2}{marc}{"11C70} {Marchen} -\pxkc@bval{3}{gonm}{"11D00} {Masaram Gondi} -\pxkc@bval{4}{gong}{"11D60} {Gunjala Gondi} -\pxkc@bval{4}{maka}{"11EE0} {Makasar} -\pxkc@bval{4}{lisu1}{"11FB0} {Lisu Supplement} -\pxkc@bval{4}{taml1}{"11FC0} {Tamil Supplement} -\pxkc@bval{1}{xsux}{"12000} {Cuneiform} -\pxkc@bval{1}{xsux1}{"12400} {Cuneiform Numbers and Punctuation} -\pxkc@bval{2}{xsux2}{"12480} {Early Dynastic Cuneiform} -\pxkc@bval{2}{egyp}{"13000} {Egyptian Hieroglyphs} -\pxkc@bval{4}{egyp1}{"13430} {Egyptian Hieroglyph Format Controls} -\pxkc@bval{2}{hluw}{"14400} {Anatolian Hieroglyphs} -\pxkc@bval{2}{bamu1}{"16800} {Bamum Supplement} -\pxkc@bval{2}{mroo}{"16A40} {Mro} -\pxkc@bval{2}{bass}{"16AD0} {Bassa Vah} -\pxkc@bval{2}{hmng}{"16B00} {Pahawh Hmong} -\pxkc@bval{4}{medf}{"16E40} {Medefaidrin} -\pxkc@bval{2}{plrd}{"16F00} {Miao} -\pxkc@bval{2}{cjk14}{"16FE0} {Ideographic Symbols and Punctuation} -\pxkc@bval{2}{tang}{"17000} {Tangut} -\pxkc@bval{2}{tang1}{"18800} {Tangut Components} -\pxkc@bval{4}{kits}{"18B00} {Khitan Small Script} -\pxkc@bval{4}{tang2}{"18D00} {Tangut Supplement} -\pxkc@bval{2}{kana2}{"1B000} {Kana Supplement} -\pxkc@bval{3}{kanaA}{"1B100} {Kana Extended-A} -\pxkc@bval{4}{kana3}{"1B130} {Small Kana Extension} -\pxkc@bval{3}{nshu}{"1B170} {Nushu} -\pxkc@bval{2}{dupl}{"1BC00} {Duployan} -\pxkc@bval{2}{sym53}{"1BCA0} {Shorthand Format Controls} -\pxkc@bval{1}{sym32}{"1D000} {Byzantine Musical Symbols} -\pxkc@bval{1}{sym33}{"1D100} {Musical Symbols} -\pxkc@bval{1}{sym34}{"1D200} {Ancient Greek Musical Notation} -\pxkc@bval{4}{sym58}{"1D2E0} {Mayan Numerals} -\pxkc@bval{1}{sym35}{"1D300} {Tai Xuan Jing Symbols} -\pxkc@bval{1}{sym36}{"1D360} {Counting Rod Numerals} -\pxkc@bval{1}{sym37}{"1D400} {Mathematical Alphanumeric Symbols} -\pxkc@bval{2}{sgnw}{"1D800} {Sutton SignWriting} -\pxkc@bval{2}{glag1}{"1E000} {Glagolitic Supplement} -\pxkc@bval{4}{hmnp}{"1E100} {Nyiakeng Puachue Hmong} -\pxkc@bval{4}{wcho}{"1E2C0} {Wancho} -\pxkc@bval{2}{mend}{"1E800} {Mende Kikakui} -\pxkc@bval{2}{adlm}{"1E900} {Adlam} -\pxkc@bval{4}{sym59}{"1EC70} {Indic Siyaq Numbers} -\pxkc@bval{4}{sym61}{"1ED00} {Ottoman Siyaq Numbers} -\pxkc@bval{2}{sym51}{"1EE00} {Arabic Mathematical Alphabetic Symbols} -\pxkc@bval{2}{sym43}{"1F000} {Mahjong Tiles} -\pxkc@bval{2}{sym44}{"1F030} {Domino Tiles} -\pxkc@bval{2}{sym46}{"1F0A0} {Playing Cards} -\pxkc@bval{2}{sym45}{"1F100} {Enclosed Alphanumeric Supplement} -\pxkc@bval{2}{cjk13}{"1F200} {Enclosed Ideographic Supplement} -\pxkc@bval{2}{sym47}{"1F300} {Miscellaneous Symbols and Pictographs} -\pxkc@bval{2}{sym48}{"1F600} {Emoticons} -\pxkc@bval{2}{sym54}{"1F650} {Ornamental Dingbats} -\pxkc@bval{2}{sym49}{"1F680} {Transport and Map Symbols} -\pxkc@bval{2}{sym50}{"1F700} {Alchemical Symbols} -\pxkc@bval{2}{sym55}{"1F780} {Geometric Shapes Extended} -\pxkc@bval{2}{sym56}{"1F800} {Supplemental Arrows-C} -\pxkc@bval{2}{sym57}{"1F900} {Supplemental Symbols and Pictographs} -\pxkc@bval{4}{sym60}{"1FA00} {Chess Symbols} -\pxkc@bval{4}{sym62}{"1FA70} {Symbols and Pictographs Extended-A} -\pxkc@bval{4}{sym63}{"1FB00} {Symbols for Legacy Computing} -\pxkc@bval{1}{haniB}{"20000} {CJK Unified Ideographs Extension B} -\pxkc@bval{2}{haniC}{"2A700} {CJK Unified Ideographs Extension C} -\pxkc@bval{2}{haniD}{"2B740} {CJK Unified Ideographs Extension D} -\pxkc@bval{2}{haniE}{"2B820} {CJK Unified Ideographs Extension E} -\pxkc@bval{3}{haniF}{"2CEB0} {CJK Unified Ideographs Extension F} -\pxkc@bval{1}{hani2}{"2F800} {CJK Compatibility Ideographs Supplement} -\pxkc@bval{4}{haniG}{"30000} {CJK Unified Ideographs Extension G} -\pxkc@bval{1}{spc07}{"E0000} {Tags} -\pxkc@bval{1}{spc08}{"E0100} {Variation Selectors Supplement} -\pxkc@bval{1}{spc09}{"F0000} {Supplementary Private Use Area-A} -\pxkc@bval{1}{spc10}{"100000} {Supplementary Private Use Area-B} -%======================================= -%% Block subdivisions -\ifnum\pxkc@ccv<2 \else -\pxkc@gval{cjk12}{cjk1a,cjk1b,cjk1c}{Halfwidth and Fullwidth Forms} -\pxkc@bval{0}{cjk1a}{"FF01}{Halfwidth and Fullwidth Forms/Other} -\pxkc@bval{0}{cjk1b}{"FF10}{Halfwidth and Fullwidth Forms/Latin} -\pxkc@bval{0}{cjk1c}{"FF66}{Halfwidth and Fullwidth Forms/Kana} -\fi -\ifnum\pxkc@ccv<3 \else -\pxkc@gval{latn1}{latnx,latny}{Latin-1 Supplement} -\pxkc@bval{0}{latnx}{"00A0}{Latin-1 Supplement/Other} -\pxkc@bval{0}{latny}{"00C0}{Latin-1 Supplement/Latin} -\fi -\ifx\pxkc@bbslst\@empty\else - \pxkc@debug{Unsupported blocks:\pxkc@bbslst} -\fi - -%% \pxkc@foreach@blocks -\edef\pxkc@foreach@blocks{% - \noexpand\@for\noexpand\pxkc@blk:={\pxkc@bslst}} - -%% clean up -\let\pxkc@bval\relax -\let\pxkc@cval\relax -\let\pxkc@gval\relax -\let\pxkc@bslst\relax -\let\pxkc@bbslst\relax - -%--------------------------------------- public interfaces - -%%<*> \cjkcategory{}{} -% Sets the kcatcode of block to . -% Here is given as a block name or a single character in the -% block (groups are not considered) to be specified; -% is given as a category name or a kcatcode value (15--19). -\newcommand*\cjkcategory{% - \begingroup - \forcecjktoken - \expandafter\endgroup\pxkc@cjkcategory@}% read args -\def\pxkc@cjkcategory@#1#2{% - \edef\pxkc@arg{#2}% - \ifnum2<1\pxkc@arg\relax \else % is a number - \@ifundefined{pxkc@C@@#2}{% - \pxkc@err@ivcsy{#2}\def\pxkc@arg{18}% - }{%else - \edef\pxkc@arg{\@nameuse{pxkc@C@@#2}}% - }% - \fi - \pxkc@cjkcategory@a{#1}} -\def\pxkc@cjkcategory@a#1{%{} - \pxkc@expand@text\pxkc@tmpa{#1}% - \ifx\pxkc@tmpa\relax - \pxkc@err@ivfmt{#1}% - \else - \@for\pxkc@blk:=\pxkc@tmpa\do{% - \expandafter\pxkc@cjkcategory@b\expandafter{\pxkc@blk}}% - \fi} -\def\pxkc@cjkcategory@b#1{% - \pxkc@get@cp{#1}\ifpxkc@ok % charcode - \pxkc@kcatcode{\pxkc@cp}{\pxkc@arg}% - \else - \ifcase\pxkc@cp % no-op - \or % name - \edef\pxkc@blk{#1}% - \pxkc@set@cjkcategory - \else \pxkc@err@ivfmt{#1}% error - \fi - \fi} - -%% \pxkc@set@cjkcategory -% Sees \pxkc@blk (block name) and \pxkc@arg (kcatcode). -\def\pxkc@set@cjkcategory{% - \pxkc@letcs\pxkc@tmpa{pxkc@G@@\pxkc@blk}% - \ifx\pxkc@tmpa\relax - \pxkc@letcs\pxkc@cp{pxkc@B@@\pxkc@blk}% - \ifx\pxkc@cp\relax - \pxkc@err@ivbsy{\pxkc@blk}% - \else\ifnum\pxkc@cp<\z@ % bad - \ifpxkc@warn@bad \pxkc@warn@dfblk{\pxkc@blk}\fi - \else\ifnum\pxkc@cp=\z@ - \ifnum\pxkc@arg=15 \else - \pxkc@err@naltn - \fi - \else - \pxkc@kcatcode{\pxkc@cp}{\pxkc@arg}% - \fi\fi\fi - \else - \pxkc@expanded{\noexpand\pxkc@cjkcategory@a{\pxkc@tmpa}}% - \fi} - -%% \pxkc@cjkcategory{}{} -%% \pxkc@cjkcategory@mccv{}{}{}{} -% Other entry points for internal use. -\def\pxkc@cjkcategory#1#2{% - \def\pxkc@blk{#1}\edef\pxkc@arg{#2}% - \pxkc@set@cjkcategory} -\def\pxkc@cjkcategory@mccv#1#2#3#4{% - \ifnum#1>\pxkc@mccv\else \ifnum#2<\pxkc@mccv\else - \pxkc@cjkcategory{#3}{#4}% - \fi\fi} - -%% \pxkc@get@cp{} -% ok / 0=nop / 1=name / 2=err -\def\pxkc@get@cp#1{% - \pxkc@okfalse \chardef\pxkc@cp\z@ - \pxkc@get@cp@a#1\pxkc@mk\pxkc@end} -\def\pxkc@get@cp@a#1{% - \pxkc@cond\ifx#1\pxkc@mk\fi{% - \pxkc@get@cp@fin\pxkc@mk - }{\pxkc@cond\ifnum\pxkc@get@cp@b#1>\z@\fi{% - \pxkc@get@cp@c#1% - }{\pxkc@cond\ifnum2<"1#1 \fi{% - \pxkc@get@cp@c"#1% - }{%else - \chardef\pxkc@cp`#1 % - \pxkc@cond\ifnum\pxkc@cp>\pxkc@ascii@max\fi{% - \pxkc@oktrue \pxkc@get@cp@fin - }{% - \pxkc@okfalse \chardef\pxkc@cp\@ne \pxkc@get@cp@e - }% - }}}} -\def\pxkc@get@cp@b#1{0\if#1"1\fi\if#1'1\fi\if#1+1\fi} -\def\pxkc@get@cp@c{% - \afterassignment\pxkc@get@cp@d\count@=} -\def\pxkc@get@cp@d{% - \chardef\pxkc@cp\count@ - \ifnum\pxkc@cp=\count@ \pxkc@oktrue - \else \chardef\pxkc@cp\z@ - \fi - \pxkc@get@cp@fin} -\def\pxkc@get@cp@e#1\pxkc@mk{% - \pxkc@get@cp@fin\pxkc@mk} -\def\pxkc@get@cp@fin#1\pxkc@mk\pxkc@end{% - \ifx\pxkc@mt#1\pxkc@mt\else - \pxkc@okfalse \chardef\pxkc@cp\tw@ - \fi} - -%%<*> \cjkcategorymode{} -% Invokes the cjk-category mode . -\newcommand*\cjkcategorymode[1]{% - \pxkc@letcs\pxkc@next{pxkc@M@@#1}% - \ifx\pxkc@next\relax - \pxkc@err@ivmsy{#1}% - \else - \pxkc@warn@badfalse - \pxkc@next - \pxkc@warn@badtrue - \kcatcode0=15 % 'latn' is fixed - \fi} - -%--------------------------------------- CJK category modes - -%% variables -\let\pxkc@cat\relax -\let\pxkc@base@cat\relax - -%% \[pxkc@K@@] : the kcatcode of CJK core blocks -\def\do#1#2{\expandafter\chardef\csname pxkc@K@@#1\endcsname=#2 } -%C====================================== -\do{hang1} {19} % Hangul Jamo -\do{sym15} {18} % Enclosed Alphanumerics -\do{cjk01} {16} % CJK Radicals Supplement -\do{cjk02} {16} % Kangxi Radicals -\do{cjk03} {16} % Ideographic Description Characters -\do{cjk04} {18} % CJK Symbols and Punctuation -\do{hira} {17} % Hiragana -\do{kana} {17} % Katakana -\do{bopo} {16} % Bopomofo -\do{hang2} {19} % Hangul Compatibility Jamo -\do{cjk05} {16} % Kanbun -\do{bopo1} {16} % Bopomofo Extended -\do{cjk06} {16} % CJK Strokes -\do{kana1} {17} % Katakana Phonetic Extensions -\do{cjk07} {18} % Enclosed CJK Letters and Months -\do{cjk08} {18} % CJK Compatibility -\do{haniA} {16} % CJK Unified Ideographs Extension A -\do{hani} {16} % CJK Unified Ideographs -\do{yiii} {18} % Yi Syllables -\do{yiii1} {18} % Yi Radicals -\do{hangA} {19} % Hangul Jamo Extended-A -\do{hang} {19} % Hangul Syllables -\do{hangB} {19} % Hangul Jamo Extended-B -\do{hani1} {16} % CJK Compatibility Ideographs -\do{cjk09} {18} % Vertical Forms -\do{cjk10} {18} % CJK Compatibility Forms -\do{cjk11} {18} % Small Form Variants -\do{cjk12} {18} % Halfwidth and Fullwidth Forms -\do{cjk1a} {18} % Halfwidth and Fullwidth Forms/Other -\do{cjk1b} {17} % Halfwidth and Fullwidth Forms/Latin -\do{cjk1c} {17} % Halfwidth and Fullwidth Forms/Kana -\do{cjk14} {18} % Ideographic Symbols and Punctuation -\do{tang} {18} % Tangut -\do{tang1} {18} % Tangut Components -\do{kits} {18} % Khitan Small Script -\do{tang2} {18} % Tangut Supplement -\do{kana2} {17} % Kana Supplement -\do{kanaA} {17} % Kana Extended-A -\do{kana3} {17} % Small Kana Extension -\do{nshu} {18} % Nushu -\do{sym45} {18} % Enclosed Alphanumeric Supplement -\do{cjk13} {18} % Enclosed Ideographic Supplement -\do{haniB} {16} % CJK Unified Ideographs Extension B -\do{haniC} {16} % CJK Unified Ideographs Extension C -\do{haniD} {16} % CJK Unified Ideographs Extension D -\do{haniE} {16} % CJK Unified Ideographs Extension E -\do{haniF} {16} % CJK Unified Ideographs Extension F -\do{hani2} {16} % CJK Compatibility Ideographs Supplement -\do{haniG} {16} % CJK Unified Ideographs Extension G -%======================================= -\ifnum\pxkc@mccv<2 - \do{cjk1b} {18} - \do{cjk1c} {18} -\fi - -%% \pxkc@reset@all{} -\def\pxkc@reset@all#1{% - \chardef\pxkc@base@cat=#1\relax - \pxkc@foreach@blocks\do{% - \pxkc@letcs\pxkc@cat{pxkc@K@@\pxkc@blk}% - \ifx\pxkc@cat\relax \let\pxkc@cat\pxkc@base@cat \fi - \pxkc@kcatcode{\@nameuse{pxkc@B@@\pxkc@blk}}{\pxkc@cat}}} - -%% \[pxkc@M@@] : the implementation of a mode -%P====================================== -%% 'forcecjk' -\def\pxkc@M@@forcecjk{% - \pxkc@reset@all{18}% -} -%% 'prefercjk' -\def\pxkc@M@@prefercjk{% - \pxkc@M@@prefercjkvar - \pxkc@cjkcategory{grek}{18}% - \pxkc@cjkcategory{cyrl}{18}% - \pxkc@cjkcategory{grek1}{18}% -} -%% 'prefercjkvar' -\def\pxkc@M@@prefercjkvar{% - \pxkc@M@@japanesevar - \pxkc@cjkcategory@mccv{3}{4}{latny}{18}% - \pxkc@cjkcategory{latnA}{18}% - \pxkc@cjkcategory{latnB}{18}% - \pxkc@cjkcategory{latn2}{18}% - \pxkc@cjkcategory{sym01}{18}% - \pxkc@cjkcategory{sym02}{18}% - \pxkc@cjkcategory{latn3}{18}% - \pxkc@cjkcategory{sym05}{18}% - \pxkc@cjkcategory{sym06}{18}% - \pxkc@cjkcategory{latn6}{18}% -} -%% 'japanese' -\def\pxkc@M@@japanese{% - \pxkc@M@@japanesevar - \pxkc@cjkcategory{grek}{18}% - \pxkc@cjkcategory{cyrl}{18}% -} -%% 'japanesevar' -\def\pxkc@M@@japanesevar{% - \pxkc@M@@prefernoncjk - \pxkc@cjkcategory@mccv{1}{2}{latn1}{18}% - \pxkc@cjkcategory@mccv{3}{4}{latnx}{18}% - \pxkc@cjkcategory{sym04}{18}% - \pxkc@cjkcategory{sym07}{18}% - \pxkc@cjkcategory{sym08}{18}% - \pxkc@cjkcategory{sym09}{18}% - \pxkc@cjkcategory{sym10}{18}% - \pxkc@cjkcategory{sym11}{18}% - \pxkc@cjkcategory{sym12}{18}% - \pxkc@cjkcategory{sym13}{18}% - \pxkc@cjkcategory{sym16}{18}% - \pxkc@cjkcategory{sym17}{18}% - \pxkc@cjkcategory{sym18}{18}% - \pxkc@cjkcategory{sym19}{18}% - \pxkc@cjkcategory{sym20}{18}% - \pxkc@cjkcategory{sym23}{18}% - \pxkc@cjkcategory{sym24}{18}% - \pxkc@cjkcategory{sym26}{18}% - \pxkc@cjkcategory{spc04}{18}% -} -%% 'prefernoncjk' -\def\pxkc@M@@prefernoncjk{% - \pxkc@reset@all{15}% -} -%======================================= -%% 'default' -\def\pxkc@M@@default{% - \pxkc@M@@forcecjk - \pxkc@cjkcategory@mccv{3}{4}{latny}{15}% - \pxkc@cjkcategory@mccv{3}{4}{latnA}{15}% - \pxkc@cjkcategory@mccv{4}{4}{latnB}{15}% -} - -%--------------------------------------- safe text expansion - -%% variables -\let\pxkc@expd\relax - -%% \pxkc@expand@text\CS{} -\def\pxkc@expand@text#1#2{% - \begingroup - \let\UTFviii@invalid@err \noexpand - \let\UTFviii@two@octets \pxkc@lead@byte@NB - \let\UTFviii@three@octets\pxkc@lead@byte@NC - \let\UTFviii@four@octets \pxkc@lead@byte@ND - \edef\pxkc@tmpa{#2}% - \let\UTFviii@invalid@err \pxkc@expand@text@err - \let\UTFviii@two@octets \pxkc@lead@byte@PB - \let\UTFviii@three@octets\pxkc@lead@byte@PC - \let\UTFviii@four@octets \pxkc@lead@byte@PD - \let\pxkc@expd\@empty - \expandafter\pxkc@expand@text@a\pxkc@tmpa\pxkc@mk\pxkc@end - \global\let\pxkc@g@tmpa\pxkc@expd - \endgroup - \let#1\pxkc@g@tmpa} -\def\pxkc@expand@text@a{% - \futurelet\pxkc@tok\pxkc@expand@text@b} -\def\pxkc@expand@text@b{% - \ifcat\noexpand\pxkc@tok0% other - \let\pxkc@next\pxkc@expand@text@d - \else\ifcat\noexpand\pxkc@tok\@sptoken - \let\pxkc@next\pxkc@expand@text@f - \else\ifx\pxkc@tok\pxkc@mk % end - \let\pxkc@next\pxkc@expand@text@fin - \else\ifx\pxkc@tok\bgroup - \let\pxkc@next\pxkc@expand@text@err - \else\expandafter\ifx\noexpand\pxkc@tok\pxkc@tok % unexpandable - \let\pxkc@next\pxkc@expand@text@c - \else \let\pxkc@next\pxkc@expand@text@e - \fi\fi\fi\fi\fi - \pxkc@next} -\def\pxkc@expand@text@c#1{% - \edef\pxkc@expd{\pxkc@expd#1}% - \pxkc@expand@text@a} -\def\pxkc@expand@text@d#1{% - \ifnum`#1>\pxkc@ascii@max % high byte - \let\pxkc@next\pxkc@expand@text@ret - \lccode"EF=`#1\relax\lowercase{\expandafter^^ef}% reactivate - \else \expandafter\pxkc@expand@text@c\expandafter#1% - \fi} -\def\pxkc@expand@text@e#1{% - \ifcat\noexpand#1\noexpand^^ef% active-char - \let\pxkc@next\pxkc@expand@text@ret - \expandafter#1% - \else \expandafter\pxkc@expand@text@err - \fi} -\expandafter\def\expandafter\pxkc@expand@text@f\space{% - \pxkc@expand@text@c\space} -\def\pxkc@expand@text@fin#1#2\pxkc@end{% - \ifx\pxkc@mt#2\pxkc@mt \else \let\pxkc@expd\relax \fi} -\def\pxkc@expand@text@err{% - \pxkc@expand@text@fin\pxkc@mk} -\def\pxkc@expand@text@ret{% UTF-8 bytes are read - \pxkc@get@jchar\count@ - \pxkc@expand@text@c\pxkc@jchar} - -%% processors -\def\pxkc@lead@byte@NB#1{\noexpand#1\noexpand} -\def\pxkc@lead@byte@NC#1#2{\noexpand#1\noexpand#2\noexpand} -\def\pxkc@lead@byte@ND#1#2#3{\noexpand#1\noexpand#2\noexpand#3\noexpand} -\def\pxkc@lead@byte@PB#1#2{% - \count@`#1 \advance\count@-"C0 - \pxkc@trail@byte{#2}\pxkc@next} -\def\pxkc@lead@byte@PC#1#2#3{% - \count@`#1 \advance\count@-"E0 - \pxkc@trail@byte{#2}\pxkc@trail@byte{#3}\pxkc@next} -\def\pxkc@lead@byte@PD#1#2#3#4{% - \count@`#1 \advance\count@-"F0 - \pxkc@trail@byte{#2}\pxkc@trail@byte{#3}\pxkc@trail@byte{#4}\pxkc@next} -\def\pxkc@trail@byte#1{% - \multiply\count@"40 \advance\count@`#1 \advance\count@-"80 } - -%--------------------------------------- miscellaneous accessories - -%%<*> \showcjkcategory -\newcommand*\showcjkcategory{% - \pxkc@foreach@blocks\do{% - \@ifundefined{pxkc@B@@\pxkc@blk}{}{%else - \typeout{\pxkc@blk\space= \the\kcatcode\@nameuse{pxkc@B@@\pxkc@blk}}% - }}} - -%--------------------------------------- get current cjktoken state - -%% variables -\let\pxkc@ctmode\relax - -\ifx\currentcjktoken\@undefined %<*!e-pTeX> - -%% \pxkc@make@probe -\def\pxkc@make@probe{% - \edef\pxkc@tmpa{\expandafter\string\csname - pxkc@@\string ^^e3\string ^^81\string ^^82% - \string ^^e3\string ^^82\string ^^a2\endcsname}} -\begingroup \kcatcode"3040=15 \kcatcode"30A0=18 - \disablecjktoken\pxkc@make@probe \global\let\pxkc@prb@d\pxkc@tmpa - \enablecjktoken\pxkc@make@probe \global\let\pxkc@prb@e\pxkc@tmpa - \forcecjktoken\pxkc@make@probe \global\let\pxkc@prb@f\pxkc@tmpa -\endgroup - -%% \pxkc@get@cjktoken@mode\CS -\def\pxkc@get@cjktoken@mode#1{% - \begingroup - \kcatcode"3040=15 \kcatcode"30A0=18 \pxkc@make@probe - \ifx\pxkc@tmpa\pxkc@prb@d \global\chardef\pxkc@gtmpa\z@ - \else\ifx\pxkc@tmpa\pxkc@prb@e \global\chardef\pxkc@gtmpa\@ne - \else\ifx\pxkc@tmpa\pxkc@prb@f \global\chardef\pxkc@gtmpa\tw@ - \else \global\chardef\pxkc@gtmpa\@cclv - \fi\fi\fi - \endgroup - \let#1\pxkc@gtmpa} - -% The method does not work on new upTeX, but running LaTeX -% on new upTeX without e-TeX is highly improbable.... -\ifx\pxkc@prb@d\pxkc@prb@e - \def\pxkc@get@cjktoken@mode#1{% - \chardef#1\@cclv} % always fail -\fi - -\else %<*e-pTeX> - -\def\pxkc@get@cjktoken@mode#1{% - \chardef#1\ifcase\currentcjktoken - \@ne \or \z@ \or \tw@ \or \@cclv - \fi} - -\fi % - -%%<*> \getcjktokenmode -% Returns the value showing current mode to \thecjktokenmode -% 0: \disablecjktoken -% 1: \enablecjktoken -% 2: \forcecjktoken -% 255: failure -\newcommand*\getcjktokenmode{% - \pxkc@get@cjktoken@mode\thecjktokenmode} - -%%<*> \setcjktokenmode{} -\newcommand*\setcjktokenmode[1]{% - \ifcase#1\disablecjktoken - \or \enablecjktoken - \or \forcecjktoken - \fi} - -%%<*> \withcjktokendisabled, etc. -\newcommand*\withcjktokendisabled{% - \pxkc@with@cjktoken@mode\disablecjktoken\@iden} -\newcommand*\withcjktokenenabled{% - \pxkc@with@cjktoken@mode\enablecjktoken\@iden} -\newcommand*\withcjktokenforced{% - \pxkc@with@cjktoken@mode\forcecjktoken\@iden} -\newcommand*\withcjktokendisabledex{% - \pxkc@with@cjktoken@mode\disablecjktoken} -\newcommand*\withcjktokenenabledex{% - \pxkc@with@cjktoken@mode\enablecjktoken} -\newcommand*\withcjktokenforcedex{% - \pxkc@with@cjktoken@mode\forcecjktoken} -\def\pxkc@with@cjktoken@mode#1{% - \pxkc@get@cjktoken@mode\pxkc@ctmode - \ifnum\pxkc@ctmode=\@cclv \pxkc@with@cjktoken@mode@b \fi - #1% - \pxkc@with@cjktoken@mode@a} -\def\pxkc@with@cjktoken@mode@a#1#2{% - #1{#2}% - \setcjktokenmode\pxkc@ctmode} -\def\pxkc@with@cjktoken@mode@b{% - \global\let\pxkc@with@cjktoken@mode@b\relax - \PackageWarning\pxkc@pkgname - {Failed in getting current cjktoken mode,\MessageBreak - reported}} - -%--------------------------------------- initial setup - -\ifx\pxkc@ccmode@opt\relax\else - \cjkcategorymode{\pxkc@ccmode@opt} -\fi - -%--------------------------------------- all done -\endinput -%% EOF diff --git a/macros/latex/contrib/pxcjkcat/pxcjkcat.tex b/macros/latex/contrib/pxcjkcat/pxcjkcat.tex deleted file mode 100644 index e8e00fcbc7..0000000000 --- a/macros/latex/contrib/pxcjkcat/pxcjkcat.tex +++ /dev/null @@ -1,999 +0,0 @@ -% upLaTeX 文書; 文字コードは UTF-8 -\documentclass[uplatex,dvipdfmx,a4paper]{jsarticle} -\renewcommand{\headfont}{\gtfamily\romanseries{sbc}\sffamily} -\usepackage[T1]{fontenc} -\usepackage{lmodern} -\usepackage{geometry} -\usepackage{xcolor} -\usepackage[colorlinks,hyperfootnotes=false]{hyperref} -\usepackage{pxjahyper} -\hypersetup{linkcolor=blue!75!black,urlcolor=green!45!black, - pdftitle={pxcjkcatパッケージ}, - pdfauthor={八登崇之}} -\usepackage{bxtexlogo} -\bxtexlogoimport{*,LaTeXTeX} -\usepackage[verb]{bxghost} -\usepackage{shortvrb} -\MakeShortVerb{\|} -\usepackage{verbatim} -\newenvironment{myverbatim} - {\quote\small\verbatim} - {\endverbatim\endquote} -\newcommand{\PkgVersion}{1.4} -\newcommand{\PkgDate}{2022/06/06} -\newcommand{\Pkg}[1]{\textsf{#1}} -\newcommand{\Meta}[1]{% - $\langle$\mbox{}\nolinebreak#1\nolinebreak\mbox{}$\rangle$} -\newcommand{\Note}{\par\noindent ※} -\newcommand{\Means}{:~} -\newcommand{\strong}{\textsf} -\newcommand{\wbr}{\linebreak[0]} -\newcommand{\Code}[1]{{\usefont{T1}{lmtt}{l}{n}#1}} -%----------------------------------------------------------- -\begin{document} -\title{\Pkg{pxcjkcat} パッケージ} -\author{八登崇之\ (Takayuki YATO; aka.~``ZR'')} -\date{v\PkgVersion\quad[\PkgDate]} -\maketitle - -\begin{abstract} -{\upTeX}エンジンには -「ソース中の非ASCII文字の扱い」 -(和文・欧文の何れとして扱うか、等) -を制御するための「和文カテゴリ(kcatcode)」 -という設定がある。 -本パッケージは、{\upTeX}の和文カテゴリを扱うための -{\LaTeX}の文書作成者向けのインタフェースを提供する。 -\end{abstract} - -\tableofcontents - -%=========================================================== -\section{前提知識} -\label{sec:Introduction} - -%------------------- -\subsection{和文カテゴリ} -\label{ssec:cjkcategory} - -{\upTeX}エンジンの「\strong{和文カテゴリ}(kcatcode)」の設定は -「ソース中の非ASCII文字の振舞」を制御するためのものである。 -例えば「ア」(U+30A2)という文字は普通は(既定値では) -仮名として扱われるが、U+30A2の和文カテゴリを変更することで、 -これを「和文記号扱い」「欧文扱い」などに変えることができる。 - -{\upTeX}の仕様では和文カテゴリの値は15~19の範囲の整数 -(\strong{和文カテゴリコード}) -として表される。 -本パッケージでは操作を直感的にするため和文カテゴリの値に名前 -(\strong{カテゴリID})を付けて扱う。 -和文カテゴリの値の一覧は以下の通りである。 - -\begin{center}\small\begin{tabular}{ccl} - \hline - コード & カテゴリID & 意味 \\ - \hline - 15 & |noncjk| & 欧文扱い \\ - 16 & |kanji| & 漢字扱い \\ - 17 & |kana| & 仮名扱い \\ - 18 & |cjk| & 「その他の和文」扱い \\ - 19 & |hangul| & ハングル扱い \\ - \hline -\end{tabular}\end{center} -和文カテゴリの設定による実際の「振舞」の違いには -以下のようなものがある -\footnote{なお、現在の{\upTeX}の仕様では|kanji|(16)と|kana|(17) - の間には「振舞」の違いは存在しないようである。}。 -\begin{itemize} -\item 和文カテゴリが|noncjk|(15)である文字は欧文として扱われる。 - 対して、|noncjk|以外の文字は和文扱いとなる。 - \Note なお、欧文扱いとなる文字は欧文{\LaTeX}({\pdfLaTeX})と - 同じ機構で処理される。 - すなわち、{\TeX}のレベルではUTF-8のバイト列として扱われ、 - これを\Pkg{inputenc}パッケージが適切に処理することで - 初めて「文字」として認識される。 -\item (u){\pLaTeX}には「行末にある文字が和文文字の場合には当該の改行は - 空白にならずに無視される」という独自の入力規則があるが、 - 和文カテゴリが|hangul|(19)である和文文字が行末にある場合は - 欧文と同様に改行は空白を発生させる。 -\item {\LaTeX}の|\|から始まる命令名(制御綴)の構成について - 「複数文字の名前を作れるのは英字のみ」という規則がある。 - 命令名構成の規則について、和文カテゴリが - |kanji|(16)・|kana|(17)・|hangul|(19) - の和文文字は「英字」と同じ扱いになり、 - |cjk|(18)の和文文字は「英字以外の欧文文字」と同じ扱いになる。 -\end{itemize} - -ただし、{\upTeX}の仕様では、和文文字カテゴリの設定は“文字単位”ではなく -“Unicodeブロック単位”で行うようになっている(一部例外あり)。 -従って、例えば「ア」(U+30A2)の和文カテゴリを変更したいという場合には、 -U+30A2が属する“Katakana”(U+30A0~30FF)のブロックについて -和文カテゴリの設定を行うことになる。 - -本パッケージが提供する命令を利用すると -「“Katakana”の和文カテゴリを|cjk|(18)に変更する」 -という設定は -\begin{quote}\small -\begin{verbatim} -\cjkcategory{kana}{cjk} -\end{verbatim} -\end{quote} -で実現できる。 - -%------------------- -\subsection{和文カテゴリモード} -\label{ssec:cjkcategory-mode} - -\strong{和文カテゴリモード}は -全てのブロックに対する和文カテゴリの一括設定 -(プリセット設定)のことである -(TODO:ちゃんと説明する)。 - -モード設定には以下のものがある。 -何れのモードも、「CJK中核セット」(後述)のブロック群の -設定は共通で、 -その他のブロックが欧文扱い(|noncjk|)であるか -和文扱い(|cjk|% -\footnote{全てのモード設定において、「CJK中核セット」\strong{以外}の - ブロックのカテゴリは必ず|noncjk|か|cjk|の何れかになる。}% -)であるかが異なる。 -\begin{itemize} -\item |forcecjk|\Means - 全てのブロックを和文扱い - (|noncjk|以外)とする。 - 和文フォントの中のUnicode値の割当がある全ての文字を - 和文文字として直接用いることができる。 -\item |default|\Means - 現在のモードCCVに対応する{\upTeX}の版 - (例えばモードCCVが3ならばv1.23) - における既定設定と一致させる。 - \Note モードCCVが2以下の場合は|forcecjk|と同一の設定になる。 -\item |prefercjk|\Means - 和文扱いのブロックとして「CJK中核セット」の他に - 「Adobeの定めるCJK文字集合 - \footnote{Adobe-Japan1、Adobe-GB1、Adobe-CNS1、Adobe-Korea1の4つ。}% - の何れかと共通部分をもつ文字ブロック」を加えて、 - 残りを欧文扱いに設定する。 -\item |prefercjkvar|\Means\hspace{-.25em}% - |prefercjk|からギリシャ・キリル文字の - ブロックを欧文扱いに変更したもの。 -\item |japanese|\Means - 和文扱いのブロックとして「CJK中核セット」の他に - 「Adobe-Japan1の全角幅のグリフ - の何れかと共通部分をもつ文字ブロック」を加えて、 - 残りを欧文扱いに設定する。 -\item |japanesevar|\Means - |japanese|からギリシャ・キリル文字の - ブロックを欧文扱いに変更したもの。 -\item |prefernoncjk|\Means - 「CJK中核セット」のブロックのみを和文扱いとし、 - 残りを欧文扱いにする。 -\end{itemize} - -\Note 各モードでの具体的な設定値については\ref{sec:Values}節を参照。 - -\paragraph{CJK中核セット} -「CJK中核セット」は以下の文字種が属するブロックのセットを指す。 -(括弧内は、モード設定において当該のブロックに設定される -和文カテゴリの値。) - \begin{itemize} - \item 漢字・部首・注音字母(|kanji|) - \item ひらがな・カタカナ(|kana|) - \item CJK記号の一部・全角半角互換形・彝文字 - ・西夏文字・女書文字・契丹文字(|cjk|) - \Note モードCCVが2以上の場合、|cjk12|の再分割の|cjk1b|、 - |cjk1c|は|kana|に設定される。 - \item ハングル完成形・ハングル字母(|hangul|) -\end{itemize} - -%------------------- -\subsection{和文トークン状態} -\label{ssec:cjktoken} - -{\upTeX}には、和文カテゴリ(kcatcode)とは別に、 -非ASCII文字全体の和文・欧文扱いの設定を一斉に切り替えるための -命令が存在する -\footnote{これらの命令は本パッケージが提供するものではなく - {\upTeX}に元から存在するものであることに注意。}。 -\begin{itemize} -\item |\enablecjktoken|\Means - 和文・欧文扱いの設定を和文カテゴリの設定に従わせる。 -\item |\disablecjktoken|\Means - 和文カテゴリ設定に関わらず非ASCII文字全体を欧文扱いにする。 - \Note あたかも全ブロックの和文カテゴリを|noncjk|(15)に設定したのと - 同じ状態になる。 -\item |\forcecjktoken|\Means - 和文カテゴリ設定に関わらず非ASCII文字全体を和文扱いにする。 - \Note 和文カテゴリが|noncjk|(15)であるブロックは - あたかもそれが|cjk|(18)であるように動作する。 -\end{itemize} - -これらの命令群により変更されるパラメタのことを本パッケージでは -「\strong{和文トークン状態}」と呼ぶことにする -\footnote{「和文トークン状態」を指す公式の用語は存在しないと思われる。}。 - -%=========================================================== -\section{パッケージ読込} -\label{sec:Loading} - -\begin{myverbatim} -\usepackage[<オプション>]{pxcjkcat} -\end{myverbatim} - -オプションとして以下のものが指定できる。 - -\begin{itemize} -\item \strong{モードCCV指定}\Means - \<「モードCCV」の値を指定するオプション。 - \Note モードCCVについては\ref{sec:CCV}節を参照。 - \Note モードCCVの既定値は1であり、 - これは極めて古い版と互換にすることを意味する。 - モード設定(|prefernoncjk|等)を利用する場合には、 - 適切なモードCCVのオプションを指定するのが望ましい。 - \begin{itemize} - \item |ccv1|\Means - モードCCVを1({\upTeX} v0.11~0.28と互換)とする。 - \strong{既定値。} - \item |ccv2|\Means - モードCCVを2({\upTeX} v0.29~1.22と互換)とする。 - \item |ccv3|\Means - モードCCVを3({\upTeX} v1.23と互換)とする。 - \item |ccv4|\Means - モードCCVを4({\upTeX} v1.25以降と互換)とする。 - \item |real|または|ccv+|\Means - モードCCVを{\upTeX}の実際のCCVと一致させる。 - \end{itemize} -\item \strong{和文カテゴリモード値}\Means - |\cjkcategorymode|命令で有効なモード値(|prefernoncjk|等) - をオプションとして指定可能で、 - この場合、和文カテゴリがモードに従って設定される。 - \Note 和文カテゴリモード値オプションが指定されていない場合は、 - パッケージ読込時に和文カテゴリが変更されることはない。 -\item |nomode|\Means - 和文カテゴリモード値オプションの効果を打ち消す。 -\end{itemize} - -%=========================================================== -\section{機能} -\label{sec:Function} - -%------------------- -\subsection{和文カテゴリ設定に関連する機能} -\label{ssec:cjkcategory-function} - -\begin{itemize} -\item |\cjkcategory{|\Meta{ブロック}|,...}{|\Meta{カテゴリ}|}|\Means - \Meta{ブロック}で指定される文字ブロック(複数指定が可能)の - 和文カテゴリを\Meta{カテゴリ}に変更する。 - - \Meta{ブロック}は以下の何れかの形式で指定する: - \begin{itemize} - \item ブロックID(\ref{sec:Blocks}節参照)% - \footnote{ブロックIDによる指定は{\upTeX}の版の影響を受けない。 - 例えば、{\upTeX}の版(およびモードCCV指定)が何であっても、 - |latn1|は常に“Latin-1 Supplement”の範囲(U+0080~00FF)を指す。 - 実CCVが3以上の場合に|latn1|のカテゴリ設定を行った場合は、 - 実際には|latnx|と|latny|の2つのブロックに対して設定が行われる。} - \item 非ASCII文字1つ\Means - 当該の文字が属するブロックを指す。 - \Note 「文字の属するブロック」は、モードCCV設定とは無関係であり - 常に{\upTeX}の実際のブロック定義に従う。 - 従ってその動作は{\upTeX}の版に依存することに注意。 - \item 符号値(整数値)\Means - 当該の符号値の文字が属するブロックを指す。 - 符号値は以下の形式で指定できる\Means - \begin{itemize} - \item \Meta{16進表記}\Means 例えば|1F600|。 - \item |"|\Meta{16進表記}\Means 例えば|"1F600|。 - \Note 16進数字の|A|~|F|は大文字で書く。 - \item |+|\Meta{整数}\Means 例えば|+128512|は10進表記で128512、 - すなわちU+1F600を表す。 - \Note \Meta{整数}の部分には一般に任意の - 「{\LaTeXTeX}で整数を表すテキスト」が記述できる。 - 例えば|+\value{mycode}|のように書くとカウンタ値を指定できる。 - \end{itemize} - \Note 前項と同様、動作が{\upTeX}の版に依存することに注意を要する。 - \end{itemize} - \Meta{カテゴリ}は「カテゴリID」または - 「カテゴリコード」(括弧内の整数値)で指定する。 - \begin{itemize} - \item |noncjk|(15)\Means 欧文扱い - \item |kanji|または|han|(16)\Means 漢字扱い - \item |kana|(17)\Means 仮名扱い - \item |cjk|(18)\Means \<「その他の和文」扱い - \item |hangul|(19)\Means ハングル扱い - \end{itemize} - - 和文カテゴリの変更は局所的(グルーピングに従う)である。 - - \Note モードCCVの指定は|\cjkcategory|の動作には影響を与えない。 - - \Note “Basic Latin”ブロック(|latn|)のカテゴリは常に|noncjk|で - なければならず、|noncjk|以外に変更しようとするとエラーになる。 - -\item |\cjkcategorymode{|\Meta{モード}|}|\Means - 全てのブロックの和文カテゴリの一括設定(モード設定)を行う。 - 有効なモード設定の値は以下の通りである。 - \Note モード設定の詳細については - \ref{ssec:cjkcategory-mode}節を参照。 - \begin{itemize} - \item |forcecjk| - \item |default| - \item |prefercjk| - \item |prefercjkvar| - \item |japanese| - \item |japanesevar| - \item |prefernoncjk| - \end{itemize} - -\end{itemize} - -%------------------- -\subsection{和文トークン状態に関する機能} -\label{ssec:cjktoken-function} - -\Note 「和文トークン状態」については\ref{ssec:cjktoken}節を参照。 - -\begin{itemize} - -\item |\getcjktokenmode|\Means - 現在の和文トークン状態の取得して、 - それを表す整数値を|\thecjktokenmode|に設定する。 - \begin{itemize} - \item 0\Means |\disablecjktoken|の状態。 - \item 1\Means |\enablecjktoken|の状態。 - \item 2\Means |\forcecjktoken|の状態。 - \item 255\Means 状態取得に失敗した% - \footnote{{\TeX} Live 2022以降で{\eTeX}拡張無しの{\upTeX}エンジンの - 場合は取得ができない。 - しかし、2014年以降の{\LaTeX}カーネルは{\eTeX}拡張を必須としている - ので、そのようなエンジンの上で{\LaTeX}が動作している可能性は - ほぼ考えられない。 - 従って、現実的には255が返ることはないと思ってよい。}。 - \end{itemize} - -\item |\setcjktokenmode{|\Meta{整数値}|}|\Means - |\getcjktokenmode|の規則の整数値を用いて和文トークン状態を設定する。 - -\item |\withcjktokendisabled{|\Meta{コード}|}|\Means - 一時的に|\disablecjktoken|に変更した状態で、 - \Meta{コード}を実行する。 -\item |\withcjktokenenabled{|\Meta{コード}|}|\Means - 一時的に|\enablecjktoken|に変更した状態で、 - \Meta{コード}を実行する。 -\item |\withcjktokenforced{|\Meta{コード}|}|\Means - 一時的に|\forcecjktoken|に変更した状態で、 - \Meta{コード}を実行する。 -\Note 以上3つの命令はどれも、 -「和文トークン状態を設定して\Meta{コード}を実行した後 -和文トークン状態を再設定する」 -という動作を行う。 -そのため新たに局所化グループに入ることはない。 - -\end{itemize} - -%=========================================================== -\section{文字分類バージョン(CCV)} -\label{sec:CCV} - -\noindent \strong{注意}\Means -\ref{sec:CCV}節および\ref{sec:Blocks}に述べられている -説明は現状の仕様と食い違っている部分があり、 -大幅な改訂が必要な状態である。 -少なくとも1.1版以降の仕様では、 -モードCCVの影響を受けるのはモード設定の定義のみであり、 -ブロック分割は常に実際のエンジンのものに一致させている。 - -\bigskip - -{\upTeX}エンジンでの文字ブロックの分割および各ブロックの -和文カテゴリの既定値は改版時に変更され、 -これが互換性の問題を起こす可能性がある。 -本パッケージでは、パッケージの機能を用いて設定された -和文カテゴリの値がエンジンの改版により変化することを防ぐため、 -「特定のエンジンのバージョンを指定して、その動作を模倣する」 -という方針をとる。 - -\subsection{文字分類バージョンとは何か} - -\begin{itemize} -\item 文字ブロックの分割の違いを - 「\strong{文字分類バージョン}(CCV;Character Category Version)」 - と呼ぶことにする。 - 現状では次のものが存在する - \footnote{{\upTeX}のv1.24には文字ブロック分割に関してバグが存在するので、 - CCVの定義からは除外する。 - なお、実際にv1.24の{\upTeX}で本パッケージが読み込まれた場合は、 - 実CCVは1と見なされる(はずである)。}。 - \begin{itemize} - \item バージョン1: {\upTeX} v0.11~0.28と互換 - \item バージョン2: {\upTeX} v0.29~1.22と互換 - \item バージョン3: {\upTeX} v1.23と互換 - \item バージョン4: {\upTeX} v1.25以降と互換 - \end{itemize} - -\item \Pkg{pxcjkcat}の読込時に、そのオプションにおいて - 「その文書が依拠するCCVの値」(これを\strong{モードCCV}と呼ぶ) - を指定する。 - すなわち、オプション |ccv|$N$($N=\mbox{1~3}$)を指定すると、 - モードCCVが$N$になる。 - -\item モードCCVを使用するエンジンの実のCCVと常に一致させたい場合は、 - |ccv+| というオプションを指定すればよい。 - ただしこの場合は当然、和文カテゴリ設定がエンジンの版に - 依存することになる。 - -\item モードCCVの既定値は1(|ccv1|)である。 - この場合、ブロック分割の状態はUnicode% - \footnote{エンジンの版に対応する版のUnicode。}% - のブロック定義と完全に一致する。 - -\item モード設定で |default| を指定した場合は、 - 和文カテゴリの設定は - 「モードCCVに対応するエンジンの版の既定値」 - に一致する。 - 他のモード設定の実際の設定値も |default| を基礎にして - 決まるので、モードCCVにより多少の差異が出る。 - -\end{itemize} - -\subsection{注意事項} - -\begin{itemize} -\item Unicodeの改版による「文字ブロックの追加」については - 「当該の版のエンジンで未対応の文字ブロックの文字は - 決して使われない」 - ことを仮定すれば互換性を損なうことがないため、 - 特に対策を行わない。 - - 従って、エンジンの改版が「文字ブロックの追加」だけを伴う場合は、 - それは新しいCCVとは見なされない。 - 例えば、v1.00→v1.10の改修では幾つかのブロックが追加されたが、 - CCVは2のままである。 - -\item もちろん、「旧版の動作の模倣」は本パッケージの機能を用いた - 場合に限られ、{\upTeX}エンジンの和文カテゴリコード(kcatcode)の - 処理自体は何も変更されない。 - また、本パッケージの機能を用いる以外の方法 - (エンジン既定のままの場合を含む) - で設定された和文カテゴリ値については、 - 当然、エンジンの版による差異が生じうる。 - -\end{itemize} - - -%=========================================================== -\section{文字ブロック} -\label{sec:Blocks} - -%------------------- -\subsection{Unicodeブロックの一覧} - -以下は、Unicodeが定めるブロックと直接に対応するブロックの一覧である。 -この表の「ブロックID」の欄が、|\cjkcategory|命令で指定する -ブロックIDを示す。 -「CCV」の欄は、そのブロックがサポートされる実CCVの -範囲の下限を表す。 -\footnote{これは参考情報であり、現状の仕様ではあまり意味をもたない。} -%\footnote{ここで示すサポート範囲は「必要条件」であることに注意。 -% 先述の通り、エンジンの改版でブロックが(分割変更でなく) -% 新規追加された場合には以前のCCVの値を引き継ぐ。 -% このため、サポート範囲が「2」のブロックは、 -% モードCCVが2であっても“実際には使えない”可能性がある。 -% (モードCCVが3以上なら必ず使えて、1なら必ず使えない。) -% “実際には使えない”ブロックに設定を試みた場合は、 -% 警告が出て設定が無視される。} - -\begin{quote} -\renewcommand{\baselinestretch}{0.9}\small -\setlength{\parskip}{0pt} -\newcommand*\xI[1]{\makebox[4em][l]{\texttt{#1}}\ignorespaces} -\newcommand*\xV[1]{\makebox[2em][c]{#1}\hspace*{1em}\ignorespaces} -\newcommand*\xR[2]{\Code{U+}\makebox[3em][r]{\Code{#1}}% - ~~~\makebox[3em][r]{\Code{#2}}\hspace*{1em}\ignorespaces} -\newcommand*\xN[1]{#1} -\hspace*{-1em}%header-line -\makebox[5em][l]{ブロック\mbox{}ID}\makebox[2em][c]{~~CCV}% -\makebox[10em][c]{符号値範囲}\makebox{ブロック名称}\par -%///////////////////////////// -\xI{latn} \xV{1} \xR {0000} {007F} \xN{Basic Latin}\par -\xI{latn1} \xV{1} \xR {0080} {00FF} \xN{Latin-1 Supplement}\par -\xI{latnA} \xV{1} \xR {0100} {017F} \xN{Latin Extended-A}\par -\xI{latnB} \xV{1} \xR {0180} {024F} \xN{Latin Extended-B}\par -\xI{latn2} \xV{1} \xR {0250} {02AF} \xN{IPA Extensions}\par -\xI{sym01} \xV{1} \xR {02B0} {02FF} \xN{Spacing Modifier Letters}\par -\xI{sym02} \xV{1} \xR {0300} {036F} \xN{Combining Diacritical Marks}\par -\xI{grek} \xV{1} \xR {0370} {03FF} \xN{Greek and Coptic}\par -\xI{cyrl} \xV{1} \xR {0400} {04FF} \xN{Cyrillic}\par -\xI{cyrl1} \xV{1} \xR {0500} {052F} \xN{Cyrillic Supplement}\par -\xI{armn} \xV{1} \xR {0530} {058F} \xN{Armenian}\par -\xI{hebr} \xV{1} \xR {0590} {05FF} \xN{Hebrew}\par -\xI{arab} \xV{1} \xR {0600} {06FF} \xN{Arabic}\par -\xI{syrc} \xV{1} \xR {0700} {074F} \xN{Syriac}\par -\xI{arab1} \xV{1} \xR {0750} {077F} \xN{Arabic Supplement}\par -\xI{thaa} \xV{1} \xR {0780} {07BF} \xN{Thaana}\par -\xI{nkoo} \xV{1} \xR {07C0} {07FF} \xN{NKo}\par -\xI{samr} \xV{2} \xR {0800} {083F} \xN{Samaritan}\par -\xI{mand} \xV{2} \xR {0840} {085F} \xN{Mandaic}\par -\xI{syrc1} \xV{3} \xR {0860} {086F} \xN{Syriac Supplement}\par -\xI{arabA} \xV{2} \xR {08A0} {08FF} \xN{Arabic Extended-A}\par -\xI{deva} \xV{1} \xR {0900} {097F} \xN{Devanagari}\par -\xI{beng} \xV{1} \xR {0980} {09FF} \xN{Bengali}\par -\xI{guru} \xV{1} \xR {0A00} {0A7F} \xN{Gurmukhi}\par -\xI{gujr} \xV{1} \xR {0A80} {0AFF} \xN{Gujarati}\par -\xI{orya} \xV{1} \xR {0B00} {0B7F} \xN{Oriya}\par -\xI{taml} \xV{1} \xR {0B80} {0BFF} \xN{Tamil}\par -\xI{telu} \xV{1} \xR {0C00} {0C7F} \xN{Telugu}\par -\xI{knda} \xV{1} \xR {0C80} {0CFF} \xN{Kannada}\par -\xI{mlym} \xV{1} \xR {0D00} {0D7F} \xN{Malayalam}\par -\xI{sinh} \xV{1} \xR {0D80} {0DFF} \xN{Sinhala}\par -\xI{thai} \xV{1} \xR {0E00} {0E7F} \xN{Thai}\par -\xI{laoo} \xV{1} \xR {0E80} {0EFF} \xN{Lao}\par -\xI{tibt} \xV{1} \xR {0F00} {0FFF} \xN{Tibetan}\par -\xI{mymr} \xV{1} \xR {1000} {109F} \xN{Myanmar}\par -\xI{geor} \xV{1} \xR {10A0} {10FF} \xN{Georgian}\par -\xI{hang1} \xV{1} \xR {1100} {11FF} \xN{Hangul Jamo}\par -\xI{ethi} \xV{1} \xR {1200} {137F} \xN{Ethiopic}\par -\xI{ethi1} \xV{1} \xR {1380} {139F} \xN{Ethiopic Supplement}\par -\xI{cher} \xV{1} \xR {13A0} {13FF} \xN{Cherokee}\par -\xI{cans} \xV{1} \xR {1400} {167F} \xN{Unified Canadian Aboriginal Syllabics}\par -\xI{ogam} \xV{1} \xR {1680} {169F} \xN{Ogham}\par -\xI{runr} \xV{1} \xR {16A0} {16FF} \xN{Runic}\par -\xI{tglg} \xV{1} \xR {1700} {171F} \xN{Tagalog}\par -\xI{hano} \xV{1} \xR {1720} {173F} \xN{Hanunoo}\par -\xI{buhd} \xV{1} \xR {1740} {175F} \xN{Buhid}\par -\xI{tagb} \xV{1} \xR {1760} {177F} \xN{Tagbanwa}\par -\xI{khmr} \xV{1} \xR {1780} {17FF} \xN{Khmer}\par -\xI{mong} \xV{1} \xR {1800} {18AF} \xN{Mongolian}\par -\xI{cans1} \xV{2} \xR {18B0} {18FF} \xN{Unified Canadian Aboriginal Syllabics Extended}\par -\xI{limb} \xV{1} \xR {1900} {194F} \xN{Limbu}\par -\xI{tale} \xV{1} \xR {1950} {197F} \xN{Tai Le}\par -\xI{talu} \xV{1} \xR {1980} {19DF} \xN{New Tai Lue}\par -\xI{khmr1} \xV{1} \xR {19E0} {19FF} \xN{Khmer Symbols}\par -\xI{bugi} \xV{1} \xR {1A00} {1A1F} \xN{Buginese}\par -\xI{lana} \xV{2} \xR {1A20} {1AAF} \xN{Tai Tham}\par -\xI{sym52} \xV{2} \xR {1AB0} {1AFF} \xN{Combining Diacritical Marks Extended}\par -\xI{bali} \xV{1} \xR {1B00} {1B7F} \xN{Balinese}\par -\xI{sund} \xV{2} \xR {1B80} {1BBF} \xN{Sundanese}\par -\xI{batk} \xV{2} \xR {1BC0} {1BFF} \xN{Batak}\par -\xI{lepc} \xV{2} \xR {1C00} {1C4F} \xN{Lepcha}\par -\xI{olck} \xV{2} \xR {1C50} {1C7F} \xN{Ol Chiki}\par -\xI{cyrlC} \xV{2} \xR {1C80} {1C8F} \xN{Cyrillic Extended-C}\par -\xI{geor2} \xV{4} \xR {1C90} {1CBF} \xN{Georgian Extended}\par -\xI{sund1} \xV{2} \xR {1CC0} {1CCF} \xN{Sundanese Supplement}\par -\xI{sym38} \xV{2} \xR {1CD0} {1CFF} \xN{Vedic Extensions}\par -\xI{latn4} \xV{1} \xR {1D00} {1D7F} \xN{Phonetic Extensions}\par -\xI{latn5} \xV{1} \xR {1D80} {1DBF} \xN{Phonetic Extensions Supplement}\par -\xI{sym03} \xV{1} \xR {1DC0} {1DFF} \xN{Combining Diacritical Marks Supplement}\par -\xI{latn3} \xV{1} \xR {1E00} {1EFF} \xN{Latin Extended Additional}\par -\xI{grek1} \xV{1} \xR {1F00} {1FFF} \xN{Greek Extended}\par -\xI{sym04} \xV{1} \xR {2000} {206F} \xN{General Punctuation}\par -\xI{sym05} \xV{1} \xR {2070} {209F} \xN{Superscripts and Subscripts}\par -\xI{sym06} \xV{1} \xR {20A0} {20CF} \xN{Currency Symbols}\par -\xI{sym07} \xV{1} \xR {20D0} {20FF} \xN{Combining Diacritical Marks for Symbols}\par -\xI{sym08} \xV{1} \xR {2100} {214F} \xN{Letterlike Symbols}\par -\xI{sym09} \xV{1} \xR {2150} {218F} \xN{Number Forms}\par -\xI{sym10} \xV{1} \xR {2190} {21FF} \xN{Arrows}\par -\xI{sym11} \xV{1} \xR {2200} {22FF} \xN{Mathematical Operators}\par -\xI{sym12} \xV{1} \xR {2300} {23FF} \xN{Miscellaneous Technical}\par -\xI{sym13} \xV{1} \xR {2400} {243F} \xN{Control Pictures}\par -\xI{sym14} \xV{1} \xR {2440} {245F} \xN{Optical Character Recognition}\par -\xI{sym15} \xV{1} \xR {2460} {24FF} \xN{Enclosed Alphanumerics}\par -\xI{sym16} \xV{1} \xR {2500} {257F} \xN{Box Drawing}\par -\xI{sym17} \xV{1} \xR {2580} {259F} \xN{Block Elements}\par -\xI{sym18} \xV{1} \xR {25A0} {25FF} \xN{Geometric Shapes}\par -\xI{sym19} \xV{1} \xR {2600} {26FF} \xN{Miscellaneous Symbols}\par -\xI{sym20} \xV{1} \xR {2700} {27BF} \xN{Dingbats}\par -\xI{sym21} \xV{1} \xR {27C0} {27EF} \xN{Miscellaneous Mathematical Symbols-A}\par -\xI{sym22} \xV{1} \xR {27F0} {27FF} \xN{Supplemental Arrows-A}\par -\xI{brai} \xV{1} \xR {2800} {28FF} \xN{Braille Patterns}\par -\xI{sym23} \xV{1} \xR {2900} {297F} \xN{Supplemental Arrows-B}\par -\xI{sym24} \xV{1} \xR {2980} {29FF} \xN{Miscellaneous Mathematical Symbols-B}\par -\xI{sym25} \xV{1} \xR {2A00} {2AFF} \xN{Supplemental Mathematical Operators}\par -\xI{sym26} \xV{1} \xR {2B00} {2BFF} \xN{Miscellaneous Symbols and Arrows}\par -\xI{glag} \xV{1} \xR {2C00} {2C5F} \xN{Glagolitic}\par -\xI{latnC} \xV{1} \xR {2C60} {2C7F} \xN{Latin Extended-C}\par -\xI{copt} \xV{1} \xR {2C80} {2CFF} \xN{Coptic}\par -\xI{geor1} \xV{1} \xR {2D00} {2D2F} \xN{Georgian Supplement}\par -\xI{tfng} \xV{1} \xR {2D30} {2D7F} \xN{Tifinagh}\par -\xI{ethi2} \xV{1} \xR {2D80} {2DDF} \xN{Ethiopic Extended}\par -\xI{cyrlA} \xV{2} \xR {2DE0} {2DFF} \xN{Cyrillic Extended-A}\par -\xI{sym27} \xV{1} \xR {2E00} {2E7F} \xN{Supplemental Punctuation}\par -\xI{cjk01} \xV{1} \xR {2E80} {2EFF} \xN{CJK Radicals Supplement}\par -\xI{cjk02} \xV{1} \xR {2F00} {2FDF} \xN{Kangxi Radicals}\par -\xI{cjk03} \xV{1} \xR {2FF0} {2FFF} \xN{Ideographic Description Characters}\par -\xI{cjk04} \xV{1} \xR {3000} {303F} \xN{CJK Symbols and Punctuation}\par -\xI{hira} \xV{1} \xR {3040} {309F} \xN{Hiragana}\par -\xI{kana} \xV{1} \xR {30A0} {30FF} \xN{Katakana}\par -\xI{bopo} \xV{1} \xR {3100} {312F} \xN{Bopomofo}\par -\xI{hang2} \xV{1} \xR {3130} {318F} \xN{Hangul Compatibility Jamo}\par -\xI{cjk05} \xV{1} \xR {3190} {319F} \xN{Kanbun}\par -\xI{bopo1} \xV{1} \xR {31A0} {31BF} \xN{Bopomofo Extended}\par -\xI{cjk06} \xV{1} \xR {31C0} {31EF} \xN{CJK Strokes}\par -\xI{kana1} \xV{1} \xR {31F0} {31FF} \xN{Katakana Phonetic Extensions}\par -\xI{cjk07} \xV{1} \xR {3200} {32FF} \xN{Enclosed CJK Letters and Months}\par -\xI{cjk08} \xV{1} \xR {3300} {33FF} \xN{CJK Compatibility}\par -\xI{haniA} \xV{1} \xR {3400} {4DBF} \xN{CJK Unified Ideographs Extension A}\par -\xI{sym28} \xV{1} \xR {4DC0} {4DFF} \xN{Yijing Hexagram Symbols}\par -\xI{hani} \xV{1} \xR {4E00} {9FFF} \xN{CJK Unified Ideographs}\par -\xI{yiii} \xV{1} \xR {A000} {A48F} \xN{Yi Syllables}\par -\xI{yiii1} \xV{1} \xR {A490} {A4CF} \xN{Yi Radicals}\par -\xI{lisu} \xV{2} \xR {A4D0} {A4FF} \xN{Lisu}\par -\xI{vaii} \xV{2} \xR {A500} {A63F} \xN{Vai}\par -\xI{cyrlB} \xV{2} \xR {A640} {A69F} \xN{Cyrillic Extended-B}\par -\xI{bamu} \xV{2} \xR {A6A0} {A6FF} \xN{Bamum}\par -\xI{sym29} \xV{1} \xR {A700} {A71F} \xN{Modifier Tone Letters}\par -\xI{latnD} \xV{1} \xR {A720} {A7FF} \xN{Latin Extended-D}\par -\xI{sylo} \xV{1} \xR {A800} {A82F} \xN{Syloti Nagri}\par -\xI{sym39} \xV{2} \xR {A830} {A83F} \xN{Common Indic Number Forms}\par -\xI{phag} \xV{1} \xR {A840} {A87F} \xN{Phags-pa}\par -\xI{saur} \xV{2} \xR {A880} {A8DF} \xN{Saurashtra}\par -\xI{deva1} \xV{2} \xR {A8E0} {A8FF} \xN{Devanagari Extended}\par -\xI{kali} \xV{2} \xR {A900} {A92F} \xN{Kayah Li}\par -\xI{rjng} \xV{2} \xR {A930} {A95F} \xN{Rejang}\par -\xI{hangA} \xV{2} \xR {A960} {A97F} \xN{Hangul Jamo Extended-A}\par -\xI{java} \xV{2} \xR {A980} {A9DF} \xN{Javanese}\par -\xI{mymrB} \xV{2} \xR {A9E0} {A9FF} \xN{Myanmar Extended-B}\par -\xI{cham} \xV{2} \xR {AA00} {AA5F} \xN{Cham}\par -\xI{mymrA} \xV{2} \xR {AA60} {AA7F} \xN{Myanmar Extended-A}\par -\xI{tavt} \xV{2} \xR {AA80} {AADF} \xN{Tai Viet}\par -\xI{mtei1} \xV{2} \xR {AAE0} {AAFF} \xN{Meetei Mayek Extensions}\par -\xI{ethiA} \xV{2} \xR {AB00} {AB2F} \xN{Ethiopic Extended-A}\par -\xI{latnE} \xV{2} \xR {AB30} {AB6F} \xN{Latin Extended-E}\par -\xI{cher1} \xV{2} \xR {AB70} {ABBF} \xN{Cherokee Supplement}\par -\xI{mtei} \xV{2} \xR {ABC0} {ABFF} \xN{Meetei Mayek}\par -\xI{hang} \xV{1} \xR {AC00} {D7AF} \xN{Hangul Syllables}\par -\xI{hangB} \xV{2} \xR {D7B0} {D7FF} \xN{Hangul Jamo Extended-B}\par -\xI{spc01} \xV{1} \xR {D800} {DB7F} \xN{High Surrogates}\par -\xI{spc02} \xV{1} \xR {DB80} {DBFF} \xN{High Private Use Surrogates}\par -\xI{spc03} \xV{1} \xR {DC00} {DFFF} \xN{Low Surrogates}\par -\xI{spc04} \xV{1} \xR {E000} {F8FF} \xN{Private Use Area}\par -\xI{hani1} \xV{1} \xR {F900} {FAFF} \xN{CJK Compatibility Ideographs}\par -\xI{latn6} \xV{1} \xR {FB00} {FB4F} \xN{Alphabetic Presentation Forms}\par -\xI{arab2} \xV{1} \xR {FB50} {FDFF} \xN{Arabic Presentation Forms-A}\par -\xI{spc05} \xV{1} \xR {FE00} {FE0F} \xN{Variation Selectors}\par -\xI{cjk09} \xV{1} \xR {FE10} {FE1F} \xN{Vertical Forms}\par -\xI{sym30} \xV{1} \xR {FE20} {FE2F} \xN{Combining Half Marks}\par -\xI{cjk10} \xV{1} \xR {FE30} {FE4F} \xN{CJK Compatibility Forms}\par -\xI{cjk11} \xV{1} \xR {FE50} {FE6F} \xN{Small Form Variants}\par -\xI{arab3} \xV{1} \xR {FE70} {FEFF} \xN{Arabic Presentation Forms-B}\par -\xI{cjk12} \xV{1} \xR {FF00} {FFEF} \xN{Halfwidth and Fullwidth Forms}\par -\xI{spc06} \xV{1} \xR {FFF0} {FFFF} \xN{Specials}\par -\xI{linb} \xV{1} \xR {10000} {1007F} \xN{Linear B Syllabary}\par -\xI{linb1} \xV{1} \xR {10080} {100FF} \xN{Linear B Ideograms}\par -\xI{sym31} \xV{1} \xR {10100} {1013F} \xN{Aegean Numbers}\par -\xI{grek2} \xV{1} \xR {10140} {1018F} \xN{Ancient Greek Numbers}\par -\xI{sym40} \xV{2} \xR {10190} {101CF} \xN{Ancient Symbols}\par -\xI{sym41} \xV{2} \xR {101D0} {101FF} \xN{Phaistos Disc}\par -\xI{lyci} \xV{2} \xR {10280} {1029F} \xN{Lycian}\par -\xI{cari} \xV{2} \xR {102A0} {102DF} \xN{Carian}\par -\xI{copt1} \xV{2} \xR {102E0} {102FF} \xN{Coptic Epact Numbers}\par -\xI{ital} \xV{1} \xR {10300} {1032F} \xN{Old Italic}\par -\xI{goth} \xV{1} \xR {10330} {1034F} \xN{Gothic}\par -\xI{perm} \xV{2} \xR {10350} {1037F} \xN{Old Permic}\par -\xI{ugar} \xV{1} \xR {10380} {1039F} \xN{Ugaritic}\par -\xI{xpeo} \xV{1} \xR {103A0} {103DF} \xN{Old Persian}\par -\xI{dsrt} \xV{1} \xR {10400} {1044F} \xN{Deseret}\par -\xI{shaw} \xV{1} \xR {10450} {1047F} \xN{Shavian}\par -\xI{osma} \xV{1} \xR {10480} {104AF} \xN{Osmanya}\par -\xI{osge} \xV{2} \xR {104B0} {104FF} \xN{Osage}\par -\xI{elba} \xV{2} \xR {10500} {1052F} \xN{Elbasan}\par -\xI{aghb} \xV{2} \xR {10530} {1056F} \xN{Caucasian Albanian}\par -\xI{lina} \xV{2} \xR {10600} {1077F} \xN{Linear A}\par -\xI{cprt} \xV{1} \xR {10800} {1083F} \xN{Cypriot Syllabary}\par -\xI{armi} \xV{2} \xR {10840} {1085F} \xN{Imperial Aramaic}\par -\xI{palm} \xV{2} \xR {10860} {1087F} \xN{Palmyrene}\par -\xI{nbat} \xV{2} \xR {10880} {108AF} \xN{Nabataean}\par -\xI{hatr} \xV{2} \xR {108E0} {108FF} \xN{Hatran}\par -\xI{phnx} \xV{1} \xR {10900} {1091F} \xN{Phoenician}\par -\xI{lydi} \xV{2} \xR {10920} {1093F} \xN{Lydian}\par -\xI{mero} \xV{2} \xR {10980} {1099F} \xN{Meroitic Hieroglyphs}\par -\xI{merc} \xV{2} \xR {109A0} {109FF} \xN{Meroitic Cursive}\par -\xI{khar} \xV{1} \xR {10A00} {10A5F} \xN{Kharoshthi}\par -\xI{sarb} \xV{2} \xR {10A60} {10A7F} \xN{Old South Arabian}\par -\xI{narb} \xV{2} \xR {10A80} {10A9F} \xN{Old North Arabian}\par -\xI{mani} \xV{2} \xR {10AC0} {10AFF} \xN{Manichaean}\par -\xI{avst} \xV{2} \xR {10B00} {10B3F} \xN{Avestan}\par -\xI{prti} \xV{2} \xR {10B40} {10B5F} \xN{Inscriptional Parthian}\par -\xI{phli} \xV{2} \xR {10B60} {10B7F} \xN{Inscriptional Pahlavi}\par -\xI{phlp} \xV{2} \xR {10B80} {10BAF} \xN{Psalter Pahlavi}\par -\xI{orkh} \xV{2} \xR {10C00} {10C4F} \xN{Old Turkic}\par -\xI{hung} \xV{2} \xR {10C80} {10CFF} \xN{Old Hungarian}\par -\xI{rohg} \xV{4} \xR {10D00} {10D3F} \xN{Hanifi Rohingya}\par -\xI{sym42} \xV{2} \xR {10E60} {10E7F} \xN{Rumi Numeral Symbols}\par -\xI{yezi} \xV{4} \xR {10E80} {10EBF} \xN{Yezidi}\par -\xI{sogo} \xV{4} \xR {10F00} {10F2F} \xN{Old Sogdian}\par -\xI{sogd} \xV{4} \xR {10F30} {10F6F} \xN{Sogdian}\par -\xI{chrs} \xV{4} \xR {10FB0} {10FDF} \xN{Chorasmian}\par -\xI{elym} \xV{4} \xR {10FE0} {10FFF} \xN{Elymaic}\par -\xI{brah} \xV{2} \xR {11000} {1107F} \xN{Brahmi}\par -\xI{kthi} \xV{2} \xR {11080} {110CF} \xN{Kaithi}\par -\xI{sora} \xV{2} \xR {110D0} {110FF} \xN{Sora Sompeng}\par -\xI{cakm} \xV{2} \xR {11100} {1114F} \xN{Chakma}\par -\xI{mahj} \xV{2} \xR {11150} {1117F} \xN{Mahajani}\par -\xI{shrd} \xV{2} \xR {11180} {111DF} \xN{Sharada}\par -\xI{sinh1} \xV{2} \xR {111E0} {111FF} \xN{Sinhala Archaic Numbers}\par -\xI{khoj} \xV{2} \xR {11200} {1124F} \xN{Khojki}\par -\xI{mult} \xV{2} \xR {11280} {112AF} \xN{Multani}\par -\xI{sind} \xV{2} \xR {112B0} {112FF} \xN{Khudawadi}\par -\xI{gran} \xV{2} \xR {11300} {1137F} \xN{Grantha}\par -\xI{newa} \xV{2} \xR {11400} {1147F} \xN{Newa}\par -\xI{tirh} \xV{2} \xR {11480} {114DF} \xN{Tirhuta}\par -\xI{sidd} \xV{2} \xR {11580} {115FF} \xN{Siddham}\par -\xI{modi} \xV{2} \xR {11600} {1165F} \xN{Modi}\par -\xI{mong1} \xV{2} \xR {11660} {1167F} \xN{Mongolian Supplement}\par -\xI{takr} \xV{2} \xR {11680} {116CF} \xN{Takri}\par -\xI{ahom} \xV{2} \xR {11700} {1174F} \xN{Ahom}\par -\xI{dogr} \xV{4} \xR {11800} {1184F} \xN{Dogra}\par -\xI{wara} \xV{2} \xR {118A0} {118FF} \xN{Warang Citi}\par -\xI{diak} \xV{4} \xR {11900} {1195F} \xN{Dives Akuru}\par -\xI{nand} \xV{4} \xR {119A0} {119FF} \xN{Nandinagari}\par -\xI{zanb} \xV{3} \xR {11A00} {11A4F} \xN{Zanabazar Square}\par -\xI{soyo} \xV{3} \xR {11A50} {11AAF} \xN{Soyombo}\par -\xI{pauc} \xV{2} \xR {11AC0} {11AFF} \xN{Pau Cin Hau}\par -\xI{bhks} \xV{2} \xR {11C00} {11C6F} \xN{Bhaiksuki}\par -\xI{marc} \xV{2} \xR {11C70} {11CBF} \xN{Marchen}\par -\xI{gonm} \xV{3} \xR {11D00} {11D5F} \xN{Masaram Gondi}\par -\xI{gong} \xV{4} \xR {11D60} {11DAF} \xN{Gunjala Gondi}\par -\xI{maka} \xV{4} \xR {11EE0} {11EFF} \xN{Makasar}\par -\xI{lisu1} \xV{4} \xR {11FB0} {11FBF} \xN{Lisu Supplement}\par -\xI{taml1} \xV{4} \xR {11FC0} {11FFF} \xN{Tamil Supplement}\par -\xI{xsux} \xV{1} \xR {12000} {123FF} \xN{Cuneiform}\par -\xI{xsux1} \xV{1} \xR {12400} {1247F} \xN{Cuneiform Numbers and Punctuation}\par -\xI{xsux2} \xV{2} \xR {12480} {1254F} \xN{Early Dynastic Cuneiform}\par -\xI{egyp} \xV{2} \xR {13000} {1342F} \xN{Egyptian Hieroglyphs}\par -\xI{egyp1} \xV{4} \xR {13430} {1343F} \xN{Egyptian Hieroglyph Format Controls}\par -\xI{hluw} \xV{2} \xR {14400} {1467F} \xN{Anatolian Hieroglyphs}\par -\xI{bamu1} \xV{2} \xR {16800} {16A3F} \xN{Bamum Supplement}\par -\xI{mroo} \xV{2} \xR {16A40} {16A6F} \xN{Mro}\par -\xI{bass} \xV{2} \xR {16AD0} {16AFF} \xN{Bassa Vah}\par -\xI{hmng} \xV{2} \xR {16B00} {16B8F} \xN{Pahawh Hmong}\par -\xI{medf} \xV{4} \xR {16E40} {16E9F} \xN{Medefaidrin}\par -\xI{plrd} \xV{2} \xR {16F00} {16F9F} \xN{Miao}\par -\xI{cjk14} \xV{2} \xR {16FE0} {16FFF} \xN{Ideographic Symbols and Punctuation}\par -\xI{tang} \xV{2} \xR {17000} {187FF} \xN{Tangut}\par -\xI{tang1} \xV{2} \xR {18800} {18AFF} \xN{Tangut Components}\par -\xI{kits} \xV{4} \xR {18B00} {18CFF} \xN{Khitan Small Script}\par -\xI{tang2} \xV{4} \xR {18D00} {18D7F} \xN{Tangut Supplement}\par -\xI{kana2} \xV{2} \xR {1B000} {1B0FF} \xN{Kana Supplement}\par -\xI{kanaA} \xV{3} \xR {1B100} {1B12F} \xN{Kana Extended-A}\par -\xI{kana3} \xV{4} \xR {1B130} {1B16F} \xN{Small Kana Extension}\par -\xI{nshu} \xV{3} \xR {1B170} {1B2FF} \xN{Nushu}\par -\xI{dupl} \xV{2} \xR {1BC00} {1BC9F} \xN{Duployan}\par -\xI{sym53} \xV{2} \xR {1BCA0} {1BCAF} \xN{Shorthand Format Controls}\par -\xI{sym32} \xV{1} \xR {1D000} {1D0FF} \xN{Byzantine Musical Symbols}\par -\xI{sym33} \xV{1} \xR {1D100} {1D1FF} \xN{Musical Symbols}\par -\xI{sym34} \xV{1} \xR {1D200} {1D24F} \xN{Ancient Greek Musical Notation}\par -\xI{sym58} \xV{4} \xR {1D2E0} {1D2FF} \xN{Mayan Numerals}\par -\xI{sym35} \xV{1} \xR {1D300} {1D35F} \xN{Tai Xuan Jing Symbols}\par -\xI{sym36} \xV{1} \xR {1D360} {1D37F} \xN{Counting Rod Numerals}\par -\xI{sym37} \xV{1} \xR {1D400} {1D7FF} \xN{Mathematical Alphanumeric Symbols}\par -\xI{sgnw} \xV{2} \xR {1D800} {1DAAF} \xN{Sutton SignWriting}\par -\xI{glag1} \xV{2} \xR {1E000} {1E02F} \xN{Glagolitic Supplement}\par -\xI{hmnp} \xV{4} \xR {1E100} {1E14F} \xN{Nyiakeng Puachue Hmong}\par -\xI{wcho} \xV{4} \xR {1E2C0} {1E2FF} \xN{Wancho}\par -\xI{mend} \xV{2} \xR {1E800} {1E8DF} \xN{Mende Kikakui}\par -\xI{adlm} \xV{2} \xR {1E900} {1E95F} \xN{Adlam}\par -\xI{sym59} \xV{4} \xR {1EC70} {1ECBF} \xN{Indic Siyaq Numbers}\par -\xI{sym61} \xV{4} \xR {1ED00} {1ED4F} \xN{Ottoman Siyaq Numbers}\par -\xI{sym51} \xV{2} \xR {1EE00} {1EEFF} \xN{Arabic Mathematical Alphabetic Symbols}\par -\xI{sym43} \xV{2} \xR {1F000} {1F02F} \xN{Mahjong Tiles}\par -\xI{sym44} \xV{2} \xR {1F030} {1F09F} \xN{Domino Tiles}\par -\xI{sym46} \xV{2} \xR {1F0A0} {1F0FF} \xN{Playing Cards}\par -\xI{sym45} \xV{2} \xR {1F100} {1F1FF} \xN{Enclosed Alphanumeric Supplement}\par -\xI{cjk13} \xV{2} \xR {1F200} {1F2FF} \xN{Enclosed Ideographic Supplement}\par -\xI{sym47} \xV{2} \xR {1F300} {1F5FF} \xN{Miscellaneous Symbols and Pictographs}\par -\xI{sym48} \xV{2} \xR {1F600} {1F64F} \xN{Emoticons}\par -\xI{sym54} \xV{2} \xR {1F650} {1F67F} \xN{Ornamental Dingbats}\par -\xI{sym49} \xV{2} \xR {1F680} {1F6FF} \xN{Transport and Map Symbols}\par -\xI{sym50} \xV{2} \xR {1F700} {1F77F} \xN{Alchemical Symbols}\par -\xI{sym55} \xV{2} \xR {1F780} {1F7FF} \xN{Geometric Shapes Extended}\par -\xI{sym56} \xV{2} \xR {1F800} {1F8FF} \xN{Supplemental Arrows-C}\par -\xI{sym57} \xV{2} \xR {1F900} {1F9FF} \xN{Supplemental Symbols and Pictographs}\par -\xI{sym60} \xV{4} \xR {1FA00} {1FA6F} \xN{Chess Symbols}\par -\xI{sym62} \xV{4} \xR {1FA70} {1FAFF} \xN{Symbols and Pictographs Extended-A}\par -\xI{sym63} \xV{4} \xR {1FB00} {1FBFF} \xN{Symbols for Legacy Computing}\par -\xI{haniB} \xV{1} \xR {20000} {2A6DF} \xN{CJK Unified Ideographs Extension B}\par -\xI{haniC} \xV{2} \xR {2A700} {2B73F} \xN{CJK Unified Ideographs Extension C}\par -\xI{haniD} \xV{2} \xR {2B740} {2B81F} \xN{CJK Unified Ideographs Extension D}\par -\xI{haniE} \xV{2} \xR {2B820} {2CEAF} \xN{CJK Unified Ideographs Extension E}\par -\xI{haniF} \xV{3} \xR {2CEB0} {2EBEF} \xN{CJK Unified Ideographs Extension F}\par -\xI{hani2} \xV{1} \xR {2F800} {2FA1F} \xN{CJK Compatibility Ideographs Supplement}\par -\xI{haniG} \xV{4} \xR {30000} {3134F} \xN{CJK Unified Ideographs Extension G}\par -\xI{spc07} \xV{1} \xR {E0000} {E007F} \xN{Tags}\par -\xI{spc08} \xV{1} \xR {E0100} {E01EF} \xN{Variation Selectors Supplement}\par -\xI{spc09} \xV{1} \xR {F0000} {FFFFF} \xN{Supplementary Private Use Area-A}\par -\xI{spc10} \xV{1} \xR{100000}{10FFFF} \xN{Supplementary Private Use Area-B}\par -%///////////////////////////// -\end{quote} - -\paragraph{ブロックIDの命名規則\<(参考)} -\mbox{} -\begin{itemize} -\item Unicodeブロック名にスクリプト(用字系)の名前が含まれるものは、 - それに対するISO 15924のコード(4文字)を用いた。 - 単一のスクリプトのブロックが複数ある場合は、 - 名前が“Extended-A,B,……”のものは|A|,|B|,……を、 - それ以外のものは|1|,|2|,…… - (一部符号値順でない)を末尾に付加した。 - \begin{quote} - “Arabic”→ |arab|; “Latin Extended-C”→ |latnC| - \end{quote} - なお、“Hiragana”のコードは |hira| だが“Katakana”は |kana| で - あることに注意。 -\item それ以外は、CJK関係(|cjk|)、特殊用途(|spc|)、 - それ以外(|sym|)の3種類に恣意的に分類して、 - 後ろに2桁の番号を付けた(|cjk12| など)。 -\end{itemize} - -%------------------- -\subsection{どのブロックが使用できるか} - -以下では、各モードCCVにおいてサポートされるブロックの全容に -ついて説明する。 - -\paragraph{モードCCVが1の場合} -CCV~1ではUnicodeブロックの再分割が存在しないので、 -サポートされるブロックの全体は以下のようになる。 - -\begin{itemize} -\item 前掲の通常ブロックの表で「CCV」欄が1の - ブロック全て。 -\end{itemize} - -\paragraph{モードCCVが2の場合} - -CCV~2では |cjk12|“Halfwidth and Fullwidth Forms”のブロックが -次の3つの下位ブロックに分割されている。 - -\begin{quotation} - \newcommand\xE[2]{\noindent - \makebox[4em][l]{\texttt{#1}}\textsl{#2}\par} - \xE{cjk1a}{Halfwidth and Fullwidth Forms/Other} - \xE{cjk1b}{Halfwidth and Fullwidth Forms/Latin} - \xE{cjk1c}{Halfwidth and Fullwidth Forms/Kana} -\end{quotation} - -\begin{itemize} -\item |cjk1b|\Means ASCII 英数字の全角互換形。\par - |U+FF10|~|U+FF19|,|U+FF21|~|U+FF3A|,|U+FF41|~|U+FF5A| -\item |cjk1c|\Means カタカナの半角互換形。 - 句読点等の記号は含まない。\par - |U+FF66|~|U+FF6F|,|U+FF71|~|U+FF9D| -\item |cjk1a|\Means |cjk12| から |cjk1b|、|cjk1c| を除いた残り。 -\end{itemize} - -従って、サポートされるブロックの全体は以下のようになる。 - -\begin{itemize} -\item 前掲の通常ブロックの表で「CCV」欄が2以下のブロック全て。 - \Note |cjk12| のブロックも使用可能で、これは - “Halfwidth and Fullwidth Forms”の全体を表す。 -\item |cjk12| の下位ブロック\Means - |cjk1a|、|cjk1b|、|cjk1c| の3つ。 -\end{itemize} - - -\paragraph{モードCCVが3の場合} - -CCV~3では |latn1|“Latin-1 Supplement”のブロックが -次の2つの下位ブロックに分割されている。 - -\begin{quotation} - \newcommand\xE[2]{\noindent - \makebox[4em][l]{\texttt{#1}}\textsl{#2}\par} - \xE{latnx}{Latin-1 Supplement/Other} - \xE{latny}{Latin-1 Supplement/Latin} -\end{quotation} - -\begin{itemize} -\item |latny|\Means ラテン文字であるもの。\par - |U+FF10|~|U+FF19|,|U+FF21|~|U+FF3A|,|U+FF41|~|U+FF5A| -\item |latnx|\Means |latn1| から |latny| を除いた残り。 -\end{itemize} - -従って、サポートされるブロックの全体は以下のようになる。 - -\begin{itemize} -\item 前掲の通常ブロックの表にあるブロック全て。 - \Note |cjk12|、|latn1| のブロックも使用可能。 -\item |cjk12| の下位ブロック\Means - |cjk1a|、|cjk1b|、|cjk1c| の3つ。 -\item |latn1| の下位ブロック\Means - |latnx|、|latny| の2つ。 -\end{itemize} - -%=========================================================== -\section{各モードにおける和文カテゴリの設定} -\label{sec:Values} - -(やっぱりあとで書く) - -\end{document} - -■ 各モードでの kcatcode の値 - - モード CCV が 1 の場合。 - - 記号 fc pc pcv pnc JIS CID 名称 - latn X - - - * Basic Latin - latn1 O - - X * * Latin-1 Supplement - latnA O - - X * Latin Extended-A - latnB O - - X * Latin Extended-B - latn2 O - - X * IPA Extensions - sym01 O - - X * Spacing Modifier Letters - sym02 O - - X * Combining Diacritical Marks - grek O - X - * * Greek and Coptic - cyrl O - X - * * Cyrillic - hang1 H - - - + Hangul Jamo - latn3 O - - X * Latin Extended Additional - grek1 O - X - * Greek Extended - sym04 O - - X * * General Punctuation - sym05 O - - X * Superscripts and Subscripts - sym06 O - - X * Currency Symbols - sym07 O - - X * Combining Diacritical Marks for Symbols - sym08 O - - X * * Letterlike Symbols - sym09 O - - X * Number Forms - sym10 O - - X * * Arrows - sym11 O - - X * * Mathematical Operators - sym12 O - - X * * Miscellaneous Technical - sym13 O - - X * Control Pictures - sym15 O - - - * Enclosed Alphanumerics - sym16 O - - X * * Box Drawing - sym17 O - - X * Block Elements - sym18 O - - X * * Geometric Shapes - sym19 O - - X * * Miscellaneous Symbols - sym20 O - - X * Dingbats - sym23 O - - X * Supplemental Arrows-B - sym24 O - - X * Miscellaneous Mathematical Symbols-B - sym26 O - - X * Miscellaneous Symbols and Arrows - cjk01 I - - - * CJK Radicals Supplement - cjk02 I - - - * Kangxi Radicals - cjk03 I - - - + Ideographic Description Characters - cjk04 O - - - * * CJK Symbols and Punctuation - hira K - - - * * Hiragana - kana K - - - * * Katakana - bopo I - - - + Bopomofo - hang2 H - - - + Hangul Compatibility Jamo - cjk05 I - - - * Kanbun - bopo1 I - - - + Bopomofo Extended - cjk06 I - - - + CJK Strokes - kana1 K - - - * Katakana Phonetic Extensions - cjk07 O - - - * Enclosed CJK Letters and Months - cjk08 O - - - * CJK Compatibility - haniA I - - - * CJK Unified Ideographs Extension A - hani I - - - * * CJK Unified Ideographs - yiii O - - - + Yi Syllables - yiii1 O - - - + Yi Radicals - hangA H - - - Hangul Jamo Extended-B - hang H - - - + Hangul Syllables - hangB H - - - Hangul Jamo Extended-B - spc04 O - - X * Private Use Area - hani1 I - - - * CJK Compatibility Ideographs - latn6 O - - X * Alphabetic Presentation Forms - cjk09 O - - - * Vertical Forms - cjk10 O - - - * CJK Compatibility Forms - cjk11 O - - - + Small Form Variants - cjk12 O - - - * * Halfwidth and Fullwidth Forms - cjk13 O - - - Enclosed Ideographic Supplement - haniB I - - - * CJK Unified Ideographs Extension B - haniC I - - - CJK Unified Ideographs Extension C - hani2 I - - - * CJK Compatibility Ideographs Supplement - O X - - (その他のブロック) - all, prc, pc1, pnc の欄はそれぞれ forcecjk, prefercjk, prefercjkvar, - prefernoncjk モードでの kcatcode の値。値の意味: X=noncjk(15), - I=kanji(16), K=kana(17), O=cjk(18), H=hangul(19)。JIS 欄の * はその - ブロック内の文字に JIS X 0208 に含まれるものがあることを示す。また CID - 欄の * は Adobe-Japan1 に、+ は Adobe-GB1, Adobe-CNS1, Adobe-Korea1 に - 含まれるものがあることを示す。 - - モード CCV が 2 の場合、cjk12 の再分割について以下のようになる。 - - 記号 fc pc pcv pnc JIS CID - cjk1a O - - - * * cjk12 で cjk1b, cjk1c 以外 - cjk1b K - - - * * ASCII 英数字の全角互換形 - cjk1c K - - - * * カタカナの半角互換形(記号は含まず) - - ※ upTeX の CCV が 2 でモード CCV 指定が 1 の場合は cjk1a~cjk1c の - 設定値は cjk12 のものに従う。 - diff --git a/macros/latex/contrib/pxtatescale/LICENSE b/macros/latex/contrib/pxtatescale/LICENSE deleted file mode 100644 index d2d2a02dd5..0000000000 --- a/macros/latex/contrib/pxtatescale/LICENSE +++ /dev/null @@ -1,24 +0,0 @@ -This software is distributed under the MIT License. - -The MIT License - -Copyright (c) 2013 Takayuki YATO (aka. "ZR") -Copyright (c) 2017 Hironobu Yamashita (aka. "aminophen") - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. diff --git a/macros/latex/contrib/pxtatescale/README b/macros/latex/contrib/pxtatescale/README deleted file mode 100644 index 5f811cb249..0000000000 --- a/macros/latex/contrib/pxtatescale/README +++ /dev/null @@ -1,41 +0,0 @@ -pxtatescale -=========== - -LaTeX: to make scaling work also with vertical direction of (u)pTeX -and dvipdfmx - -The graphics' feature of "scaling" (`\scalebox`, `\reflextbox` and -`\resizebox`) with dvipdfmx driver results in a wrong direction of -stretch, when used in the vertical direction of pTeX. This behavior -is caused by the fact that internal X and Y directions of pTeX -`\tate` mode correspond to physical top-to-bottom and right-to-left -directions respectively. This package provides a fix for the problem. - -### Installation - - - `*.sty` → $TEXMF/tex/latex/pxtatescale - -### Usage - -Load this package after graphicx (or graphics) package. - - \documentclass[dvipdfmx]{article} - \usepackage{graphicx} % or graphics - \usepackage{pxtatescale} - -Note that this package is of no use unless you work on e-(u)pTeX + -dvipdfmx combination. - -Revision History ----------------- - - * 2013/03/25 v0.2 - - The first public version. (TY) - * 2017/01/16 v0.3 - - Updated for new dvipdfmx.def with pdf-based scaling. (HY) - * 2017/01/21 v0.4 - - Ensure graphics driver `dvipdfmx` before applying a patch. (HY) - ------------------- -Hironobu Yamashita -https://github.com/aminophen diff --git a/macros/latex/contrib/pxtatescale/pxtatescale.sty b/macros/latex/contrib/pxtatescale/pxtatescale.sty deleted file mode 100644 index 9f8745d354..0000000000 --- a/macros/latex/contrib/pxtatescale/pxtatescale.sty +++ /dev/null @@ -1,43 +0,0 @@ -% pxtatescale.sty -\NeedsTeXFormat{pLaTeX2e} -\ProvidesPackage{pxtatescale}[2017/01/21 v0.4] -\def\pxqtg@pkgname{pxtatescale} -\@ifpackageloaded{graphics}{}{%else - \PackageError\pxqtg@pkgname{Package 'graphics' not loaded}\@ehc} -\begingroup -% the patch is necessary only when dvipdfmx.def is used -\def\pxqtg@tempa{dvipdfmx.def} -\ifx\Gin@driver\pxqtg@tempa %%% if-group -% prepare -\def\pxqtg@patch@status{1}% -\def\pxqtg@try@patch#1#2#3{% - \edef\pxqtg@tempcsname{\string#1}% - \def\pxqtg@temp{#2}\ifx#1\pxqtg@temp - \gdef#1{#3}% - \def\pxqtg@patch@status{0}% - \fi} -% first trial (new definition) -\pxqtg@try@patch\Gscale@start - {\special{pdf:btrans}% - \special{pdf:literal \Gscale@x\space 0 0 \Gscale@y\space 0 0 cm}} - {\special{pdf:btrans}% - \special{pdf:literal - \iftdir \Gscale@y\space 0 0 \Gscale@x\space - \else \Gscale@x\space 0 0 \Gscale@y\space - \fi 0 0 cm}} -\ifnum\pxqtg@patch@status=\z@\else - % second trial (old definition) - \pxqtg@try@patch\Gscale@start - {\special{pdf:btrans xscale \Gscale@x\space yscale \Gscale@y}}% - {\special{pdf:btrans - \iftdir xscale \Gscale@y\space yscale \Gscale@x - \else xscale \Gscale@x\space yscale \Gscale@y - \fi}} -\fi -\ifnum\pxqtg@patch@status=\z@ - \PackageInfo\pxqtg@pkgname{Patch applied to \pxqtg@tempcsname}% -\else - \PackageWarningNoLine\pxqtg@pkgname{Patch cannot be applied to \pxqtg@tempcsname}% -\fi -\fi %%% if-group end -\endgroup diff --git a/macros/latex/contrib/wrapstuff/README.md b/macros/latex/contrib/wrapstuff/README.md new file mode 100644 index 0000000000..017a8bf27c --- /dev/null +++ b/macros/latex/contrib/wrapstuff/README.md @@ -0,0 +1,50 @@ +wrapstuff +========= + +The `wrapstuff` package provides another implementation of text wrapping. +Its implementation benefits from the paragraph hooks available since +LaTeX 2021-06-01. + +Basic Usage +----------- +The package only provides a user environment `wrapstuff`. + + \begin{wrapstuff}[] + + \end{wrapstuff} +
    + +You can read the package manual (in Chinese) for some explanations. + +Contributing +------------ +The package is still highly experimental and not fully tested. +[Issues](https://github.com/qinglee/wrapstuff/issues) and +[pull requests](https://github.com/qinglee/wrapstuff/pulls) +are always welcome. + +Copyright and Licence +--------------------- + + Copyright (C) 2022 by Qing Lee + ----------------------------------------------------------------- + + This work may be distributed and/or modified under the + conditions of the LaTeX Project Public License, either + version 1.3c of this license or (at your option) any later + version. This version of this license is in + http://www.latex-project.org/lppl/lppl-1-3c.txt + and the latest version of this license is in + http://www.latex-project.org/lppl.txt + and version 1.3 or later is part of all distributions of + LaTeX version 2005/12/01 or later. + + This work has the LPPL maintenance status "maintained". + + The Current Maintainer of this work is Qing Lee. + + This package consists of the file wrapstuff.dtx, + and the derived files wrapstuff.pdf, + wrapstuff.sty, + wrapstuff.ins and + README.md (this file). diff --git a/macros/latex/contrib/wrapstuff/wrapstuff.dtx b/macros/latex/contrib/wrapstuff/wrapstuff.dtx new file mode 100644 index 0000000000..5b8c03ec03 --- /dev/null +++ b/macros/latex/contrib/wrapstuff/wrapstuff.dtx @@ -0,0 +1,3011 @@ +% \iffalse meta-comment +% !TeX program = XeLaTeX +% !TeX encoding = UTF-8 +%<*internal> +\iffalse +% +%<*readme> +wrapstuff +========= + +The `wrapstuff` package provides another implementation of text wrapping. +Its implementation benefits from the paragraph hooks available since +LaTeX 2021-06-01. + +Basic Usage +----------- +The package only provides a user environment `wrapstuff`. + + \begin{wrapstuff}[] + + \end{wrapstuff} +
    + +You can read the package manual (in Chinese) for some explanations. + +Contributing +------------ +The package is still highly experimental and not fully tested. +[Issues](https://github.com/qinglee/wrapstuff/issues) and +[pull requests](https://github.com/qinglee/wrapstuff/pulls) +are always welcome. + +Copyright and Licence +--------------------- + + Copyright (C) 2022 by Qing Lee + ----------------------------------------------------------------- + + This work may be distributed and/or modified under the + conditions of the LaTeX Project Public License, either + version 1.3c of this license or (at your option) any later + version. This version of this license is in + http://www.latex-project.org/lppl/lppl-1-3c.txt + and the latest version of this license is in + http://www.latex-project.org/lppl.txt + and version 1.3 or later is part of all distributions of + LaTeX version 2005/12/01 or later. + + This work has the LPPL maintenance status "maintained". + + The Current Maintainer of this work is Qing Lee. + + This package consists of the file wrapstuff.dtx, + and the derived files wrapstuff.pdf, + wrapstuff.sty, + wrapstuff.ins and + README.md (this file). +% +%<*internal> +\fi +\begingroup + \def\temp{LaTeX2e} +\expandafter\endgroup\ifx\temp\fmtname\else +\csname fi\endcsname +% +%<*install> + +\input ctxdocstrip % + +\preamble + + Copyright (C) 2022 by Qing Lee +----------------------------------------------------------------- + + This work may be distributed and/or modified under the + conditions of the LaTeX Project Public License, either + version 1.3c of this license or (at your option) any later + version. This version of this license is in + http://www.latex-project.org/lppl/lppl-1-3c.txt + and the latest version of this license is in + http://www.latex-project.org/lppl.txt + and version 1.3 or later is part of all distributions of + LaTeX version 2005/12/01 or later. + + This work has the LPPL maintenance status "maintained". + + The Current Maintainer of this work is Qing Lee. + +----------------------------------------------------------------- + +\endpreamble + +\postamble + + This work consists of the file wrapstuff.dtx, + and the derived files wrapstuff.pdf, + wrapstuff.sty, + wrapstuff.ins and + README.md. +\endpostamble + +\generate + { +% +%<*internal> + \usedir{source/latex/wrapstuff} + \file{wrapstuff.ins} {\from{\jobname.dtx}{install}} +% +%<*install> + \usedir{tex/latex/wrapstuff} + \file{wrapstuff.sty} {\from{\jobname.dtx}{package}} + \nopreamble\nopostamble + \usedir{doc/latex/wrapstuff} + \file{README.md} {\from{\jobname.dtx}{readme}} + } + +\endbatchfile +% +%<*internal> +\fi +% +%\NeedsTeXFormat{LaTeX2e} +%\@ifundefined{ExplLoaderFileDate}{\RequirePackage{expl3}}{} +%<+package>\GetIdInfo$Id: wrapstuff.dtx 564fe9d 2022-07-20 19:55:58 +0800 Qing Lee $ +% {Wrapping text around stuff} +%\ProvidesExplPackage{\ExplFileName} +% {\ExplFileDate}{0.1}{\ExplFileDescription} +%<*driver> +\documentclass{ctxdoc} +\usepackage{wrapstuff} +\usepackage{graphicx} +\usepackage{zhlipsum} +\ExplSyntaxOn +\makeatletter +\DeclareDocumentCommand \gitsha { m } + { + \href { https \c_colon_str //github.com/qinglee/wrapstuff/commit/#1 } + { rev. ~ \texttt{#1} } + } +\DeclareDocumentCommand \QIANZIWEN { } + { + 天地玄黄宇宙洪荒日月盈昃辰宿列张 + 寒来暑往秋收冬藏闰馀成岁律召调阳 \par + 云腾致雨露结为霜金生丽水玉出昆冈 \par + } +\DeclareDocumentCommand \ADDSPECEIALKEY { m } + { + \cs_gset_eq:NN \@@_codedoc_names_typeset_save: + \__codedoc_names_typeset: + \cs_gset_protected:Npn \__codedoc_names_typeset: + { + \cs_gset_eq:NN \__codedoc_names_typeset: + \@@_codedoc_names_typeset_save: + \__codedoc_names_typeset: + #1 \\ + } + } +\DeclareDocumentCommand \IMAGE { m m } + { \includegraphics [ width = \dim_eval:n {#1} ] { example-image-#2.pdf } } +\tl_put_left:Nn \Example + { \trivlist \item \relax } +\tl_put_right:Nn \endExample + { \endtrivlist } +\SideBySideExampleSet { numbers = none } +\makeatother +\ExplSyntaxOff +\begin{document} + \DocInput{\jobname.dtx} + \IndexLayout + \PrintChanges + \PrintIndex +\end{document} +% +% \fi +% +% \CheckSum{2923} +% +% \changes{v0.1}{2022/07/05}{初始版本。} +% \changes{v0.1}{2022/07/20}{首次提交到 CTAN 发布。} +% +% \GetFileId{wrapstuff.sty} +% +% \title{\bfseries\pkg{wrapstuff} 宏包} +% \author{李清} +% \date{\filedate\qquad\fileversion\thanks{\gitsha{\ExplFileVersion}.}} +% \maketitle +% +% \begin{documentation} +% +% \section{基本用法} +% +% \pkg{wrapstuff} 宏包提供了图文绕排的另一种实现。 +% \pkg{wrapstuff} 的实现依赖 \LaTeX\ 2021-06-01 开始提供的段落钩子, +% 并依赖 \LaTeXiii\ 2022-04-10 之后的版本。 +% +% \begin{function}{wrapstuff} +% \begin{syntax} +% \tn{begin}\{wrapstuff\}\oarg{选项} +% <绕排内容> +% \tn{end}\{wrapstuff\} +% <正文> +% \end{syntax} +% \pkg{wrapstuff} 只提供了一个用户环境 \env{wrapstuff}, +% 会在环境之后的段落开始绕排。例如 +% \begin{Example}[frame=single,numbers=none,gobble=5] +% \begin{wrapstuff}[c,top=1] +% \includegraphics[width=\dimeval{\linewidth/3}]{example-image.pdf} +% \end{wrapstuff} +% \zhlipsum[1][name=zhufu] +% \end{Example} +% \end{function} +% +% \begin{function}{\wrapstuffset} +% \begin{syntax} +% \tn{wrapstuffset} \Arg{选项列表} +% \end{syntax} +% \pkg{wrapstuff} 的选项可以在调用宏包时设置,也可以通过 \tn{wrapstuffset} 设置。 +% 选项将在下面描述。 +% \end{function} +% +% \ADDSPECEIALKEY{\textrm{\meta{n}}} +% \begin{function}{top} +% \begin{syntax} +% top = <非负整数> +% \end{syntax} +% 设置在正文段落的第几行之后开始绕排,可以设置为非负整数。 +% 非负整数选项 \meta{n} 是设置选项 \opt{top} 为 \meta{n} 的缩写形式。 +% 初始值是 \num{0}。 +% \end{function} +% +% \begin{function}{width} +% \begin{syntax} +% width = <宽度> +% \end{syntax} +% 设置绕排内容的宽度,初始值为 \qty{0}{pt},代表自然宽度。 +% \end{function} +% +% \begin{function}{height} +% \begin{syntax} +% height = <高度> +% \end{syntax} +% 设置绕排内容的高度,初始值为 \qty{0}{pt},代表自然高度。 +% \end{function} +% +% \begin{function}{leftsep,rightsep,hsep} +% \begin{syntax} +% leftsep = <长度> +% rightsep = <长度> +% hsep = <长度> +% \end{syntax} +% 设置绕排内容与正文的左/右间距,选项 \opt{hsep} 同时设置 \opt{leftsep} 和 \opt{rightsep}。 +% 初始值是 \qty{1}{em}。 +% \end{function} +% +% \begin{function}{abovesep,belowsep,vsep} +% \begin{syntax} +% abovesep = <长度> +% belowsep = <长度> +% vsep = <长度> +% \end{syntax} +% 设置绕排内容与正文的上/下间距,选项 \opt{vsep} 同时设置 \opt{abovesep} 和 \opt{belowsep}。 +% 初始值是 \qty{0}{pt}。 +% \end{function} +% +% \begin{function}{l,r,c,i,o,ratio} +% \begin{syntax} +% l/r/c/i/o +% ratio = <实数> +% \end{syntax} +% 这些选项用于设置绕排内容位于正文中的位置。 +% 选项 \opt{l/r/c/i/o} 分别设置绕排内容位于正文的左侧、右侧、中间、内侧、外侧。 +% 选项 \opt{ratio} 设置绕排内容左侧的正文占据行宽的比例,可以设置为 $[0,1]$ 区间中的合理实数。 +% 选项 \opt{i/o} 可以与 \opt{ratio} 一起使用,这时设置的是内/外侧正文的行宽比例。 +% 初始设置为 |r|,即位于正文的右侧。 +% \end{function} +% +% \begin{function}{column} +% \begin{syntax} +% column = <(true)|false|par> +% \end{syntax} +% 控制是否将绕排内容两侧的正文分栏显示,只有设置 |c| 选项或者 +% 设置 \opt{ratio} 不等于 $0$ 或者 $1$ 时才有效。 +% \opt{false} 表示不分栏,正文文字方向始终保持从左到右的顺序; +% \opt{par} 表示以段落为单位进行分栏,如下示例。 +% \begin{SideBySideExample}[xrightmargin=\dimeval{20em+5mm}] +% \begin{wrapstuff}[c,1] +% \IMAGE{2em}{a} +% \end{wrapstuff} +% \QIANZIWEN +% \begin{wrapstuff}[c,1,column=par] +% \IMAGE{2em}{b} +% \end{wrapstuff} +% \QIANZIWEN +% \begin{wrapstuff}[c,0,column=false] +% \IMAGE{2em}{c} +% \end{wrapstuff} +% \QIANZIWEN +% \end{SideBySideExample} +% \end{function} +% +% \begin{function}{hoffset} +% \begin{syntax} +% hoffset = <长度> +% \end{syntax} +% 设置绕排内容伸出正文版心的长度。 +% 当设置了选项 \opt{c} 或者选项 \opt{ratio} 的值位于 $(0,1)$ 时,本选项无效。 +% 一个特殊值 \tn{width} 用于表示绕排内容和相应间距的总宽度, +% 可以将 \opt{hoffset} 设置为 \tn{width},完全伸出版心。 +% 初始值为 \qty{0}{pt}。 +% \end{function} +% +% \begin{function}{voffset} +% \begin{syntax} +% voffset = <长度> +% \end{syntax} +% 用于调整绕排内容的竖直位置,初始值为 \qty{0}{pt}。 +% \end{function} +% +% \begin{function}{type} +% \begin{syntax} +% type = <浮动体类型> +% \end{syntax} +% 设置绕排内容的浮动体类型,初始值为空。 +% 如果需要在 \env{wrapstuff} 环境中使用 \tn{caption} 命令, +% 则需要设置 \opt{type} 为 \opt{figure} 或 \opt{table} 等类型, +% 并需要同时设置 \opt{width} 指定宽度。 +% \begin{SideBySideExample}[xrightmargin=\dimeval{18em+5mm}] +% \begin{wrapstuff}[type=figure,width=5em] +% \centering +% \IMAGE{4em}{plain} +% \caption{示例} +% \end{wrapstuff} +% \QIANZIWEN +% \end{SideBySideExample} +% \end{function} +% +% \begin{function}{lines} +% \begin{syntax} +% lines = <正整数> +% \end{syntax} +% 设置绕排内容占据正文的行数,可以设置正整数。 +% 初始值为空,根据绕排内容的高度自动计算行数。 +% \end{function} +% +% \begin{function}{linewidth} +% \begin{syntax} +% linewidth = <宽度> +% \end{syntax} +% 设置正文段落的行宽,初始设置为 |\linewidth|,一般不需要调整。 +% \end{function} +% +% \begin{function}{\wrapstuffclear} +% 如果当前正文段落的行数不够,\pkg{wrapstuff} 的作用会延续到下一段。 +% 这可能会导致某些意外结果,可以在下一段之前启用命令 \tn{wrapstuffclear} 消除影响。 +% \end{function} +% +% \end{documentation} +% +% +% \StopEventually{} +% +% +%\begin{implementation} +% +% \section{代码实现} +% +% \begin{macrocode} +%<*package> +% \end{macrocode} +% +% \begin{macrocode} +%<@@=wstf> +% \end{macrocode} +% +% \pkg{wrapstuff} 的实现依赖 \LaTeX\ 2021-06-01 开始提供的段落钩子。 +% \begin{macrocode} +\@ifl@t@r \fmtversion { 2021-06-01 } + { } + { + \msg_new:nnn { wrapstuff } { latex-too-old } + { + You~need~to~update~your~LaTeX~to~the~latest~release. \\ + Loading~wrapstuff~will~abort! + } + \msg_critical:nn { wrapstuff } { latex-too-old } + } +% \end{macrocode} +% +% 由于使用了 \cs{keys_precompile:nnN},需要比较新的 \LaTeXiii。 +% \begin{macrocode} +\@ifl@t@r \ExplLoaderFileDate { 2022-04-10 } + { } + { + \msg_new:nnn { wrapstuff } { latex3-too-old } + { + You~need~to~update~your~installation~of~the~bundles~ + "l3kernel"~and~"l3packages". \\ + Loading~wrapstuff~will~abort! + } + \msg_critical:nn { wrapstuff } { latex3-too-old } + } +% \end{macrocode} +% +% \begin{macrocode} +\prop_gput:Nnn \g_msg_module_name_prop { wstf } { wrapstuff } +% \end{macrocode} +% +% \begin{macro}[TF]{ +% \@@_if_last_none:, +% \@@_if_last_hlist:, +% \@@_if_last_whatsit:, +% \@@_if_last_glue:, +% \@@_if_last_kern:, +% \@@_if_last_penalty:} +% 一些 \hologo{eTeX} 结点判定函数。 +% \begin{macrocode} +\group_begin: +\cs_set:Npn \@@_tmp:nn #1 + { + \group_begin: + \exp_args:Ncc \@@_tmp_aux:NNn + { @@_if_last_ #1 : } + { c_@@_ #1 _node } + } +\cs_set:Npn \@@_tmp_aux:NNn #1#2#3 + { + \group_end: + \int_const:Nn #2 {#3} + \prg_new_conditional:Npnn #1 { T , F , TF } + { + \if_int_compare:w \tex_lastnodetype:D = #2 + \prg_return_true: \else: \prg_return_false: \fi: + } + } +\@@_tmp:nn { none } { -1 } +\@@_tmp:nn { hlist } { 1 } +\@@_tmp:nn { whatsit } { 9 } +\@@_tmp:nn { glue } { 11 } +\@@_tmp:nn { kern } { 12 } +\@@_tmp:nn { penalty } { 13 } +\group_end: +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_gadd_hook:nn, \@@_package_hook:nn} +% \begin{macrocode} +\cs_new_protected:Npn \@@_gadd_hook:nn #1 + { \hook_gput_code:nnn {#1} { wrapstuff } } +\cs_new_protected:Npn \@@_package_hook:nn #1 + { \hook_gput_code:nnn { package/#1/after } { wrapstuff } } +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{wrapstuff} +% 主要功能环境接口。 +% \begin{macrocode} +\NewDocumentEnvironment { wrapstuff } { O { } } + { + \@@_clear: + \int_set:Nn \l_@@_top_int { -1 } + \tl_if_blank:nTF {#1} + { \tl_clear:N \l_@@_main_kv_tl } + { + \keys_set_filter:nnnN { wrapstuff } + { main , ratio } + {#1} \l_@@_main_kv_tl + } + \tl_set:Nx \l_@@_type_tl { \l_@@_type_tl } + \dim_set:Nn \l_@@_width_dim { \l_@@_width_tl } + \dim_set:Nn \l_@@_height_dim { \l_@@_height_tl } + \hbox_gset:Nw \g_@@_stuff_box + \dim_compare:nNnTF \l_@@_width_dim > \c_zero_dim + { \@@_minipage_begin: } + { \@@_hbox_begin: } + } + { + \dim_compare:nNnTF \l_@@_width_dim > \c_zero_dim + { \@@_minipage_end: } + { \@@_hbox_end: } + \@@_set_vsep: + \@@_attach_label: + \tl_if_empty:NTF \l_@@_main_kv_tl + { \tl_gclear:N \g_@@_main_setting_tl } + { \@@_save_main_setting: } + \@@_set_top_line: + \dim_gset:Nn \g_@@_stuff_wd_dim + { \box_wd:N \g_@@_stuff_box } + \dim_gset:Nn \g_@@_stuff_ht_dim + { \box_ht_plus_dp:N \g_@@_stuff_box } + \dim_gset_eq:NN + \g_@@_remaining_dim + \g_@@_stuff_ht_dim + \@@_next_para: + } +\@@_gadd_hook:nn { env/wrapstuff/before } { \par } +\cs_new_protected_nopar:Npn \@@_minipage_begin: + { + \@@_floatrow_hook: + \dim_compare:nNnTF \l_@@_height_dim > \c_zero_dim + { \begin { minipage } [b] [ \l_@@_height_dim ] [c] { \l_@@_width_dim } } + { \begin { minipage } [b] { \l_@@_width_dim } } + \tl_if_empty:NF \l_@@_type_tl + { \@@_set_float: } + } +\cs_new_protected_nopar:Npn \@@_minipage_end: + { + \end { minipage } + \hbox_gset_end: + \@@_float_pos_hook: + } +\cs_new_protected_nopar:Npn \@@_hbox_begin: + { \tex_ignorespaces:D } +\cs_new_protected_nopar:Npn \@@_hbox_end: + { + \tex_unskip:D + \hbox_gset_end: + \dim_compare:nNnT \l_@@_height_dim > \c_zero_dim + { \@@_gset_height: } + } +\cs_new_protected_nopar:Npn \@@_gset_height: + { + \hbox_gset:Nn \g_@@_stuff_box + { + \box_move_up:nn + { + ( \l_@@_height_dim + - \box_ht:N \g_@@_stuff_box + + \box_dp:N \g_@@_stuff_box + ) / 2 + } + { \box_use_drop:N \g_@@_stuff_box } + } + \box_gset_ht:Nn \g_@@_stuff_box { \l_@@_height_dim } + \box_gset_dp:Nn \g_@@_stuff_box { \c_zero_dim } + } +\cs_new_protected_nopar:Npn \@@_set_vsep: + { + \@@_gadd_ht:Nn \g_@@_stuff_box { \l_@@_abovesep_tl } + \dim_set:Nn \l_@@_shift_dim { \l_@@_belowsep_tl } + \dim_compare:nNnF \l_@@_shift_dim = \c_zero_dim + { \@@_set_belowsep: } + } +\cs_new_protected_nopar:Npn \@@_set_belowsep: + { + \hbox_gset:Nn \g_@@_stuff_box + { + \box_move_up:nn + { \l_@@_shift_dim + \box_dp:N \g_@@_stuff_box } + { \box_use_drop:N \g_@@_stuff_box } + } + \box_gset_dp:Nn \g_@@_stuff_box { \c_zero_dim } + } +\tl_new:N \l_@@_main_kv_tl +\tl_new:N \g_@@_main_setting_tl +\box_new:N \g_@@_stuff_box +\dim_new:N \g_@@_stuff_ht_dim +\dim_new:N \g_@@_stuff_wd_dim +\dim_new:N \l_@@_shift_dim +\dim_new:N \l_@@_width_dim +\dim_new:N \l_@@_height_dim +\dim_new:N \g_@@_prevdepth_dim +\dim_new:N \g_@@_remaining_dim +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_attach_label:, \@@_write_label:} +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_attach_label: + { + \stepcounter { wrapstuff } + \hbox_gset:Nn \g_@@_stuff_box + { + \@@_write_label: + \box_use_drop:N \g_@@_stuff_box + } + } +\cs_new_protected_nopar:Npn \@@_write_label: + { + \iow_shipout_x:Nx \@auxout + { + \c_backslash_str wrapstuff@label + { \@@_counter:n { wrapstuff } } + { \exp_not:N \wrapstuff@counter { page } } + } + } +\cs_new:Npn \@@_counter:n #1 + { \int_value:w \value {#1} } +\cs_new_eq:NN \wrapstuff@counter \@@_counter:n +\cs_new_protected_nopar:Npn \wrapstuff@label + { \@newl@bel { wrapstuff@label } } +\tl_const:Nn \c_@@_label_tl + { wrapstuff@label@ \int_value:w \value { wrapstuff } } +\@@_gadd_hook:nn { begindocument } + { + \legacy_if:nTF { @filesw } + { + \iow_now:Nx \@mainaux + { + \c_backslash_str providecommand + \c_backslash_str wrapstuff@label [2] { } + } + } + { \cs_gset_eq:NN \@@_write_label: \@@_empty: } + } +\newcounter { wrapstuff } +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_save_main_setting:} +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_save_main_setting: + { + \exp_args:Nnno + \keys_set_filter:nnnN { wrapstuff } + { main } + { \l_@@_main_kv_tl } \l_@@_main_kv_tl + \bool_if:NTF \l_@@_swap_bool + { \@@_swap_ratio: } + { \@@_set_ratio:N \l_@@_ratio_fp } + \tl_if_empty:NF \l_@@_main_kv_tl + { \@@_save_main_setting_aux: } + } +\cs_new_protected:Npn \@@_set_ratio:N #1 + { + \tl_gset:Nx \g_@@_main_setting_tl + { \fp_set:Nn \exp_not:N \l_@@_ratio_fp { \fp_use:N #1 } } + } +\cs_new_protected:Npn \@@_set_ratio:n #1 + { + \tl_gset:Nx \g_@@_main_setting_tl + { \fp_set:Nn \exp_not:N \l_@@_ratio_fp { \fp_eval:n {#1} } } + } +\cs_new_protected_nopar:Npn \@@_save_main_setting_aux: + { + \exp_args:Nno + \keys_precompile:nnN + { wrapstuff } + { \l_@@_main_kv_tl } \l_@@_main_kv_tl + \tl_gconcat:NNN \g_@@_main_setting_tl + \g_@@_main_setting_tl \l_@@_main_kv_tl + } +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_set_top_line:} +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_set_top_line: + { + \int_compare:nNnF \l_@@_top_int < \c_zero_int + { + \tl_gput_right:Nx \g_@@_main_setting_tl + { + \int_set:Nn \l_@@_top_int + { \int_use:N \l_@@_top_int } + } + } + } +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_swap_ratio:} +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_swap_ratio: + { + \fp_compare:nF + { \c_zero_fp < \l_@@_ratio_fp < \c_one_fp } + { \fp_zero:N \l_@@_ratio_fp } + \int_if_odd:nTF + { + \exp_args:Ne \cs_if_exist_use:cF + { \c_@@_label_tl } + { \@@_counter:n { page } } + } + { \bool_if:NTF \l_@@_inner_bool } + { \bool_if:NTF \l_@@_outer_bool } + { \@@_set_ratio:N \l_@@_ratio_fp } + { \@@_set_ratio:n { \c_one_fp - \l_@@_ratio_fp } } + } +\bool_new:N \l_@@_swap_bool +\bool_new:N \l_@@_inner_bool +\bool_new:N \l_@@_outer_bool +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_gadd_ht:Nn,\@@_gsub_ht:Nn} +% \begin{macrocode} +\cs_new_protected:Npn \@@_gadd_ht:Nn #1#2 + { \box_gset_ht:Nn #1 { \box_ht:N #1 + \dim_eval:n {#2} } } +\cs_new_protected:Npn \@@_gsub_ht:Nn #1#2 + { \box_gset_ht:Nn #1 { \box_ht:N #1 - \dim_eval:n {#2} } } +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_clear:} +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_clear: + { + \@@_clear_para_hook: + \@@_clear_kludge: + \@@_clear_variable: + } +\cs_new_protected_nopar:Npn \@@_clear_variable: + { + \int_gset:Nn \g_@@_top_int { -1 } + \int_gzero:N \g_@@_window_int + \dim_gzero:N \g_@@_total_ht_dim + \dim_gzero:N \g_@@_column_left_dim + \tl_gclear:N \g_@@_main_setting_tl + \bool_gset_false:N \g_@@_next_bool + \bool_gset_false:N \g_@@_hoffset_bool + \bool_gset_false:N \g_@@_next_hang_bool + \bool_gset_false:N \g_@@_first_save_bool + \bool_gset_false:N \g_@@_right_move_bool + \bool_gset_false:N \g_@@_column_right_bool + } +\cs_new_protected_nopar:Npn \@@_clear_kludge: + { + \bool_if:NTF \g_@@_next_bool + { + \box_gclear:N \g_@@_stuff_box + \skip_vertical:n + { \tex_baselineskip:D * \g_@@_window_int } + } + { + \box_if_empty:NF \g_@@_stuff_box + { \@@_clear_stuff_box: } + } + } +\cs_new_protected_nopar:Npn \@@_clear_stuff_box: + { + \@@_ignore_depth: + \skip_set:Nn \l_@@_last_skip + { \box_dp:N \strutbox } + \skip_vertical:N \l_@@_last_skip + \box_use_drop:N \g_@@_stuff_box + \skip_vertical:N \l_@@_last_skip + \@@_ignore_depth: + } +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_next_para:} +% 将 \env{wrapstuff} 环境之后的段落放入内部环境 \env{wrapstuff@par} 中。 +% 为了控制钩子执行顺序,需要使用 |wrapstuff| 标签, +% 而不用更为方便的 \cs{hook_gput_next_code:nn} 实现。 +% \begin{macrocode} +\@@_gadd_hook:nn { para/before } { \@@_para_before: } +\@@_gadd_hook:nn { para/begin } { \@@_para_begin: } +\@@_gadd_hook:nn { para/end } { \@@_para_end: } +\cs_new_protected_nopar:Npn \@@_next_para: + { + \cs_gset_eq:NN \@@_para_before: \@@_env_before: + \cs_gset_eq:NN \@@_para_begin: \@@_env_begin: + \cs_gset_eq:NN \@@_para_end: \@@_env_end: + } +\cs_new_protected_nopar:Npn \@@_env_before: + { \dim_gset_eq:NN \g_@@_prevdepth_dim \tex_prevdepth:D } +\cs_new_protected_nopar:Npn \@@_env_begin: + { \begin { wrapstuff@par } } +\cs_new_protected_nopar:Npn \@@_env_end: + { \end { wrapstuff@par } } +\cs_new_protected_nopar:Npn \@@_clear_para_hook: + { + \cs_gset_eq:NN \@@_para_before: \@@_empty: + \cs_gset_eq:NN \@@_para_begin: \@@_empty: + \cs_gset_eq:NN \@@_para_end: \@@_empty: + } +\cs_new_protected_nopar:Npn \@@_empty: + { } +\cs_new_eq:NN \@@_para_before: \@@_empty: +\cs_new_eq:NN \@@_para_begin: \@@_empty: +\cs_new_eq:NN \@@_para_end: \@@_empty: +% \end{macrocode} +% \end{macro} +% +% \begin{macro}[int]{wrapstuff@par} +% 内部环境,实现主要功能。 +% \begin{macrocode} +\NewDocumentEnvironment { wrapstuff@par } { } + { + \tl_use:N \g_@@_main_setting_tl + \dim_set:Nn \l_@@_leftsep_dim { \l_@@_leftsep_tl } + \dim_set:Nn \l_@@_rightsep_dim { \l_@@_rightsep_tl } + \dim_set:Nn \l_@@_voffset_dim { \l_@@_voffset_tl } + \dim_set:Nn \l_@@_line_dim { \l_@@_linewidth_tl } + \dim_set:Nn \l_@@_min_dim { \box_dp:N \strutbox } + \dim_set_eq:NN \l_@@_main_width_dim \l_@@_line_dim + \dim_sub:Nn \l_@@_line_dim + { \tex_leftskip:D + \tex_rightskip:D } + \dim_set:Nn \l_@@_window_dim + { \l_@@_line_dim - \g_@@_stuff_wd_dim } + \fp_compare:nNnTF \l_@@_ratio_fp > \c_zero_fp + { + \fp_compare:nNnTF \l_@@_ratio_fp < \c_one_fp + { \@@_set_window: } + { \@@_set_hang_right: } + } + { \@@_set_hang_left: } + \int_compare:nNnTF \g_@@_window_int > \c_zero_int + { + \int_set_eq:NN \l_@@_window_int \g_@@_window_int + \int_zero:N \l_@@_top_int + } + { \@@_set_lines: } + \bool_if:NTF \l_@@_hang_bool + { + \dim_set_eq:NN \l_@@_display_dim \l_@@_window_dim + \int_set_eq:NN \l_@@_window_line_int \l_@@_window_int + } + { + \dim_set_eq:NN \l_@@_display_dim \l_@@_l_dim + \int_set:Nn \l_@@_window_int { \l_@@_window_int * 2 } + \int_set:Nn \l_@@_window_line_int + { + \bool_if:NTF \g_@@_column_right_bool + { \l_@@_window_int / 2 + \g_@@_column_window_int } + { \l_@@_window_int } + } + } + \cs_gset_eq:NN \@@_para_before: \@@_empty: + \cs_gset_eq:NN \@@_para_begin: \@@_empty: + \@@_save_parshape: + \vbox_set:Nw \l_@@_body_box + \@@_set_prevdepth:N \g_@@_prevdepth_dim + \@@_save_tex_skip: + \@@_tex_parameter: + \@@_restore_parshape: + \@@_display_parameter: + \@@_make_main_parshape: + \para_raw_noindent: + } + { + \@@_save_hangfrom: + \@@_save_tex_skip: + \@@_group_kludge: + \@@_tex_parameter: + \@@_make_main_parshape: + \para_raw_end: + \int_gset_eq:NN \g_@@_line_int \tex_prevgraf:D + \vbox_set_end: + \@@_adjust_tex_skip: + \cs_gset_eq:NN \@@_para_end: \@@_empty: + \int_compare:nNnTF \g_@@_line_int > \l_@@_top_int + { \@@_build_par: } + { \@@_put_par: } + } +\box_new:N \l_@@_body_box +\box_new:N \l_@@_window_box +\int_new:N \l_@@_window_int +\int_new:N \g_@@_window_int +\int_new:N \g_@@_line_int +\int_new:N \l_@@_window_line_int +\int_new:N \g_@@_column_window_int +\dim_new:N \l_@@_l_dim +\dim_new:N \l_@@_r_dim +\dim_new:N \l_@@_min_dim +\dim_new:N \l_@@_line_dim +\dim_new:N \l_@@_window_dim +\dim_new:N \l_@@_display_dim +\dim_new:N \l_@@_voffset_dim +\dim_new:N \l_@@_leftsep_dim +\dim_new:N \l_@@_rightsep_dim +\dim_new:N \g_@@_window_ht_dim +\dim_new:N \l_@@_main_width_dim +\int_new:N \g_@@_top_int +\int_gdecr:N \g_@@_top_int +\bool_new:N \l_@@_hang_bool +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_set_hang_left:, \@@_set_hang_right:, \@@_set_window:,} +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_set_hang_left: + { + \bool_set_true:N \l_@@_hang_bool + \bool_if:NF \g_@@_hoffset_bool + { \@@_set_hoffset:NN \l_@@_rightsep_dim \use:nn } + \dim_sub:Nn \l_@@_window_dim { \l_@@_rightsep_dim } + \dim_zero:N \l_@@_l_dim + \dim_set_eq:NN \l_@@_r_dim \l_@@_window_dim + \cs_set_eq:NN \@@_build_box: \@@_build_hang: + } +\cs_new_protected_nopar:Npn \@@_set_hang_right: + { + \bool_set_true:N \l_@@_hang_bool + \bool_if:NF \g_@@_hoffset_bool + { \@@_set_hoffset:NN \l_@@_leftsep_dim \use_ii_i:nn } + \dim_sub:Nn \l_@@_window_dim { \l_@@_leftsep_dim } + \dim_zero:N \l_@@_r_dim + \dim_set_eq:NN \l_@@_l_dim \l_@@_window_dim + \cs_set_eq:NN \@@_build_box: \@@_build_hang: + } +\cs_new_protected_nopar:Npn \@@_set_window: + { + \bool_set_false:N \l_@@_hang_bool + \dim_sub:Nn \l_@@_window_dim + { \l_@@_leftsep_dim + \l_@@_rightsep_dim } + \dim_set:Nn \l_@@_l_dim + { \@@_ratio:Nn \l_@@_ratio_fp { \l_@@_window_dim } } + \dim_set:Nn \l_@@_r_dim + { \l_@@_window_dim - \l_@@_l_dim } + \bool_if:NTF \l_@@_column_bool + { \cs_set_eq:NN \@@_build_box: \@@_build_column: } + { \cs_set_eq:NN \@@_build_box: \@@_build_block: } + } +\cs_new_protected:Npn \@@_set_hoffset:NN #1#2 + { + \bool_gset_true:N \g_@@_hoffset_bool + \dim_set:Nn \l_@@_hoffset_width_dim + { #1 + \g_@@_stuff_wd_dim } + \group_begin: + \cs_set_eq:NN \width \l_@@_hoffset_width_dim + \dim_gset:Nn \g_@@_hoffset_dim { \l_@@_hoffset_tl } + \group_end: + \int_compare:nNnF \g_@@_hoffset_dim = \c_zero_dim + { + \hbox_gset:Nn \g_@@_stuff_box + { + #2 { \tex_kern:D - \g_@@_hoffset_dim } + { \box_use_drop:N \g_@@_stuff_box } + } + \dim_add:Nn \l_@@_window_dim { \g_@@_hoffset_dim } + } + } +\dim_new:N \g_@@_hoffset_dim +\dim_new:N \l_@@_hoffset_width_dim +\bool_new:N \g_@@_hoffset_bool +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_set_lines:, \@@_window_init:} +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_set_lines: + { + \bool_if:NTF \g_@@_next_bool + { \tl_clear:N \l_@@_lines_tl } + { \tl_set:Nx \l_@@_lines_tl { \l_@@_lines_tl } } + \int_set:Nn \l_@@_window_int + { + \tl_if_empty:NTF \l_@@_lines_tl + { \@@_unit:n { \g_@@_remaining_dim + \l_@@_min_dim } } + { \l_@@_lines_tl } + } + \bool_if:NF \g_@@_next_bool + { \@@_window_init: } + \int_compare:nNnTF \g_@@_top_int < \c_zero_int + { + \int_compare:nNnT \l_@@_top_int < \c_zero_int + { \int_zero:N \l_@@_top_int } + } + { \int_set_eq:NN \l_@@_top_int \g_@@_top_int } + } +\cs_new_protected_nopar:Npn \@@_window_init: + { + \int_gset_eq:NN \g_@@_column_window_int \l_@@_window_int + \dim_gset:Nn \g_@@_window_ht_dim + { \tex_baselineskip:D * \g_@@_column_window_int } + \tl_if_empty:NF \l_@@_lines_tl + { + \dim_gset:Nn \g_@@_remaining_dim + { \g_@@_window_ht_dim - \box_ht:N \strutbox } + \dim_gset_eq:NN \g_@@_stuff_ht_dim \g_@@_remaining_dim + } + } +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_make_main_parshape:} +% 主要处理用于标题悬挂的 \tn{@hangfrom} 和用于列表环境的 \tn{parshape}。 +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_make_main_parshape: + { + \dim_compare:nNnTF \g_@@_hangindent_dim > \c_zero_dim + { + \int_compare:nNnTF \g_@@_hangafter_int = \c_one_int + { \@@_make_hangfrom: } + { \@@_make_main_parshape_aux: } + } + { \@@_make_main_parshape_aux: } + } +\cs_new_protected_nopar:Npn \@@_make_main_parshape_aux: + { + \bool_gset_false:N \g_@@_hangfrom_bool + \tex_parshape:D + \int_eval:n { \l_@@_top_int + 1 } ~ + \prg_replicate:nn + { \l_@@_top_int } + { \g_@@_parshape_indent_dim \g_@@_parshape_length_dim } + \c_zero_dim \c_max_dim + } +\cs_new_protected_nopar:Npn \@@_save_parshape: + { + \int_gset_eq:NN \g_@@_parshape_int \tex_parshape:D + \int_compare:nNnTF \g_@@_parshape_int = \c_one_int + { + \dim_gset:Nn \g_@@_parshape_indent_dim + { \tex_parshapeindent:D \c_one_int } + \dim_gset:Nn \g_@@_parshape_length_dim + { \tex_parshapelength:D \c_one_int } + } + { + \int_gzero:N \g_@@_parshape_int + \dim_gzero:N \g_@@_parshape_indent_dim + \dim_gset_eq:NN \g_@@_parshape_length_dim \l_@@_main_width_dim + \int_gset_eq:NN \g_@@_hangafter_int \tex_hangafter:D + \dim_gset_eq:NN \g_@@_hangindent_dim \tex_hangindent:D + } + } +\cs_new_protected_nopar:Npn \@@_restore_parshape: + { + \int_compare:nNnTF \g_@@_parshape_int = \c_one_int + { + \tex_parshape:D \g_@@_parshape_int + \g_@@_parshape_indent_dim \g_@@_parshape_length_dim + } + { \@@_restore_hangfrom: } + } +\cs_new_protected_nopar:Npn \@@_parshape_kern: + { + \dim_compare:nNnT \l_@@_l_dim = \c_zero_dim + { + \dim_compare:nNnF \g_@@_parshape_indent_dim = \c_zero_dim + { \tex_kern:D - \g_@@_parshape_indent_dim } + } + } +\cs_new_protected_nopar:Npn \@@_make_hangfrom: + { + \bool_if:NTF \l_@@_hang_bool + { \@@_make_hangfrom_aux: } + { \@@_make_main_parshape_aux: } + } +\cs_new_protected_nopar:Npn \@@_make_hangfrom_aux: + { + \@@_restore_hangfrom: + \int_zero:N \tex_parshape:D + \bool_gset_true:N \g_@@_hangfrom_bool + \dim_set_eq:NN \tex_hsize:D \l_@@_window_dim + } +\cs_new_protected_nopar:Npn \@@_save_hangfrom: + { + \int_gset_eq:NN \g_@@_hangafter_int \tex_hangafter:D + \dim_gset_eq:NN \g_@@_hangindent_dim \tex_hangindent:D + } +\cs_new_protected_nopar:Npn \@@_restore_hangfrom: + { + \int_set_eq:NN \tex_hangafter:D \g_@@_hangafter_int + \dim_set_eq:NN \tex_hangindent:D \g_@@_hangindent_dim + } +\bool_new:N \g_@@_hangfrom_bool +\int_new:N \g_@@_parshape_int +\int_new:N \g_@@_hangafter_int +\dim_new:N \g_@@_hangindent_dim +\dim_new:N \g_@@_parshape_indent_dim +\dim_new:N \g_@@_parshape_length_dim +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_group_kludge:} +% \LaTeX\ 的 \tn{list} 环境中,为了保持 \tn{parshape},\tn{par} 被重定义为 |{\@@par}|。 +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_group_kludge: + { + \scan_stop: + \int_compare:nNnTF \tex_currentgrouptype:D = \c_one_int + { + \c_group_end_token + \cs_gset_eq:NN \@@_group_begin: \c_group_begin_token + } + { \cs_gset_eq:NN \@@_group_begin: \@@_empty: } + \legacy_if:nTF { @noitemarg } + { \cs_gset_eq:NN \@@_set_itemarg: \@noitemargtrue } + { \cs_gset_eq:NN \@@_set_itemarg: \@@_empty: } + } +\cs_new_eq:NN \@@_set_itemarg: \@@_empty: +\cs_new_eq:NN \@@_group_begin: \@@_empty: +\@@_gadd_hook:nn { env/wrapstuff@par/after } + { + \@@_set_itemarg: + \@@_group_begin: + } +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_ratio:Nn, \@@_unit:n} +% \begin{macrocode} +\cs_new:Npn \@@_ratio:Nn #1#2 + { \fp_to_dim:n { #1 \dim_to_fp:n {#2} } } +\cs_new:Npn \@@_unit:n #1 + { + \fp_eval:n + { + ceil + ( + \dim_to_decimal_in_unit:nn + {#1} + { \tex_baselineskip:D } + ) + } + } +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_save_tex_skip:,\@@_tex_parameter:} +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_save_tex_skip: + { + \skip_gset_eq:NN \g_@@_left_skip \tex_leftskip:D + \skip_gset_eq:NN \g_@@_right_skip \tex_rightskip:D + \skip_gset_eq:NN \g_@@_parfill_skip \tex_parfillskip:D + \skip_gset_eq:NN \g_@@_baseline_skip \tex_baselineskip:D + \skip_gset:Nn \g_@@_main_left_skip { - \tex_leftskip:D } + } +\cs_new_protected_nopar:Npn \@@_adjust_tex_skip: + { + \@@_adjust_skip:N \g_@@_left_skip + \@@_adjust_skip:N \g_@@_right_skip + \@@_adjust_skip:N \g_@@_parfill_skip + } +\cs_new_protected:Npn \@@_adjust_skip:N #1 + { \skip_gsub:Nn #1 { \dim_eval:n {#1} } } +\cs_new_protected_nopar:Npn \@@_tex_parameter: + { + \int_zero:N \tex_clubpenalty:D + \int_zero:N \tex_widowpenalty:D + \int_zero:N \tex_interlinepenalty:D + \int_zero:N \tex_displaywidowpenalty:D + \int_zero:N \tex_clubpenalties:D + \int_zero:N \tex_widowpenalties:D + \int_zero:N \tex_interlinepenalties:D + \int_zero:N \tex_displaywidowpenalties:D + \skip_set_eq:NN \tex_leftskip:D \g_@@_left_skip + \skip_set_eq:NN \tex_rightskip:D \g_@@_right_skip + \skip_set_eq:NN \tex_parfillskip:D \g_@@_parfill_skip + } +\skip_new:N \g_@@_left_skip +\skip_new:N \g_@@_right_skip +\skip_new:N \g_@@_parfill_skip +\skip_new:N \g_@@_baseline_skip +\skip_new:N \g_@@_main_left_skip +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_display_parameter:} +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_display_parameter: + { + \bool_gset_false:N \g_@@_display_bool + \tex_everydisplay:D \exp_after:wN + { + \tex_the:D \tex_everydisplay:D + \@@_test_leqno: + \dim_compare:nNnF \tex_displaywidth:D < \c_max_dim + { + \bool_gset_true:N \g_@@_display_bool + \dim_set_eq:NN \tex_displaywidth:D \l_@@_display_dim + } + } + } +\cs_new_eq:NN \@@_test_leqno: \@@_empty: +\bool_new:N \g_@@_display_bool +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_build_par:} +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_build_par: + { + \bool_if:NTF \g_@@_hangfrom_bool + { \@@_build_box: } + { \@@_build_par_aux: } + \box_if_empty:NTF \l_@@_window_box + { \@@_put_next_par: } + { \@@_put_box: } + } +\cs_new_protected_nopar:Npn \@@_build_par_aux: + { + \@@_extract_display_hbox:NN \l_@@_body_box \l_@@_bottom_box + \int_compare:nNnT \l_@@_top_int > \c_zero_int + { \@@_put_body_box: } + \box_if_empty:NTF \l_@@_bottom_box + { + \box_if_empty:NF \g_@@_display_box + { \@@_build_display_box: } + } + { \@@_build_body_box: } + } +\box_new:N \l_@@_bottom_box +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_put_par:} +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_put_par: + { + \int_gset:Nn \g_@@_top_int + { \l_@@_top_int - \g_@@_line_int } + \int_gzero:N \g_@@_window_int + \@@_put_body_box: + \skip_zero:N \tex_parskip:D + \para_raw_noindent: + \@@_next_para: + } +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_put_body_box:} +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_put_body_box: + { + \para_raw_end: + \dim_compare:nNnTF { \box_wd:N \l_@@_body_box } < \c_max_dim + { \@@_put_body_aux:N \l_@@_body_box } + { + \@@_extract_hbox:NN \l_@@_body_box \l_@@_bottom_box + \@@_put_body_aux:N \l_@@_body_box + \box_set_eq_drop:NN \l_@@_body_box \l_@@_bottom_box + } + \para_raw_end: + } +\cs_new_protected_nopar:Npn \@@_put_body_aux:N #1 + { + \dim_gset:Nn \g_@@_prevdepth_dim { \box_dp:N #1 } + \vbox_unpack_drop:N #1 + \@@_set_prevdepth:N \g_@@_prevdepth_dim + } +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_put_next_par:} +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_put_next_par: + { + \int_gzero:N \g_@@_top_int + \int_gzero:N \g_@@_window_int + \skip_zero:N \tex_parskip:D + \para_raw_noindent: + \@@_next_para: + } +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_build_display_box:} +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_build_display_box: + { + \bool_set_true:N \l_@@_display_bool + \bool_if:NTF \g_@@_amsmath_bool + { \@@_build_display_amsmath: } + { \@@_build_display_normal: } + \box_if_empty:NTF \l_@@_body_box + { \@@_build_display_auxi: } + { \@@_build_display_auxii: } + } +\cs_new_protected_nopar:Npn \@@_build_display_amsmath: + { + \vbox_gset:Nn \g_@@_equation_box + { + \skip_vertical:n { - \g_@@_display_pre_skip } + \vbox_unpack_drop:N \g_@@_display_box + \skip_gset_eq:NN \g_@@_pos_skip \tex_lastskip:D + \tex_unskip:D + \int_gset_eq:NN \g_@@_pos_int \tex_lastpenalty:D + \tex_unpenalty:D + \skip_gadd:Nn \g_@@_pos_skip { \tex_lastskip:D } + \tex_unskip:D + \tex_unpenalty:D + } + \box_gset_wd:Nn \g_@@_equation_box + { \l_@@_display_dim } + \vbox_gset:Nn \g_@@_display_box + { + \tex_penalty:D \g_@@_display_pre_int + \skip_vertical:N \g_@@_display_pre_skip + } + \skip_gset_eq:NN \g_@@_pre_skip \g_@@_display_pre_skip + } +\cs_new_protected_nopar:Npn \@@_build_display_normal: + { + \vbox_gset:Nn \g_@@_display_box + { + \vbox_unpack_drop:N \g_@@_display_box + \skip_gset_eq:NN \g_@@_pos_skip \tex_lastskip:D + \tex_unskip:D + \int_gset_eq:NN \g_@@_pos_int \tex_lastpenalty:D + \tex_unpenalty:D + \box_gset_to_last:N \g_@@_equation_box + \skip_gset_eq:NN \g_@@_pre_skip \tex_lastskip:D + \tex_unskip:D + \skip_gadd:Nn \g_@@_pre_skip { \tex_lastskip:D } + \tex_unskip:D + \skip_vertical:N \g_@@_pre_skip + } + } +\cs_new_protected_nopar:Npn \@@_build_display_auxi: + { + \bool_if:NTF \g_@@_amsmath_bool + { \box_set_eq_drop:NN \l_@@_window_box \g_@@_equation_box } + { + \hbox_set_to_wd:Nnn \l_@@_window_box + { \l_@@_display_dim } + { + \tex_hss:D + \@@_adjust_equation: + \box_use_drop:N \g_@@_equation_box + \tex_hss:D + } + } + \dim_gset:Nn \g_@@_ht_dim { \box_ht:N \l_@@_window_box } + \dim_add:Nn \l_@@_voffset_dim + { \box_ht:N \g_@@_display_box / 2 } + } +\cs_new_protected_nopar:Npn \@@_build_display_auxii: + { + \box_if_horizontal:NTF \l_@@_body_box + { + \box_set_eq:NN \l_@@_bottom_box \l_@@_body_box + \@@_build_display_auxiii: + } + { + \@@_extract_hbox:NN \l_@@_body_box \l_@@_bottom_box + \str_if_eq:eeTF + { + \dim_eval:n { \box_ht:N \l_@@_body_box } + \dim_eval:n { \box_dp:N \l_@@_body_box } + \dim_eval:n { \box_ht:N \l_@@_bottom_box } + \dim_eval:n { \box_dp:N \l_@@_bottom_box } + } + { \c_@@_zero_pt_str } + { + \vbox_unpack_drop:N \l_@@_body_box + \box_clear:N \l_@@_bottom_box + \@@_build_display_auxi: + } + { \@@_build_display_auxiii: } + } + } +\str_const:Nx \c_@@_zero_pt_str + { + \dim_use:N \c_zero_dim + \dim_use:N \c_zero_dim + \dim_use:N \c_zero_dim + \dim_use:N \c_zero_dim + } +\cs_new_protected_nopar:Npn \@@_build_display_auxiii: + { + \bool_set_true:N \l_@@_attach_equation_bool + \bool_if:NTF \g_@@_amsmath_bool + { \box_set_eq_drop:NN \l_@@_display_box \g_@@_display_box } + { + \box_gclear:N \g_@@_display_box + \@@_adjust_equation: + } + \@@_build_body_box: + } +\cs_new_protected_nopar:Npn \@@_attach_equation:N + { + \bool_if:NTF \g_@@_amsmath_bool + { \@@_attach_equation_amsmath:N } + { \@@_attach_equation_normal:N } + } +\cs_new_protected:Npn \@@_attach_equation_amsmath:N #1 + { + \vbox_set:Nn #1 + { + \box_use:N #1 + \@@_ignore_depth: + \vbox_unpack_drop:N \l_@@_display_box + \skip_vertical:n + { \g_@@_display_pre_dim - \box_dp:N #1 } + \box_use_drop:N \g_@@_equation_box + } + } +\cs_new_protected:Npn \@@_attach_equation_normal:N #1 + { + \vbox_set:Nn #1 + { + \@@_tex_parameter: + \dim_set_eq:NN \tex_hsize:D \l_@@_display_dim + \para_raw_noindent: + \hbox_unpack_drop:N #1 \tex_unskip:D + \@@_insert_equation: + \para_raw_end: + \skip_gset_eq:NN \g_@@_pos_skip \tex_lastskip:D + \tex_unskip:D + \int_gset_eq:NN \g_@@_pos_int \tex_lastpenalty:D + \tex_unpenalty:D + } + } +\cs_new_protected_nopar:Npn \@@_insert_equation: + { + \c_math_toggle_token \c_math_toggle_token + \dim_compare:nNnTF \tex_displaywidth:D = \l_@@_display_dim + { \box_use_drop:N \g_@@_equation_box } + { + \bool_if:NTF \g_@@_eqnum_bool + { \@@_repack_equation: } + { \box_use_drop:N \g_@@_equation_box } + } + \c_math_toggle_token \c_math_toggle_token + } +\cs_new_protected_nopar:Npn \@@_repack_equation: + { + \box_gclear:N \g_@@_equation_box + \box_use_drop:N \g_@@_eqbody_box + \bool_if:NTF \g_@@_leqno_bool + { \tex_leqno:D } + { \tex_eqno:D } + \box_use_drop:N \g_@@_eqnum_box + } +\cs_new_protected_nopar:Npn \@@_adjust_equation: + { + \@@_test_eqnum: + \bool_if:NT \g_@@_eqnum_bool + { \@@_adjust_equation_width: } + } +\cs_new_protected_nopar:Npn \@@_test_eqnum: + { + \hbox_set:Nn \l_@@_last_box + { + \bool_gset_false:N \g_@@_eqnum_bool + \hbox_unpack:N \g_@@_equation_box + \@@_if_last_hlist:F { \use_none_delimit_by_q_stop:w } + \box_gset_to_last:N \g_@@_eqnum_box + \@@_if_last_kern:F { \use_none_delimit_by_q_stop:w } + \tex_unkern:D + \@@_if_last_hlist:F { \use_none_delimit_by_q_stop:w } + \box_gset_to_last:N \g_@@_eqbody_box + \@@_if_last_none:F { \use_none_delimit_by_q_stop:w } + \bool_gset_true:N \g_@@_eqnum_bool + \use_none_delimit_by_q_stop:w \q_stop + } + } +\cs_new_protected_nopar:Npn \@@_adjust_equation_width: + { + \bool_if:NTF \g_@@_leqno_bool + { \@@_adjust_leqno: } + { + \box_gset_wd:Nn \g_@@_equation_box + { \box_wd:N \g_@@_eqbody_box } + } + } +\cs_new_protected_nopar:Npn \@@_adjust_leqno: + { + \box_set_eq_drop:NN \l_@@_last_box \g_@@_eqnum_box + \box_gset_eq_drop:NN \g_@@_eqnum_box \g_@@_eqbody_box + \box_gset_eq_drop:NN \g_@@_eqbody_box \l_@@_last_box + \hbox_gset:Nn \g_@@_equation_box + { + \skip_horizontal:n + { + \box_wd:N \g_@@_eqbody_box + - \box_wd:N \g_@@_equation_box + } + \box_use_drop:N \g_@@_equation_box + } + } +\box_new:N \g_@@_eqbody_box +\box_new:N \g_@@_eqnum_box +\box_new:N \g_@@_equation_box +\box_new:N \l_@@_display_box +\int_new:N \g_@@_pos_int +\skip_new:N \g_@@_pos_skip +\bool_new:N \g_@@_eqnum_bool +\bool_new:N \g_@@_leqno_bool +\bool_new:N \l_@@_display_bool +\bool_new:N \l_@@_attach_equation_bool +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_add_pos_skip:} +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_add_pos_skip: + { + \bool_lazy_or:nnTF + { \g_@@_right_move_bool } + { \int_compare_p:nNn \g_@@_window_int > \c_zero_int } + { + \tex_vadjust:D + { + \tex_penalty:D \c_@@_nobreak_int + \bool_if:NT \l_@@_display_bool + { \skip_vertical:N \g_@@_pos_skip } + } + } + { + \bool_if:NT \l_@@_display_bool + { + \tex_vadjust:D + { + \tex_penalty:D \g_@@_pos_int + \skip_vertical:N \g_@@_pos_skip + } + } + } + \int_gzero:N \g_@@_pos_int + \skip_gzero:N \g_@@_pos_skip + } +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_build_body_box:} +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_build_body_box: + { + \box_set_eq:NN \l_@@_save_body_box \l_@@_bottom_box + \@@_build_window: + \int_compare:nNnTF \g_@@_line_int > \l_@@_window_line_int + { \@@_extract_hbox:NN \l_@@_body_box \l_@@_bottom_box } + { \box_clear:N \l_@@_bottom_box } + \box_if_empty:NF \l_@@_bottom_box + { \bool_set_false:N \l_@@_attach_equation_bool } + \box_clear:N \l_@@_window_box + \@@_build_box: + } +\box_new:N \l_@@_save_body_box +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_build_body_box:} +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_build_window: + { + \vbox_set:Nn \l_@@_body_box + { + \@@_tex_parameter: + \@@_make_parshape: + \@@_column_penalties: + \dim_zero:N \tex_emergencystretch:D + \dim_set_eq:NN \tex_hfuzz:D \c_max_dim + \dim_set_eq:NN \tex_vfuzz:D \c_max_dim + \int_set_eq:NN \tex_hbadness:D \c_max_int + \int_set_eq:NN \tex_vbadness:D \c_max_int + \int_set:Nn \tex_tolerance:D { 1000 } + \para_raw_noindent: + \hbox_unpack_drop:N \l_@@_bottom_box + \para_raw_end: + \int_gset_eq:NN \g_@@_line_int \tex_prevgraf:D + } + } +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_make_parshape:} +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_make_parshape: + { + \tex_parshape:D + \int_eval:n { \l_@@_window_line_int + 1 } ~ + \bool_if:NTF \l_@@_hang_bool + { + \prg_replicate:nn + { \l_@@_window_int } + { \c_zero_dim \l_@@_window_dim } + } + { + \bool_if:NTF \l_@@_column_bool + { + \prg_replicate:nn + { \l_@@_window_int / 2 } + { \c_zero_dim \l_@@_l_dim } + \prg_replicate:nn + { + \bool_if:NTF \g_@@_column_right_bool + { \g_@@_column_window_int } + { \l_@@_window_int / 2 } + } + { \c_zero_dim \l_@@_r_dim } + } + { + \prg_replicate:nn + { \l_@@_window_int / 2 } + { + \c_zero_dim \l_@@_l_dim + \c_zero_dim \l_@@_r_dim + } + } + } + \c_zero_dim \c_max_dim + } +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_column_penalties:} +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_column_penalties: + { + \bool_if:NF \l_@@_hang_bool + { + \bool_if:NT \l_@@_column_bool + { \@@_column_penalties_aux: } + } + } +\cs_new_protected_nopar:Npn \@@_column_penalties_aux: + { + \tex_interlinepenalties:D + \int_eval:n { \l_@@_window_int / 2 + \c_one_int } ~ + \prg_replicate:nn + { \l_@@_window_int / 2 - \c_one_int } + { \c_@@_nobreak_int } + \c_@@_break_int + \c_zero_int + } +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_build_box:, \@@_build_block:} +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_build_block: + { + \@@_build_block_auxi: + \vbox_set:Nn \l_@@_window_box + { + \@@_tex_parameter: + \dim_set_eq:NN \tex_hsize:D \l_@@_line_dim + \para_raw_noindent: + \hbox_unpack_drop:N \g_@@_line_box + \para_raw_end: + } + \bool_if:NT \l_@@_attach_equation_bool + { + \box_set_ht:Nn \l_@@_window_box + { \box_ht_plus_dp:N \l_@@_window_box - \g_@@_dp_dim } + \box_set_dp:Nn \l_@@_window_box { \g_@@_dp_dim } + } + } +\cs_new_protected_nopar:Npn \@@_build_block_auxi: + { + \vbox_set:Nn \l_@@_body_box + { + \vbox_unpack_drop:N \l_@@_body_box + \bool_lazy_and:nnTF + { \box_if_empty_p:N \l_@@_bottom_box } + { \int_if_odd_p:n { \g_@@_line_int } } + { \box_set_eq:NN \l_@@_r_box \l_@@_empty_box } + { + \box_set_to_last:N \l_@@_r_box + \tex_unskip:D \tex_unpenalty:D + } + \box_set_to_last:N \l_@@_l_box + \tex_unskip:D \tex_unpenalty:D + \hbox_gset:Nn \g_@@_line_box + { + \bool_if:NT \l_@@_attach_equation_bool + { \@@_build_block_attach: } + \box_use:N \l_@@_l_box + \tex_hfill:D + \box_use:N \l_@@_r_box + } + \@@_build_block_auxii: + } + } +\cs_new_protected_nopar:Npn \@@_build_block_auxii: + { + \int_case:nnTF + { \tex_lastnodetype:D } + { + { \c_@@_none_node } { } + { \c_@@_whatsit_node } { } + } + { \@@_build_block_finalise: } + { \@@_build_block_auxiii: } + } +\cs_new_protected_nopar:Npn \@@_build_block_auxiii: + { + \box_set_to_last:N \l_@@_r_box + \tex_unskip:D \tex_unpenalty:D + \box_set_to_last:N \l_@@_l_box + \tex_unskip:D \tex_unpenalty:D + \hbox_gset:Nn \g_@@_line_box + { + \box_use:N \l_@@_l_box + \tex_hfill:D + \box_use:N \l_@@_r_box + \tex_penalty:D \c_@@_break_int + \hbox_unpack_drop:N \g_@@_line_box + } + \@@_build_block_auxii: + } +\cs_new_protected_nopar:Npn \@@_build_block_attach: + { + \box_set_eq:NN \l_@@_last_box \l_@@_l_box + \@@_attach_equation:N \l_@@_last_box + \dim_gset:Nn \g_@@_dp_dim { \box_dp:N \l_@@_last_box } + \hbox_set:Nn \l_@@_l_box + { + \box_move_down:nn + { \box_ht:N \l_@@_last_box - \box_ht:N \l_@@_l_box } + { \box_use_drop:N \l_@@_last_box } + } + } +\cs_new_protected_nopar:Npn \@@_build_block_finalise: + { + \dim_gset:Nn \g_@@_ht_dim + { + \dim_max:nn + { \box_ht:N \l_@@_l_box } + { \box_ht:N \l_@@_r_box } + } + } +\dim_new:N \g_@@_dp_dim +\dim_new:N \g_@@_ht_dim +\box_new:N \l_@@_l_box +\box_new:N \l_@@_r_box +\box_new:N \g_@@_line_box +\box_new:N \l_@@_empty_box +\hbox_set:Nn \l_@@_empty_box { } +\int_const:Nn \c_@@_break_int { -10000 } +\int_const:Nn \c_@@_nobreak_int { 10000 } +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_build_column_fuzzy:} +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_build_column_fuzzy: + { + \hbox_set_to_wd:Nnn \l_@@_window_box + { \l_@@_line_dim } + { + \skip_zero:N \tex_splittopskip:D + \dim_set_eq:NN \tex_vfuzz:D \c_max_dim + \int_set_eq:NN \tex_vbadness:D \c_max_int + \@@_build_column_aux: + \box_if_empty:NT \l_@@_bottom_box + { \@@_build_column_fuzzy_aux: } + \dim_gset:Nn \g_@@_ht_dim { \box_ht:N \l_@@_l_box } + \vbox_set:Nn \l_@@_l_box + { + \vbox_unpack_drop:N \l_@@_l_box + \bool_if:NT \l_@@_attach_equation_bool + { + \box_set_to_last:N \l_@@_last_box + \@@_attach_equation:N \l_@@_last_box + \vbox_unpack_drop:N \l_@@_last_box + } + } + \box_use:N \l_@@_l_box + \tex_hfil:D + \box_move_up:nn + { \box_ht:N \l_@@_l_box - \box_ht:N \l_@@_r_box } + { \box_use_drop:N \l_@@_r_box } + } + } +\cs_new_protected_nopar:Npn \@@_build_column_aux: + { + \vbox_set_split_to_ht:NNn \l_@@_l_box \l_@@_body_box + { \c_zero_dim } + \vbox_set_top:Nn \l_@@_l_box + { \vbox_unpack_drop:N \l_@@_l_box } + \box_set_eq_drop:NN \l_@@_r_box \l_@@_body_box + } +\cs_new_protected_nopar:Npn \@@_build_column_fuzzy_aux: + { + \dim_compare:nNnTF + { + \box_ht_plus_dp:N \l_@@_r_box - + \box_ht_plus_dp:N \l_@@_l_box + } + > + { \l_@@_min_dim } + { + \box_if_empty:NF \l_@@_last_l_box + { + \box_set_eq_drop:NN \l_@@_l_box \l_@@_last_l_box + \box_set_eq_drop:NN \l_@@_r_box \l_@@_last_r_box + } + } + { \@@_rebuild_window: } + } +\cs_new_protected_nopar:Npn \@@_rebuild_window: + { + \int_compare:nNnT \l_@@_window_int > { 2 } + { + \int_sub:Nn \l_@@_window_int { 2 } + \box_set_eq_drop:NN \l_@@_last_l_box \l_@@_l_box + \box_set_eq_drop:NN \l_@@_last_r_box \l_@@_r_box + \box_set_eq:NN \l_@@_bottom_box \l_@@_save_body_box + \int_set_eq:NN \l_@@_window_line_int \l_@@_window_int + \@@_build_window: + \@@_build_column_aux: + \@@_build_column_fuzzy_aux: + } + } +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_build_column_strict:} +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_build_column_strict: + { + \group_begin: + \skip_zero:N \tex_splittopskip:D + \dim_set_eq:NN \tex_vfuzz:D \c_max_dim + \int_set_eq:NN \tex_vbadness:D \c_max_int + \@@_build_column_aux: + \box_if_empty:NTF \l_@@_r_box + { \@@_build_column_strict_auxi: } + { + \box_if_empty:NTF \l_@@_bottom_box + { \@@_build_column_strict_auxii: } + { + \bool_if:NTF \g_@@_column_right_bool + { \@@_build_column_strict_auxiii: } + { \@@_build_column_strict_auxiv: } + } + } + \group_end: + \box_set_eq_drop:NN \l_@@_window_box \g_@@_window_box + } +\cs_new_protected_nopar:Npn \@@_build_column_strict_auxi: + { + \@@_repack_left_box: + \bool_if:NT \l_@@_attach_equation_bool + { \@@_column_attach:N \l_@@_l_box } + \box_gset_eq_drop:NN \g_@@_window_box \l_@@_l_box + \bool_gset_true:N \g_@@_column_right_bool + \bool_if:NF \g_@@_first_save_bool + { + \bool_gset_true:N \g_@@_first_save_bool + \dim_gset:Nn \g_@@_first_sep_dim + { \tex_baselineskip:D - \g_@@_ht_dim } + \dim_gset_eq:NN \g_@@_first_dp_dim \g_@@_prevdepth_dim + } + \int_case:nnT { \g_@@_window_int } + { + { \c_zero_int } { } + { \g_@@_line_int } { } + } + { \@@_column_move_entire_aux: } + } +\cs_new_protected_nopar:Npn \@@_column_move_entire_aux: + { + \bool_gset_true:N \g_@@_entire_bool + \bool_gset_true:N \g_@@_next_hang_bool + } +\cs_new_protected_nopar:Npn \@@_column_move_entire: + { + \dim_gsub:Nn \g_@@_first_sep_dim + { \box_dp:N \l_@@_window_box } + \bool_gset_false:N \g_@@_entire_bool + \dim_gzero:N \g_@@_column_right_ht_dim + \dim_gset_eq:NN \g_@@_prevdepth_dim \g_@@_first_dp_dim + \@@_column_right_move_set:nn + { \g_@@_stuff_ht_dim } + { \g_@@_window_ht_dim } + \int_gset_eq:NN \g_@@_window_int \g_@@_column_window_int + } +\cs_new_protected:Npn \@@_column_right_move_set:nn #1#2 + { + \bool_gset_true:N \g_@@_right_move_bool + \bool_gset_true:N \g_@@_first_set_bool + \tl_gput_right:Nn \g_@@_main_setting_tl + { + \bool_if:NTF \g_@@_first_set_bool + { + \bool_gset_false:N \g_@@_first_set_bool + \bool_set_true:N \l_@@_first_move_bool + } + { \bool_set_false:N \l_@@_first_move_bool } + \fp_zero:N \l_@@_ratio_fp + } + \@@_make_next_stuff:nn + { \l_@@_line_dim - \l_@@_r_dim - \l_@@_rightsep_dim } + {#1} + \dim_gset:Nn \g_@@_column_left_dim {#2} + \int_gzero:N \g_@@_top_int + } +\cs_new_protected_nopar:Npn \@@_build_column_strict_auxii: + { + \bool_gset_false:N \g_@@_entire_bool + \@@_repack_left_box: + \bool_if:NT \l_@@_attach_equation_bool + { \@@_column_attach:N \l_@@_r_box } + \dim_gset:Nn \g_@@_hang_ht_dim + { + \g_@@_stuff_ht_dim - \tex_baselineskip:D * + \@@_unit:n { \box_ht_plus_dp:N \l_@@_r_box } + - \g_@@_pos_skip + } + \dim_compare:nNnTF \g_@@_hang_ht_dim > \c_zero_dim + { \@@_column_move_right: } + { \@@_column_put_right: } + \box_gset_ht:Nn \g_@@_window_box { \box_ht:N \l_@@_l_box } + \box_gset_dp:Nn \g_@@_window_box { \box_dp:N \l_@@_l_box } + } +\cs_new_protected_nopar:Npn \@@_column_move_right: + { + \int_compare:nNnTF \g_@@_window_int > \c_zero_int + { + \dim_gset:Nn \g_@@_column_left_dim + { + \g_@@_window_ht_dim + - \g_@@_first_sep_dim + - \box_ht:N \l_@@_r_box + } + \@@_next_hang_para: + } + { + \dim_gset:Nn \g_@@_column_left_dim + { + \box_ht:N \l_@@_l_box + - \box_ht:N \l_@@_r_box + } + \dim_gset:Nn \g_@@_first_sep_dim + { \tex_baselineskip:D - \g_@@_ht_dim } + \bool_gset_true:N \g_@@_right_move_bool + \bool_gset_true:N \g_@@_next_hang_bool + } + \hbox_gset_to_wd:Nnn \g_@@_window_box + { \l_@@_line_dim } + { + \box_use:N \l_@@_l_box + \tex_hfil:D + \box_move_up:nn + { \g_@@_column_left_dim } + { \box_use:N \l_@@_r_box } + } + \dim_gset:Nn \g_@@_column_right_ht_dim + { \box_ht:N \l_@@_r_box + \g_@@_pos_skip } + } +\cs_new_protected_nopar:Npn \@@_column_put_right: + { + \hbox_gset_to_wd:Nnn \g_@@_window_box + { \l_@@_line_dim } + { + \box_use:N \l_@@_l_box + \tex_hfil:D + \box_move_up:nn + { + \int_compare:nNnTF \g_@@_window_int > \c_zero_int + { \g_@@_window_ht_dim - \g_@@_first_sep_dim } + { \box_ht:N \l_@@_l_box } + - \box_ht:N \l_@@_r_box + } + { \box_use:N \l_@@_r_box } + } + \skip_gzero:N \g_@@_pos_skip + } +\cs_new_protected_nopar:Npn \@@_next_hang_para: + { + \bool_if:NTF \g_@@_entire_bool + { \@@_column_move_entire: } + { + \@@_column_right_move_set:nn + { \g_@@_hang_ht_dim } + { \g_@@_column_left_dim } + \int_gzero:N \g_@@_window_int + } + \bool_gset_false:N \g_@@_next_hang_bool + } +\cs_new_protected_nopar:Npn \@@_build_column_strict_auxiii: + { + \bool_gset_false:N \g_@@_column_right_bool + \@@_repack_left_box: + \hbox_gset_to_wd:Nnn \g_@@_window_box + { \l_@@_line_dim } + { + \box_use:N \l_@@_l_box + \tex_hfil:D + \box_use:N \l_@@_r_box + } + \box_gset_ht:Nn \g_@@_window_box + { \box_ht:N \l_@@_l_box } + } +\cs_new_protected_nopar:Npn \@@_build_column_strict_auxiv: + { + \@@_repack_left_box: + \hbox_gset_to_wd:Nnn \g_@@_window_box + { \l_@@_line_dim } + { + \box_use:N \l_@@_l_box + \tex_hfil:D + \box_move_up:nn + { \box_ht:N \l_@@_l_box - \box_ht:N \l_@@_r_box } + { \box_use_drop:N \l_@@_r_box } + } + } +\cs_new_protected_nopar:Npn \@@_repack_left_box: + { + \dim_gset:Nn \g_@@_ht_dim { \box_ht:N \l_@@_l_box } + \vbox_set:Nn \l_@@_l_box + { \vbox_unpack_drop:N \l_@@_l_box } + } +\cs_new_protected_nopar:Npn \@@_column_attach:N #1 + { + \vbox_set:Nn #1 + { + \vbox_unpack_drop:N #1 + \box_set_to_last:N \l_@@_last_box + \@@_attach_equation:N \l_@@_last_box + \vbox_unpack_drop:N \l_@@_last_box + } + } +\box_new:N \l_@@_last_l_box +\box_new:N \l_@@_last_r_box +\box_new:N \g_@@_window_box +\dim_new:N \g_@@_fake_wd_dim +\dim_new:N \g_@@_first_dp_dim +\dim_new:N \g_@@_first_sep_dim +\dim_new:N \g_@@_column_left_dim +\dim_new:N \g_@@_column_right_ht_dim +\bool_new:N \g_@@_entire_bool +\bool_new:N \g_@@_next_hang_bool +\bool_new:N \g_@@_first_save_bool +\bool_new:N \g_@@_column_right_bool +\bool_new:N \l_@@_column_strict_bool +\bool_new:N \g_@@_first_set_bool +\bool_new:N \l_@@_first_move_bool +\bool_new:N \g_@@_right_move_bool +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_build_box:,\@@_build_column:} +% \begin{macrocode} +\bool_new:N \l_@@_column_bool +\cs_new_eq:NN \@@_build_column: \@@_build_column_strict: +\cs_new_eq:NN \@@_build_box: \@@_build_column: +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_build_hang:} +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_build_hang: + { + \bool_if:NTF \g_@@_hangfrom_bool + { \@@_build_hangfrom: } + { + \vbox_set_top:Nn \l_@@_window_box + { \vbox_unpack:N \l_@@_body_box } + \dim_gset:Nn \g_@@_ht_dim { \box_ht:N \l_@@_window_box } + } + \bool_if:NTF \l_@@_attach_equation_bool + { + \vbox_set:Nn \l_@@_window_box + { + \vbox_unpack_drop:N \l_@@_window_box + \box_set_to_last:N \l_@@_last_box + \@@_attach_equation:N \l_@@_last_box + \vbox_unpack_drop:N \l_@@_last_box + } + } + { \box_set_eq_drop:NN \l_@@_window_box \l_@@_body_box } + \dim_compare:nNnTF \g_@@_column_left_dim > \c_zero_dim + { \@@_build_hang_aux: } + { \bool_gset_false:N \g_@@_move_hang_bool } + } +\cs_new_protected_nopar:Npn \@@_build_hang_aux: + { + \dim_set:Nn \l_@@_shift_dim + { + \dim_max:nn + { \box_ht:N \l_@@_window_box } + { \tex_baselineskip:D * \g_@@_line_int } + + \tex_parskip:D + } + \dim_gsub:Nn \g_@@_column_left_dim { \l_@@_shift_dim } + \dim_compare:nNnTF \g_@@_column_left_dim > \c_zero_dim + { + \box_if_empty:NTF \l_@@_bottom_box + { \bool_if:NT \g_@@_right_move_bool { \@@_set_next_hang: } } + { \bool_gset_false:N \g_@@_move_hang_bool } + } + { \bool_gset_false:N \g_@@_move_hang_bool } + } +\cs_new_protected_nopar:Npn \@@_set_next_hang: + { + \bool_if:NF \g_@@_move_hang_bool + { + \bool_gset_true:N \g_@@_move_hang_bool + \dim_gset_eq:NN \g_@@_hang_ht_dim \g_@@_remaining_dim + } + \dim_gsub:Nn \g_@@_hang_ht_dim { \l_@@_shift_dim } + \dim_gset:Nn \g_@@_dp_dim { \box_dp:N \l_@@_window_box } + \@@_column_right_move_set:nn + { \g_@@_hang_ht_dim } + { \g_@@_column_left_dim } + \int_gzero:N \g_@@_window_int + } +\dim_new:N \g_@@_hang_ht_dim +\bool_new:N \g_@@_move_hang_bool +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_build_hangfrom:} +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_build_hangfrom: + { + \dim_compare:nNnTF \g_@@_prevdepth_dim > \c_@@_ignore_depth_dim + { \@@_build_hangfrom_aux: } + { \dim_gzero:N \g_@@_ht_dim } + } +\cs_new_protected_nopar:Npn \@@_build_hangfrom_aux: + { + \group_begin: + \skip_zero:N \tex_splittopskip:D + \vbox_gset:Nn \g_@@_line_box + { + \tex_penalty:D \c_@@_break_int + \vbox_unpack:N \l_@@_body_box + } + \vbox_set_split_to_ht:NNn \l_@@_last_box \g_@@_line_box + { \c_zero_dim } + \dim_gset:Nn \g_@@_ht_dim + { + \g_@@_baseline_skip + - \g_@@_prevdepth_dim + - \l_@@_shift_dim + - \box_ht:N \l_@@_body_box + + \box_ht:N \g_@@_line_box + } + \group_end: + \box_set_eq_drop:NN \l_@@_body_box \g_@@_line_box + } +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_put_box:} +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_put_box: + { + \para_raw_end: + \dim_compare:nNnTF \g_@@_prevdepth_dim > \c_@@_ignore_depth_dim + { \@@_add_vskip: } + { \skip_gzero:N \g_@@_pre_skip } + \skip_set_eq:NN \l_@@_par_skip \tex_parskip:D + \skip_zero:N \tex_parskip:D + \bool_if:NTF \g_@@_right_move_bool + { \@@_put_box_aux: } + { + \box_if_empty:NTF \l_@@_bottom_box + { + \dim_compare:nNnTF + { \g_@@_remaining_dim } + > + { \box_ht_plus_dp:N \l_@@_window_box } + { \@@_set_next: } + { \@@_put_box_aux: } + } + { \@@_put_box_aux: } + } + } +\skip_new:N \l_@@_par_skip +\cs_new_protected_nopar:Npn \@@_put_box_aux: + { + \int_gzero:N \g_@@_window_int + \@@_hbox:n + { + \@@_put_window_box: + \bool_if:NF \g_@@_next_bool + { \@@_put_stuff_box: } + } + \box_if_empty:NTF \l_@@_bottom_box + { \@@_put_trailer_box: } + { \@@_put_bottom_box: } + } +\cs_new_protected_nopar:Npn \@@_put_trailer_box: + { + \bool_if:NTF \g_@@_next_hang_bool + { + \@@_next_hang_para: + \@@_next_para_trailer: + } + { + \bool_if:NTF \g_@@_right_move_bool + { \@@_next_para_trailer: } + { + \@@_add_pos_skip: + \box_if_empty:NF \g_@@_pos_box + { + \@@_newline: + \hbox_unpack_drop:N \g_@@_pos_box + } + } + } + } +\cs_new_protected_nopar:Npn \@@_put_bottom_box: + { + \@@_newline: + \hbox_unpack_drop:N \l_@@_bottom_box + \box_if_empty:NF \g_@@_equation_box + { \@@_insert_equation: } + \box_if_empty:NF \g_@@_pos_box + { \hbox_unpack_drop:N \g_@@_pos_box } + \bool_gset_false:N \g_@@_right_move_bool + \bool_gset_false:N \g_@@_first_save_bool + } +\cs_new_protected_nopar:Npn \@@_newline: + { + \tex_penalty:D \c_@@_nobreak_int + \tex_hfil:D + \tex_penalty:D \c_@@_break_int + } +\cs_new_protected:Npn \@@_hbox:n #1 + { + \para_raw_noindent: + \hbox_gset:Nn \g_@@_last_box {#1} + \box_gset_wd:Nn \g_@@_last_box { \l_@@_line_dim } + \box_use_drop:N \g_@@_last_box + } +\cs_new_protected_nopar:Npn \@@_put_window_box: + { + \dim_compare:nNnF \l_@@_l_dim > \c_zero_dim + { \skip_horizontal:n { \l_@@_line_dim - \l_@@_r_dim } } + \box_use:N \l_@@_window_box + } +\cs_new_protected_nopar:Npn \@@_put_stuff_box: + { + \@@_move_stuff_box:nn { up } + { + \l_@@_voffset_dim + + ( \box_dp:N \g_@@_stuff_box - + \box_dp:N \l_@@_window_box ) + + ( \box_ht_plus_dp:N \l_@@_window_box - + \g_@@_stuff_ht_dim ) / 2 + \box_if_empty:NT \l_@@_bottom_box + { - \g_@@_pos_skip / 2 } + } + \@@_output_stuff_box: + } +\cs_new_protected_nopar:Npn \@@_output_stuff_box: + { + \skip_horizontal:n + { + \dim_compare:nNnTF \l_@@_r_dim > \c_zero_dim + { + \dim_compare:nNnTF + { \box_wd:N \l_@@_window_box } + < + { \l_@@_window_dim } + { \l_@@_leftsep_dim } + { + - \l_@@_r_dim + - \l_@@_rightsep_dim + - \g_@@_stuff_wd_dim + } + } + { \l_@@_leftsep_dim } + } + \box_use_drop:N \g_@@_stuff_box + } +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_move_stuff_box:n} +% \begin{macrocode} +\cs_new_protected:Npn \@@_move_stuff_box:nn #1#2 + { + \hbox_gset:Nn \g_@@_stuff_box + { + \@@_parshape_kern: + \use:c { box_move_ #1 :nn } + {#2} + { \box_use_drop:N \g_@@_stuff_box } + } + \box_gset_ht:Nn \g_@@_stuff_box { \c_zero_dim } + \box_gset_dp:Nn \g_@@_stuff_box { \c_zero_dim } + } +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_add_vskip:} +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_add_vskip: + { + \box_if_empty:NTF \g_@@_display_box + { \@@_add_vskip_auxi: } + { \@@_add_vskip_display: } + } +\cs_new_protected_nopar:Npn \@@_add_vskip_display: + { + \vbox_unpack_drop:N \g_@@_display_box + \@@_ignore_depth: + } +\cs_new_protected_nopar:Npn \@@_add_vskip_auxi: + { + \dim_compare:nNnTF \tex_pagegoal:D < \c_max_dim + { \@@_add_vskip_auxii: } + { \@@_add_vskip_auxiii: } + } +\cs_new_protected_nopar:Npn \@@_add_vskip_auxii: + { + \skip_gset:Nn \g_@@_pre_skip + { + \g_@@_baseline_skip + - \g_@@_prevdepth_dim + - \g_@@_ht_dim + } + \dim_compare:nNnT \g_@@_pre_skip < \tex_lineskiplimit:D + { \skip_gset_eq:NN \g_@@_pre_skip \tex_lineskip:D } + \bool_if:NTF \l_@@_first_move_bool + { \@@_first_move_skip: } + { \skip_vertical:N \g_@@_pre_skip } + \@@_ignore_depth: + } +\cs_new_protected_nopar:Npn \@@_add_vskip_auxiii: + { + \dim_compare:nNnTF \tex_topskip:D > \g_@@_ht_dim + { + \tex_hrule:D height \c_zero_dim \scan_stop: + \skip_gset:Nn \g_@@_pre_skip + { \tex_topskip:D - \g_@@_ht_dim } + \skip_vertical:n { \g_@@_pre_skip - \tex_topskip:D } + } + { \skip_gzero:N \g_@@_pre_skip } + } +\cs_new_protected_nopar:Npn \@@_first_move_skip: + { + \skip_vertical:n + { + \g_@@_first_sep_dim + - \g_@@_window_ht_dim + - \tex_parskip:D + \dim_compare:nNnT \g_@@_column_right_ht_dim > \c_zero_dim + { + \g_@@_column_right_ht_dim + \g_@@_pre_skip } + } + } +\skip_new:N \g_@@_pre_skip +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_ignore_depth:,\@@_set_prevdepth:N} +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_ignore_depth: + { \dim_set_eq:NN \tex_prevdepth:D \c_@@_ignore_depth_dim } +\cs_new_protected_nopar:Npn \@@_set_prevdepth:N + { \dim_set_eq:NN \tex_prevdepth:D } +\dim_const:Nn \c_@@_ignore_depth_dim { -1000pt } +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_set_next:} +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_set_next: + { + \dim_set:Nn \l_@@_height_dim + { + \g_@@_pre_skip + + \g_@@_pos_skip + + \box_ht_plus_dp:N \l_@@_window_box + } + \dim_gadd:Nn \g_@@_total_ht_dim { \l_@@_height_dim } + \dim_set:Nn \l_@@_shift_dim + { \g_@@_remaining_dim - \l_@@_height_dim } + \dim_compare:nNnTF \l_@@_shift_dim > \c_zero_dim + { \@@_set_next_auxi: } + { + \dim_compare:nNnTF + { - \l_@@_shift_dim } > \l_@@_min_dim + { \@@_set_next_auxii: } + { \@@_set_next_auxi: } + } + } +\dim_new:N \g_@@_total_ht_dim +\cs_new_protected_nopar:Npn \@@_set_next_auxi: + { + \int_gset:Nn \g_@@_window_int + { + \dim_compare:nNnTF \l_@@_shift_dim > \c_zero_dim + { \@@_unit:n { \l_@@_shift_dim } } + { \c_one_int } + } + \@@_set_next_verify: + \bool_if:NF \g_@@_next_bool + { \@@_move_next_stuff_box: } + \@@_set_next_output: + \@@_make_next_stuff:nn + { \g_@@_stuff_wd_dim } + { \l_@@_shift_dim } + \int_gzero:N \g_@@_top_int + \@@_next_para_trailer: + } +\cs_new_protected_nopar:Npn \@@_move_next_stuff_box: + { + \@@_move_stuff_box:nn { down } + { + \box_ht:N \g_@@_stuff_box + - \box_ht:N \l_@@_window_box + + ( \g_@@_window_ht_dim + - \g_@@_stuff_ht_dim + - \g_@@_pre_skip + + \g_@@_pos_skip + + \l_@@_par_skip ) / 2 + - \l_@@_voffset_dim + } + } +\cs_new_protected_nopar:Npn \@@_set_next_auxii: + { + \int_gzero:N \g_@@_window_int + \bool_if:NF \g_@@_next_bool + { + \@@_move_stuff_box:nn { down } + { + \box_ht:N \g_@@_stuff_box + - \box_ht:N \l_@@_window_box + - \l_@@_voffset_dim + } + } + \@@_set_next_output: + \@@_add_pos_skip: + } +\cs_new_protected_nopar:Npn \@@_set_next_output: + { + \@@_hbox:n + { + \@@_put_window_box: + \bool_if:NF \g_@@_next_bool + { \@@_output_stuff_box: } + } + } +\cs_new_protected_nopar:Npn \@@_set_next_verify: + { + \dim_set:Nn \l_@@_height_dim + { \g_@@_window_ht_dim - \g_@@_total_ht_dim } + \dim_until_do:nNnn + { \tex_baselineskip:D * \g_@@_window_int + \l_@@_par_skip } + > + { \l_@@_height_dim } + { \int_gincr:N \g_@@_window_int } + \dim_gadd:Nn \g_@@_total_ht_dim + { \tex_baselineskip:D * \g_@@_window_int + \l_@@_par_skip } + } +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_next_para_trailer:} +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_next_para_trailer: + { + \@@_add_pos_skip: + \box_if_empty:NTF \g_@@_pos_box + { \@@_next_para: } + { + \@@_env_begin: + \hbox_unpack_drop:N \g_@@_pos_box + \@@_env_end: + } + } +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_make_next_stuff:nn} +% \begin{macrocode} +\cs_new_protected:Npn \@@_make_next_stuff:nn #1#2 + { + \bool_gset_true:N \g_@@_next_bool + \dim_gset:Nn \g_@@_stuff_wd_dim {#1} + \dim_gset:Nn \g_@@_remaining_dim {#2} + } +\bool_new:N \g_@@_next_bool +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_extract_hbox:NN} +% \begin{macrocode} +\cs_new_protected:Npn \@@_extract_display_hbox:NN #1 + { + \box_gclear:N \g_@@_pos_box + \vbox_set:Nn #1 + { + \vbox_unpack_drop:N #1 + \bool_if:NTF \g_@@_display_bool + { \@@_test_display_math: } + { \box_gclear:N \g_@@_display_box } + \box_if_empty:NTF \g_@@_display_box + { + \bool_gset_false:N \g_@@_amsmath_bool + \@@_extract_last_hbox:N \g_@@_last_box + } + { \box_gclear:N \g_@@_last_box } + } + \box_if_empty:NF \g_@@_display_box + { \dim_gset:Nn \g_@@_display_pre_dim { \box_dp:N #1 } } + \@@_extract_hbox_aux:N + } +\cs_new_protected:Npn \@@_extract_hbox:NN #1 + { + \vbox_set:Nn #1 + { + \vbox_unpack_drop:N #1 + \@@_extract_last_hbox:N \g_@@_last_box + } + \@@_extract_hbox_aux:N + } +\cs_new_protected:Npn \@@_extract_hbox_aux:N #1 + { + \box_if_empty:NTF \g_@@_last_box + { \box_clear:N #1 } + { \@@_repack_hbox:N #1 } + } +\cs_new_protected:Npn \@@_repack_hbox:N #1 + { + \hbox_set:Nn #1 + { + \skip_if_eq:nnF + { \g_@@_main_left_skip } { \c_zero_skip } + { \skip_horizontal:N \g_@@_main_left_skip } + \hbox_unpack_drop:N \g_@@_last_box + \tex_unskip:D \tex_unskip:D \tex_unpenalty:D + } + } +\cs_new_protected:Npn \@@_extract_last_hbox:N #1 + { + \@@_if_last_hlist:TF + { + \box_gset_to_last:N #1 + \tex_unskip:D + } + { \box_gclear:N #1 } + } +\box_new:N \g_@@_last_box +\box_new:N \g_@@_display_box +\dim_new:N \g_@@_display_pre_dim +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_test_display_math:} +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_test_display_math: + { + \@@_if_last_hlist:T + { + \box_gset_to_last:N \g_@@_pos_box + \tex_unskip:D + } + \box_clear:N \l_@@_add_box + \box_gclear:N \g_@@_display_box + \skip_gzero:N \g_@@_last_skip + \skip_gzero:N \g_@@_display_pre_skip + \bool_gset_false:N \g_@@_amsmath_bool + \@@_add_last_skip:w + \@@_add_last_penalty:w + \@@_add_last_box:w + \@@_add_last_skip:w + \@@_add_last_skip:w + \@@_add_last_penalty:w + \@@_add_last_finalise:w \q_stop + } +\box_new:N \l_@@_add_box +\box_new:N \g_@@_pos_box +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_add_last_stop:w} +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_add_last_stop:w + { + \vbox_unpack_drop:N \l_@@_add_box + \use_none_delimit_by_q_stop:w + } +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_add_last_skip:w} +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_add_last_skip:w + { + \@@_if_last_glue:TF + { + \skip_set_eq:NN \l_@@_last_skip \tex_lastskip:D + \vbox_set:Nn \l_@@_add_box + { + \skip_vertical:N \l_@@_last_skip + \vbox_unpack_drop:N \l_@@_add_box + } + \tex_unskip:D + \skip_gadd:Nn \g_@@_last_skip { \l_@@_last_skip } + } + { \@@_skip_stop:w } + } +\skip_new:N \l_@@_last_skip +\skip_new:N \g_@@_last_skip +\cs_new_eq:NN \@@_skip_stop:w \@@_add_last_stop:w +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_add_last_penalty:w} +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_add_last_penalty:w + { + \@@_if_last_penalty:TF + { + \int_set_eq:NN \l_@@_last_int \tex_lastpenalty:D + \vbox_set:Nn \l_@@_add_box + { + \tex_penalty:D \l_@@_last_int + \vbox_unpack_drop:N \l_@@_add_box + } + \tex_unpenalty:D + \skip_gset_eq:NN \g_@@_pre_skip \g_@@_last_skip + \skip_gzero:N \g_@@_last_skip + } + { \@@_penalty_stop:w } + } +\int_new:N \l_@@_last_int +\cs_new_eq:NN \@@_penalty_stop:w \@@_add_last_stop:w +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_add_last_box:w} +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_add_last_box:w + { + \@@_if_last_hlist:TF + { + \skip_gzero:N \g_@@_last_skip + \box_set_to_last:N \l_@@_last_box + \vbox_set:Nn \l_@@_add_box + { + \box_use_drop:N \l_@@_last_box + \vbox_unpack_drop:N \l_@@_add_box + } + } + { \@@_box_stop:w } + } +\box_new:N \l_@@_last_box +\cs_new_eq:NN \@@_box_stop:w \@@_add_last_stop:w +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_add_last_finalise:w} +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_add_last_finalise:w + { + \int_gset_eq:NN \g_@@_display_pre_int \l_@@_last_int + \skip_gadd:Nn \g_@@_display_pre_skip { \g_@@_pre_skip } + \int_case:nnTF { \tex_lastnodetype:D } + { + { \c_@@_hlist_node } { } + { \c_@@_none_node } { } + { \c_@@_whatsit_node } { } + } + { \box_gset_eq_drop:NN \g_@@_display_box \l_@@_add_box } + { \vbox_unpack_drop:N \l_@@_add_box } + \use_none_delimit_by_q_stop:w + } +\int_new:N \g_@@_display_pre_int +\skip_new:N \g_@@_display_pre_skip +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_amsmath_boot:w,\@@_amsmath_recursion:w,\@@_amsmath_multline:w} +% \pkg{amsmath} 的 \env{align} 等数学环境内部是一个 \tn{halign} 环境,结构不一样,需要另外处理。 +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_amsmath_boot:w + { + \@@_add_last_skip:w + \@@_add_last_penalty:w + \cs_set_eq:NN \@@_box_stop:w \@@_add_last_stop:w + \@@_add_last_box:w + \bool_gset_true:N \g_@@_amsmath_bool + \cs_set_eq:NN \@@_skip_stop:w \@@_amsmath_multline:w + \cs_set_eq:NN \@@_penalty_stop:w \@@_amsmath_stop:NN + \@@_amsmath_recursion:w + } +\cs_new_protected_nopar:Npn \@@_amsmath_recursion:w + { + \@@_add_last_skip:w + \@@_add_last_skip:w + \@@_add_last_penalty:w + \@@_add_last_box:w + \@@_amsmath_recursion:w + } +\cs_new_protected:Npn \@@_amsmath_stop:NN #1#2 + { + \cs_set_eq:NN \@@_skip_stop:w \@@_add_last_stop:w + \cs_set_eq:NN \@@_penalty_stop:w \@@_add_last_stop:w + } +\bool_new:N \g_@@_amsmath_bool +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_amsmath_multline:w} +% \env{multline} 环境的结构与其他环境不一样。\pkg{amsmath} 的 \tn{@display@init} 定义为 +% \begin{verbatim} +% \def\@display@init#1{% +% \global\dt@ptrue \spread@equation +% \everycr{% +% \noalign{% +% #1% +% \ifdt@p +% \global\dt@pfalse +% \vskip-\lineskiplimit +% \vskip\normallineskiplimit +% \else +% \penalty\@eqpen \global\dspbrk@lvl\m@ne +% \fi +% }% +% }% +% } +% \end{verbatim} +% \env{align} 等环境的开头 \tn{ifdt@p} 为真,会插入两个 \tn{vskip}, +% 但是 \env{multline} 定义中的 \tn{mmeasure@} 没有重定义 \tn{everycr}, +% 上述定义中的 \tn{dt@pfalse} 被执行,导致环境开头被加入了 \tn{penalty}, +% 不确定是有意为之还是疏忽。 +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_amsmath_multline:w + { + \@@_amsmath_stop:NN ? ? + \@@_add_last_penalty:w + \skip_gset_eq:NN \g_@@_display_pre_skip + \g_@@_pre_skip + \@@_add_last_skip:w + \@@_add_last_penalty:w + \@@_add_last_finalise:w + } +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_amsmath_leqno:} +% \pkg{amsmath} 的 \opt{leqno} 是直接用 \cs{tex_leqno:D} 实现的,与 \LaTeX\ 的实现不一样。 +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_amsmath_leqno: + { + \legacy_if:nTF { tagsleft@ } + { \bool_gset_true:N \g_@@_leqno_bool } + { \bool_gset_false:N \g_@@_leqno_bool } + } +% \end{macrocode} +% \end{macro} +% +% \begin{macrocode} +\@@_package_hook:nn { amsmath } + { + \cs_gset_eq:NN \@@_box_stop:w + \@@_amsmath_boot:w + \cs_gset_eq:NN \@@_test_leqno: + \@@_amsmath_leqno: + } +% \end{macrocode} +% +% \begin{macro}{\@@_set_float:} +% \begin{macrocode} +\cs_new_protected_nopar:Npn \@@_set_float: + { + \cs_set_eq:NN \@captype \l_@@_type_tl + \@@_float_pre_hook: + \@@_caption_hook: + \@floatboxreset + } +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_float_pre_hook:, \@@_float_pos_hook:} +% \begin{macrocode} +\cs_new_eq:NN \@@_float_pre_hook: \@@_empty: +\cs_new_eq:NN \@@_float_pos_hook: \@@_empty: +\@@_package_hook:nn { float } + { + \bool_new:N \g_@@_float_pos_bool + \cs_gset_protected_nopar:Npn \@@_float_pre_hook: + { \exp_args:No \@@_float_pre_aux:n { \l_@@_type_tl } } + \cs_new_protected:Npn \@@_float_pre_aux:n #1 + { + \cs_if_exist_use:cTF { fst@ #1 } + { + \@float@setevery {#1} + \bool_gset_true:N \g_@@_float_pos_bool + } + { \bool_gset_false:N \g_@@_float_pos_bool } + } + \cs_gset_protected_nopar:Npn \@@_float_pos_hook: + { + \bool_if:NT \g_@@_float_pos_bool + { \exp_args:No \@@_float_pos_aux:n { \l_@@_type_tl } } + } + \cs_new_protected:Npn \@@_float_pos_aux:n #1 + { + \hbox_gset:Nn \g_@@_stuff_box + { + \use:c { fst@ #1 } + \cs_set_eq:NN \@currbox \g_@@_stuff_box + \vbox_gset:Nn \g_@@_stuff_box + { \box_use_drop:N \g_@@_stuff_box } + \exp_args:Ne \float@makebox + { \dim_eval:n { \box_wd:N \g_@@_stuff_box } } + } + } + } +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_floatrow_hook:} +% \begin{macrocode} +\cs_new_eq:NN \@@_floatrow_hook: \@@_empty: +\@@_package_hook:nn { floatrow } + { + \cs_gset_protected_nopar:Npn \@@_floatrow_hook: + { + \cs_set_eq:NN \@captype \l_@@_type_tl + \killfloatstyle + \FR@redefs + \dim_zero:N \FBc@wd + \exp_args:Ne \flrow@setlist + { + { \l_@@_type_tl } + { wrapfloat } + { wrap \l_@@_type_tl } + } + \FRifFBOX \@@@@setframe \relax \@@@@FStrue + \hbox_gset:Nw \g_@@_stuff_box + \tl_set:Nx \FBB@wd { \dim_use:N \l_@@_width_dim } + \FB@fs@wd + \dim_set:Nn \l_@@_width_dim { \FBo@wd } + } + \cs_gset_protected_nopar:Npn \@@_float_pre_hook: + { \the \FR@everyfloat } + \cs_gset_protected_nopar:Npn \@@_float_pos_hook: + { + \legacy_if:nTF { FBbuild } + { + \cs_set_eq:NN \@currbox \g_@@_stuff_box + \vbox_gset:Nn \g_@@_stuff_box + { \box_use_drop:N \g_@@_stuff_box } + \flrow@FB { \l_@@_width_dim } + } + { + \cs_undefine:N \flrow@typ@tmpset + \box_use_drop:N \g_@@_stuff_box + } + \hbox_gset_end: + } + } +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_caption_hook:} +% \begin{macrocode} +\cs_new_eq:NN \@@_caption_hook: \@@_empty: +\@@_package_hook:nn { caption } + { + \cs_gset_protected_nopar:Npn \@@_caption_hook: + { \exp_args:No \@@_caption_aux:n { \l_@@_type_tl } } + \cs_new_protected:Npn \@@_caption_aux:n #1 + { + \caption@settype {#1} + \caption@clearmargin + \caption@setoptions { wrap #1 } + } + } +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{top} +% \begin{macrocode} +\keys_define:nn { wrapstuff } + { + abovesep .tl_set:N = \l_@@_abovesep_tl , + belowsep .tl_set:N = \l_@@_belowsep_tl , + leftsep .tl_set:N = \l_@@_leftsep_tl , + rightsep .tl_set:N = \l_@@_rightsep_tl , + linewidth .tl_set:N = \l_@@_linewidth_tl , + lines .tl_set:N = \l_@@_lines_tl , + width .tl_set:N = \l_@@_width_tl , + height .tl_set:N = \l_@@_height_tl , + hoffset .tl_set:N = \l_@@_hoffset_tl , + voffset .tl_set:N = \l_@@_voffset_tl , + type .tl_set:N = \l_@@_type_tl , + ratio .fp_set:N = \l_@@_ratio_fp , + top .int_set:N = \l_@@_top_int , + i .code:n = \@@_swap_true:N \c_true_bool , + o .code:n = \@@_swap_true:N \c_false_bool , + l .code:n = \@@_swap_false:N \c_zero_fp , + r .code:n = \@@_swap_false:N \c_one_fp , + c .code:n = \@@_swap_false:N \c_@@_c_fp , + column .choice: , + column/true .code:n = + { + \bool_set_true:N \l_@@_column_bool + \cs_set_eq:NN \@@_build_column: + \@@_build_column_strict: + } , + column/par .code:n = + { + \bool_set_true:N \l_@@_column_bool + \cs_set_eq:NN \@@_build_column: + \@@_build_column_fuzzy: + } , + column/false .code:n = + { \bool_set_false:N \l_@@_column_bool } , + hsep .code:n = + { + \tl_set:Nn \l_@@_leftsep_tl {#1} + \tl_set_eq:NN \l_@@_rightsep_tl + \l_@@_leftsep_tl + } , + vsep .code:n = + { + \tl_set:Nn \l_@@_abovesep_tl {#1} + \tl_set_eq:NN \l_@@_belowsep_tl + \l_@@_abovesep_tl + } , + unknown .code:n = + { \exp_args:No \@@_unknown_key:n { \l_keys_key_str } } , + leftsep .groups:n = main , + rightsep .groups:n = main , + hsep .groups:n = main , + linewidth .groups:n = main , + lines .groups:n = main , + column .groups:n = main , + hoffset .groups:n = main , + voffset .groups:n = main , + top .groups:n = stuff , + abovesep .groups:n = stuff , + belowsep .groups:n = stuff , + vsep .groups:n = stuff , + width .groups:n = stuff , + height .groups:n = stuff , + float .groups:n = stuff , + ratio .groups:n = ratio , + l .groups:n = ratio , + r .groups:n = ratio , + c .groups:n = ratio , + i .groups:n = ratio , + o .groups:n = ratio , + column .default:n = true , + column .initial:n = true , + abovesep .initial:n = \c_zero_dim , + belowsep .initial:n = \c_zero_dim , + leftsep .initial:n = 1em , + rightsep .initial:n = 1em , + linewidth .initial:n = \linewidth , + hoffset .initial:n = \c_zero_dim , + voffset .initial:n = \c_zero_dim , + width .initial:n = \c_zero_dim , + height .initial:n = \c_zero_dim , + ratio .initial:n = \c_one_fp , + abovesep .value_required:n = true , + belowsep .value_required:n = true , + leftsep .value_required:n = true , + rightsep .value_required:n = true , + linewidth .value_required:n = true , + width .value_required:n = true , + height .value_required:n = true , + hoffset .value_required:n = true , + voffset .value_required:n = true , + hsep .value_required:n = true , + vsep .value_required:n = true , + l .value_forbidden:n = true , + r .value_forbidden:n = true , + c .value_forbidden:n = true , + i .value_forbidden:n = true , + o .value_forbidden:n = true + } +\fp_const:Nn \c_@@_c_fp { 0.5 } +\cs_new_protected:Npn \@@_swap_true:N #1 + { + \bool_set_true:N \l_@@_swap_bool + \bool_set_eq:NN \l_@@_inner_bool #1 + \bool_if:NTF \l_@@_inner_bool + { \bool_set_false:N \l_@@_outer_bool } + { \bool_set_true:N \l_@@_outer_bool } + } +\cs_new_protected_nopar:Npn \@@_swap_false:N + { + \bool_set_false:N \l_@@_swap_bool + \fp_set_eq:NN \l_@@_ratio_fp + } +\cs_new_protected:Npn \@@_unknown_key:n #1 + { + \regex_match:NnTF \c_@@_integer_regex {#1} + { \int_set:Nn \l_@@_top_int } + { \@@_unknown_key_error:n } + {#1} + } +\regex_const:Nn \c_@@_integer_regex { \A \d+ \Z } +\cs_new_protected_nopar:Npn \@@_unknown_key_error:n + { \msg_error:nnn { wrapstuff } { unknown-key } } +\msg_new:nnnn { wrapstuff } { unknown-key } + { The~key~'#1'~is~unknown~and~is~being~ignored. } + { + The~package~wrapstuff~does~not~have~a~key~called~'#1'.\\ + Check~that~you~have~spelled~the~key~name~correctly. + } +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\wrapstuffset} +% \begin{macrocode} +\NewDocumentCommand \wrapstuffset { m } + { \keys_set:nn { wrapstuff } {#1} } +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\wrapstuffclear} +% 保险起见,加入 \tn{par} 结束段落,同时结束 \env{wrapstuff@par} 环境。 +% \begin{macrocode} +\NewDocumentCommand \wrapstuffclear { } + { + \par + \@@_clear: + } +% \end{macrocode} +% \end{macro} +% +% \begin{macrocode} +\cs_if_exist:NTF \ProcessKeyOptions + { \ProcessKeyOptions [ wrapstuff ] } + { + \RequirePackage { l3keys2e } + \ProcessKeysOptions { wrapstuff } + } +% \end{macrocode} +% +% \begin{macrocode} +% +% \end{macrocode} +% +% \end{implementation} +% +% \Finale +% +\endinput diff --git a/macros/latex/contrib/wrapstuff/wrapstuff.pdf b/macros/latex/contrib/wrapstuff/wrapstuff.pdf new file mode 100644 index 0000000000..c9cd89da98 Binary files /dev/null and b/macros/latex/contrib/wrapstuff/wrapstuff.pdf differ diff --git a/macros/latex/required/babel/base/README.md b/macros/latex/required/babel/base/README.md index 74e4830b48..371dcfb50d 100644 --- a/macros/latex/required/babel/base/README.md +++ b/macros/latex/required/babel/base/README.md @@ -1,4 +1,4 @@ -## Babel 3.77 +## Babel 3.78 This package manages culturally-determined typographical (and other) rules, and hyphenation patterns for a wide range of languages. Many @@ -8,9 +8,9 @@ is a set of ini files for about 250 languages. The latest stable version is available on . -Changes in version 3.77 are described in: +Changes in version 3.78 are described in: -https://latex3.github.io/babel/news/whats-new-in-babel-3.77.html +https://latex3.github.io/babel/news/whats-new-in-babel-3.78.html Apart from the manual, you can find information on some aspects of babel at: @@ -46,19 +46,13 @@ respective authors. ### Summary of latest changes ``` -3.77 2022-06-26 - * More on calendar conversions (\localedate, \today). - * New calendars: 'coptic' (ar-EG, cop), 'buddhist' (th). - * New Arabic locale for Saudi Arabia, with the Umm al-Qura - calendar. - * Date now defaults to 'persian' in a few locales: Persian, - Northern Luri, Mazanderani, Pashto. - * `bangla` is now the preferred name for `bengali`. - * Attempt to deal with 'german' and 'swissgerman', whose names - conflict with the CLDR ones. - * More minor updates to the CLDR 41: Afrikaans, Arabic, Assamese, - Asturian, Azerbaijani, Belarusian, Bulgarian, Bangla, Tibetan, - Breton, Bodo, Bosnian, Catalan, English. +3.78 2022-07-20 + * Fix: Undefined \bbl@xenohyph with Thai (#182). + * More minor updates to the CLDR 41: Chechen, Cherokee, Central + Kurdish, Czech, Welsh, Danish, German, Lower Sorbian, + Dzongkha, Ewe, Greek, Esperanto, Spanish, Estonian, Persian, + Finnish, Filipino, Faroese, Western Frisian, Irish, Scottish + Gaelic. ``` ### Previous changes diff --git a/macros/latex/required/babel/base/babel.dtx b/macros/latex/required/babel/base/babel.dtx index 21493d3f4e..d9ebe75a44 100644 --- a/macros/latex/required/babel/base/babel.dtx +++ b/macros/latex/required/babel/base/babel.dtx @@ -32,7 +32,7 @@ % % \iffalse %<*filedriver> -\ProvidesFile{babel.dtx}[2022/06/26 v3.77 The Babel package] +\ProvidesFile{babel.dtx}[2022/07/20 v3.78 The Babel package] \documentclass{ltxdoc} \GetFileInfo{babel.dtx} \usepackage{fontspec} @@ -3116,9 +3116,9 @@ font encodings are the same, like in Unicode based engines. \end{note} \begin{note} - To set hyphenation exceptions in the preamble before any language is - explicitly set with a selector, use |\babelhyphenation| instead of - |\hyphenation|. In the preamble the hyphenation rules are not always + Use |\babelhyphenation| instead of |\hyphenation| to set hyphenation + exceptions in the preamble before any language is explicitly set with + a selector. In the preamble the hyphenation rules are not always fully set up and an error can be raised. \end{note} @@ -5171,8 +5171,8 @@ help from Bernd Raichle, for which I am grateful. % \section{Tools} % % \begin{macrocode} -%<> -%<> +%<> +%<> % \end{macrocode} % % \textbf{Do not use the following macros in \texttt{ldf} files. They @@ -5947,6 +5947,7 @@ help from Bernd Raichle, for which I am grateful. % \begin{macrocode} \ifx\bbl@opt@safe\@undefined \def\bbl@opt@safe{BR} + % \let\bbl@opt@safe\@empty % -- By September \fi % \end{macrocode} % @@ -10940,7 +10941,7 @@ help from Bernd Raichle, for which I am grateful. {\bbl@exp{\\\bbl@ifblank{\bbl@cs{prehc@#1}}}% {}% {\ifx\bbl@xenohyph\@undefined - \let\bbl@xenohyph\bbl@xenohyph@d + \global\let\bbl@xenohyph\bbl@xenohyph@d \ifx\AtBeginDocument\@notprerr \expandafter\@secondoftwo % to execute right now \fi @@ -13105,53 +13106,6 @@ help from Bernd Raichle, for which I am grateful. % % \begin{macrocode} \def\bbl@font@fams{rm,sf,tt} -% \end{macrocode} -% -% The old tentative way. Short and preverved for compatibility, but -% deprecated. Note there is no direct alternative for -% |\babelFSfeatures|. The reason in explained in the user guide, but -% essentially -- that was not the way to go :-). -% -% \begin{macrocode} -\newcommand\babelFSstore[2][]{% - \bbl@ifblank{#1}% - {\bbl@csarg\def{sname@#2}{Latin}}% - {\bbl@csarg\def{sname@#2}{#1}}% - \bbl@provide@dirs{#2}% - \bbl@csarg\ifnum{wdir@#2}>\z@ - \let\bbl@beforeforeign\leavevmode - \EnableBabelHook{babel-bidi}% - \fi - \bbl@foreach{#2}{% - \bbl@FSstore{##1}{rm}\rmdefault\bbl@save@rmdefault - \bbl@FSstore{##1}{sf}\sfdefault\bbl@save@sfdefault - \bbl@FSstore{##1}{tt}\ttdefault\bbl@save@ttdefault}} -\def\bbl@FSstore#1#2#3#4{% - \bbl@csarg\edef{#2default#1}{#3}% - \expandafter\addto\csname extras#1\endcsname{% - \let#4#3% - \ifx#3\f@family - \edef#3{\csname bbl@#2default#1\endcsname}% - \fontfamily{#3}\selectfont - \else - \edef#3{\csname bbl@#2default#1\endcsname}% - \fi}% - \expandafter\addto\csname noextras#1\endcsname{% - \ifx#3\f@family - \fontfamily{#4}\selectfont - \fi - \let#3#4}} -\let\bbl@langfeatures\@empty -\def\babelFSfeatures{% make sure \fontspec is redefined once - \let\bbl@ori@fontspec\fontspec - \renewcommand\fontspec[1][]{% - \bbl@ori@fontspec[\bbl@langfeatures##1]} - \let\babelFSfeatures\bbl@FSfeatures - \babelFSfeatures} -\def\bbl@FSfeatures#1#2{% - \expandafter\addto\csname extras#1\endcsname{% - \babel@save\bbl@langfeatures - \edef\bbl@langfeatures{#2,}}} %<> % \end{macrocode} % diff --git a/macros/latex/required/babel/base/babel.ins b/macros/latex/required/babel/base/babel.ins index 007c7d6b9b..13a22deb6a 100644 --- a/macros/latex/required/babel/base/babel.ins +++ b/macros/latex/required/babel/base/babel.ins @@ -26,7 +26,7 @@ %% and covered by LPPL is defined by the unpacking scripts (with %% extension .ins) which are part of the distribution. %% -\def\filedate{2022/06/26} +\def\filedate{2022/07/20} \def\batchfile{babel.ins} \input docstrip.tex diff --git a/macros/latex/required/babel/base/babel.pdf b/macros/latex/required/babel/base/babel.pdf index 1e47810554..8d2d9a776d 100644 Binary files a/macros/latex/required/babel/base/babel.pdf and b/macros/latex/required/babel/base/babel.pdf differ diff --git a/macros/latex/required/babel/base/bbcompat.dtx b/macros/latex/required/babel/base/bbcompat.dtx index 5538587a42..c8f85ad5b6 100644 --- a/macros/latex/required/babel/base/bbcompat.dtx +++ b/macros/latex/required/babel/base/bbcompat.dtx @@ -30,7 +30,7 @@ % % \iffalse %<*dtx> -\ProvidesFile{bbcompat.dtx}[2022/06/26 v3.77] +\ProvidesFile{bbcompat.dtx}[2022/07/20 v3.78] % % %% File 'bbcompat.dtx' diff --git a/obsolete/language/japanese/jtex/00NEWS b/obsolete/language/japanese/jtex/00NEWS new file mode 100644 index 0000000000..8cb147d71d --- /dev/null +++ b/obsolete/language/japanese/jtex/00NEWS @@ -0,0 +1,148 @@ +From: sakurai@math.s.chiba-u.ac.jp (SAKURAI Takafumi) +Newsgroups: fj.comp.texhax,fj.sources.d +Subject: NTT JTeX 1.6 release +Date: 21 Jun 1995 18:48:53 GMT +Organization: Chiba University +Message-ID: + +$B:y0f(B@$B@iMUBg$G$9!#(B + +NTT JTeX 1.6$B$r8x3+$7$^$9!#(B + ftp:/ftp.math.s.chiba-u.ac.jp/tex/jtex-1.6 +$B$+$i(Banonymous ftp$B$G$-$^$9!#$I$N%U%!%$%k$r(Bftp$B$9$l$P$h$$$+$O(BREADME$B$r(B +$BFI$s$G2<$5$$!#(B + JTeX$B$NItJ,$O(B1.6-beta$B$HJQ$o$C$F$J$$!#(B + (TeX 3.1415 / web2c 6.1 $B$r%Y!<%9$K$7$F$$$^$9!#(B) + JLaTeX2e$B$r(B <1994/12/01> patchlevel 3 $B$K4p$E$$$?$b$N$H$7$?!#(B + JBibTeX$B$r2C$($?!#(B +$B$H$J$C$F$$$^$9!#(B +(LaTeX2e <1995/06/01> $B$,$b$&$9$0=P$k$@$m$&$H$$$&$3$N;~4|$K$3$N%"%J%&%s%9(B +$B$r$9$k$N$O%?%$%_%s%0$,0-$$$N$G$9$,!"(BUNIX magazine 7$B7n9f$N!V(BInside DVI -> PS$B!W(B +$B$Ke=\$+$i(BNTT JTeX 1.6$B$r(Banonymous ftp$B$K$R$C$=$jCV$$$F$$$^$7$?!#(B +$B$9$G$K(Bftp$B$5$l$?J}$b$$$i$C$7$c$k$N$G$9$,!"0J2<$G=R$Y$kLdBjE@$,$"$j(B +$B$^$7$?$N$G!"?=$7Lu$"$j$^$;$s$,(B6$B7n(B21$BF|0JA0$K(Bftp$B$5$l$?J}$O!"(B00README$B$r(B +$B$^$:(Bftp$B$7$F$=$l$rFI$_!"(BREADME$B$*$h$SI,MW$J%U%!%$%k$r(Bftp$B$7$F=$@5$r$*4j$$(B +$B$7$^$9!#(B($B$b$A$m$s$3$l$+$i?7$?$K(Bftp$B$9$k>l9g$O!"(BREADME$B$K=q$$$F$"$k%U%!%$%k(B +$B$@$1$G==J,$G$9!#(B) + +$B>/$7A0$K(Bfj.comp.texhax$B$G$bl9g$,$"$j$^$9!#(B +$B$^$?!"(BASCII$BF|K\8l(BTeX$B$H$N(Bcompatibility$B$N$?$a$K(B \min $B$H$$$&(Bcommand$B$r(B +$BDj5A$7$F$*$-$7$?$,!"(Bmath mode$B$K$*$1$k(B \min (minimun) $B$H$V$D$+$k$H$$$&(B +$B%P%0$,$"$j$^$9!#(B(ASCII$BF|K\8l(BTeX$B$G$bF1MM$N;vBV$,5/$3$j$^$9!#(B) +$B$3$l$O>/$7A0$K0k:j$5$s$K;XE&$5$l$?$N$G$9$,!"=$@5$7$?$b$N(B(math mode$B$H(B +$B$=$&$G$J$$$H$-$K1~$8$F?6Iq$$$rJQ$($k(B)$B$r(Bftp$B$KCV$$$F$*$/$N$rK:$l$F(B +$B$$$^$7$?!#(B + + $B:y0f5.J8(B(sakurai@math.s.chiba-u.ac.jp) + +-------- +From: sakurai@math.s.chiba-u.ac.jp (SAKURAI Takafumi) +Newsgroups: fj.comp.texhax +Subject: Re: can't install jtex-1.6 +Date: 25 Jul 1995 17:18:45 GMT +Organization: Chiba University +Message-ID: + +$B:y0f(B@$B@iMUBg$G$9!#(B + +In article <3v2a06$mg6@i-group.hokkyodai.ac.jp> SUGAWARA@atson.iwa.hokkyodai.ac.jp + (Sugawara / =?ISO-2022-JP?B?GyRCP3s4NiEhN3IbKEo=?=) writes: + + > unix magazine $B$N#87n9f$r;29M$K$7$J$,$i(Bjtex-1.6$B$r%$%s%9%H!<%k$7$F$$$k$N$G$9$,(B + > web2c-6.1j$B$J$k%G%#%l%/%H%j$K0\F0$7$F(Bmake$B$H$d$j$^$7$?$H$3$m(B + > ......... + > make: $BCWL?E*$J%(%i!<(B: $B%3%^%s%I<:GT!#%?!<%2%C%H(B `kanji.o' + +configure$B$7$J$$$G(Bmake$B$7$^$7$?$M!#2r@b$r$A$c$s$HFI$_$^$7$g$&!#(B +($B$I$&$;(Bconfigure$B$G=q$-$+$($i$l$k$+$i$H;W$C$F8E$$(BMakefile$B$rCV$$$?(B +$B$^$^$K$7$?$N$O$^$:$+$C$?$h$&$G$9!#(B) + +$B$A$J$_$K!"(Bmake clean $B$7$F$b(BSunOS$B$N(Bmake$B$G$O>C$($k$Y$-%U%!%$%k$,A4It$O(B +$B>C$($^$;$s!#(B($BA4It$NHG$K$D$$$F$=$&$G$"$k$+$I$&$+$O$o$+$j$^$;$s$,!"(B +$B>/$J$/$H$b(BSolaris1$B$K$b(B2$B$K$b$=$&$$$&(Bmake$B$r;}$D$b$N$,$"$j$^$9!#(B) +$B$=$&$$$&$H$-$O!"(B + GNU make $B$r;H$&(B ($BB?J,(B4.4BSD$B$N(Bmake$B$b2D(B) + Makefile$B$r8+$FC$9(B + $B%=!<%9$rA4It>C$7$F$b$&0lEYE83+$9$k(B +$B$N$$$:$l$+$r9T$J$C$F2<$5$$!#(B + + $B:y0f5.J8(B(sakurai@math.s.chiba-u.ac.jp) + +-------- +From: sakurai@math.s.chiba-u.ac.jp (SAKURAI Takafumi) +Newsgroups: fj.comp.texhax +Subject: jtex-1.6 on Solaris 2.X +Date: 26 Jul 1995 09:01:46 GMT +Organization: Chiba University +Message-ID: + +$B:y0f(B@$B@iMUBg$G$9!#(B + +jtex-1.6$B$,$&$^$/(Bmake$B$G$-$J$$$H$$$&AjCL$r%K%e!<%9$d%a!<%k$Gl9g$O(Bconfigure$B$,$&$^$/$$$+$J$$!"$H$$$&$3$H$,860x$@$C$?$j(B +$B$7$^$9!#$=$7$F$=$N??$N860x$O!"(B + configure$B$OIaDL$N(B(BSD$B%9%?%$%k$N$H$$$&$Y$-$+(B)install$B$,(B + $B$J$$$H$-$O!"<+A0$N(Binstall.sh$B$H$$$&(Bscript$B$r;H$&$h$&$K(B + $B$7$F$$$k$,!"$=$N(Binstall.sh$B$r(Bweb2c-6.1j.tar.gz$B$K(B + $BF~$l$F$J$+$C$?(B +$B$H$$$&$3$H$G$7$?!#?=$7Lu$"$j$^$;$s$G$7$?!#(B($BCf86$5$s(B@$B9-Bg!"8f;XE&(B +$B$"$j$,$H$&$4$6$$$^$7$?!#(B) + +$B$H$$$&$3$H$G!"(Binstall.sh$B$rDI2C$9$k$?$a(B + ftp://ftp.math.s.chiba-u.ac.jp/tex/jtex-1.6/web2c-6.1j-add1.tar.gz +$B$rCV$-$^$7$?!#(Bweb2c-6.1j.tar.gz$B$rE83+$7$?$N$HF1$8(Bdirectory$B$GE83+$7$F(B +$B2<$5$$!#(B(web2c-6.1j.tar.gz$B$b:n$jD>$7!"(Bconfigure$B$K$h$C$F:n$i$l$k(BMakefile$B$O(B +$B=|$$$F$*$-$^$7$?!#(B) autoconf$B$KF~$C$F$$$k(Binstall.sh$B$r(B .../web2c-6.1j/web2c +$B$K%3%T!<$7$F$b$+$^$$$^$;$s!#(B + +Solaris2.X$B$r;H$C$F$$$kJ}!"$^$?(Bconfigure$B$r$7$F$$$k:GCf$K%(%i!<$,=P$?!"(B +$B$H$$$&J}$O>e5-$NBP=h$r$7$?>e$G$d$jD>$7$F2<$5$$!#(Binstall.sh$B$,860x$G(B +configure$B$K<:GT$7$?>l9g!"$?$H$($P(BRANLIB$B$,@_Dj$5$l$F$J$$!"$H$$$&$3$H$b(B +$B5/$3$j$^$9$N$G!"$=$&$$$&>I>u$K?4Ev$?$j$N$"$kJ}$bBP=h$7$F2<$5$$!#(B + +$B$A$J$_$K!"JL5-;v(B()$B$G(B +$B=q$$$?(Bmake$B$N7o$O$3$l$H$OFHN)$G$9!#(Bmake distclean $B$9$k$H$-$K$O5$$rIU$1$F(B +$B2<$5$$!#(B + + $B:y0f5.J8(B(sakurai@math.s.chiba-u.ac.jp) + +-------- +From: sakurai@math.s.chiba-u.ac.jp (SAKURAI Takafumi) +Newsgroups: fj.comp.texhax +Subject: Re: jtex-1.6 on Solaris 2.X +Date: 05 Aug 1995 18:20:28 GMT +Organization: Chiba University +Message-ID: + +$B:y0f(B@$B@iMUBg$G$9!#(B + +Solaris2.X$B$G$N(Bjtex-1.6$B$N%3%s%Q%$%k$K4X$7$F0J2<$N$h$&$K=q$-$^$7$?$,!"(B +$BIT==J,$G$7$?!#$9$_$^$;$s!#(B + +In article sakurai@math.s.chiba-u.ac.jp (SAKURAI Takafumi) writes: + + > Solaris2.X$B$N>l9g$O(Bconfigure$B$,$&$^$/$$$+$J$$!"$H$$$&$3$H$,860x$@$C$?$j(B + > $B$7$^$9!#$=$7$F$=$N??$N860x$O!"(B + > configure$B$OIaDL$N(B(BSD$B%9%?%$%k$N$H$$$&$Y$-$+(B)install$B$,(B + > $B$J$$$H$-$O!"<+A0$N(Binstall.sh$B$H$$$&(Bscript$B$r;H$&$h$&$K(B + > $B$7$F$$$k$,!"$=$N(Binstall.sh$B$r(Bweb2c-6.1j.tar.gz$B$K(B + > $BF~$l$F$J$+$C$?(B + > $B$H$$$&$3$H$G$7$?!#(B + +$B$3$l$@$1$G$O(Binstall$B$K4X$9$k(Bconfiguration$B$,$A$c$s$H$G$-$^$;$s!#(B +($B;d$,;H$C$?(Bautoconf 1.11$B$N%P%0$J$N$G$9$,!#(B) +$B$=$l$G>/$7>.:Y9)$N=$@5$J$N$G$9$,!"$H$j$"$($:(B + ftp://ftp.math.s.chiba-u.ac.jp/tex/jtex-1.6/web2c-6.1j-add2.tar.gz +$B$rCV$-$^$7$?!#(B(web2c-6.1j.tar.gz$B$b:n$jD>$7$^$7$?!#(B) +web2c-6.1j.tar.gz$B$rE83+$7$?$N$HF1$8(Bdirectory$B$GE83+$7$F!"(B./configure $B$+$i(B +$B$d$jD>$7$F2<$5$$!#(B + + $B:y0f5.J8(B(sakurai@math.s.chiba-u.ac.jp) ---- Solaris2.X$B$N$J$$Jk$i$7(B diff --git a/obsolete/language/japanese/jtex/00README b/obsolete/language/japanese/jtex/00README new file mode 100644 index 0000000000..8b1d1f0bc8 --- /dev/null +++ b/obsolete/language/japanese/jtex/00README @@ -0,0 +1,28 @@ +1995$BG/(B7$B7n(B26$BF|(B17:52$B0JA0$K(Bweb2c-6.1j.tar.gz$B$r(Bftp$B$5$l$?J}$O!"(B +web2c-6.1j-add1.tar.gz$B$r(Bftp$B$7$FF1$8(Bdirectory$B$GE83+$7$F2<$5$$!#(B +(00NEWS$B;2>H!#(B) + +1995$BG/(B6$B7n(B21$BF|0JA0$K$3$N(Bdirectory(jtex-1.6)$B$+$i(Bftp$B$5$l$?J}$O!"(B +$B0J2<$N>r7o$K=>$C$F(B(1),(2),(3)$B$^$?$O(B(2),(3)$B$r(Bftp$B$7$F2<$5$$!#(B +(jtex-1.6-beta$B$+$i(Bftp$B$5$l$?J}$O!"%*%j%8%J%k$N(BTeX$B$N%U%!%$%k0J30$O(B +README$B$rFI$s$G(Bftp$B$7D>$7$F2<$5$$!#(B) + +4$B7n(B27$BF|0JA0$K(Bftp + (1) base.tar.gz $B$^$?$O(B unpacked.tar.gz +6$B7n(B21$BF|0JA0$K(Bftp + (2) lib-6.9.tar.gz $B$*$h$S(B lib-6.9-add1.tar.gz $B$*$h$S(B jlib-add1.tar.gz + (3) jlatex2e-add1.tar.gz + +(1)$B$O(B1994/12/03 patchlevel 3$B$N(BLaTeX2e$B$N%=!<%9$G$9!#(B +(2)$B$O(B3$B$D6&(Blib-6.8.tar.gz$B$HF1$8%G%#%l%/%H%j$GE83+$7$^$9$,!">e=q$-$O(B +$B$7$J$$$[$&$,0BA4$G$9$N$G(B($B$?$@$7K\Ev$KITET9g$J$3$H$,5/$3$k$+$I$&$+$O(B +$BL$3NG'$G$9(B)$B!"$9$G$K?7$?$J%U%!%$%k$r%$%s%9%H!<%k$7$F$$$k>l9g$OLLE]$G$9$,(B +$B$=$l$r%;!<%V$7$F!"4XO"$9$k%U%!%$%k$r$9$Y$F:o=|$7(B + lib-6.9.tar.gz lib-6.9-add1.tar.gz jlib.tar.gz jlib-add1.tar.gz + $B%;!<%V$7$?%U%!%$%k(B +$B$N=g$KE83+$7$F2<$5$$!#(B(jlib.tar.gz$B$O$9$G$K(Bftp$B$7$F$"$k$O$:$N$b$N$G$9!#(B +$B?7$?$K(Bftp$B$9$k$J$i(Bjlib-add1.tar.gz$B$OITMW$G$9!#(B) +(3)$B$O(B \min $B$N%P%0$r=$@5$9$k$b$N$G$9!#(Bjlatex2e.tar.gz$B$rE83+$7$?(B +$B%G%#%l%/%H%j$GE83+$7$F2<$5$$!#(Bjlatex.ltx$B$,>e=q$-$5$l$^$9!#(B + +$B0J>e$N:n6H$r9T$J$C$?8e!"(Bfmt$B%U%!%$%k$r:n$jD>$7$F2<$5$$!#(B diff --git a/obsolete/language/japanese/jtex/README b/obsolete/language/japanese/jtex/README new file mode 100644 index 0000000000..0be4ceaab5 --- /dev/null +++ b/obsolete/language/japanese/jtex/README @@ -0,0 +1,26 @@ +JTeX 1.6 (JTeX based on TeX 3.1415 / web2c 6.1) + +web2c-6.1j.tar.gz, jlib.tar.gz, jlatex2e.tar.gz$B$r(Bftp$B$7$F2<$5$$!#(B +$B$=$NB>$K!"%*%j%8%J%k$N(BTeX$B$N%=!<%9$G$"$k(Bweb2c-6.1.tar.gz, web-6.1.tar.gz, +lib-6.9.tar.gz$B$,I,MW$G$9!#;}$C$F$$$J$1$l$P(Bftp$B$7$F2<$5$$!#(B(unixtex.ftp$B;2>H!#(B) +lib-6.9-add1.tar.gz$B$O(Blib-6.9.tar.gz$B$r(Bupdate$B$9$k$?$a$N$b$N$G$9$N$G!"(B +$B$3$l$b(Bftp$B$7$F2<$5$$!#(B + +jlatex2e.tar.gz$B$O(BJLaTeX2e$B$N%=!<%9$G$9!#r7o$K4^$a$F$$$^$9!#>\$7$/$O(Bjlatex2e.tar.gz$B$rE83+$7$FF@$i$l$k(B +jlatex2e/base/jlatex.txt$B$rFI$s$G2<$5$$!#(B +$B%*%j%8%J%k$N(BLaTeX2e$B$N%=!<%9$O(Bbase.tar.gz$B$^$?$O(Bunpacked.tar.gz$B$G$9!#(B +(unpacked.tar.gz$B$O(Bbase.tar.gz$B$+$i@8@.$5$l$k%U%!%$%k$r4^$s$G$$$^$9!#(B) +$B$3$A$i$br7o$K$O4^$^$l$F$J$$$G$9$,!"(B +$B%=!<%9$N$$$:$l$+$b;}$C$F$f$/$3$H$r$*4+$a$7$^$9!#(B +$B$?$@$7!"(Bbase.tar.gz$B$*$h$S(Bunpacked.tar.gz$B$N(BLaTeX2e$B$O(B <1994/12/01> patchlevel 3 +$B$G$9$,!"(Blib-6.9.tar.gz$B$K4^$^$l$k(BLaTeX2e$B$O(B <1994/12/01> $B$G$9!#$=$3$G!"(B +lib-6.9.tar.gz$B$rE83+$7$?(Bdirectory$B$G(Blib-6.9-add1.tar.gz$B$rE83+$9$l$P(B +$BI,MW$J%U%!%$%k$,(Bupdate$B$5$l$k$h$&$K$7$F$*$-$^$7$?!#(B + +$B%*%j%8%J%k$N(BTeX$B$r:n$C$?$3$H$,$"$l$P3F(B.tar.gz$B$r$I$N$h$&$KE83+$9$l$P$h$$$+(B +$B8+Ev$,$D$/$G$7$g$&$,!"$=$&$G$J$$?M$O$^$:(Bweb2c-6.1j.tar.gz$B$rE,Ev$J%G%#%l%/(B +$B%H%j$GE83+$7$F2<$5$$!#$9$k$H(Bweb2c-6.1j$B$H$$$&(Bdirectory$B$,$G$-$k$N$G!"$=$3$K(B +$B$"$k(BREADME.JTeX$B$rFI$s$G2<$5$$!#(B diff --git a/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl b/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl index 6ceee56e02..68400a98f8 100644 --- a/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl +++ b/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl @@ -35,7 +35,6 @@ $mirrors = { }, 'Iran' => { 'http://ctan.yazd.ac.ir/' => 1, - 'https://ctan.asis.ai/' => 1, 'https://ctan.um.ac.ir/' => 1, 'https://mirror.bardia.tech/ctan/' => 1, }, diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb b/systems/texlive/tlnet/tlpkg/texlive.tlpdb index b1b1255555..ac11693fd2 100644 --- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb +++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb @@ -26,11 +26,11 @@ depend container_split_src_files/1 depend frozen/0 depend minrelease/2016 depend release/2022 -depend revision/63941 +depend revision/63949 name 00texlive.image category TLCore -revision 63936 +revision 63949 shortdesc TeX Live files only in the source repository longdesc The files here are not copied by the installer and containers longdesc are not built for them; they exist only in the source @@ -4119,6 +4119,7 @@ runfiles size=12912 tlpkg/tlpsrc/tikzbricks.tlpsrc tlpkg/tlpsrc/tikzcodeblocks.tlpsrc tlpkg/tlpsrc/tikzducks.tlpsrc + tlpkg/tlpsrc/tikzfill.tlpsrc tlpkg/tlpsrc/tikzinclude.tlpsrc tlpkg/tlpsrc/tikzlings.tlpsrc tlpkg/tlpsrc/tikzmark.tlpsrc @@ -4417,6 +4418,7 @@ runfiles size=12912 tlpkg/tlpsrc/worldflags.tlpsrc tlpkg/tlpsrc/wrapfig.tlpsrc tlpkg/tlpsrc/wrapfig2.tlpsrc + tlpkg/tlpsrc/wrapstuff.tlpsrc tlpkg/tlpsrc/wsemclassic.tlpsrc tlpkg/tlpsrc/wsuipa.tlpsrc tlpkg/tlpsrc/wtref.tlpsrc @@ -4601,7 +4603,7 @@ depend setting_available_architectures:aarch64-linux amd64-freebsd amd64-netbsd name 00texlive.installer category TLCore -revision 63933 +revision 63943 shortdesc TeX Live standalone installer package longdesc This package defines the files to go into the installer longdesc archives (install-tl-unx.tar.gz, install-tl.zip) built by the @@ -28112,7 +28114,7 @@ catalogue-version 1.0 name babel category Package -revision 63730 +revision 63948 shortdesc Multilingual support for LaTeX, LuaLaTeX, XeLaTeX, and Plain TeX relocated 1 longdesc This package manages culturally-determined typographical (and @@ -28125,22 +28127,22 @@ longdesc has to be done for each language. Included is also a set of ini longdesc files for about 250 languages. Many language styles work with longdesc pdfLaTeX, as well as with XeLaTeX and LuaLaTeX, out of the box. longdesc A few even work with plain formats. -containersize 190888 -containerchecksum 3863ba77af35af465d47accdcc59f57c2f8a1d522b12a34d036444e0851e9e6b5020ef94452ecde206deaa3420824897289e60093db2f88973ce47774d6958b5 -doccontainersize 871964 -doccontainerchecksum a2ca55e94871501d9c9ff48f4ca0c79ac3c73cc8c22cc97fefe910053f56f839e53f0fd9fa5fa6bf0abf03278fc02142b2cfff659cca8d30b6f80e62a42cb889 -docfiles size=218 +containersize 191140 +containerchecksum ba96647dfd2e6eb5ea3d8c03a6efc99a6122314b93c1ed911c1d8f2c01a44b0dda2605354ae53b291bf74e207a7a6ed8421e2919bd13637847fef27c7f0ef582 +doccontainersize 870100 +doccontainerchecksum 62cde36b43552f2a893fbb271cd5354eed19e7a022ceeb5ea52cfaefe8aa051f157029a7cff26c216d167656d1f33475e15b72e1000a496e831672e8d4ec2404 +docfiles size=217 RELOC/doc/latex/babel/README.md details="Readme" RELOC/doc/latex/babel/babel.pdf details="Package documentation" -srccontainersize 717808 -srccontainerchecksum f64774daa35225925723d61ee59863fbabc7f92470c8f54e9689590b546d75c0a1dbd4262beb1692e96a31fe5ccc5a52bf2d4750f1b814dff6f7e8e1d71e2b2d -srcfiles size=398 +srccontainersize 718440 +srccontainerchecksum cdabe36eb98fd4a20b3dd0066fd77b0df48ca24865bbd767bdeaa18416ea6b77f9fd0821ef962cb7b58bcc991830465eb02b904fc369ac90a8e1058a0190a411 +srcfiles size=397 RELOC/source/latex/babel/babel.dtx RELOC/source/latex/babel/babel.ins RELOC/source/latex/babel/bbcompat.dtx RELOC/source/latex/babel/bbidxglo.dtx RELOC/source/latex/babel/locale.zip -runfiles size=1033 +runfiles size=1035 RELOC/makeindex/babel/bbglo.ist RELOC/makeindex/babel/bbind.ist RELOC/tex/generic/babel/UKenglish.sty @@ -28381,6 +28383,7 @@ runfiles size=1033 RELOC/tex/generic/babel/locale/es/babel-es-MX.ini RELOC/tex/generic/babel/locale/es/babel-es.ini RELOC/tex/generic/babel/locale/es/babel-mexican.tex + RELOC/tex/generic/babel/locale/es/babel-mexicanspanish.tex RELOC/tex/generic/babel/locale/es/babel-spanish-mexico.tex RELOC/tex/generic/babel/locale/es/babel-spanish-mx.tex RELOC/tex/generic/babel/locale/es/babel-spanish.tex @@ -28886,7 +28889,7 @@ catalogue-contact-repository https://github.com/latex3/babel catalogue-ctan /macros/latex/required/babel/base catalogue-license lppl1.3 catalogue-topics multilingual -catalogue-version 3.77 +catalogue-version 3.78 name babel-albanian category Package @@ -42269,7 +42272,7 @@ catalogue-version 1.4 name bodeplot category Package -revision 63820 +revision 63946 shortdesc Draw Bode, Nyquist and Nichols plots with gnuplot or pgfplots relocated 1 longdesc This is a LaTeX package to plot Bode, Nichols, and Nyquist @@ -42283,15 +42286,15 @@ longdesc and unstable second order transfer functions. Support for both longdesc Gnuplot (default) and pgfplots (package option pgf). Support longdesc for linear and asymptotic approximation of magnitude and phase longdesc plots of any transfer function given poles, zeros, and gain. -containersize 4744 -containerchecksum 5afab6ca9c57f066d6e5461b3cfd2bcbf85a69df03b6a8f88990e9c80646d39122ed5f04174906969001bc624144d10f9aec54aabe48122b3e683f077b32ec48 -doccontainersize 726560 -doccontainerchecksum b582f5e588dc30144b42add6c8a44ab9f121b6bd520db11bdcee0fa0c4ac714cb585796ae3ea9e4885ee633b8d49180962778af0d8c5dbc09135f8613328c510 -docfiles size=244 +containersize 4944 +containerchecksum f6b070db631da86677fa529e94ff303b334e3e4a2c812d7e246e14ceafc929ac62e0ec4eb9eab538d23b81be832a3d5a798d5868983d37835a08aad981c5bb5e +doccontainersize 737444 +doccontainerchecksum 66e912824a48de5106d81c0eb1fcfb1a7760a8f6af5037d57cdd92bc2eb36dd9f55bb0bd5cadbda948578d8d71dbee8925f27c584fb7c3a49a7b0ba6e5bd8a87 +docfiles size=247 RELOC/doc/latex/bodeplot/README.md details="Readme" RELOC/doc/latex/bodeplot/bodeplot.pdf details="Package documentation" -srccontainersize 15216 -srccontainerchecksum 713dfd810409dbb0e82d8acb7d935f17c3b4f61ca111e430bcea5d121124293317b287fa8026aa54458c497fe0c92e63ef10237b353d25530403ae46c2347049 +srccontainersize 15648 +srccontainerchecksum bbd3abc8b626b3abbf8228b953f93bc597881554e334b8900b7352b34d431b9f53cfb597b91d403c88ef296c3e10a46943bb153415eb827de963da8b5eb2effd srcfiles size=22 RELOC/source/latex/bodeplot/bodeplot.dtx RELOC/source/latex/bodeplot/bodeplot.ins @@ -42303,7 +42306,7 @@ catalogue-contact-repository https://github.com/rlkamalapurkar/bodeplot catalogue-ctan /graphics/pgf/contrib/bodeplot catalogue-license lppl1.3c catalogue-topics engineering graphics-plot pgf-tikz -catalogue-version 1.0.8 +catalogue-version 1.1.0 name bohr category Package @@ -69016,7 +69019,7 @@ containerchecksum c73220abd1545907a1d8de37cb534d2c6bd2534f1b55f03c069f39f535c326 name collection-latexextra category Collection -revision 63865 +revision 63949 shortdesc LaTeX additional packages relocated 1 longdesc A very large collection of add-on packages for LaTeX. @@ -70420,6 +70423,7 @@ depend wordlike depend worksheet depend wrapfig depend wrapfig2 +depend wrapstuff depend wtref depend xargs depend xassoccnt @@ -70468,8 +70472,8 @@ depend zref-clever depend zref-vario depend zwgetfdate depend zwpagelayout -containersize 6712 -containerchecksum adda8da1ae2b6d1d5568894bd88f8e7f459ce32b29acf9cad27a8da07c41a2b21ff24c0b88e1561a57cbb016d51ac20c5cbd5c3bf5e90dbef2b6cbec8f859542 +containersize 6708 +containerchecksum e0ab8446572d1989529970fade3eabc1a14034536e3fb68be9e950f432bbc16aaacbe538ba1c0bc3bca71687f208e63246461e662f39d9189128871f2af676ca name collection-latexrecommended category Collection @@ -70993,7 +70997,7 @@ containerchecksum bc842942513a72c6a0f2346025739f09477ae1e920eaefc5e396e0b68ba534 name collection-pictures category Collection -revision 63908 +revision 63947 shortdesc Graphics, pictures, diagrams relocated 1 longdesc Including TikZ, pict, etc., but MetaPost and PStricks are @@ -71188,6 +71192,7 @@ depend tikz-truchet depend tikzbricks depend tikzcodeblocks depend tikzducks +depend tikzfill depend tikzinclude depend tikzlings depend tikzmark @@ -71226,8 +71231,8 @@ depend worldflags depend xistercian depend xpicture depend xypic -containersize 1520 -containerchecksum 110629ca298b24d06a765bb6551748bab874abbd835e0830eb9a720911061885d0a416a616cf48730a6e56c5b08bca71ab4b3beaee66c89aaacdb2f7ec6d7626 +containersize 1524 +containerchecksum 6236545f374404446cd1edf9632fd48e7d40e836947ce755dcc814bde5658ff6c78eaa70ffe5167dae853a49ae35cde5fc2196e62a0c87b1dc51fdb8313c57ee name collection-plaingeneric category Collection @@ -118779,7 +118784,7 @@ catalogue-version 1.0b name feyn category Package -revision 63935 +revision 63945 shortdesc A font for in-text Feynman diagrams relocated 1 longdesc Feyn may be used to produce relatively simple Feynman diagrams @@ -118788,11 +118793,11 @@ longdesc is good at drawing large diagrams for figures, the present longdesc package and its fonts allow diagrams within equations or text, longdesc at a matching size. The fonts are distributed as Metafont longdesc source, and macros for their use are also provided. -containersize 13512 -containerchecksum f0c26249af786c41f15369e7af5995f1183dea0a7fadc7cf9c4bbd038e9a431ad5b40d6ed25f1cfde831dd39b6eb2cd932fc99f38bc541e9d56dfc1d116fb417 -doccontainersize 522192 -doccontainerchecksum 093a3dbd96632fa57ccb62cd4f4f0244357dcfb4aa0036060f6d0ff6037a38c51cf587a857d20dd1b0d9a6cffe00eec87f37dd7f222ca9be150e1a53f45ee892 -docfiles size=152 +containersize 13508 +containerchecksum 30e3ca5e633d040fe2eaa88463a8c9fa6004b86c4ae264af9b8a9a3bf55f71f7e1eb21e656f2fa194ebc751648f411a094fe40fc6a2cade1fc31aa586da1317c +doccontainersize 534244 +doccontainerchecksum b420c19b69caf39cfa0e54bcfc90f291d9ddbed21d771669bf82a0fb04b4099fd494d2287144655366af7d0ea9594a74d64867a31754278ab1b97ffa507dfc5c +docfiles size=155 RELOC/doc/fonts/feyn/LICENCE RELOC/doc/fonts/feyn/README details="Package Readme" RELOC/doc/fonts/feyn/VERSION @@ -118809,9 +118814,9 @@ docfiles size=152 RELOC/doc/fonts/feyn/sample-two-loop.png RELOC/doc/fonts/feyn/sample-vertex.png RELOC/doc/fonts/feyn/style.css -srccontainersize 16212 -srccontainerchecksum d68a1574d8dd45290cd27ce8a4ed21f536339f145bf0882fc21d8f2e7cad8434011a6c128e1fa6240f445a645ccf1c8410511456a3f9d1a07c2812cd55267a84 -srcfiles size=16 +srccontainersize 16364 +srccontainerchecksum 578f093c588cd577ff696dd052ba969769f418dffa3b2450b71efeefd885105efcdc7be4ef9693bedc911940d2707eb084857f5db9197e74040211a9952d2209 +srcfiles size=17 RELOC/source/fonts/feyn/feyn.drv RELOC/source/fonts/feyn/feyn.dtx RELOC/source/fonts/feyn/feyn.ins @@ -118849,12 +118854,12 @@ runfiles size=42 RELOC/fonts/tfm/public/feyn/feynx18.tfm RELOC/fonts/tfm/public/feyn/feynx24.tfm RELOC/tex/latex/feyn/feyn.sty -catalogue-contact-home https://nxg.me.uk/dist/feyn/ +catalogue-contact-home https://purl.org/nxg/dist/feyn catalogue-contact-repository https://heptapod.host/nxg/feyn catalogue-ctan /fonts/feyn catalogue-license bsd2 catalogue-topics graphics-use physics font font-mf -catalogue-version 0.4.2 +catalogue-version 0.4.3 name feynmf category Package @@ -131458,7 +131463,7 @@ catalogue-version 001.001 name gfsneohellenic category Package -revision 54080 +revision 63944 shortdesc A font in the Neo-Hellenic style relocated 1 longdesc The NeoHellenic style evolved in academic circles in the 19th @@ -131469,10 +131474,10 @@ longdesc characters, and has been adjusted to work well with the longdesc cmbright fonts for mathematics support. LaTeX support of the longdesc fonts is provided, offering OT1, T1 and LGR encodings. execute addMap gfsneohellenic.map -containersize 977640 -containerchecksum bd8fbea65fafc3c09fd1a53ffd7de48e93f160a49bba902efe155913bbda5fd2bf38e0d4d2242ec8152dc869959128cfdad49ded95d196aed1c39fbaad62c527 -doccontainersize 10276 -doccontainerchecksum d10d56caab42b2bd25f246726616e359ee10f934469e59a818753d1e7c4d876018cfdb86f466c49f58122fe9d7e67ca6b811b25b5e2d94b120f296ce87a2a48c +containersize 977780 +containerchecksum 7290de85142975c61b28cc8d3e5919805590e2be5f5b442f0c371c393f92012ef6b00997bbac1aa1fb63914578e99eb5e6b26f6af8f51cb5ec7f4c53ede51fd6 +doccontainersize 10308 +doccontainerchecksum 231ea0eb57834e5b781cc3e8f49a85e2564756abe3812a432212fa7e85468117a1d80d6af5db8cec754eb1996d3b9716c12c403b1865d60b18660f454a2323b8 docfiles size=11 RELOC/doc/fonts/gfsneohellenic/OFL-FAQ.txt RELOC/doc/fonts/gfsneohellenic/OFL.txt @@ -131597,6 +131602,7 @@ catalogue-contact-home http://myria.math.aegean.gr/labs/dt/ catalogue-ctan /fonts/greek/gfs/gfsneohellenic catalogue-license other-free catalogue-topics font font-otf font-greek +catalogue-version 1.02 name gfsneohellenicmath category Package @@ -305889,7 +305895,7 @@ docfiles size=376 name texlive-scripts category TLCore -revision 63934 +revision 63943 shortdesc TeX Live infrastructure programs longdesc Includes install-tl, tl-portable, rungs, etc.; not needed for longdesc tlmgr to run but still ours. Not included in tlcritical. @@ -305897,10 +305903,10 @@ depend texlive-scripts.ARCH depend texlive.infra execute addMap mathpple.map postaction shortcut type=menu name="TeX Live command-line" cmd=TEXDIR/tlpkg/installer/tl-cmd.bat -containersize 113544 -containerchecksum a91738c6ce5a790a0ad369c73401428e9daa90b8ed510e70ace4d9c7eb443dd1b5e259c5b832a21fa7606813f6286371e42a5b45021c854bba7fdb547b4bfb46 +containersize 113528 +containerchecksum dc6b60c9ee379fb71971a48d11168b289ba173206b2193e44cd6bd330c1139da3b0ef21026ae4a506de6199b4e8eb4e7178c1e290bbef3c080da1aeaa437ad94 doccontainersize 418788 -doccontainerchecksum 6378ca3cf094edfb0975c678a88c3046f6de1dc5f516194713fa3af13bdca9bf2711ca9990128b1109ded7a5582393587f88ded60a76d7cc32bffbff444c7a0d +doccontainerchecksum 1f4841557dadac6ef7f8fc301d81bbe2dd18eeb016b9da54fcaa44d69e344f8a1e009efc5ef4fb71a9aad2b1dba784a23458688c2ff9efd736810f7bcc27be15 docfiles size=515 doc.html texmf-dist/doc/man/man1/fmtutil-sys.1 @@ -312750,6 +312756,43 @@ catalogue-license lppl1.3c catalogue-topics amusements graphics pgf-tikz catalogue-version 1.5 +name tikzfill +category Package +revision 63947 +shortdesc TikZ libraries for filling with images and patterns +relocated 1 +longdesc This is a collection of TikZ libraries which add further +longdesc options to fill TikZ paths with images and patterns. The +longdesc libraries comprise fillings with images from files and from +longdesc TikZ pictures. Also, patterns of hexagons and of rhombi are +longdesc provided. +containersize 4432 +containerchecksum f0c83eb9352dc6dd0aaf5e25ce340a5c586dfe600a620a0ff5b976f976361c35a68a71f78f675ce5f9fa61a1bc7a79f16a5813115e6f8b010fe18b0308d77ab1 +doccontainersize 622916 +doccontainerchecksum d1877f3e9035c27e750050367badfb4e0127706d0064c30ccf619673bdf403707e9509780a85bc6478a17b08d7bd7c84b302d863860941b85fdfcee7a7262c7c +docfiles size=192 + RELOC/doc/latex/tikzfill/CHANGES.md + RELOC/doc/latex/tikzfill/README.md details="Readme" + RELOC/doc/latex/tikzfill/tikzfill-doc.sty + RELOC/doc/latex/tikzfill/tikzfill.pdf details="Package documentation" + RELOC/doc/latex/tikzfill/tikzfill.tex +runfiles size=13 + RELOC/tex/latex/tikzfill/tikzfill-common.sty + RELOC/tex/latex/tikzfill/tikzfill.hexagon.sty + RELOC/tex/latex/tikzfill/tikzfill.image.sty + RELOC/tex/latex/tikzfill/tikzfill.rhombus.sty + RELOC/tex/latex/tikzfill/tikzfill.sty + RELOC/tex/latex/tikzfill/tikzlibraryfill.hexagon.code.tex + RELOC/tex/latex/tikzfill/tikzlibraryfill.image.code.tex + RELOC/tex/latex/tikzfill/tikzlibraryfill.rhombus.code.tex +catalogue-contact-bugs https://github.com/T-F-S/tikzfill/issues +catalogue-contact-home https://github.com/T-F-S/tikzfill +catalogue-contact-repository https://github.com/T-F-S/tikzfill.git +catalogue-ctan /graphics/pgf/contrib/tikzfill +catalogue-license lppl1.3 +catalogue-topics pgf-tikz expl3 +catalogue-version 1.0.0 + name tikzinclude category Package revision 28715 @@ -340074,6 +340117,36 @@ catalogue-license lppl1.3c catalogue-topics text-flow expl3 catalogue-version 6.0.0 +name wrapstuff +category Package +revision 63949 +shortdesc Wrapping text around stuff +relocated 1 +longdesc This package provides another implementation of text wrapping. +longdesc Its implementation benefits from the paragraph hooks available +longdesc since LaTeX 2021-06-01. +containersize 10888 +containerchecksum 821f724aa173935bd5f9fd2f5125808663c176970754720f91b755b571a3c586874621db837c071407c9e443b3582b78759e5843bdf9fdfa3d8b30e7e83f2db6 +doccontainersize 409780 +doccontainerchecksum 709c37d48a59a541883a844fefbcd62848446a338606e3a8c43ad268ac33a12034015661651d7e6ec25978708ee1775673c843ed687b6dfe957dcfb6b9b589c5 +docfiles size=105 + RELOC/doc/latex/wrapstuff/README.md details="Readme" + RELOC/doc/latex/wrapstuff/wrapstuff.pdf details="Package documentation" language="zh" +srccontainersize 14824 +srccontainerchecksum eaf00459a30ccc07aba360ad6a8e44accd22af231cee99412f57aea83a9788151ee6f49d66730d5e29e08d48e9908d4a1b7e571ac5fee2778f25a6ad20426e09 +srcfiles size=22 + RELOC/source/latex/wrapstuff/wrapstuff.dtx +runfiles size=19 + RELOC/tex/latex/wrapstuff/wrapstuff.sty +catalogue-contact-announce https://github.com/qinglee/wrapstuff/releases +catalogue-contact-bugs https://github.com/qinglee/wrapstuff/issues +catalogue-contact-repository https://github.com/qinglee/wrapstuff +catalogue-contact-support https://github.com/qinglee/wrapstuff/discussions +catalogue-ctan /macros/latex/contrib/wrapstuff +catalogue-license lppl1.3c +catalogue-topics text-flow expl3 +catalogue-version 0.1 + name wsemclassic category Package revision 31532 diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 index a853192ddc..abc8697b41 100644 --- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 +++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 @@ -1 +1 @@ -1e50e84dba4b58fc89a0ee6e4cab9382 texlive.tlpdb +dd0cd97e64e9fa5d47dd5df61b3f9120 texlive.tlpdb diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 index 304a8251de..1283d5be25 100644 --- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 +++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 @@ -1 +1 @@ -541089b492b0a76f19b0ffbdcb9d56c3f572aeebc9f3366fa84cd3e795fdd58cc030b8b58cca0c74702603799d54bac5169220eadb4642d7966d3c02525b06d4 texlive.tlpdb +ce5fc1def2cc1c4c7c5fe03ef113c6f788869bc53bd3ded838a31cad3c09899a93c812b29a0123a03164b3f5cdfdd32d5bdba16edfdbe88b792e86b5e0282db2 texlive.tlpdb diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc index 654f64bd24..8b66540ece 100644 --- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc +++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc @@ -1,10 +1,10 @@ -----BEGIN PGP SIGNATURE----- -iQEcBAEBCgAGBQJi10P8AAoJEEzhh34ZQ4xwmaAIAJ/2qHXKntqihxKJhzY9N2bB -4mifIAHWUmdfTVn1cQqhjutca//p1IISvtlkoRdv7ofEzuh3IKbSW/XPpD1NFhN+ -SNxY/xGFHHPf+8BzbbpmRvkBUSRFsiK3JE3pOOdFKLPIyrvTTpD/FJRMmqbKB+24 -qGwluP6AXC9MSuoGMEFdAQAa+oqG4EBKQuJ3WL2iP0MPx/Z9kjYxfQIaeLfAf43k -ForZYr6iaFP4Yp78WC7PHyu2y0kQctOAmPqmuDTpZ1drWbhC2ZkkYX4qfOdyRsZG -FvtYFEq5X0+nKFod0b5yKU1brfRZn8Uy2+LlVJj+2GNS/hrcpaxJOf9kxc9vnDM= -=pAX+ +iQEcBAEBCgAGBQJi2JWbAAoJEEzhh34ZQ4xwhCcIAKWtSeqryC/Yo88Vn20e4Aza +85DUGxcRrjpyzi/t95GbvA21Jge36pgmVXYfbaf2nWQ02DXP0FyDqNH1d/15Gg53 +bRoqBMulKhwv5JP1/+WQxOlukY5CcOjY0t6BdVihl44vaWQz2+x4An++583Z/DMF +ryPnoU2QUmDoqro7bqN/og0/WjE7bW8UybLP/mYBCxOpPftiAnznA8O88dhv35sl +6T/1iq9m7NLZybpv/05xvw0J9KQJ3ubosKs1mQvatzIbyjnfBPiKagy8oHpkFp0Y +zVMBtOEpgkrXY28x+G19B7MsvrhdcMQgIakU/5m5EeBUCtrhIP1kKhTj1NW2qMs= +=ggwn -----END PGP SIGNATURE----- diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz index 37ee845841..8eb1147b20 100644 Binary files a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz and b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz differ diff --git a/systems/win32/miktex/tm/packages/next/pr.ini b/systems/win32/miktex/tm/packages/next/pr.ini index def8d03c7e..aeda28a7ce 100644 --- a/systems/win32/miktex/tm/packages/next/pr.ini +++ b/systems/win32/miktex/tm/packages/next/pr.ini @@ -1,13 +1,13 @@ [repository] -date=1658261912 +date=1658348336 lastupd=miktex-arctrl-bin-2.9 miktex-arctrl-bin-x64-2.9 miktex-asymptote-bin-2.9 miktex-asymptote-bin-x64-2.9 miktex-autosp-bin-2.9 miktex-autosp-bin-x64-2.9 miktex-axohelp-bin-2.9 miktex-axohelp-bin-x64-2.9 miktex-bibarts-bin-2.9 miktex-bibarts-bin-x64-2.9 miktex-bibtex-bin-2.9 miktex-bibtex-bin-x64-2.9 miktex-bibtex8bit-bin-2.9 miktex-bibtex8bit-bin-x64-2.9 miktex-bzip2-bin-2.9 miktex-bzip2-bin-x64-2.9 miktex-cairo-bin-2.9 miktex-cairo-bin-x64-2.9 miktex-chktex-bin-2.9 miktex-chktex-bin-x64-2.9 -lstdigest=26caabb98b767e3c916fefb94e1fb7e7 +lstdigest=dc79ad48fe4d8eb8b3397c0aaa8b9c7a numpkg=5804 relstate=next -version=8235 +version=8236 ;;;;This configuration file is signed by a MiKTeX maintainer. The signature follows. ;;;;-----BEGIN MIKTEX SIGNATURE----- -;;;; signature/miktex: to8fX4vfxZF80IPKXgMc7BO3XT6ZnzfIE/oiyYHK3EV2CvdoyArq6Km3bO/0Xi7szESvE2MNSuqM5x2XXLJR6b8GV5383y2jkeWV8lLmB85Ql/2eI4gHKSCpKsuaOU9ilsj3dqpooDkmd1jKFR7MtnWelny+9BsPUiJJLSuaPDkOUX5joIu+OauhwDVRMOql4kaoS/kSKLxeBGxn9Lg+dnAx6z7d3//+n1awM1YQcjay9D5tbXJddl5ksKaWbe+k8s65iHWXvJIWHVJnVyWeqZ2e9TB+7cOcNiZpIdOOJ+x1LCJSXYrdOTNd5xrqOxZryKG3W1rXDETtqnevHTk1mQ== +;;;; signature/miktex: RKaLD0B7abhFzwvVqpe36nuQ5xwDy+STLeEKTza5iCjijgP5IVxBoay6kiSGEuIaC8e3KjBgpmZO2YoBsMpBZYBZ2NCQA/FOe3QixGyaOHlsHKIGH4epsUEmXnpFU1rF16+OZz0O2Inyagh5ArSg5SRhMnR4K/wGJZdkzYfH86IIZMrflhKnhHBHh3xBLcFygHp2sAOvS+ye8y1R1PKqtz9WMRovx/OP2IKb+kJgqkNa/NU8KqGHbpwb702M9t5z3zE30qMXeGvgVoFY58fth/cqBINLT2+8wcbSGIdr0L5L40Y9Yj9oBK62g3a5mjDGbt92mkata6vQVCJVPFFsow== ;;;;-----END MIKTEX SIGNATURE----- diff --git a/systems/win32/miktex/tm/packages/pr.ini b/systems/win32/miktex/tm/packages/pr.ini index 1b2f5e9a72..6dfaad9a5f 100644 --- a/systems/win32/miktex/tm/packages/pr.ini +++ b/systems/win32/miktex/tm/packages/pr.ini @@ -1,13 +1,13 @@ [repository] -date=1658261516 +date=1658347908 lastupd=denisbdoc font-change-xetex font-change-xetex__doc font-change-xetex__source miktex-arctrl-bin-2.9 miktex-arctrl-bin-x64-2.9 miktex-asymptote-bin-2.9 miktex-asymptote-bin-x64-2.9 miktex-autosp-bin-2.9 miktex-autosp-bin-x64-2.9 miktex-axohelp-bin-2.9 miktex-axohelp-bin-x64-2.9 miktex-bibarts-bin-2.9 miktex-bibarts-bin-x64-2.9 miktex-bibtex-bin-2.9 miktex-bibtex-bin-x64-2.9 miktex-bibtex8bit-bin-2.9 miktex-bibtex8bit-bin-x64-2.9 miktex-bzip2-bin-2.9 miktex-bzip2-bin-x64-2.9 -lstdigest=3fb7fe1ec71eb0fcb9ded972494a8e85 +lstdigest=49700faa223b82c7583411c7e69fcad7 numpkg=5804 relstate=stable -version=8235 +version=8236 ;;;;This configuration file is signed by a MiKTeX maintainer. The signature follows. ;;;;-----BEGIN MIKTEX SIGNATURE----- -;;;; signature/miktex: DGVpNHXjD4cqOQLfDjCpZhspObiZYLpE5/O9ptPKv4iHh48roVsUWiqFpCQ05xbyXDa57AswkeKveT96+IwzzovB6idcO+1x81LqejIi1GscVb94XOYwfSJD3u03a56E9WV/Fu8vv+l0e8Rla/BgtjEB+RrxYhtY9E7Ebuym5jZihTsuhXepANJ4td0m1VWFFiuMzneF6RUYji2Ki5TKEO6bAKec81biIs2gI9yb+i3d77DiGgLMGXUmvwQmN7UMEtxFkIN+XWYwLhfRq+J2inUdmsoG0goiJ9qhS0NMydb00ntQg3aA82gz2qPf4kz7SjRcUw1dCSzx22hIqPvXkQ== +;;;; signature/miktex: e0YWTCmlDtWTXuiMoQTUpMq/xPj4P/EBcEAFbEU5YXl5Eg9aulNtrYndXdACtNfQaujql8PMZyF20knMEIOtXhlNtsVZuXg99h2SvNSDzFRTukdieVws930KyH5N/hvxRu1KfJgA5obAFouLKdek1l/TKf1Bxf1hHnviUwoGH6A6RITQTYc+F4K0UwzKJYkd41fIJU8GVYKz7cX1t02tXeLDSKB15MhV5UCBg1HADSpdy/bjbYBpQ12B4PKI4cMxTboRCudmNbhocN1tRZAqX8u91zUDdF+dO0IAt7zas0LeHkwe0LIwP+WkrGRQw6/pp8ui2TFJSORiqecD+oTbug== ;;;;-----END MIKTEX SIGNATURE----- diff --git a/timestamp b/timestamp index cc397d84bd..a63ee5cd07 100644 --- a/timestamp +++ b/timestamp @@ -2,4 +2,4 @@ # The source CTAN of this site's material: dante.ctan.org # The year-month-day-hour-minute of this site's material: -2022-07-20-02-02 +2022-07-21-02-02 -- cgit v1.2.3