summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--FILES.byname758
-rw-r--r--FILES.byname.gzbin2542713 -> 2543391 bytes
-rw-r--r--FILES.last07days695
-rw-r--r--biblio/bibtex/bibtex-x/ChangeLog5
-rw-r--r--biblio/bibtex/bibtex-x/bibtex.c6
-rw-r--r--biblio/bibtex/bibtex-x/sysdep.h5
-rwxr-xr-xbiblio/bibtex/bibtex-x/tests/bibtex8u-mem.test4
-rw-r--r--biblio/ctan-bibdata/ctan.bib16
-rw-r--r--biblio/ctan-bibdata/ctan.pdfbin3699058 -> 3698348 bytes
-rw-r--r--macros/latex/contrib/babel-contrib/greek/README.md2
-rw-r--r--macros/latex/contrib/babel-contrib/greek/babel-greek-doc.html33
-rw-r--r--macros/latex/contrib/babel-contrib/greek/babel-greek-doc.rst10
-rw-r--r--macros/latex/contrib/babel-contrib/greek/babel-greek.dtx257
-rw-r--r--macros/latex/contrib/babel-contrib/greek/babel-greek.pdfbin549976 -> 558854 bytes
-rw-r--r--macros/latex/contrib/babel-contrib/greek/test-athnum.pdfbin178616 -> 189338 bytes
-rw-r--r--macros/latex/contrib/babel-contrib/greek/test-case-changing.tex1117
-rw-r--r--macros/latex/contrib/babel-contrib/greek/test-greek-ini.tex7
-rw-r--r--macros/latex/contrib/babel-contrib/greek/test-greek.pdfbin466409 -> 495833 bytes
-rw-r--r--macros/latex/contrib/babel-contrib/greek/test-greek.tex416
-rw-r--r--macros/latex/contrib/readablecv/ReadableCV.cls50
-rw-r--r--macros/latex/contrib/readablecv/ReadableCV.pdfbin135615 -> 135316 bytes
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb71
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb.md52
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha5122
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc16
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb.xzbin2468136 -> 2467140 bytes
-rw-r--r--systems/win32/miktex/tm/packages/files.csv.lzmabin760225 -> 762315 bytes
-rw-r--r--systems/win32/miktex/tm/packages/next/files.csv.lzmabin760661 -> 763027 bytes
-rw-r--r--systems/win32/miktex/tm/packages/next/pr.ini10
-rw-r--r--systems/win32/miktex/tm/packages/pr.ini12
-rw-r--r--timestamp2
-rw-r--r--web/c_cpp/cweb/Makefile7
-rw-r--r--web/c_cpp/cweb/comm-bs.ch12
-rw-r--r--web/c_cpp/cweb/comm-mac.ch50
-rw-r--r--web/c_cpp/cweb/comm-ql.ch32
-rw-r--r--web/c_cpp/cweb/comm-vms.ch4
-rw-r--r--web/c_cpp/cweb/comm-w32.ch12
-rw-r--r--web/c_cpp/cweb/common.c321
-rw-r--r--web/c_cpp/cweb/common.h33
-rw-r--r--web/c_cpp/cweb/common.w151
-rw-r--r--web/c_cpp/cweb/ctang-bs.ch20
-rw-r--r--web/c_cpp/cweb/ctang-pc.ch4
-rw-r--r--web/c_cpp/cweb/ctang-ql.ch8
-rw-r--r--web/c_cpp/cweb/ctang-vms.ch6
-rw-r--r--web/c_cpp/cweb/ctang-w32.ch12
-rw-r--r--web/c_cpp/cweb/ctangle.c392
-rw-r--r--web/c_cpp/cweb/ctangle.w128
-rw-r--r--web/c_cpp/cweb/cweav-bs.ch35
-rw-r--r--web/c_cpp/cweb/cweav-pc.ch11
-rw-r--r--web/c_cpp/cweb/cweav-ql.ch8
-rw-r--r--web/c_cpp/cweb/cweav-vms.ch6
-rw-r--r--web/c_cpp/cweb/cweav-w32.ch18
-rw-r--r--web/c_cpp/cweb/cweave.w268
-rw-r--r--web/c_cpp/cweb/cwebmac.tex64
-rw-r--r--web/c_cpp/cweb/cwebman.pdfbin346011 -> 346283 bytes
-rw-r--r--web/c_cpp/cweb/cwebman.tex23
-rw-r--r--web/c_cpp/cweb/examples/wordtest.w2
-rw-r--r--web/c_cpp/cweb/prod.w2
58 files changed, 2164 insertions, 2961 deletions
diff --git a/FILES.byname b/FILES.byname
index 21ff786834..0b9128868c 100644
--- a/FILES.byname
+++ b/FILES.byname
@@ -2056,12 +2056,12 @@
2023/07/04 | 1675 | biblio/citation-style-language/README.md
2023/07/04 | 12878 | biblio/citation-style-language/vancouver.csl
2023/07/04 | 4522435 | biblio/citation-style-language.zip
-2023/08/18 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx
+2023/08/19 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx
2022/10/08 | 127 | biblio/ctan-bibdata/biblatex-ctan/ctan.cbx
-2023/08/18 | 2805220 | biblio/ctan-bibdata/ctan.bib
-2023/08/18 | 3698303 | biblio/ctan-bibdata/ctan.pdf
+2023/08/19 | 2805595 | biblio/ctan-bibdata/ctan.bib
+2023/08/19 | 3699058 | biblio/ctan-bibdata/ctan.pdf
2023/01/16 | 1489 | biblio/ctan-bibdata/README
-2023/08/18 | 4099346 | biblio/ctan-bibdata.zip
+2023/08/19 | 4100294 | biblio/ctan-bibdata.zip
2023/02/23 | 3126 | biblio/pbibtex/pbibtex-base/cpp.awk
2023/02/23 | 1009 | biblio/pbibtex/pbibtex-base/generate.sh
2023/02/23 | 22362 | biblio/pbibtex/pbibtex-base/jabbrv.bst
@@ -5421,7 +5421,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
-2023/08/18 | 159596 | FILES.last07days
+2023/08/19 | 152952 | 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
@@ -212719,26 +212719,25 @@
2021/02/27 | 791513 | macros/latex/contrib/babel-contrib/german.zip
2023/03/17 | 11406 | macros/latex/contrib/babel-contrib/greek/athnum.dtx
2023/03/17 | 181371 | macros/latex/contrib/babel-contrib/greek/athnum.pdf
-2023/06/01 | 57177 | macros/latex/contrib/babel-contrib/greek/babel-greek-doc.html
-2023/06/01 | 18368 | macros/latex/contrib/babel-contrib/greek/babel-greek-doc.rst
-2023/06/01 | 77830 | macros/latex/contrib/babel-contrib/greek/babel-greek.dtx
+2023/08/18 | 57479 | macros/latex/contrib/babel-contrib/greek/babel-greek-doc.html
+2023/08/18 | 18588 | macros/latex/contrib/babel-contrib/greek/babel-greek-doc.rst
+2023/08/18 | 79013 | macros/latex/contrib/babel-contrib/greek/babel-greek.dtx
2023/03/17 | 3716 | macros/latex/contrib/babel-contrib/greek/babel-greek.ins
-2023/06/01 | 549976 | macros/latex/contrib/babel-contrib/greek/babel-greek.pdf
+2023/08/19 | 558854 | macros/latex/contrib/babel-contrib/greek/babel-greek.pdf
2023/03/17 | 6105 | macros/latex/contrib/babel-contrib/greek/grmath.dtx
2023/03/17 | 120493 | macros/latex/contrib/babel-contrib/greek/grmath.pdf
-2023/06/01 | 1211 | macros/latex/contrib/babel-contrib/greek/README.md
-2023/06/01 | 178616 | macros/latex/contrib/babel-contrib/greek/test-athnum.pdf
+2023/08/18 | 1209 | macros/latex/contrib/babel-contrib/greek/README.md
+2023/08/19 | 189338 | macros/latex/contrib/babel-contrib/greek/test-athnum.pdf
2023/03/17 | 2228 | macros/latex/contrib/babel-contrib/greek/test-athnum.tex
-2023/06/01 | 37582 | macros/latex/contrib/babel-contrib/greek/test-case-changing.tex
2023/03/17 | 1347 | macros/latex/contrib/babel-contrib/greek/test-greek-8bitcompat.tex
-2023/03/17 | 2119 | macros/latex/contrib/babel-contrib/greek/test-greek-ini.tex
+2023/08/19 | 2143 | macros/latex/contrib/babel-contrib/greek/test-greek-ini.tex
2023/03/17 | 5473 | macros/latex/contrib/babel-contrib/greek/test-greeknum.tex
-2023/06/01 | 466409 | macros/latex/contrib/babel-contrib/greek/test-greek.pdf
-2023/06/01 | 29348 | macros/latex/contrib/babel-contrib/greek/test-greek.tex
+2023/08/19 | 495833 | macros/latex/contrib/babel-contrib/greek/test-greek.pdf
+2023/08/19 | 32337 | macros/latex/contrib/babel-contrib/greek/test-greek.tex
2023/03/17 | 6238 | macros/latex/contrib/babel-contrib/greek/test-lgr-fixes.tex
2023/03/17 | 184955 | macros/latex/contrib/babel-contrib/greek/usage.pdf
2023/03/17 | 10067 | macros/latex/contrib/babel-contrib/greek/usage.tex
-2023/06/01 | 1752641 | macros/latex/contrib/babel-contrib/greek.zip
+2023/08/19 | 1781186 | macros/latex/contrib/babel-contrib/greek.zip
2023/08/17 | 125731 | macros/latex/contrib/babel-contrib/hebrew/hebrew.dtx
2023/08/17 | 3570 | macros/latex/contrib/babel-contrib/hebrew/hebrew.ins
2023/08/17 | 410253 | macros/latex/contrib/babel-contrib/hebrew/hebrew.pdf
@@ -235034,12 +235033,12 @@
2003/02/02 | 0 | macros/latex/contrib/rcs/src/TODO
2007/06/06 | 177878 | macros/latex/contrib/rcs.zip
2020/05/15 | 42657 | macros/latex/contrib/readablecv/profilepic.jpg
-2021/01/14 | 15182 | macros/latex/contrib/readablecv/ReadableCV.cls
-2021/01/14 | 135615 | macros/latex/contrib/readablecv/ReadableCV.pdf
+2023/08/19 | 15712 | macros/latex/contrib/readablecv/ReadableCV.cls
+2023/08/19 | 135316 | macros/latex/contrib/readablecv/ReadableCV.pdf
2021/01/14 | 9786 | macros/latex/contrib/readablecv/ReadableCV.tex
2021/01/14 | 426 | macros/latex/contrib/readablecv/README.md
2020/04/20 | 32720 | macros/latex/contrib/readablecv/sig.png
-2021/01/14 | 211848 | macros/latex/contrib/readablecv.zip
+2023/08/19 | 211584 | macros/latex/contrib/readablecv.zip
2021/09/17 | 530275 | macros/latex/contrib/readarray/readarray.pdf
2021/09/17 | 21856 | macros/latex/contrib/readarray/readarray.sty
2021/09/17 | 41408 | macros/latex/contrib/readarray/readarray.tex
@@ -285989,7 +285988,7 @@
2021/05/03 | 14218 | support/TeX4ht/source/tex4ht-htcmd.tex
2021/05/03 | 70683 | support/TeX4ht/source/tex4ht-html0.tex
2021/05/03 | 164748 | support/TeX4ht/source/tex4ht-html32.tex
-2023/06/30 | 625216 | support/TeX4ht/source/tex4ht-html4.tex
+2023/08/19 | 625312 | support/TeX4ht/source/tex4ht-html4.tex
2023/01/10 | 12023 | support/TeX4ht/source/tex4ht-html5.tex
2021/06/17 | 648233 | support/TeX4ht/source/tex4ht-html-speech.tex
2021/05/03 | 59483 | support/TeX4ht/source/tex4ht-html-speech-xtpipes.tex
@@ -292042,8 +292041,8 @@
2019/02/28 | 3376 | systems/texlive/tlnet/archive/chordbars.r49569.tar.xz
2019/05/06 | 565268 | systems/texlive/tlnet/archive/chordbox.doc.r51000.tar.xz
2019/05/06 | 3376 | systems/texlive/tlnet/archive/chordbox.r51000.tar.xz
-2023/08/08 | 12772 | systems/texlive/tlnet/archive/chronology.doc.r67840.tar.xz
-2023/08/08 | 1644 | systems/texlive/tlnet/archive/chronology.r67840.tar.xz
+2023/08/19 | 402152 | systems/texlive/tlnet/archive/chronology.doc.r67973.tar.xz
+2023/08/19 | 1944 | systems/texlive/tlnet/archive/chronology.r67973.tar.xz
2019/02/28 | 233192 | systems/texlive/tlnet/archive/chronosys.doc.r26700.tar.xz
2019/02/28 | 7956 | systems/texlive/tlnet/archive/chronosys.r26700.tar.xz
2019/02/28 | 191012 | systems/texlive/tlnet/archive/chscite.doc.r28552.tar.xz
@@ -292328,7 +292327,7 @@
2020/03/04 | 408 | systems/texlive/tlnet/archive/collection-langpolish.r54074.tar.xz
2023/05/16 | 400 | systems/texlive/tlnet/archive/collection-langportuguese.r67125.tar.xz
2023/06/09 | 396 | systems/texlive/tlnet/archive/collection-langspanish.r67307.tar.xz
-2023/08/17 | 6944 | systems/texlive/tlnet/archive/collection-latexextra.r67945.tar.xz
+2023/08/19 | 6936 | systems/texlive/tlnet/archive/collection-latexextra.r67974.tar.xz
2022/06/10 | 700 | systems/texlive/tlnet/archive/collection-latex.r63515.tar.xz
2023/01/11 | 744 | systems/texlive/tlnet/archive/collection-latexrecommended.r65512.tar.xz
2023/08/06 | 1008 | systems/texlive/tlnet/archive/collection-luatex.r67821.tar.xz
@@ -296960,6 +296959,8 @@
2019/02/28 | 15228 | systems/texlive/tlnet/archive/logicpuzzle.r34491.tar.xz
2022/06/23 | 960252 | systems/texlive/tlnet/archive/logix.doc.r63688.tar.xz
2022/06/23 | 2343812 | systems/texlive/tlnet/archive/logix.r63688.tar.xz
+2023/08/19 | 649608 | systems/texlive/tlnet/archive/logoetalab.doc.r67974.tar.xz
+2023/08/19 | 13508 | systems/texlive/tlnet/archive/logoetalab.r67974.tar.xz
2019/02/28 | 67724 | systems/texlive/tlnet/archive/logpap.doc.r15878.tar.xz
2019/02/28 | 5880 | systems/texlive/tlnet/archive/logpap.r15878.tar.xz
2019/02/28 | 22100 | systems/texlive/tlnet/archive/logpap.source.r15878.tar.xz
@@ -300123,8 +300124,8 @@
2022/06/27 | 8644 | systems/texlive/tlnet/archive/pwebmac.r63731.tar.xz
2023/02/27 | 167592 | systems/texlive/tlnet/archive/pxbase.doc.r66187.tar.xz
2023/02/27 | 12464 | systems/texlive/tlnet/archive/pxbase.r66187.tar.xz
-2023/02/23 | 323720 | systems/texlive/tlnet/archive/pxchfon.doc.r66064.tar.xz
-2023/02/23 | 19952 | systems/texlive/tlnet/archive/pxchfon.r66064.tar.xz
+2023/08/19 | 326908 | systems/texlive/tlnet/archive/pxchfon.doc.r67972.tar.xz
+2023/08/19 | 20228 | systems/texlive/tlnet/archive/pxchfon.r67972.tar.xz
2022/07/24 | 211444 | systems/texlive/tlnet/archive/pxcjkcat.doc.r63967.tar.xz
2022/07/24 | 10196 | systems/texlive/tlnet/archive/pxcjkcat.r63967.tar.xz
2019/02/28 | 421672 | systems/texlive/tlnet/archive/pxfonts.doc.r15878.tar.xz
@@ -300867,8 +300868,8 @@
2019/02/28 | 292656 | systems/texlive/tlnet/archive/simplecv.doc.r35537.tar.xz
2019/02/28 | 2112 | systems/texlive/tlnet/archive/simplecv.r35537.tar.xz
2019/02/28 | 5844 | systems/texlive/tlnet/archive/simplecv.source.r35537.tar.xz
-2023/08/12 | 2138936 | systems/texlive/tlnet/archive/simpleicons.doc.r67888.tar.xz
-2023/08/12 | 2925012 | systems/texlive/tlnet/archive/simpleicons.r67888.tar.xz
+2023/08/19 | 2141900 | systems/texlive/tlnet/archive/simpleicons.doc.r67971.tar.xz
+2023/08/19 | 2929684 | systems/texlive/tlnet/archive/simpleicons.r67971.tar.xz
2019/02/28 | 224844 | systems/texlive/tlnet/archive/simpleinvoice.doc.r45673.tar.xz
2019/02/28 | 2420 | systems/texlive/tlnet/archive/simpleinvoice.r45673.tar.xz
2023/03/24 | 130936 | systems/texlive/tlnet/archive/simplekv.doc.r66655.tar.xz
@@ -301553,13 +301554,13 @@
2023/08/16 | 108860 | systems/texlive/tlnet/archive/tex4ht.amd64-freebsd.r67940.tar.xz
2023/08/16 | 87320 | systems/texlive/tlnet/archive/tex4ht.amd64-netbsd.r67940.tar.xz
2023/08/16 | 69948 | systems/texlive/tlnet/archive/tex4ht.armhf-linux.r67940.tar.xz
-2023/08/17 | 136384 | systems/texlive/tlnet/archive/tex4ht.doc.r67952.tar.xz
+2023/08/19 | 136384 | systems/texlive/tlnet/archive/tex4ht.doc.r67975.tar.xz
2023/08/16 | 93764 | systems/texlive/tlnet/archive/tex4ht.i386-freebsd.r67940.tar.xz
2023/08/16 | 91236 | systems/texlive/tlnet/archive/tex4ht.i386-linux.r67940.tar.xz
2023/08/16 | 76184 | systems/texlive/tlnet/archive/tex4ht.i386-netbsd.r67940.tar.xz
2023/08/16 | 83936 | systems/texlive/tlnet/archive/tex4ht.i386-solaris.r67940.tar.xz
-2023/08/17 | 1102924 | systems/texlive/tlnet/archive/tex4ht.r67952.tar.xz
-2023/08/17 | 1450988 | systems/texlive/tlnet/archive/tex4ht.source.r67952.tar.xz
+2023/08/19 | 1103040 | systems/texlive/tlnet/archive/tex4ht.r67975.tar.xz
+2023/08/19 | 1451008 | systems/texlive/tlnet/archive/tex4ht.source.r67975.tar.xz
2023/08/16 | 184636 | systems/texlive/tlnet/archive/tex4ht.universal-darwin.r67940.tar.xz
2023/08/16 | 62092 | systems/texlive/tlnet/archive/tex4ht.windows.r67940.tar.xz
2023/08/16 | 57992 | systems/texlive/tlnet/archive/tex4ht.x86_64-cygwin.r67940.tar.xz
@@ -301820,7 +301821,7 @@
2022/09/13 | 600 | systems/texlive/tlnet/archive/texlive-scripts.amd64-freebsd.r64356.tar.xz
2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.amd64-netbsd.r64356.tar.xz
2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.armhf-linux.r64356.tar.xz
-2023/08/18 | 428628 | systems/texlive/tlnet/archive/texlive-scripts.doc.r67954.tar.xz
+2023/08/19 | 428768 | systems/texlive/tlnet/archive/texlive-scripts.doc.r67964.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
@@ -301842,7 +301843,7 @@
2022/09/13 | 592 | systems/texlive/tlnet/archive/texlive-scripts.i386-linux.r64356.tar.xz
2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.i386-netbsd.r64356.tar.xz
2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.i386-solaris.r64356.tar.xz
-2023/08/18 | 114132 | systems/texlive/tlnet/archive/texlive-scripts.r67954.tar.xz
+2023/08/19 | 114124 | systems/texlive/tlnet/archive/texlive-scripts.r67964.tar.xz
2022/09/13 | 580 | systems/texlive/tlnet/archive/texlive-scripts.universal-darwin.r64356.tar.xz
2023/05/14 | 60312 | systems/texlive/tlnet/archive/texlive-scripts.windows.r67095.tar.xz
2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.x86_64-cygwin.r64356.tar.xz
@@ -303713,16 +303714,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
2023/08/07 | 125713 | systems/texlive/tlnet/install-tl
-2023/08/18 | 5737445 | systems/texlive/tlnet/install-tl-unx.tar.gz
-2023/08/18 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
-2023/08/18 | 488 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
+2023/08/19 | 5736248 | systems/texlive/tlnet/install-tl-unx.tar.gz
+2023/08/19 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
+2023/08/19 | 488 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
2023/05/13 | 5083 | systems/texlive/tlnet/install-tl-windows.bat
-2023/08/18 | 21038675 | systems/texlive/tlnet/install-tl-windows.exe
-2023/08/18 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
-2023/08/18 | 488 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
-2023/08/18 | 26025609 | systems/texlive/tlnet/install-tl.zip
-2023/08/18 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
-2023/08/18 | 488 | systems/texlive/tlnet/install-tl.zip.sha512.asc
+2023/08/19 | 21035590 | systems/texlive/tlnet/install-tl-windows.exe
+2023/08/19 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
+2023/08/19 | 488 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
+2023/08/19 | 26025603 | systems/texlive/tlnet/install-tl.zip
+2023/08/19 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
+2023/08/19 | 488 | systems/texlive/tlnet/install-tl.zip.sha512.asc
2023/03/19 | 1229 | systems/texlive/tlnet/README.md
2023/03/19 | 0 | systems/texlive/tlnet/TEXLIVE_2023
2023/01/17 | 8401 | systems/texlive/tlnet/tlpkg/gpg/pubring.gpg
@@ -303732,7 +303733,7 @@
2023/01/17 | 1280 | systems/texlive/tlnet/tlpkg/gpg/trustdb.gpg
2023/08/03 | 50576 | systems/texlive/tlnet/tlpkg/installer/config.guess
2010/11/11 | 11651 | systems/texlive/tlnet/tlpkg/installer/COPYING.MinGW-runtime.txt
-2023/08/17 | 7419 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
+2023/08/18 | 7415 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
2023/05/31 | 215902 | 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
@@ -303774,12 +303775,12 @@
2023/02/21 | 20371 | systems/texlive/tlnet/tlpkg/TeXLive/TLCrypto.pm
2021/12/21 | 5429 | systems/texlive/tlnet/tlpkg/TeXLive/TLDownload.pm
2023/04/08 | 28167 | systems/texlive/tlnet/tlpkg/TeXLive/TLPaper.pm
-2023/08/18 | 18223438 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
-2023/08/18 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
+2023/08/19 | 18225442 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
+2023/08/19 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
2023/02/20 | 86803 | systems/texlive/tlnet/tlpkg/TeXLive/TLPDB.pm
-2023/08/18 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
-2023/08/18 | 488 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
-2023/08/18 | 2467644 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
+2023/08/19 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
+2023/08/19 | 488 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
+2023/08/19 | 2468136 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
2023/02/20 | 58928 | systems/texlive/tlnet/tlpkg/TeXLive/TLPOBJ.pm
2023/06/11 | 42749 | systems/texlive/tlnet/tlpkg/TeXLive/TLPSRC.pm
2023/02/21 | 16138 | systems/texlive/tlnet/tlpkg/TeXLive/TLTREE.pm
@@ -307368,6 +307369,8 @@
2021/03/25 | 52672 | systems/win32/miktex/tm/packages/addfont.tar.lzma
2019/05/01 | 19563 | systems/win32/miktex/tm/packages/addliga.tar.lzma
2018/12/18 | 141502 | systems/win32/miktex/tm/packages/addlines.tar.lzma
+2023/08/19 | 2126 | systems/win32/miktex/tm/packages/addtoluatexpath__doc.tar.lzma
+2023/08/19 | 1679 | systems/win32/miktex/tm/packages/addtoluatexpath.tar.lzma
2011/09/01 | 166651 | systems/win32/miktex/tm/packages/adfathesis.tar.lzma
2019/10/15 | 402320 | systems/win32/miktex/tm/packages/adforn.tar.lzma
2019/10/15 | 415013 | systems/win32/miktex/tm/packages/adfsymbols.tar.lzma
@@ -307498,8 +307501,10 @@
2022/06/12 | 1182581 | systems/win32/miktex/tm/packages/aomart__doc.tar.lzma
2022/06/12 | 27553 | systems/win32/miktex/tm/packages/aomart__source.tar.lzma
2022/06/12 | 14021 | systems/win32/miktex/tm/packages/aomart.tar.lzma
+2023/08/19 | 552746 | systems/win32/miktex/tm/packages/apa6__doc.tar.lzma
2011/07/04 | 257190 | systems/win32/miktex/tm/packages/apa6e.tar.lzma
-2020/01/14 | 613370 | systems/win32/miktex/tm/packages/apa6.tar.lzma
+2023/08/19 | 38424 | systems/win32/miktex/tm/packages/apa6__source.tar.lzma
+2023/08/19 | 14088 | systems/win32/miktex/tm/packages/apa6.tar.lzma
2022/07/30 | 749053 | systems/win32/miktex/tm/packages/apa7__doc.tar.lzma
2022/07/30 | 33284 | systems/win32/miktex/tm/packages/apa7__source.tar.lzma
2022/07/30 | 14452 | systems/win32/miktex/tm/packages/apa7.tar.lzma
@@ -307549,7 +307554,9 @@
2019/01/26 | 248212 | systems/win32/miktex/tm/packages/armymemo.tar.lzma
2007/12/14 | 27494663 | systems/win32/miktex/tm/packages/arphic.tar.lzma
2016/12/15 | 12680596 | systems/win32/miktex/tm/packages/arphic-ttf.tar.lzma
-2020/11/24 | 468480 | systems/win32/miktex/tm/packages/arraycols.tar.lzma
+2023/08/19 | 466135 | systems/win32/miktex/tm/packages/arraycols__doc.tar.lzma
+2023/08/19 | 7144 | systems/win32/miktex/tm/packages/arraycols__source.tar.lzma
+2023/08/19 | 1557 | systems/win32/miktex/tm/packages/arraycols.tar.lzma
2010/05/10 | 438558 | systems/win32/miktex/tm/packages/arrayjob.tar.lzma
2013/09/09 | 315901 | systems/win32/miktex/tm/packages/arraysort.tar.lzma
2017/11/01 | 429870 | systems/win32/miktex/tm/packages/arsclassica.tar.lzma
@@ -307664,7 +307671,9 @@
2023/06/16 | 1661316 | systems/win32/miktex/tm/packages/babel-greek__doc.tar.lzma
2023/06/16 | 49756 | systems/win32/miktex/tm/packages/babel-greek__source.tar.lzma
2023/06/16 | 7066 | systems/win32/miktex/tm/packages/babel-greek.tar.lzma
-2014/05/21 | 778403 | systems/win32/miktex/tm/packages/babel-hebrew.tar.lzma
+2023/08/19 | 401107 | systems/win32/miktex/tm/packages/babel-hebrew__doc.tar.lzma
+2023/08/19 | 31752 | systems/win32/miktex/tm/packages/babel-hebrew__source.tar.lzma
+2023/08/19 | 12173 | systems/win32/miktex/tm/packages/babel-hebrew.tar.lzma
2019/01/19 | 55546 | systems/win32/miktex/tm/packages/babel-hungarian.tar.lzma
2019/07/05 | 244811 | systems/win32/miktex/tm/packages/babel-icelandic.tar.lzma
2017/02/16 | 121651 | systems/win32/miktex/tm/packages/babel-indonesian.tar.lzma
@@ -308008,13 +308017,13 @@
2022/02/18 | 1800 | systems/win32/miktex/tm/packages/bidi-atbegshi__source.tar.lzma
2022/02/18 | 1614 | systems/win32/miktex/tm/packages/bidi-atbegshi.tar.lzma
2014/07/18 | 32691 | systems/win32/miktex/tm/packages/bidicontour.tar.lzma
-2023/01/23 | 4236730 | systems/win32/miktex/tm/packages/bidi__doc.tar.lzma
+2023/08/19 | 4241605 | systems/win32/miktex/tm/packages/bidi__doc.tar.lzma
2015/07/14 | 45842 | systems/win32/miktex/tm/packages/bidihl.tar.lzma
2014/07/18 | 29429 | systems/win32/miktex/tm/packages/bidipagegrid.tar.lzma
2014/09/29 | 102419 | systems/win32/miktex/tm/packages/bidipresentation.tar.lzma
2014/07/18 | 122091 | systems/win32/miktex/tm/packages/bidishadowtext.tar.lzma
-2023/01/23 | 150304 | systems/win32/miktex/tm/packages/bidi__source.tar.lzma
-2023/01/23 | 134272 | systems/win32/miktex/tm/packages/bidi.tar.lzma
+2023/08/19 | 150476 | systems/win32/miktex/tm/packages/bidi__source.tar.lzma
+2023/08/19 | 134507 | systems/win32/miktex/tm/packages/bidi.tar.lzma
2015/09/01 | 787676 | systems/win32/miktex/tm/packages/bigfoot.tar.lzma
2019/12/20 | 478294 | systems/win32/miktex/tm/packages/bigintcalc.tar.lzma
2010/03/08 | 109153 | systems/win32/miktex/tm/packages/bigints.tar.lzma
@@ -308100,13 +308109,13 @@
2022/11/01 | 8064 | systems/win32/miktex/tm/packages/braids.tar.lzma
2010/12/13 | 66716 | systems/win32/miktex/tm/packages/braille.tar.lzma
2010/02/22 | 217990 | systems/win32/miktex/tm/packages/braket.tar.lzma
-2021/12/05 | 173241 | systems/win32/miktex/tm/packages/brandeis-dissertation__doc.tar.lzma
-2021/12/05 | 4581 | systems/win32/miktex/tm/packages/brandeis-dissertation__source.tar.lzma
-2021/12/05 | 2086 | systems/win32/miktex/tm/packages/brandeis-dissertation.tar.lzma
+2023/08/19 | 173620 | systems/win32/miktex/tm/packages/brandeis-dissertation__doc.tar.lzma
+2023/08/19 | 4908 | systems/win32/miktex/tm/packages/brandeis-dissertation__source.tar.lzma
+2023/08/19 | 2297 | systems/win32/miktex/tm/packages/brandeis-dissertation.tar.lzma
2019/04/16 | 155866 | systems/win32/miktex/tm/packages/brandeis-problemset.tar.lzma
-2021/07/02 | 150989 | systems/win32/miktex/tm/packages/brandeis-thesis__doc.tar.lzma
-2021/07/02 | 3927 | systems/win32/miktex/tm/packages/brandeis-thesis__source.tar.lzma
-2021/07/02 | 1955 | systems/win32/miktex/tm/packages/brandeis-thesis.tar.lzma
+2023/08/19 | 151425 | systems/win32/miktex/tm/packages/brandeis-thesis__doc.tar.lzma
+2023/08/19 | 4181 | systems/win32/miktex/tm/packages/brandeis-thesis__source.tar.lzma
+2023/08/19 | 2179 | systems/win32/miktex/tm/packages/brandeis-thesis.tar.lzma
2010/02/22 | 149124 | systems/win32/miktex/tm/packages/breakcites.tar.lzma
2013/04/15 | 120674 | systems/win32/miktex/tm/packages/breakurl.tar.lzma
2017/05/19 | 219528 | systems/win32/miktex/tm/packages/bredzenie.tar.lzma
@@ -308118,9 +308127,9 @@
2004/11/28 | 64319 | systems/win32/miktex/tm/packages/brushscr.cab
2005/05/04 | 1888 | systems/win32/miktex/tm/packages/bsheaders.cab
2020/07/03 | 232846 | systems/win32/miktex/tm/packages/bubblesort.tar.lzma
-2022/07/30 | 461148 | systems/win32/miktex/tm/packages/buctthesis__doc.tar.lzma
-2022/07/30 | 27968 | systems/win32/miktex/tm/packages/buctthesis__source.tar.lzma
-2022/07/30 | 11088 | systems/win32/miktex/tm/packages/buctthesis.tar.lzma
+2023/08/19 | 467463 | systems/win32/miktex/tm/packages/buctthesis__doc.tar.lzma
+2023/08/19 | 27955 | systems/win32/miktex/tm/packages/buctthesis__source.tar.lzma
+2023/08/19 | 10823 | systems/win32/miktex/tm/packages/buctthesis.tar.lzma
2008/10/14 | 769196 | systems/win32/miktex/tm/packages/bullcntr.tar.lzma
2022/10/06 | 79772 | systems/win32/miktex/tm/packages/bundledoc__doc.tar.lzma
2022/10/06 | 13040 | systems/win32/miktex/tm/packages/bundledoc.tar.lzma
@@ -308176,6 +308185,9 @@
2016/04/26 | 1249525 | systems/win32/miktex/tm/packages/byzantinemusic.tar.lzma
2022/12/28 | 230709 | systems/win32/miktex/tm/packages/cabin__doc.tar.lzma
2022/12/28 | 2918275 | systems/win32/miktex/tm/packages/cabin.tar.lzma
+2023/08/19 | 482958 | systems/win32/miktex/tm/packages/cahierprof__doc.tar.lzma
+2023/08/19 | 3706 | systems/win32/miktex/tm/packages/cahierprof__source.tar.lzma
+2023/08/19 | 5229 | systems/win32/miktex/tm/packages/cahierprof.tar.lzma
2022/10/06 | 93857 | systems/win32/miktex/tm/packages/caladea__doc.tar.lzma
2022/10/06 | 344091 | systems/win32/miktex/tm/packages/caladea.tar.lzma
2012/09/26 | 287323 | systems/win32/miktex/tm/packages/calcage.tar.lzma
@@ -308199,9 +308211,9 @@
2019/07/05 | 1553683 | systems/win32/miktex/tm/packages/cantarell.tar.lzma
2005/05/04 | 25470 | systems/win32/miktex/tm/packages/captcont.cab
2010/03/08 | 217522 | systems/win32/miktex/tm/packages/captdef.tar.lzma
-2023/03/17 | 784521 | systems/win32/miktex/tm/packages/caption__doc.tar.lzma
-2023/03/17 | 215775 | systems/win32/miktex/tm/packages/caption__source.tar.lzma
-2023/03/17 | 60793 | systems/win32/miktex/tm/packages/caption.tar.lzma
+2023/08/19 | 746829 | systems/win32/miktex/tm/packages/caption__doc.tar.lzma
+2023/08/19 | 218114 | systems/win32/miktex/tm/packages/caption__source.tar.lzma
+2023/08/19 | 61087 | systems/win32/miktex/tm/packages/caption.tar.lzma
2010/01/26 | 77039 | systems/win32/miktex/tm/packages/capt-of.tar.lzma
2015/12/04 | 493328 | systems/win32/miktex/tm/packages/carbohydrates.tar.lzma
2021/06/15 | 75029 | systems/win32/miktex/tm/packages/carlisle__doc.tar.lzma
@@ -308355,7 +308367,8 @@
2019/01/03 | 200693 | systems/win32/miktex/tm/packages/chordbars.tar.lzma
2019/04/16 | 573707 | systems/win32/miktex/tm/packages/chordbox.tar.lzma
2004/04/09 | 966358 | systems/win32/miktex/tm/packages/chroma.cab
-2015/07/28 | 14661 | systems/win32/miktex/tm/packages/chronology.tar.lzma
+2023/08/19 | 404029 | systems/win32/miktex/tm/packages/chronology__doc.tar.lzma
+2023/08/19 | 2183 | systems/win32/miktex/tm/packages/chronology.tar.lzma
2018/09/13 | 241284 | systems/win32/miktex/tm/packages/chronosys.tar.lzma
2012/12/20 | 207676 | systems/win32/miktex/tm/packages/chscite.tar.lzma
2018/09/04 | 197918 | systems/win32/miktex/tm/packages/chs-physics-report.tar.lzma
@@ -308364,9 +308377,9 @@
2023/07/04 | 8764 | systems/win32/miktex/tm/packages/churchslavonic.tar.lzma
2022/10/06 | 39456 | systems/win32/miktex/tm/packages/cinzel__doc.tar.lzma
2022/10/06 | 532941 | systems/win32/miktex/tm/packages/cinzel.tar.lzma
-2023/07/28 | 430962 | systems/win32/miktex/tm/packages/circledsteps__doc.tar.lzma
+2023/08/19 | 431024 | systems/win32/miktex/tm/packages/circledsteps__doc.tar.lzma
2023/07/28 | 4045 | systems/win32/miktex/tm/packages/circledsteps__source.tar.lzma
-2023/07/28 | 2162 | systems/win32/miktex/tm/packages/circledsteps.tar.lzma
+2023/08/19 | 2159 | systems/win32/miktex/tm/packages/circledsteps.tar.lzma
2022/05/04 | 211712 | systems/win32/miktex/tm/packages/circledtext__doc.tar.lzma
2022/05/04 | 5510 | systems/win32/miktex/tm/packages/circledtext__source.tar.lzma
2022/05/04 | 6254 | systems/win32/miktex/tm/packages/circledtext.tar.lzma
@@ -308579,6 +308592,9 @@
2017/04/05 | 481450 | systems/win32/miktex/tm/packages/correctmathalign.tar.lzma
2005/06/02 | 78287 | systems/win32/miktex/tm/packages/corridx.cab
2011/09/07 | 158170 | systems/win32/miktex/tm/packages/coseoul.tar.lzma
+2023/08/19 | 191506 | systems/win32/miktex/tm/packages/couleurs-fr__doc.tar.lzma
+2023/08/19 | 12827 | systems/win32/miktex/tm/packages/couleurs-fr__source.tar.lzma
+2023/08/19 | 11605 | systems/win32/miktex/tm/packages/couleurs-fr.tar.lzma
2023/06/16 | 316704 | systems/win32/miktex/tm/packages/counterz__doc.tar.lzma
2023/06/16 | 11185 | systems/win32/miktex/tm/packages/counterz__source.tar.lzma
2023/06/16 | 2710 | systems/win32/miktex/tm/packages/counterz.tar.lzma
@@ -308667,6 +308683,9 @@
2022/07/25 | 130902 | systems/win32/miktex/tm/packages/ctex.tar.lzma
2004/01/11 | 171807 | systems/win32/miktex/tm/packages/ctib.cab
2014/06/30 | 272094 | systems/win32/miktex/tm/packages/cuisine.tar.lzma
+2023/08/19 | 144417 | systems/win32/miktex/tm/packages/culmus__doc.tar.lzma
+2023/08/19 | 1281021 | systems/win32/miktex/tm/packages/culmus__source.tar.lzma
+2023/08/19 | 2549524 | systems/win32/miktex/tm/packages/culmus.tar.lzma
2019/02/04 | 130281 | systems/win32/miktex/tm/packages/cuprum.tar.lzma
2018/10/26 | 717964 | systems/win32/miktex/tm/packages/currency.tar.lzma
2022/10/15 | 181761 | systems/win32/miktex/tm/packages/currfile__doc.tar.lzma
@@ -308773,9 +308792,9 @@
2022/01/24 | 591608 | systems/win32/miktex/tm/packages/dbshow__doc.tar.lzma
2022/01/24 | 29440 | systems/win32/miktex/tm/packages/dbshow__source.tar.lzma
2022/01/24 | 7289 | systems/win32/miktex/tm/packages/dbshow.tar.lzma
-2022/02/07 | 284711 | systems/win32/miktex/tm/packages/dccpaper__doc.tar.lzma
-2022/02/07 | 26887 | systems/win32/miktex/tm/packages/dccpaper__source.tar.lzma
-2022/02/07 | 24959 | systems/win32/miktex/tm/packages/dccpaper.tar.lzma
+2023/08/19 | 290209 | systems/win32/miktex/tm/packages/dccpaper__doc.tar.lzma
+2023/08/19 | 27442 | systems/win32/miktex/tm/packages/dccpaper__source.tar.lzma
+2023/08/19 | 25165 | systems/win32/miktex/tm/packages/dccpaper.tar.lzma
2013/05/06 | 949470 | systems/win32/miktex/tm/packages/dcpic.tar.lzma
2019/09/08 | 288031 | systems/win32/miktex/tm/packages/ddphonism.tar.lzma
2022/11/01 | 287966 | systems/win32/miktex/tm/packages/debate__doc.tar.lzma
@@ -308786,6 +308805,9 @@
2021/10/03 | 6371 | systems/win32/miktex/tm/packages/decision-table__source.tar.lzma
2021/10/03 | 2258 | systems/win32/miktex/tm/packages/decision-table.tar.lzma
2020/05/23 | 417354 | systems/win32/miktex/tm/packages/decorule.tar.lzma
+2023/08/19 | 199062 | systems/win32/miktex/tm/packages/defoldfonts__doc.tar.lzma
+2023/08/19 | 4269 | systems/win32/miktex/tm/packages/defoldfonts__source.tar.lzma
+2023/08/19 | 1288 | systems/win32/miktex/tm/packages/defoldfonts.tar.lzma
2023/03/17 | 120494 | systems/win32/miktex/tm/packages/dehyph-exptl__doc.tar.lzma
2023/03/17 | 25990 | systems/win32/miktex/tm/packages/dehyph-exptl__source.tar.lzma
2023/03/17 | 132712 | systems/win32/miktex/tm/packages/dehyph-exptl.tar.lzma
@@ -309093,9 +309115,9 @@
2021/06/06 | 6839 | systems/win32/miktex/tm/packages/environ__source.tar.lzma
2021/06/06 | 2125 | systems/win32/miktex/tm/packages/environ.tar.lzma
2005/02/24 | 75685 | systems/win32/miktex/tm/packages/envlab.cab
-2023/07/04 | 1647510 | systems/win32/miktex/tm/packages/eolang__doc.tar.lzma
-2023/07/04 | 16398 | systems/win32/miktex/tm/packages/eolang__source.tar.lzma
-2023/07/04 | 7299 | systems/win32/miktex/tm/packages/eolang.tar.lzma
+2023/08/19 | 1438625 | systems/win32/miktex/tm/packages/eolang__doc.tar.lzma
+2023/08/19 | 16580 | systems/win32/miktex/tm/packages/eolang__source.tar.lzma
+2023/08/19 | 7329 | systems/win32/miktex/tm/packages/eolang.tar.lzma
2009/07/13 | 177811 | systems/win32/miktex/tm/packages/epic.tar.lzma
2009/10/07 | 347193 | systems/win32/miktex/tm/packages/epigrafica.tar.lzma
2020/04/24 | 314994 | systems/win32/miktex/tm/packages/epigraph-keys.tar.lzma
@@ -309252,6 +309274,9 @@
2022/05/25 | 84728 | systems/win32/miktex/tm/packages/expex-acro__doc.tar.lzma
2022/05/25 | 7558 | systems/win32/miktex/tm/packages/expex-acro__source.tar.lzma
2022/05/25 | 4736 | systems/win32/miktex/tm/packages/expex-acro.tar.lzma
+2023/08/19 | 39046 | systems/win32/miktex/tm/packages/expex-glossonly__doc.tar.lzma
+2023/08/19 | 19397 | systems/win32/miktex/tm/packages/expex-glossonly__source.tar.lzma
+2023/08/19 | 2406 | systems/win32/miktex/tm/packages/expex-glossonly.tar.lzma
2017/05/29 | 494705 | systems/win32/miktex/tm/packages/expex.tar.lzma
2023/01/27 | 754607 | systems/win32/miktex/tm/packages/expkv-bundle__doc.tar.lzma
2023/01/27 | 49659 | systems/win32/miktex/tm/packages/expkv-bundle__source.tar.lzma
@@ -309370,7 +309395,7 @@
2022/11/01 | 5115 | 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
-2023/07/28 | 760225 | systems/win32/miktex/tm/packages/files.csv.lzma
+2023/08/19 | 762315 | 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
@@ -309424,7 +309449,13 @@
2023/03/19 | 4137 | systems/win32/miktex/tm/packages/flexipage.tar.lzma
2012/03/09 | 409967 | systems/win32/miktex/tm/packages/flipbook.tar.lzma
2020/10/31 | 155928 | systems/win32/miktex/tm/packages/flippdf.tar.lzma
+2023/08/19 | 245246 | systems/win32/miktex/tm/packages/floatbytocbasic__doc.tar.lzma
+2023/08/19 | 7336 | systems/win32/miktex/tm/packages/floatbytocbasic__source.tar.lzma
+2023/08/19 | 2255 | systems/win32/miktex/tm/packages/floatbytocbasic.tar.lzma
2012/03/02 | 316310 | systems/win32/miktex/tm/packages/floatflt.tar.lzma
+2023/08/19 | 250555 | systems/win32/miktex/tm/packages/floatrowbytocbasic__doc.tar.lzma
+2023/08/19 | 8023 | systems/win32/miktex/tm/packages/floatrowbytocbasic__source.tar.lzma
+2023/08/19 | 2754 | systems/win32/miktex/tm/packages/floatrowbytocbasic.tar.lzma
2009/08/04 | 1282124 | systems/win32/miktex/tm/packages/floatrow.tar.lzma
2016/07/20 | 127884 | systems/win32/miktex/tm/packages/float.tar.lzma
2015/04/21 | 424552 | systems/win32/miktex/tm/packages/flowchart.tar.lzma
@@ -309473,10 +309504,10 @@
2023/07/04 | 247062 | systems/win32/miktex/tm/packages/fonts-churchslavonic__doc.tar.lzma
2023/07/04 | 21763 | systems/win32/miktex/tm/packages/fonts-churchslavonic__source.tar.lzma
2023/07/04 | 2072430 | systems/win32/miktex/tm/packages/fonts-churchslavonic.tar.lzma
-2023/01/06 | 576058 | systems/win32/miktex/tm/packages/fontsetup__doc.tar.lzma
+2023/08/19 | 577246 | systems/win32/miktex/tm/packages/fontsetup__doc.tar.lzma
2021/05/08 | 334066 | systems/win32/miktex/tm/packages/fontsetup-nonfree.tar.lzma
-2023/01/06 | 5497 | systems/win32/miktex/tm/packages/fontsetup__source.tar.lzma
-2023/01/06 | 7226 | systems/win32/miktex/tm/packages/fontsetup.tar.lzma
+2023/08/19 | 5723 | systems/win32/miktex/tm/packages/fontsetup__source.tar.lzma
+2023/08/19 | 7255 | systems/win32/miktex/tm/packages/fontsetup.tar.lzma
2021/08/05 | 379528 | systems/win32/miktex/tm/packages/fontsize__doc.tar.lzma
2021/08/05 | 15380 | systems/win32/miktex/tm/packages/fontsize__source.tar.lzma
2021/08/05 | 5188 | systems/win32/miktex/tm/packages/fontsize.tar.lzma
@@ -309567,9 +309598,9 @@
2011/03/01 | 39941 | systems/win32/miktex/tm/packages/fwlw.tar.lzma
2008/05/19 | 143169 | systems/win32/miktex/tm/packages/gaceta.tar.lzma
2006/03/25 | 97724 | systems/win32/miktex/tm/packages/galois.cab
-2022/06/12 | 390339 | systems/win32/miktex/tm/packages/gamebooklib__doc.tar.lzma
-2022/06/12 | 17138 | systems/win32/miktex/tm/packages/gamebooklib__source.tar.lzma
-2022/06/12 | 3838 | systems/win32/miktex/tm/packages/gamebooklib.tar.lzma
+2023/08/19 | 401564 | systems/win32/miktex/tm/packages/gamebooklib__doc.tar.lzma
+2023/08/19 | 17483 | systems/win32/miktex/tm/packages/gamebooklib__source.tar.lzma
+2023/08/19 | 4045 | systems/win32/miktex/tm/packages/gamebooklib.tar.lzma
2011/12/01 | 226038 | systems/win32/miktex/tm/packages/gamebook.tar.lzma
2020/10/03 | 13484 | systems/win32/miktex/tm/packages/gammas.tar.lzma
2015/01/24 | 515639 | systems/win32/miktex/tm/packages/gapfill.tar.lzma
@@ -309749,9 +309780,9 @@
2018/11/05 | 507707 | systems/win32/miktex/tm/packages/grayhints.tar.lzma
2005/12/30 | 83312 | systems/win32/miktex/tm/packages/greek6cbc.cab
2008/07/31 | 20830 | systems/win32/miktex/tm/packages/greekdates.tar.lzma
-2023/06/16 | 2430733 | systems/win32/miktex/tm/packages/greek-fontenc__doc.tar.lzma
-2023/06/16 | 38539 | systems/win32/miktex/tm/packages/greek-fontenc__source.tar.lzma
-2023/06/16 | 31686 | systems/win32/miktex/tm/packages/greek-fontenc.tar.lzma
+2023/08/19 | 2850884 | systems/win32/miktex/tm/packages/greek-fontenc__doc.tar.lzma
+2023/08/19 | 44568 | systems/win32/miktex/tm/packages/greek-fontenc__source.tar.lzma
+2023/08/19 | 32703 | systems/win32/miktex/tm/packages/greek-fontenc.tar.lzma
2023/03/27 | 656536 | systems/win32/miktex/tm/packages/greek-inputenc__doc.tar.lzma
2023/03/27 | 9123 | systems/win32/miktex/tm/packages/greek-inputenc__source.tar.lzma
2023/03/27 | 7105 | systems/win32/miktex/tm/packages/greek-inputenc.tar.lzma
@@ -309834,6 +309865,9 @@
2015/02/28 | 232056 | systems/win32/miktex/tm/packages/havannah.tar.lzma
2016/07/15 | 69232 | systems/win32/miktex/tm/packages/hc.tar.lzma
2004/07/29 | 37800 | systems/win32/miktex/tm/packages/hebclass.cab
+2023/08/19 | 403573 | systems/win32/miktex/tm/packages/hebrew-fonts__doc.tar.lzma
+2023/08/19 | 14016 | systems/win32/miktex/tm/packages/hebrew-fonts__source.tar.lzma
+2023/08/19 | 6135 | systems/win32/miktex/tm/packages/hebrew-fonts.tar.lzma
2021/09/13 | 888455 | systems/win32/miktex/tm/packages/hecthese__doc.tar.lzma
2021/09/13 | 31139 | systems/win32/miktex/tm/packages/hecthese__source.tar.lzma
2021/09/13 | 4174 | systems/win32/miktex/tm/packages/hecthese.tar.lzma
@@ -309941,9 +309975,9 @@
2022/11/01 | 3179 | systems/win32/miktex/tm/packages/href-ul__source.tar.lzma
2022/11/01 | 1648 | systems/win32/miktex/tm/packages/href-ul.tar.lzma
2010/04/27 | 105418 | systems/win32/miktex/tm/packages/hrlatex.tar.lzma
-2023/06/16 | 785058 | systems/win32/miktex/tm/packages/huawei__doc.tar.lzma
-2023/06/16 | 10500 | systems/win32/miktex/tm/packages/huawei__source.tar.lzma
-2023/06/16 | 262258 | systems/win32/miktex/tm/packages/huawei.tar.lzma
+2023/08/19 | 786953 | systems/win32/miktex/tm/packages/huawei__doc.tar.lzma
+2023/08/19 | 10940 | systems/win32/miktex/tm/packages/huawei__source.tar.lzma
+2023/08/19 | 262330 | systems/win32/miktex/tm/packages/huawei.tar.lzma
2022/11/04 | 323842 | systems/win32/miktex/tm/packages/huaz__doc.tar.lzma
2022/11/04 | 7218 | systems/win32/miktex/tm/packages/huaz__source.tar.lzma
2022/11/04 | 4930 | systems/win32/miktex/tm/packages/huaz.tar.lzma
@@ -310142,9 +310176,9 @@
2023/06/23 | 3608 | systems/win32/miktex/tm/packages/javascripthttp__source.tar.lzma
2023/06/23 | 3634 | systems/win32/miktex/tm/packages/javascripthttp.tar.lzma
2010/04/13 | 1265307 | systems/win32/miktex/tm/packages/jeopardy.tar.lzma
-2023/06/16 | 7938672 | systems/win32/miktex/tm/packages/jeuxcartes__doc.tar.lzma
-2023/06/16 | 9813 | systems/win32/miktex/tm/packages/jeuxcartes__source.tar.lzma
-2023/06/16 | 6729056 | systems/win32/miktex/tm/packages/jeuxcartes.tar.lzma
+2023/08/19 | 7938133 | systems/win32/miktex/tm/packages/jeuxcartes__doc.tar.lzma
+2023/08/19 | 9854 | systems/win32/miktex/tm/packages/jeuxcartes__source.tar.lzma
+2023/08/19 | 6729050 | systems/win32/miktex/tm/packages/jeuxcartes.tar.lzma
2021/11/13 | 10017 | systems/win32/miktex/tm/packages/jfmutil__doc.tar.lzma
2021/11/13 | 25984 | systems/win32/miktex/tm/packages/jfmutil.tar.lzma
2005/01/03 | 19184 | systems/win32/miktex/tm/packages/jhep.cab
@@ -310169,6 +310203,9 @@
2022/10/06 | 440093 | systems/win32/miktex/tm/packages/jobname-suffix__doc.tar.lzma
2022/10/06 | 3298 | systems/win32/miktex/tm/packages/jobname-suffix__source.tar.lzma
2022/10/06 | 1993 | systems/win32/miktex/tm/packages/jobname-suffix.tar.lzma
+2023/08/19 | 550394 | systems/win32/miktex/tm/packages/joinbox__doc.tar.lzma
+2023/08/19 | 5417 | systems/win32/miktex/tm/packages/joinbox__source.tar.lzma
+2023/08/19 | 3947 | systems/win32/miktex/tm/packages/joinbox.tar.lzma
2022/10/06 | 173502 | systems/win32/miktex/tm/packages/josefin__doc.tar.lzma
2022/10/06 | 1096428 | systems/win32/miktex/tm/packages/josefin.tar.lzma
2022/12/20 | 85971 | systems/win32/miktex/tm/packages/jourcl__doc.tar.lzma
@@ -310276,9 +310313,9 @@
2022/06/26 | 21302 | systems/win32/miktex/tm/packages/kotex-utf.tar.lzma
2016/01/09 | 73703 | systems/win32/miktex/tm/packages/kotex-utils.tar.lzma
2023/01/23 | 1611808 | systems/win32/miktex/tm/packages/kpfonts__doc.tar.lzma
-2023/07/17 | 2019360 | systems/win32/miktex/tm/packages/kpfonts-otf__doc.tar.lzma
-2023/07/17 | 20693 | systems/win32/miktex/tm/packages/kpfonts-otf__source.tar.lzma
-2023/07/17 | 1124833 | systems/win32/miktex/tm/packages/kpfonts-otf.tar.lzma
+2023/08/19 | 2019026 | systems/win32/miktex/tm/packages/kpfonts-otf__doc.tar.lzma
+2023/08/19 | 20703 | systems/win32/miktex/tm/packages/kpfonts-otf__source.tar.lzma
+2023/08/19 | 1125658 | systems/win32/miktex/tm/packages/kpfonts-otf.tar.lzma
2022/09/23 | 52387 | systems/win32/miktex/tm/packages/kpfonts__source.tar.lzma
2023/01/23 | 2225845 | systems/win32/miktex/tm/packages/kpfonts.tar.lzma
2011/12/19 | 4197 | systems/win32/miktex/tm/packages/ksfh-nat.tar.lzma
@@ -310310,9 +310347,9 @@
2023/05/12 | 3499237 | systems/win32/miktex/tm/packages/l3experimental__doc.tar.lzma
2023/05/12 | 80929 | systems/win32/miktex/tm/packages/l3experimental__source.tar.lzma
2023/05/12 | 23987 | systems/win32/miktex/tm/packages/l3experimental.tar.lzma
-2023/07/04 | 11996716 | systems/win32/miktex/tm/packages/l3kernel__doc.tar.lzma
-2023/07/04 | 599713 | systems/win32/miktex/tm/packages/l3kernel__source.tar.lzma
-2023/07/04 | 173756 | systems/win32/miktex/tm/packages/l3kernel.tar.lzma
+2023/08/19 | 11991057 | systems/win32/miktex/tm/packages/l3kernel__doc.tar.lzma
+2023/08/19 | 600085 | systems/win32/miktex/tm/packages/l3kernel__source.tar.lzma
+2023/08/19 | 173861 | systems/win32/miktex/tm/packages/l3kernel.tar.lzma
2023/04/15 | 1833509 | systems/win32/miktex/tm/packages/l3packages__doc.tar.lzma
2023/04/15 | 46317 | systems/win32/miktex/tm/packages/l3packages__source.tar.lzma
2023/04/15 | 22168 | systems/win32/miktex/tm/packages/l3packages.tar.lzma
@@ -310459,9 +310496,9 @@
2021/07/24 | 5727 | systems/win32/miktex/tm/packages/letterswitharrows__source.tar.lzma
2021/07/24 | 3488 | systems/win32/miktex/tm/packages/letterswitharrows.tar.lzma
2020/04/15 | 1026143 | systems/win32/miktex/tm/packages/lettre.tar.lzma
-2023/07/17 | 429722 | systems/win32/miktex/tm/packages/lettrine__doc.tar.lzma
-2023/07/17 | 20732 | systems/win32/miktex/tm/packages/lettrine__source.tar.lzma
-2023/07/17 | 8106 | systems/win32/miktex/tm/packages/lettrine.tar.lzma
+2023/08/19 | 430214 | systems/win32/miktex/tm/packages/lettrine__doc.tar.lzma
+2023/08/19 | 20847 | systems/win32/miktex/tm/packages/lettrine__source.tar.lzma
+2023/08/19 | 8209 | systems/win32/miktex/tm/packages/lettrine.tar.lzma
2011/03/15 | 56985 | systems/win32/miktex/tm/packages/levy-font.tar.lzma
2006/05/26 | 42288 | systems/win32/miktex/tm/packages/lewis.cab
2021/02/01 | 330663 | systems/win32/miktex/tm/packages/lexend.tar.lzma
@@ -310582,6 +310619,9 @@
2022/06/26 | 476981 | systems/win32/miktex/tm/packages/logix__doc.tar.lzma
2022/06/26 | 2454653 | systems/win32/miktex/tm/packages/logix__source.tar.lzma
2022/06/26 | 393624 | systems/win32/miktex/tm/packages/logix.tar.lzma
+2023/08/19 | 649274 | systems/win32/miktex/tm/packages/logoetalab__doc.tar.lzma
+2023/08/19 | 4405 | systems/win32/miktex/tm/packages/logoetalab__source.tar.lzma
+2023/08/19 | 13692 | systems/win32/miktex/tm/packages/logoetalab.tar.lzma
2004/04/30 | 132197 | systems/win32/miktex/tm/packages/logpap.cab
2010/08/09 | 6112 | systems/win32/miktex/tm/packages/logreq.tar.lzma
2016/05/25 | 390962 | systems/win32/miktex/tm/packages/lollipop.tar.lzma
@@ -310671,10 +310711,12 @@
2022/03/07 | 4499 | systems/win32/miktex/tm/packages/luacensor.tar.lzma
2018/04/22 | 120964 | systems/win32/miktex/tm/packages/lua-check-hyphen.tar.lzma
2012/01/25 | 425322 | systems/win32/miktex/tm/packages/luacode.tar.lzma
-2021/02/19 | 342103 | systems/win32/miktex/tm/packages/luacolor.tar.lzma
-2023/02/23 | 114050 | systems/win32/miktex/tm/packages/luacomplex__doc.tar.lzma
-2023/02/23 | 2966 | systems/win32/miktex/tm/packages/luacomplex__source.tar.lzma
-2023/02/23 | 1895 | systems/win32/miktex/tm/packages/luacomplex.tar.lzma
+2023/08/19 | 344885 | systems/win32/miktex/tm/packages/luacolor__doc.tar.lzma
+2023/08/19 | 9627 | systems/win32/miktex/tm/packages/luacolor__source.tar.lzma
+2023/08/19 | 2795 | systems/win32/miktex/tm/packages/luacolor.tar.lzma
+2023/08/19 | 86746 | systems/win32/miktex/tm/packages/luacomplex__doc.tar.lzma
+2023/08/19 | 2957 | systems/win32/miktex/tm/packages/luacomplex__source.tar.lzma
+2023/08/19 | 1919 | systems/win32/miktex/tm/packages/luacomplex.tar.lzma
2023/07/04 | 97469 | systems/win32/miktex/tm/packages/luafindfont__doc.tar.lzma
2023/07/04 | 6330 | systems/win32/miktex/tm/packages/luafindfont__source.tar.lzma
2023/07/04 | 5948 | systems/win32/miktex/tm/packages/luafindfont.tar.lzma
@@ -310700,24 +310742,24 @@
2022/10/06 | 87934 | systems/win32/miktex/tm/packages/lualibs__doc.tar.lzma
2022/10/06 | 9080 | systems/win32/miktex/tm/packages/lualibs__source.tar.lzma
2022/10/06 | 131127 | systems/win32/miktex/tm/packages/lualibs.tar.lzma
-2023/02/23 | 252713 | systems/win32/miktex/tm/packages/lualinalg__doc.tar.lzma
-2023/02/23 | 9709 | systems/win32/miktex/tm/packages/lualinalg__source.tar.lzma
-2023/02/23 | 8341 | systems/win32/miktex/tm/packages/lualinalg.tar.lzma
+2023/08/19 | 190378 | systems/win32/miktex/tm/packages/lualinalg__doc.tar.lzma
+2023/08/19 | 9275 | systems/win32/miktex/tm/packages/lualinalg__source.tar.lzma
+2023/08/19 | 6660 | systems/win32/miktex/tm/packages/lualinalg.tar.lzma
2022/05/15 | 394754 | systems/win32/miktex/tm/packages/luamathalign__doc.tar.lzma
2022/05/15 | 6090 | systems/win32/miktex/tm/packages/luamathalign__source.tar.lzma
2022/05/15 | 4513 | systems/win32/miktex/tm/packages/luamathalign.tar.lzma
-2022/12/28 | 146045 | systems/win32/miktex/tm/packages/luamaths__doc.tar.lzma
-2022/12/28 | 3590 | systems/win32/miktex/tm/packages/luamaths__source.tar.lzma
-2022/12/28 | 1373 | systems/win32/miktex/tm/packages/luamaths.tar.lzma
+2023/08/19 | 109127 | systems/win32/miktex/tm/packages/luamaths__doc.tar.lzma
+2023/08/19 | 7336 | systems/win32/miktex/tm/packages/luamaths__source.tar.lzma
+2023/08/19 | 1459 | systems/win32/miktex/tm/packages/luamaths.tar.lzma
2022/07/14 | 236299 | systems/win32/miktex/tm/packages/luamesh__doc.tar.lzma
2023/02/07 | 16482 | systems/win32/miktex/tm/packages/luamesh__source.tar.lzma
2023/02/07 | 13031 | systems/win32/miktex/tm/packages/luamesh.tar.lzma
2023/01/06 | 266340 | systems/win32/miktex/tm/packages/luamodulartables__doc.tar.lzma
2023/01/06 | 4519 | systems/win32/miktex/tm/packages/luamodulartables__source.tar.lzma
2023/01/06 | 1577 | systems/win32/miktex/tm/packages/luamodulartables.tar.lzma
-2023/04/07 | 157123 | systems/win32/miktex/tm/packages/luamplib__doc.tar.lzma
-2023/04/07 | 27877 | systems/win32/miktex/tm/packages/luamplib__source.tar.lzma
-2023/04/07 | 12358 | systems/win32/miktex/tm/packages/luamplib.tar.lzma
+2023/08/19 | 157324 | systems/win32/miktex/tm/packages/luamplib__doc.tar.lzma
+2023/08/19 | 27880 | systems/win32/miktex/tm/packages/luamplib__source.tar.lzma
+2023/08/19 | 12367 | systems/win32/miktex/tm/packages/luamplib.tar.lzma
2023/07/28 | 134901 | systems/win32/miktex/tm/packages/luanumint__doc.tar.lzma
2023/07/28 | 3697 | systems/win32/miktex/tm/packages/luanumint__source.tar.lzma
2023/07/28 | 2460 | systems/win32/miktex/tm/packages/luanumint.tar.lzma
@@ -310762,9 +310804,9 @@
2023/07/17 | 5786 | systems/win32/miktex/tm/packages/lua-tinyyaml__source.tar.lzma
2023/07/17 | 5776 | systems/win32/miktex/tm/packages/lua-tinyyaml.tar.lzma
2020/02/18 | 256383 | systems/win32/miktex/tm/packages/luatodonotes.tar.lzma
-2022/09/23 | 92646 | systems/win32/miktex/tm/packages/luatruthtable__doc.tar.lzma
-2022/09/23 | 4835 | systems/win32/miktex/tm/packages/luatruthtable__source.tar.lzma
-2022/10/06 | 2496 | systems/win32/miktex/tm/packages/luatruthtable.tar.lzma
+2023/08/19 | 91339 | systems/win32/miktex/tm/packages/luatruthtable__doc.tar.lzma
+2023/08/19 | 4567 | systems/win32/miktex/tm/packages/luatruthtable__source.tar.lzma
+2023/08/19 | 2525 | systems/win32/miktex/tm/packages/luatruthtable.tar.lzma
2023/05/10 | 282468 | systems/win32/miktex/tm/packages/lua-typo__doc.tar.lzma
2023/05/10 | 29409 | systems/win32/miktex/tm/packages/lua-typo__source.tar.lzma
2023/05/10 | 12069 | systems/win32/miktex/tm/packages/lua-typo.tar.lzma
@@ -310856,9 +310898,9 @@
2017/07/04 | 2804679 | systems/win32/miktex/tm/packages/malayalam-latex.tar.lzma
2005/05/04 | 8243 | systems/win32/miktex/tm/packages/maltese.cab
2016/07/16 | 280131 | systems/win32/miktex/tm/packages/malvern.tar.lzma
-2022/02/07 | 483703 | systems/win32/miktex/tm/packages/mandi__doc.tar.lzma
-2022/02/07 | 30716 | systems/win32/miktex/tm/packages/mandi__source.tar.lzma
-2022/02/07 | 12189 | systems/win32/miktex/tm/packages/mandi.tar.lzma
+2023/08/19 | 497990 | systems/win32/miktex/tm/packages/mandi__doc.tar.lzma
+2023/08/19 | 31545 | systems/win32/miktex/tm/packages/mandi__source.tar.lzma
+2023/08/19 | 11423 | systems/win32/miktex/tm/packages/mandi.tar.lzma
2020/04/04 | 258136 | systems/win32/miktex/tm/packages/manfnt.tar.lzma
2018/09/05 | 25785 | systems/win32/miktex/tm/packages/manfnt-type1.tar.lzma
2015/01/24 | 60553 | systems/win32/miktex/tm/packages/manuscript.tar.lzma
@@ -310960,9 +311002,9 @@
2018/09/15 | 1792533 | systems/win32/miktex/tm/packages/memdesign.tar.lzma
2008/03/21 | 123633 | systems/win32/miktex/tm/packages/memexsupp.tar.lzma
2006/07/29 | 521138 | systems/win32/miktex/tm/packages/memoirchapterstyles.cab
-2022/11/24 | 3139183 | systems/win32/miktex/tm/packages/memoir__doc.tar.lzma
-2022/11/24 | 243302 | systems/win32/miktex/tm/packages/memoir__source.tar.lzma
-2022/11/24 | 75793 | systems/win32/miktex/tm/packages/memoir.tar.lzma
+2023/08/19 | 3133224 | systems/win32/miktex/tm/packages/memoir__doc.tar.lzma
+2023/08/19 | 213139 | systems/win32/miktex/tm/packages/memoir__source.tar.lzma
+2023/08/19 | 70677 | systems/win32/miktex/tm/packages/memoir.tar.lzma
2019/01/08 | 193506 | systems/win32/miktex/tm/packages/memorygraphs.tar.lzma
2013/05/21 | 34010 | systems/win32/miktex/tm/packages/memory.tar.lzma
2022/04/15 | 11760 | systems/win32/miktex/tm/packages/mendex-doc__source.tar.lzma
@@ -311149,7 +311191,7 @@
2016/11/04 | 687 | systems/win32/miktex/tm/packages/miktex-metapost.tar.lzma
2022/07/26 | 99463 | systems/win32/miktex/tm/packages/miktex-mfware-bin-2.9.tar.lzma
2023/05/05 | 108116 | systems/win32/miktex/tm/packages/miktex-mfware-bin-x64-2.9.tar.lzma
-2023/07/17 | 23215 | systems/win32/miktex/tm/packages/miktex-misc.tar.lzma
+2023/08/19 | 23239 | systems/win32/miktex/tm/packages/miktex-misc.tar.lzma
2021/12/09 | 64527 | systems/win32/miktex/tm/packages/miktex-mkfntmap-bin-2.9.tar.lzma
2021/12/09 | 74601 | systems/win32/miktex/tm/packages/miktex-mkfntmap-bin-x64-2.9.tar.lzma
2022/07/26 | 126901 | systems/win32/miktex/tm/packages/miktex-mktex-bin-2.9.tar.lzma
@@ -311255,9 +311297,9 @@
2018/01/12 | 157226 | systems/win32/miktex/tm/packages/miktex-zip-bin-x64.tar.lzma
2022/07/26 | 39695 | systems/win32/miktex/tm/packages/miktex-zlib-bin-2.9.tar.lzma
2023/05/05 | 45900 | systems/win32/miktex/tm/packages/miktex-zlib-bin-x64-2.9.tar.lzma
-2023/07/28 | 327047 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma
-2023/07/28 | 1921368 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma
-2023/07/28 | 1665777 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma
+2023/08/19 | 329834 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma
+2023/08/19 | 1929857 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma
+2023/08/19 | 1672176 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma
2022/07/26 | 13519 | systems/win32/miktex/tm/packages/miktex-zzip-bin-2.9.tar.lzma
2023/05/05 | 14462 | 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
@@ -311393,9 +311435,9 @@
2010/03/30 | 286752 | systems/win32/miktex/tm/packages/mslapa.tar.lzma
2021/06/06 | 11678 | systems/win32/miktex/tm/packages/ms__source.tar.lzma
2021/06/06 | 3254 | systems/win32/miktex/tm/packages/ms.tar.lzma
-2023/07/28 | 112956 | systems/win32/miktex/tm/packages/msu-thesis__doc.tar.lzma
-2023/07/28 | 429358 | systems/win32/miktex/tm/packages/msu-thesis__source.tar.lzma
-2023/07/28 | 13389 | systems/win32/miktex/tm/packages/msu-thesis.tar.lzma
+2023/08/19 | 113052 | systems/win32/miktex/tm/packages/msu-thesis__doc.tar.lzma
+2023/08/19 | 429379 | systems/win32/miktex/tm/packages/msu-thesis__source.tar.lzma
+2023/08/19 | 13436 | systems/win32/miktex/tm/packages/msu-thesis.tar.lzma
2010/12/23 | 362698 | systems/win32/miktex/tm/packages/msuthesis.tar.lzma
2001/05/14 | 14125 | systems/win32/miktex/tm/packages/mtbe.tar.lzma
2010/04/27 | 164556 | systems/win32/miktex/tm/packages/mtgreek.tar.lzma
@@ -311463,9 +311505,9 @@
2021/10/14 | 38292708 | systems/win32/miktex/tm/packages/nahuatl__doc.tar.lzma
2023/04/09 | 42038 | systems/win32/miktex/tm/packages/nahuatl__source.tar.lzma
2023/04/09 | 2521 | systems/win32/miktex/tm/packages/nahuatl.tar.lzma
-2023/07/17 | 666650 | systems/win32/miktex/tm/packages/naive-ebnf__doc.tar.lzma
-2023/07/17 | 6035 | systems/win32/miktex/tm/packages/naive-ebnf__source.tar.lzma
-2023/07/17 | 2612 | systems/win32/miktex/tm/packages/naive-ebnf.tar.lzma
+2023/08/19 | 675304 | systems/win32/miktex/tm/packages/naive-ebnf__doc.tar.lzma
+2023/08/19 | 6167 | systems/win32/miktex/tm/packages/naive-ebnf__source.tar.lzma
+2023/08/19 | 2637 | systems/win32/miktex/tm/packages/naive-ebnf.tar.lzma
2023/02/05 | 1425255 | systems/win32/miktex/tm/packages/nameauth__doc.tar.lzma
2023/02/05 | 117464 | systems/win32/miktex/tm/packages/nameauth__source.tar.lzma
2023/02/05 | 7255 | systems/win32/miktex/tm/packages/nameauth.tar.lzma
@@ -311519,114 +311561,114 @@
2022/02/07 | 2873220 | systems/win32/miktex/tm/packages/newpx.tar.lzma
2005/06/25 | 43902 | systems/win32/miktex/tm/packages/newsletr.cab
2007/12/30 | 204631 | systems/win32/miktex/tm/packages/newspaper.tar.lzma
-2023/07/28 | 1022180 | systems/win32/miktex/tm/packages/newtx__doc.tar.lzma
+2023/08/19 | 1022334 | systems/win32/miktex/tm/packages/newtx__doc.tar.lzma
2023/05/10 | 262384 | systems/win32/miktex/tm/packages/newtxsf__doc.tar.lzma
2023/05/10 | 3582 | systems/win32/miktex/tm/packages/newtxsf__source.tar.lzma
2023/05/10 | 106242 | systems/win32/miktex/tm/packages/newtxsf.tar.lzma
2023/07/28 | 38104 | systems/win32/miktex/tm/packages/newtx__source.tar.lzma
-2023/07/28 | 6532316 | systems/win32/miktex/tm/packages/newtx.tar.lzma
+2023/08/19 | 6532736 | systems/win32/miktex/tm/packages/newtx.tar.lzma
2020/02/17 | 288246 | systems/win32/miktex/tm/packages/newtxtt.tar.lzma
2018/04/09 | 400132 | systems/win32/miktex/tm/packages/newunicodechar.tar.lzma
2011/09/19 | 101312 | systems/win32/miktex/tm/packages/newvbtm.tar.lzma
2022/11/01 | 230073 | systems/win32/miktex/tm/packages/newverbs__doc.tar.lzma
2022/11/01 | 7969 | systems/win32/miktex/tm/packages/newverbs__source.tar.lzma
2022/11/01 | 3030 | systems/win32/miktex/tm/packages/newverbs.tar.lzma
-2023/07/28 | 760661 | systems/win32/miktex/tm/packages/next/files.csv.lzma
-2023/07/28 | 36605 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma
-2023/07/28 | 1168661 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma
-2023/07/28 | 31762 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma
-2023/07/28 | 36513 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma
-2023/07/28 | 67243 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma
-2023/07/28 | 102894 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma
-2023/07/28 | 78652 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma
-2023/07/28 | 31617 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma
-2023/07/28 | 395023 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma
-2023/07/28 | 40146 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma
-2023/07/28 | 58494 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma
-2023/07/28 | 271623 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma
-2023/07/28 | 221243 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma
-2023/07/28 | 106303 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma
-2023/07/28 | 25472 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma
-2023/07/28 | 473111 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma
-2023/07/28 | 54090 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma
-2023/07/28 | 328688 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma
-2023/07/28 | 47016 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma
-2023/07/28 | 137611 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma
-2023/07/28 | 1430917 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma
-2023/07/28 | 100099 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma
-2023/07/28 | 49703 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma
-2023/07/28 | 28938 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma
-2023/07/28 | 77638 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma
-2023/07/28 | 157533 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma
-2023/07/28 | 81409 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma
-2023/07/28 | 82028 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma
-2023/07/28 | 305300 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma
-2023/07/28 | 25468 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma
-2023/07/28 | 105737 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma
-2023/07/28 | 73283 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma
-2023/07/28 | 117093 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma
-2023/07/28 | 44172 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma
-2023/07/28 | 697358 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma
-2023/07/28 | 249572 | systems/win32/miktex/tm/packages/next/miktex-hitex-bin-x64.tar.lzma
-2023/07/28 | 211298 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma
-2023/07/28 | 109836 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma
-2023/07/28 | 19665 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma
-2023/07/28 | 32637 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma
-2023/07/28 | 705667 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma
-2023/07/28 | 601031 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma
-2023/07/28 | 529923 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma
-2023/07/28 | 103847 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma
-2023/07/28 | 2019805 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma
-2023/07/28 | 81473 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma
-2023/07/28 | 33659 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma
-2023/07/28 | 8805 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma
-2023/07/28 | 231483 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma
-2023/07/28 | 288207 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma
-2023/07/28 | 108108 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma
-2023/07/28 | 140344 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma
-2023/07/28 | 290120 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma
-2023/07/28 | 182826 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma
-2023/07/28 | 55985 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma
-2023/07/28 | 35263 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma
-2023/07/28 | 43824 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma
-2023/07/28 | 47954 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma
-2023/07/28 | 52497 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma
-2023/07/28 | 217435 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma
-2023/07/28 | 43088 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin-x64.tar.lzma
-2023/07/28 | 828951 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma
-2023/07/28 | 203371 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma
-2023/07/28 | 246227 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma
-2023/07/28 | 88471 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma
-2023/07/28 | 1338747 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma
-2023/07/28 | 24025 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma
-2023/07/28 | 37629 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma
-2023/07/28 | 74621 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma
-2023/07/28 | 60452 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma
-2023/07/28 | 501262 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin-x64.tar.lzma
-2023/07/28 | 1530270 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma
-2023/07/28 | 54537 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma
-2023/07/28 | 64609 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma
-2023/07/28 | 27657 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma
-2023/07/28 | 19764 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma
-2023/07/28 | 72786 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma
-2023/07/28 | 174414 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma
-2023/07/28 | 69696 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma
-2023/07/28 | 112031 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma
-2023/07/28 | 2831351 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma
-2023/07/28 | 63585 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma
-2023/07/28 | 43726 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma
-2023/07/28 | 33815 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma
-2023/07/28 | 76065 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma
-2023/07/28 | 353897 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma
-2023/07/28 | 58766 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin-x64.tar.lzma
-2023/07/28 | 607947 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma
-2023/07/28 | 45884 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma
-2023/07/28 | 327031 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma
-2023/07/28 | 1920230 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma
-2023/07/28 | 1665631 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma
-2023/07/28 | 14480 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma
+2023/08/19 | 763027 | systems/win32/miktex/tm/packages/next/files.csv.lzma
+2023/08/19 | 36620 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma
+2023/08/19 | 1167598 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma
+2023/08/19 | 31752 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma
+2023/08/19 | 36528 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma
+2023/08/19 | 67180 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma
+2023/08/19 | 102816 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma
+2023/08/19 | 78652 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma
+2023/08/19 | 31619 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma
+2023/08/19 | 394715 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma
+2023/08/19 | 40163 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma
+2023/08/19 | 58532 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma
+2023/08/19 | 271755 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma
+2023/08/19 | 221090 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma
+2023/08/19 | 106195 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma
+2023/08/19 | 25427 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma
+2023/08/19 | 472954 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma
+2023/08/19 | 54071 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma
+2023/08/19 | 328557 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma
+2023/08/19 | 47052 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma
+2023/08/19 | 137701 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma
+2023/08/19 | 1427213 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma
+2023/08/19 | 100141 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma
+2023/08/19 | 49654 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma
+2023/08/19 | 28941 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma
+2023/08/19 | 77708 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma
+2023/08/19 | 157655 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma
+2023/08/19 | 81573 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma
+2023/08/19 | 82059 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma
+2023/08/19 | 305160 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma
+2023/08/19 | 25465 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma
+2023/08/19 | 105602 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma
+2023/08/19 | 73289 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma
+2023/08/19 | 117065 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma
+2023/08/19 | 44162 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma
+2023/08/19 | 697810 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma
+2023/08/19 | 249607 | systems/win32/miktex/tm/packages/next/miktex-hitex-bin-x64.tar.lzma
+2023/08/19 | 217128 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma
+2023/08/19 | 109777 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma
+2023/08/19 | 19645 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma
+2023/08/19 | 32631 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma
+2023/08/19 | 706051 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma
+2023/08/19 | 601525 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma
+2023/08/19 | 529459 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma
+2023/08/19 | 103793 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma
+2023/08/19 | 2023515 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma
+2023/08/19 | 81487 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma
+2023/08/19 | 33663 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma
+2023/08/19 | 8792 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma
+2023/08/19 | 231271 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma
+2023/08/19 | 288293 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma
+2023/08/19 | 108134 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma
+2023/08/19 | 140485 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma
+2023/08/19 | 290272 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma
+2023/08/19 | 182852 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma
+2023/08/19 | 56005 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma
+2023/08/19 | 35268 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma
+2023/08/19 | 43835 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma
+2023/08/19 | 48099 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma
+2023/08/19 | 52537 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma
+2023/08/19 | 217620 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma
+2023/08/19 | 43062 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin-x64.tar.lzma
+2023/08/19 | 831240 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma
+2023/08/19 | 203399 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma
+2023/08/19 | 246224 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma
+2023/08/19 | 88483 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma
+2023/08/19 | 1339177 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma
+2023/08/19 | 24039 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma
+2023/08/19 | 37632 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma
+2023/08/19 | 74503 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma
+2023/08/19 | 60434 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma
+2023/08/19 | 501420 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin-x64.tar.lzma
+2023/08/19 | 1530208 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma
+2023/08/19 | 54569 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma
+2023/08/19 | 64571 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma
+2023/08/19 | 27674 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma
+2023/08/19 | 19744 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma
+2023/08/19 | 72793 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma
+2023/08/19 | 174405 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma
+2023/08/19 | 69692 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma
+2023/08/19 | 112037 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma
+2023/08/19 | 2830955 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma
+2023/08/19 | 63231 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma
+2023/08/19 | 43732 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma
+2023/08/19 | 33803 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma
+2023/08/19 | 76084 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma
+2023/08/19 | 353938 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma
+2023/08/19 | 58726 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin-x64.tar.lzma
+2023/08/19 | 608179 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma
+2023/08/19 | 45881 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma
+2023/08/19 | 329847 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma
+2023/08/19 | 1932840 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma
+2023/08/19 | 1673289 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma
+2023/08/19 | 14485 | 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
-2023/07/28 | 1150 | systems/win32/miktex/tm/packages/next/pr.ini
+2023/08/19 | 1150 | 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
2023/02/23 | 608421 | systems/win32/miktex/tm/packages/nicefilelist__doc.tar.lzma
@@ -311636,9 +311678,9 @@
2022/06/26 | 7330 | systems/win32/miktex/tm/packages/niceframe__source.tar.lzma
2022/06/26 | 37551 | systems/win32/miktex/tm/packages/niceframe.tar.lzma
2017/06/22 | 276883 | systems/win32/miktex/tm/packages/niceframe-type1.tar.lzma
-2023/07/28 | 2018459 | systems/win32/miktex/tm/packages/nicematrix__doc.tar.lzma
-2023/07/28 | 163956 | systems/win32/miktex/tm/packages/nicematrix__source.tar.lzma
-2023/07/28 | 39948 | systems/win32/miktex/tm/packages/nicematrix.tar.lzma
+2023/08/19 | 2045492 | systems/win32/miktex/tm/packages/nicematrix__doc.tar.lzma
+2023/08/19 | 167006 | systems/win32/miktex/tm/packages/nicematrix__source.tar.lzma
+2023/08/19 | 40803 | systems/win32/miktex/tm/packages/nicematrix.tar.lzma
2015/11/25 | 2555178 | systems/win32/miktex/tm/packages/nicetext.tar.lzma
2018/07/30 | 243633 | systems/win32/miktex/tm/packages/nidanfloat.tar.lzma
2016/01/26 | 74424 | systems/win32/miktex/tm/packages/nihbiosketch.tar.lzma
@@ -311811,7 +311853,9 @@
2008/10/14 | 40502 | systems/win32/miktex/tm/packages/ot2cyr.tar.lzma
2011/08/28 | 214965 | systems/win32/miktex/tm/packages/othelloboard.tar.lzma
2016/07/16 | 17435 | systems/win32/miktex/tm/packages/othello.tar.lzma
-2021/05/29 | 68725 | systems/win32/miktex/tm/packages/ot-tableau.tar.lzma
+2023/08/19 | 106304 | systems/win32/miktex/tm/packages/ot-tableau__doc.tar.lzma
+2023/08/19 | 4371 | systems/win32/miktex/tm/packages/ot-tableau__source.tar.lzma
+2023/08/19 | 2773 | systems/win32/miktex/tm/packages/ot-tableau.tar.lzma
2011/03/28 | 62464 | systems/win32/miktex/tm/packages/oubraces.tar.lzma
2022/03/29 | 316391 | systems/win32/miktex/tm/packages/oup-authoring-template__doc.tar.lzma
2022/03/29 | 8105 | systems/win32/miktex/tm/packages/oup-authoring-template__source.tar.lzma
@@ -311857,6 +311901,9 @@
2023/03/17 | 101683 | systems/win32/miktex/tm/packages/pangram__doc.tar.lzma
2023/03/17 | 5077 | systems/win32/miktex/tm/packages/pangram__source.tar.lzma
2023/03/17 | 2102 | systems/win32/miktex/tm/packages/pangram.tar.lzma
+2023/08/19 | 589951 | systems/win32/miktex/tm/packages/panneauxroute__doc.tar.lzma
+2023/08/19 | 9504 | systems/win32/miktex/tm/packages/panneauxroute__source.tar.lzma
+2023/08/19 | 377137 | systems/win32/miktex/tm/packages/panneauxroute.tar.lzma
2006/08/13 | 31919 | systems/win32/miktex/tm/packages/papercdcase.tar.bz2
2023/04/15 | 413805 | systems/win32/miktex/tm/packages/papermas__doc.tar.lzma
2023/04/15 | 13498 | systems/win32/miktex/tm/packages/papermas__source.tar.lzma
@@ -311924,9 +311971,9 @@
2022/12/07 | 618218 | systems/win32/miktex/tm/packages/pdfextra__doc.tar.lzma
2022/12/07 | 12647 | systems/win32/miktex/tm/packages/pdfextra__source.tar.lzma
2022/12/07 | 25795 | systems/win32/miktex/tm/packages/pdfextra.tar.lzma
-2023/07/04 | 14199 | systems/win32/miktex/tm/packages/pdfjam__doc.tar.lzma
-2023/07/17 | 136223 | systems/win32/miktex/tm/packages/pdfjam__source.tar.lzma
-2023/07/17 | 12949 | systems/win32/miktex/tm/packages/pdfjam.tar.lzma
+2023/08/19 | 13474 | systems/win32/miktex/tm/packages/pdfjam__doc.tar.lzma
+2023/08/19 | 136202 | systems/win32/miktex/tm/packages/pdfjam__source.tar.lzma
+2023/08/19 | 12925 | systems/win32/miktex/tm/packages/pdfjam.tar.lzma
2018/02/13 | 89850 | systems/win32/miktex/tm/packages/pdflatexpicscale.tar.lzma
2022/11/01 | 315249 | systems/win32/miktex/tm/packages/pdflscape__doc.tar.lzma
2022/11/01 | 6886 | systems/win32/miktex/tm/packages/pdflscape__source.tar.lzma
@@ -312082,9 +312129,9 @@
2011/12/07 | 296908 | systems/win32/miktex/tm/packages/pinlabel.tar.lzma
2020/08/09 | 78642 | systems/win32/miktex/tm/packages/pinoutikz.tar.lzma
2011/11/22 | 131707 | systems/win32/miktex/tm/packages/pitex.tar.lzma
-2023/07/17 | 630251 | systems/win32/miktex/tm/packages/piton__doc.tar.lzma
-2023/07/17 | 51854 | systems/win32/miktex/tm/packages/piton__source.tar.lzma
-2023/07/17 | 13476 | systems/win32/miktex/tm/packages/piton.tar.lzma
+2023/08/19 | 659242 | systems/win32/miktex/tm/packages/piton__doc.tar.lzma
+2023/08/19 | 54586 | systems/win32/miktex/tm/packages/piton__source.tar.lzma
+2023/08/19 | 13791 | systems/win32/miktex/tm/packages/piton.tar.lzma
2004/08/23 | 126341 | systems/win32/miktex/tm/packages/pittetd.cab
2016/07/18 | 57109 | systems/win32/miktex/tm/packages/pitthesis.tar.lzma
2023/02/23 | 374936 | systems/win32/miktex/tm/packages/pixelart__doc.tar.lzma
@@ -312212,7 +312259,7 @@
2023/03/17 | 425296 | systems/win32/miktex/tm/packages/principia__doc.tar.lzma
2023/03/17 | 16206 | systems/win32/miktex/tm/packages/principia__source.tar.lzma
2023/03/17 | 8606 | systems/win32/miktex/tm/packages/principia.tar.lzma
-2023/07/28 | 941 | systems/win32/miktex/tm/packages/pr.ini
+2023/08/19 | 952 | 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
@@ -312221,15 +312268,15 @@
2022/05/15 | 2785 | systems/win32/miktex/tm/packages/prociagssymp.tar.lzma
2011/04/08 | 38187 | systems/win32/miktex/tm/packages/prodint.tar.lzma
2011/01/07 | 399299 | systems/win32/miktex/tm/packages/productbox.tar.lzma
-2023/07/17 | 8806940 | systems/win32/miktex/tm/packages/profcollege__doc.tar.lzma
-2023/07/17 | 2218077 | systems/win32/miktex/tm/packages/profcollege__source.tar.lzma
-2023/07/17 | 1307624 | systems/win32/miktex/tm/packages/profcollege.tar.lzma
+2023/08/19 | 8661548 | systems/win32/miktex/tm/packages/profcollege__doc.tar.lzma
+2023/08/19 | 2119627 | systems/win32/miktex/tm/packages/profcollege__source.tar.lzma
+2023/08/19 | 1373153 | systems/win32/miktex/tm/packages/profcollege.tar.lzma
2022/05/04 | 129701 | systems/win32/miktex/tm/packages/proflabo__doc.tar.lzma
2022/05/04 | 5591 | systems/win32/miktex/tm/packages/proflabo__source.tar.lzma
2022/05/04 | 3000 | systems/win32/miktex/tm/packages/proflabo.tar.lzma
-2023/06/16 | 1760865 | systems/win32/miktex/tm/packages/proflycee__doc.tar.lzma
-2023/06/16 | 215569 | systems/win32/miktex/tm/packages/proflycee__source.tar.lzma
-2023/06/16 | 42064 | systems/win32/miktex/tm/packages/proflycee.tar.lzma
+2023/08/19 | 1132230 | systems/win32/miktex/tm/packages/proflycee__doc.tar.lzma
+2023/08/19 | 202598 | systems/win32/miktex/tm/packages/proflycee__source.tar.lzma
+2023/08/19 | 36248 | systems/win32/miktex/tm/packages/proflycee.tar.lzma
2023/06/16 | 161574 | systems/win32/miktex/tm/packages/profmaquette__doc.tar.lzma
2023/06/16 | 8665 | systems/win32/miktex/tm/packages/profmaquette__source.tar.lzma
2023/06/16 | 12370 | systems/win32/miktex/tm/packages/profmaquette.tar.lzma
@@ -312459,9 +312506,9 @@
2023/03/17 | 162552 | systems/win32/miktex/tm/packages/pxbase__doc.tar.lzma
2023/03/17 | 7363 | systems/win32/miktex/tm/packages/pxbase__source.tar.lzma
2023/03/17 | 12685 | systems/win32/miktex/tm/packages/pxbase.tar.lzma
-2023/02/23 | 309867 | systems/win32/miktex/tm/packages/pxchfon__doc.tar.lzma
-2023/02/23 | 21268 | systems/win32/miktex/tm/packages/pxchfon__source.tar.lzma
-2023/02/23 | 16606 | systems/win32/miktex/tm/packages/pxchfon.tar.lzma
+2023/08/19 | 312700 | systems/win32/miktex/tm/packages/pxchfon__doc.tar.lzma
+2023/08/19 | 21561 | systems/win32/miktex/tm/packages/pxchfon__source.tar.lzma
+2023/08/19 | 16838 | systems/win32/miktex/tm/packages/pxchfon.tar.lzma
2022/06/12 | 199987 | systems/win32/miktex/tm/packages/pxcjkcat__doc.tar.lzma
2022/06/12 | 13334 | systems/win32/miktex/tm/packages/pxcjkcat__source.tar.lzma
2022/06/12 | 10444 | systems/win32/miktex/tm/packages/pxcjkcat.tar.lzma
@@ -312472,9 +312519,9 @@
2023/03/17 | 19622 | systems/win32/miktex/tm/packages/pxjahyper.tar.lzma
2020/05/06 | 121548 | systems/win32/miktex/tm/packages/pxjodel.tar.lzma
2013/05/06 | 2352 | systems/win32/miktex/tm/packages/pxpgfmark.tar.lzma
-2023/02/23 | 359488 | systems/win32/miktex/tm/packages/pxpic__doc.tar.lzma
-2023/02/23 | 15461 | systems/win32/miktex/tm/packages/pxpic__source.tar.lzma
-2023/02/23 | 3394 | systems/win32/miktex/tm/packages/pxpic.tar.lzma
+2023/08/19 | 359634 | systems/win32/miktex/tm/packages/pxpic__doc.tar.lzma
+2023/08/19 | 15473 | systems/win32/miktex/tm/packages/pxpic__source.tar.lzma
+2023/08/19 | 3401 | systems/win32/miktex/tm/packages/pxpic.tar.lzma
2023/03/17 | 725264 | systems/win32/miktex/tm/packages/pxrubrica__doc.tar.lzma
2023/03/17 | 40713 | systems/win32/miktex/tm/packages/pxrubrica__source.tar.lzma
2023/03/17 | 13872 | systems/win32/miktex/tm/packages/pxrubrica.tar.lzma
@@ -312534,9 +312581,9 @@
2014/01/31 | 317536 | systems/win32/miktex/tm/packages/quoting.tar.lzma
2007/12/30 | 166253 | systems/win32/miktex/tm/packages/quotmark.tar.lzma
2020/03/09 | 747672 | systems/win32/miktex/tm/packages/quran-de.tar.lzma
-2023/07/17 | 508766 | systems/win32/miktex/tm/packages/quran__doc.tar.lzma
-2023/07/17 | 23770 | systems/win32/miktex/tm/packages/quran__source.tar.lzma
-2023/07/17 | 1631908 | systems/win32/miktex/tm/packages/quran.tar.lzma
+2023/08/19 | 1012632 | systems/win32/miktex/tm/packages/quran__doc.tar.lzma
+2023/08/19 | 25124 | systems/win32/miktex/tm/packages/quran__source.tar.lzma
+2023/08/19 | 1632295 | systems/win32/miktex/tm/packages/quran.tar.lzma
2020/03/09 | 1994041 | systems/win32/miktex/tm/packages/quran-ur.tar.lzma
2020/10/03 | 606086 | systems/win32/miktex/tm/packages/qyxf-book.tar.lzma
2023/06/23 | 724847 | systems/win32/miktex/tm/packages/ragged2e__doc.tar.lzma
@@ -312595,9 +312642,9 @@
2023/04/07 | 516860 | systems/win32/miktex/tm/packages/regstats__doc.tar.lzma
2023/04/07 | 16267 | systems/win32/miktex/tm/packages/regstats__source.tar.lzma
2023/04/07 | 4228 | systems/win32/miktex/tm/packages/regstats.tar.lzma
-2023/07/28 | 10418201 | systems/win32/miktex/tm/packages/reledmac__doc.tar.lzma
-2023/07/28 | 258031 | systems/win32/miktex/tm/packages/reledmac__source.tar.lzma
-2023/07/28 | 55811 | systems/win32/miktex/tm/packages/reledmac.tar.lzma
+2023/08/19 | 10420147 | systems/win32/miktex/tm/packages/reledmac__doc.tar.lzma
+2023/08/19 | 258048 | systems/win32/miktex/tm/packages/reledmac__source.tar.lzma
+2023/08/19 | 55843 | systems/win32/miktex/tm/packages/reledmac.tar.lzma
2016/07/18 | 62816 | systems/win32/miktex/tm/packages/relenc.tar.lzma
2013/05/29 | 315594 | systems/win32/miktex/tm/packages/relsize.tar.lzma
2010/02/12 | 58689 | systems/win32/miktex/tm/packages/renditions.tar.lzma
@@ -312844,6 +312891,9 @@
2019/01/19 | 332245 | systems/win32/miktex/tm/packages/sesstime.tar.lzma
2012/10/17 | 65276 | systems/win32/miktex/tm/packages/setdeck.tar.lzma
2022/12/07 | 197346 | systems/win32/miktex/tm/packages/setspace__doc.tar.lzma
+2023/08/19 | 310630 | systems/win32/miktex/tm/packages/setspaceenhanced__doc.tar.lzma
+2023/08/19 | 8624 | systems/win32/miktex/tm/packages/setspaceenhanced__source.tar.lzma
+2023/08/19 | 2095 | systems/win32/miktex/tm/packages/setspaceenhanced.tar.lzma
2022/12/07 | 1714 | systems/win32/miktex/tm/packages/setspace__source.tar.lzma
2022/12/07 | 7535 | systems/win32/miktex/tm/packages/setspace.tar.lzma
2022/04/05 | 171002 | systems/win32/miktex/tm/packages/seu-ml-assign__doc.tar.lzma
@@ -312907,9 +312957,9 @@
2023/01/08 | 2877 | systems/win32/miktex/tm/packages/simplebnf.tar.lzma
2013/03/01 | 939150 | systems/win32/miktex/tm/packages/simplecd.tar.lzma
2014/11/20 | 300788 | systems/win32/miktex/tm/packages/simplecv.tar.lzma
-2023/07/28 | 2073808 | systems/win32/miktex/tm/packages/simpleicons__doc.tar.lzma
-2023/07/28 | 18558 | systems/win32/miktex/tm/packages/simpleicons__source.tar.lzma
-2023/07/28 | 2848873 | systems/win32/miktex/tm/packages/simpleicons.tar.lzma
+2023/08/19 | 2148671 | systems/win32/miktex/tm/packages/simpleicons__doc.tar.lzma
+2023/08/19 | 19301 | systems/win32/miktex/tm/packages/simpleicons__source.tar.lzma
+2023/08/19 | 2956772 | systems/win32/miktex/tm/packages/simpleicons.tar.lzma
2017/11/03 | 228224 | systems/win32/miktex/tm/packages/simpleinvoice.tar.lzma
2022/10/06 | 125688 | systems/win32/miktex/tm/packages/simplekv__doc.tar.lzma
2022/10/06 | 6337 | systems/win32/miktex/tm/packages/simplekv__source.tar.lzma
@@ -312933,9 +312983,9 @@
2008/07/22 | 360807 | systems/win32/miktex/tm/packages/sistyle.tar.lzma
2011/04/21 | 76017 | systems/win32/miktex/tm/packages/sitem.tar.lzma
2007/12/09 | 81490 | systems/win32/miktex/tm/packages/siunits.tar.lzma
-2023/07/28 | 1273239 | systems/win32/miktex/tm/packages/siunitx__doc.tar.lzma
-2023/07/28 | 118509 | systems/win32/miktex/tm/packages/siunitx__source.tar.lzma
-2023/07/28 | 66308 | systems/win32/miktex/tm/packages/siunitx.tar.lzma
+2023/08/19 | 1293396 | systems/win32/miktex/tm/packages/siunitx__doc.tar.lzma
+2023/08/19 | 122344 | systems/win32/miktex/tm/packages/siunitx__source.tar.lzma
+2023/08/19 | 67415 | systems/win32/miktex/tm/packages/siunitx.tar.lzma
2009/02/21 | 477338 | systems/win32/miktex/tm/packages/skaknew.tar.lzma
2018/02/08 | 221377 | systems/win32/miktex/tm/packages/skak.tar.lzma
2011/06/23 | 1471957 | systems/win32/miktex/tm/packages/skb.tar.lzma
@@ -312986,9 +313036,9 @@
2023/07/17 | 53860 | systems/win32/miktex/tm/packages/spacekern__doc.tar.lzma
2023/07/17 | 4137 | systems/win32/miktex/tm/packages/spacekern__source.tar.lzma
2023/07/17 | 3199 | systems/win32/miktex/tm/packages/spacekern.tar.lzma
-2023/03/17 | 155862 | systems/win32/miktex/tm/packages/spacingtricks__doc.tar.lzma
-2023/03/17 | 12288 | systems/win32/miktex/tm/packages/spacingtricks__source.tar.lzma
-2023/03/17 | 2251 | systems/win32/miktex/tm/packages/spacingtricks.tar.lzma
+2023/08/19 | 158517 | systems/win32/miktex/tm/packages/spacingtricks__doc.tar.lzma
+2023/08/19 | 12717 | systems/win32/miktex/tm/packages/spacingtricks__source.tar.lzma
+2023/08/19 | 2251 | systems/win32/miktex/tm/packages/spacingtricks.tar.lzma
2004/06/26 | 12950 | systems/win32/miktex/tm/packages/spain.cab
2016/10/07 | 134907 | systems/win32/miktex/tm/packages/spalign.tar.lzma
2013/03/04 | 5712 | systems/win32/miktex/tm/packages/spanglish.tar.lzma
@@ -313068,6 +313118,9 @@
2022/11/15 | 281595 | systems/win32/miktex/tm/packages/stealcaps__source.tar.lzma
2022/11/15 | 1847 | systems/win32/miktex/tm/packages/stealcaps.tar.lzma
2009/06/20 | 108653 | systems/win32/miktex/tm/packages/steinmetz.tar.lzma
+2023/08/19 | 5430307 | systems/win32/miktex/tm/packages/stellenbosch-2__doc.tar.lzma
+2023/08/19 | 2081504 | systems/win32/miktex/tm/packages/stellenbosch-2__source.tar.lzma
+2023/08/19 | 1555368 | systems/win32/miktex/tm/packages/stellenbosch-2.tar.lzma
2015/04/21 | 3861594 | systems/win32/miktex/tm/packages/stellenbosch.tar.lzma
2020/12/12 | 459378 | systems/win32/miktex/tm/packages/stepgreek.tar.lzma
2021/01/07 | 1340388 | systems/win32/miktex/tm/packages/step.tar.lzma
@@ -313202,9 +313255,9 @@
2013/01/24 | 612797 | systems/win32/miktex/tm/packages/tabvar.tar.lzma
2019/09/10 | 116225 | systems/win32/miktex/tm/packages/tagging.tar.lzma
2016/09/27 | 70712 | systems/win32/miktex/tm/packages/tagpair.tar.lzma
-2023/07/17 | 1947107 | systems/win32/miktex/tm/packages/tagpdf__doc.tar.lzma
-2023/07/17 | 235827 | systems/win32/miktex/tm/packages/tagpdf__source.tar.lzma
-2023/07/17 | 34670 | systems/win32/miktex/tm/packages/tagpdf.tar.lzma
+2023/08/19 | 1936536 | systems/win32/miktex/tm/packages/tagpdf__doc.tar.lzma
+2023/08/19 | 236849 | systems/win32/miktex/tm/packages/tagpdf__source.tar.lzma
+2023/08/19 | 35199 | systems/win32/miktex/tm/packages/tagpdf.tar.lzma
2007/08/13 | 135721 | systems/win32/miktex/tm/packages/talk.tar.lzma
2022/02/07 | 63660 | systems/win32/miktex/tm/packages/talos__doc.tar.lzma
2022/02/07 | 2030 | systems/win32/miktex/tm/packages/talos__source.tar.lzma
@@ -313413,8 +313466,8 @@
2023/04/07 | 29450 | systems/win32/miktex/tm/packages/tikz-ext.tar.lzma
2019/08/22 | 323096 | systems/win32/miktex/tm/packages/tikz-feynhand.tar.lzma
2016/02/07 | 338788 | systems/win32/miktex/tm/packages/tikz-feynman.tar.lzma
-2022/07/25 | 622867 | systems/win32/miktex/tm/packages/tikzfill__doc.tar.lzma
-2022/07/25 | 4620 | systems/win32/miktex/tm/packages/tikzfill.tar.lzma
+2023/08/19 | 629301 | systems/win32/miktex/tm/packages/tikzfill__doc.tar.lzma
+2023/08/19 | 4863 | systems/win32/miktex/tm/packages/tikzfill.tar.lzma
2019/07/05 | 987774 | systems/win32/miktex/tm/packages/tikz-imagelabels.tar.lzma
2013/01/07 | 175983 | systems/win32/miktex/tm/packages/tikzinclude.tar.lzma
2008/06/20 | 118922 | systems/win32/miktex/tm/packages/tikz-inet.tar.lzma
@@ -313718,10 +313771,12 @@
2023/05/11 | 1360982 | systems/win32/miktex/tm/packages/unicodefonttable__doc.tar.lzma
2023/05/11 | 23769 | systems/win32/miktex/tm/packages/unicodefonttable__source.tar.lzma
2023/05/11 | 20585 | systems/win32/miktex/tm/packages/unicodefonttable.tar.lzma
+2023/08/19 | 3352779 | systems/win32/miktex/tm/packages/unicode-math__doc.tar.lzma
2023/05/18 | 95276 | systems/win32/miktex/tm/packages/unicode-math-input__doc.tar.lzma
2023/05/18 | 11726 | systems/win32/miktex/tm/packages/unicode-math-input__source.tar.lzma
2023/05/18 | 16752 | systems/win32/miktex/tm/packages/unicode-math-input.tar.lzma
-2020/02/02 | 1811199 | systems/win32/miktex/tm/packages/unicode-math.tar.lzma
+2023/08/19 | 37451 | systems/win32/miktex/tm/packages/unicode-math__source.tar.lzma
+2023/08/19 | 42382 | systems/win32/miktex/tm/packages/unicode-math.tar.lzma
2021/10/05 | 974290 | systems/win32/miktex/tm/packages/unifith__doc.tar.lzma
2021/10/05 | 12975 | systems/win32/miktex/tm/packages/unifith__source.tar.lzma
2021/10/05 | 14951 | systems/win32/miktex/tm/packages/unifith.tar.lzma
@@ -313836,7 +313891,9 @@
2016/07/20 | 2661 | systems/win32/miktex/tm/packages/venn.tar.lzma
2010/07/27 | 4293717 | systems/win32/miktex/tm/packages/venturisadf.tar.lzma
2011/04/08 | 343202 | systems/win32/miktex/tm/packages/verbasef.tar.lzma
-2014/03/14 | 250021 | systems/win32/miktex/tm/packages/verbatimbox.tar.lzma
+2023/08/19 | 236625 | systems/win32/miktex/tm/packages/verbatimbox__doc.tar.lzma
+2023/08/19 | 7164 | systems/win32/miktex/tm/packages/verbatimbox__source.tar.lzma
+2023/08/19 | 3733 | systems/win32/miktex/tm/packages/verbatimbox.tar.lzma
2008/11/20 | 166584 | systems/win32/miktex/tm/packages/verbatimcopy.tar.lzma
2010/03/08 | 55962 | systems/win32/miktex/tm/packages/verbdef.tar.lzma
2011/08/28 | 77583 | systems/win32/miktex/tm/packages/verbments.tar.lzma
@@ -313913,6 +313970,9 @@
2016/07/20 | 63079 | systems/win32/miktex/tm/packages/withesis.tar.lzma
2011/05/06 | 13279 | systems/win32/miktex/tm/packages/wnri-latex.tar.lzma
2011/05/06 | 47748 | systems/win32/miktex/tm/packages/wnri.tar.lzma
+2023/08/19 | 115437 | systems/win32/miktex/tm/packages/wordcloud__doc.tar.lzma
+2023/08/19 | 8466 | systems/win32/miktex/tm/packages/wordcloud__source.tar.lzma
+2023/08/19 | 7082 | systems/win32/miktex/tm/packages/wordcloud.tar.lzma
2016/06/07 | 5449 | systems/win32/miktex/tm/packages/wordcount.tar.lzma
2023/07/17 | 445128 | systems/win32/miktex/tm/packages/wordle__doc.tar.lzma
2023/07/17 | 7596 | systems/win32/miktex/tm/packages/wordle__source.tar.lzma
@@ -313929,9 +313989,9 @@
2022/08/06 | 438549 | systems/win32/miktex/tm/packages/wrapstuff__doc.tar.lzma
2022/08/06 | 16635 | systems/win32/miktex/tm/packages/wrapstuff__source.tar.lzma
2022/08/06 | 11912 | systems/win32/miktex/tm/packages/wrapstuff.tar.lzma
-2023/03/19 | 947405 | systems/win32/miktex/tm/packages/writeongrid__doc.tar.lzma
-2023/03/19 | 9603 | systems/win32/miktex/tm/packages/writeongrid__source.tar.lzma
-2023/03/19 | 4063 | systems/win32/miktex/tm/packages/writeongrid.tar.lzma
+2023/08/19 | 976438 | systems/win32/miktex/tm/packages/writeongrid__doc.tar.lzma
+2023/08/19 | 9881 | systems/win32/miktex/tm/packages/writeongrid__source.tar.lzma
+2023/08/19 | 4142 | systems/win32/miktex/tm/packages/writeongrid.tar.lzma
2013/09/09 | 413560 | systems/win32/miktex/tm/packages/wsemclassic.tar.lzma
2008/12/09 | 210037 | systems/win32/miktex/tm/packages/wsuipa.tar.lzma
2020/06/22 | 350168 | systems/win32/miktex/tm/packages/wtref.tar.lzma
@@ -314001,9 +314061,9 @@
2015/11/25 | 486715 | systems/win32/miktex/tm/packages/xifthen.tar.lzma
2017/11/18 | 1746 | systems/win32/miktex/tm/packages/xii-lat.tar.lzma
2017/11/18 | 1593 | systems/win32/miktex/tm/packages/xii.tar.lzma
-2023/07/17 | 436694 | systems/win32/miktex/tm/packages/xindex__doc.tar.lzma
-2023/07/17 | 173024 | systems/win32/miktex/tm/packages/xindex__source.tar.lzma
-2023/07/17 | 36642 | systems/win32/miktex/tm/packages/xindex.tar.lzma
+2023/08/19 | 438512 | systems/win32/miktex/tm/packages/xindex__doc.tar.lzma
+2023/08/19 | 173160 | systems/win32/miktex/tm/packages/xindex__source.tar.lzma
+2023/08/19 | 36639 | systems/win32/miktex/tm/packages/xindex.tar.lzma
2016/11/05 | 133165 | systems/win32/miktex/tm/packages/xindy.tar.lzma
2022/06/12 | 3584357 | systems/win32/miktex/tm/packages/xint__doc.tar.lzma
2021/11/07 | 3453 | systems/win32/miktex/tm/packages/xintsession__doc.tar.lzma
@@ -314014,7 +314074,9 @@
2021/12/23 | 14576 | systems/win32/miktex/tm/packages/xistercian__source.tar.lzma
2021/12/23 | 5110 | systems/win32/miktex/tm/packages/xistercian.tar.lzma
2020/07/03 | 547474 | systems/win32/miktex/tm/packages/xits.tar.lzma
-2019/10/22 | 228077 | systems/win32/miktex/tm/packages/xkcdcolors.tar.lzma
+2023/08/19 | 221636 | systems/win32/miktex/tm/packages/xkcdcolors__doc.tar.lzma
+2023/08/19 | 5587 | systems/win32/miktex/tm/packages/xkcdcolors__source.tar.lzma
+2023/08/19 | 8796 | systems/win32/miktex/tm/packages/xkcdcolors.tar.lzma
2022/06/26 | 416252 | systems/win32/miktex/tm/packages/xkeyval__doc.tar.lzma
2022/06/26 | 48011 | systems/win32/miktex/tm/packages/xkeyval__source.tar.lzma
2022/06/26 | 10065 | systems/win32/miktex/tm/packages/xkeyval.tar.lzma
@@ -314036,7 +314098,9 @@
2022/07/25 | 11199 | systems/win32/miktex/tm/packages/xpinyin__source.tar.lzma
2022/07/25 | 202179 | systems/win32/miktex/tm/packages/xpinyin.tar.lzma
2015/01/13 | 142159 | systems/win32/miktex/tm/packages/xprintlen.tar.lzma
-2012/05/29 | 205053 | systems/win32/miktex/tm/packages/xpunctuate.tar.lzma
+2023/08/19 | 217672 | systems/win32/miktex/tm/packages/xpunctuate__doc.tar.lzma
+2023/08/19 | 6793 | systems/win32/miktex/tm/packages/xpunctuate__source.tar.lzma
+2023/08/19 | 1671 | systems/win32/miktex/tm/packages/xpunctuate.tar.lzma
2014/09/29 | 253828 | systems/win32/miktex/tm/packages/xq.tar.lzma
2022/08/11 | 379622 | systems/win32/miktex/tm/packages/xsavebox__doc.tar.lzma
2022/08/11 | 4685 | systems/win32/miktex/tm/packages/xsavebox__source.tar.lzma
@@ -314139,18 +314203,18 @@
2022/08/11 | 3206 | systems/win32/miktex/tm/packages/zlmtt__source.tar.lzma
2022/08/11 | 3549 | systems/win32/miktex/tm/packages/zlmtt.tar.lzma
2019/03/28 | 141628 | systems/win32/miktex/tm/packages/zootaxa-bst.tar.lzma
-2023/06/16 | 1053269 | systems/win32/miktex/tm/packages/zref-check__doc.tar.lzma
-2023/06/16 | 21711 | systems/win32/miktex/tm/packages/zref-check__source.tar.lzma
-2023/06/16 | 5869 | systems/win32/miktex/tm/packages/zref-check.tar.lzma
-2023/06/21 | 1575913 | systems/win32/miktex/tm/packages/zref-clever__doc.tar.lzma
-2023/06/21 | 53664 | systems/win32/miktex/tm/packages/zref-clever__source.tar.lzma
-2023/06/21 | 23753 | systems/win32/miktex/tm/packages/zref-clever.tar.lzma
+2023/08/19 | 1053436 | systems/win32/miktex/tm/packages/zref-check__doc.tar.lzma
+2023/08/19 | 21920 | systems/win32/miktex/tm/packages/zref-check__source.tar.lzma
+2023/08/19 | 5803 | systems/win32/miktex/tm/packages/zref-check.tar.lzma
+2023/08/19 | 1570276 | systems/win32/miktex/tm/packages/zref-clever__doc.tar.lzma
+2023/08/19 | 53383 | systems/win32/miktex/tm/packages/zref-clever__source.tar.lzma
+2023/08/19 | 23629 | systems/win32/miktex/tm/packages/zref-clever.tar.lzma
2022/04/15 | 668022 | systems/win32/miktex/tm/packages/zref__doc.tar.lzma
2022/04/15 | 37823 | systems/win32/miktex/tm/packages/zref__source.tar.lzma
2022/04/15 | 14656 | systems/win32/miktex/tm/packages/zref.tar.lzma
-2023/06/16 | 779497 | systems/win32/miktex/tm/packages/zref-vario__doc.tar.lzma
-2023/06/16 | 12940 | systems/win32/miktex/tm/packages/zref-vario__source.tar.lzma
-2023/06/16 | 4780 | systems/win32/miktex/tm/packages/zref-vario.tar.lzma
+2023/08/19 | 778695 | systems/win32/miktex/tm/packages/zref-vario__doc.tar.lzma
+2023/08/19 | 12897 | systems/win32/miktex/tm/packages/zref-vario__source.tar.lzma
+2023/08/19 | 4777 | systems/win32/miktex/tm/packages/zref-vario.tar.lzma
2008/06/26 | 246879 | systems/win32/miktex/tm/packages/zwgetfdate.tar.lzma
2022/04/23 | 626956 | systems/win32/miktex/tm/packages/zwpagelayout__doc.tar.lzma
2022/04/23 | 22151 | systems/win32/miktex/tm/packages/zwpagelayout__source.tar.lzma
@@ -314403,7 +314467,7 @@
2014/07/05 | 611 | systems/win32/yandy/README
2014/07/05 | 1004628 | systems/win32/yandy/yandy-src.tar.xz
2014/07/05 | 1012416 | systems/win32/yandy.zip
-2023/08/19 | 186 | timestamp
+2023/08/20 | 186 | timestamp
2002/08/26 | 61898 | usergrps/dante/antrag.pdf
2002/08/26 | 118217 | usergrps/dante/antrag.ps
2021/11/11 | 917 | usergrps/dante/dtk/doc/beispiel.bib
@@ -315838,62 +315902,62 @@
2002/01/14 | 1029 | web/c_cpp/ctie/Makefile
2003/04/20 | 3026 | web/c_cpp/ctie/README
2011/04/16 | 35484 | web/c_cpp/ctie.zip
-2022/06/05 | 1674 | web/c_cpp/cweb/c++lib.w
-2022/06/05 | 502 | web/c_cpp/cweb/comm-amiga.ch
-2022/06/05 | 5910 | web/c_cpp/cweb/comm-bs.ch
-2022/06/05 | 5321 | web/c_cpp/cweb/comm-mac.ch
-2022/06/05 | 782 | web/c_cpp/cweb/comm-man.ch
-2022/06/05 | 25324 | web/c_cpp/cweb/common.c
-2022/06/05 | 11296 | web/c_cpp/cweb/common.h
-2022/06/05 | 47887 | web/c_cpp/cweb/common.w
-2022/06/05 | 659 | web/c_cpp/cweb/comm-os2.ch
-2022/06/05 | 896 | web/c_cpp/cweb/comm-pc.ch
-2022/06/05 | 8102 | web/c_cpp/cweb/comm-ql.ch
-2022/06/05 | 3320 | web/c_cpp/cweb/comm-vms.ch
-2022/06/05 | 2738 | web/c_cpp/cweb/comm-w32.ch
-2022/06/05 | 5381 | web/c_cpp/cweb/ctang-bs.ch
-2022/06/05 | 32955 | web/c_cpp/cweb/ctangle.c
-2022/06/05 | 56195 | web/c_cpp/cweb/ctangle.w
-2022/06/05 | 783 | web/c_cpp/cweb/ctang-man.ch
-2022/06/05 | 986 | web/c_cpp/cweb/ctang-pc.ch
-2022/06/05 | 451 | web/c_cpp/cweb/ctang-ql.ch
-2022/06/05 | 1554 | web/c_cpp/cweb/ctang-vms.ch
-2022/06/05 | 1013 | web/c_cpp/cweb/ctang-w32.ch
-2022/06/05 | 7019 | web/c_cpp/cweb/cweav-bs.ch
-2022/06/05 | 177286 | web/c_cpp/cweb/cweave.w
-2022/06/05 | 783 | web/c_cpp/cweb/cweav-man.ch
-2022/06/05 | 938 | web/c_cpp/cweb/cweav-pc.ch
-2022/06/05 | 475 | web/c_cpp/cweb/cweav-ql.ch
-2022/06/05 | 1648 | web/c_cpp/cweb/cweav-vms.ch
-2022/06/05 | 744 | web/c_cpp/cweb/cweav-w32.ch
-2022/06/05 | 3973 | web/c_cpp/cweb/cweb.1
-2022/06/05 | 8687 | web/c_cpp/cweb/cweb.el
-2022/06/05 | 27969 | web/c_cpp/cweb/cwebmac.tex
-2022/06/06 | 346011 | web/c_cpp/cweb/cwebman.pdf
-2022/06/05 | 84746 | web/c_cpp/cweb/cwebman.tex
-2022/06/05 | 578 | web/c_cpp/cweb/examples/extex.ch
-2022/06/05 | 12672 | web/c_cpp/cweb/examples/extex.w
-2022/06/05 | 10549 | web/c_cpp/cweb/examples/kspell.el
-2022/06/05 | 961 | web/c_cpp/cweb/examples/Makefile
-2022/06/05 | 8023 | web/c_cpp/cweb/examples/oemacs.el
-2022/06/05 | 38418 | web/c_cpp/cweb/examples/oemacs.w
-2022/06/05 | 2946 | web/c_cpp/cweb/examples/README
-2022/06/05 | 6835 | web/c_cpp/cweb/examples/treeprint.w
-2022/06/05 | 217 | web/c_cpp/cweb/examples/wc-dos.ch
-2022/06/05 | 9029 | web/c_cpp/cweb/examples/wc.w
-2022/06/05 | 25355 | web/c_cpp/cweb/examples/wmerge.w
-2022/06/05 | 599 | web/c_cpp/cweb/examples/wmerg-pc.ch
-2022/06/05 | 581 | web/c_cpp/cweb/examples/wmer-os2.ch
-2022/06/05 | 20913 | web/c_cpp/cweb/examples/wordtest.w
-2022/06/05 | 1858 | web/c_cpp/cweb/examples/xlib_types.w
-2022/06/05 | 5811 | web/c_cpp/cweb/examples/xview_types.w
-2022/06/05 | 2176 | web/c_cpp/cweb/iso_types.w
-2022/06/05 | 5416 | web/c_cpp/cweb/Makefile
-2022/06/05 | 1542 | web/c_cpp/cweb/makefile.bs
+2023/08/19 | 1674 | web/c_cpp/cweb/c++lib.w
+2023/08/19 | 502 | web/c_cpp/cweb/comm-amiga.ch
+2023/08/19 | 5971 | web/c_cpp/cweb/comm-bs.ch
+2023/08/19 | 5303 | web/c_cpp/cweb/comm-mac.ch
+2023/08/19 | 782 | web/c_cpp/cweb/comm-man.ch
+2023/08/19 | 25212 | web/c_cpp/cweb/common.c
+2023/08/19 | 11447 | web/c_cpp/cweb/common.h
+2023/08/19 | 47809 | web/c_cpp/cweb/common.w
+2023/08/19 | 659 | web/c_cpp/cweb/comm-os2.ch
+2023/08/19 | 896 | web/c_cpp/cweb/comm-pc.ch
+2023/08/19 | 7994 | web/c_cpp/cweb/comm-ql.ch
+2023/08/19 | 3318 | web/c_cpp/cweb/comm-vms.ch
+2023/08/19 | 2633 | web/c_cpp/cweb/comm-w32.ch
+2023/08/19 | 5291 | web/c_cpp/cweb/ctang-bs.ch
+2023/08/19 | 32677 | web/c_cpp/cweb/ctangle.c
+2023/08/19 | 55659 | web/c_cpp/cweb/ctangle.w
+2023/08/19 | 783 | web/c_cpp/cweb/ctang-man.ch
+2023/08/19 | 988 | web/c_cpp/cweb/ctang-pc.ch
+2023/08/19 | 455 | web/c_cpp/cweb/ctang-ql.ch
+2023/08/19 | 1556 | web/c_cpp/cweb/ctang-vms.ch
+2023/08/19 | 897 | web/c_cpp/cweb/ctang-w32.ch
+2023/08/19 | 6976 | web/c_cpp/cweb/cweav-bs.ch
+2023/08/19 | 177691 | web/c_cpp/cweb/cweave.w
+2023/08/19 | 783 | web/c_cpp/cweb/cweav-man.ch
+2023/08/19 | 956 | web/c_cpp/cweb/cweav-pc.ch
+2023/08/19 | 479 | web/c_cpp/cweb/cweav-ql.ch
+2023/08/19 | 1650 | web/c_cpp/cweb/cweav-vms.ch
+2023/08/19 | 653 | web/c_cpp/cweb/cweav-w32.ch
+2023/08/19 | 3973 | web/c_cpp/cweb/cweb.1
+2023/08/19 | 8687 | web/c_cpp/cweb/cweb.el
+2023/08/19 | 28048 | web/c_cpp/cweb/cwebmac.tex
+2023/08/19 | 346283 | web/c_cpp/cweb/cwebman.pdf
+2023/08/19 | 85076 | web/c_cpp/cweb/cwebman.tex
+2023/08/19 | 578 | web/c_cpp/cweb/examples/extex.ch
+2023/08/19 | 12672 | web/c_cpp/cweb/examples/extex.w
+2023/08/19 | 10549 | web/c_cpp/cweb/examples/kspell.el
+2023/08/19 | 961 | web/c_cpp/cweb/examples/Makefile
+2023/08/19 | 8023 | web/c_cpp/cweb/examples/oemacs.el
+2023/08/19 | 38418 | web/c_cpp/cweb/examples/oemacs.w
+2023/08/19 | 2946 | web/c_cpp/cweb/examples/README
+2023/08/19 | 6835 | web/c_cpp/cweb/examples/treeprint.w
+2023/08/19 | 217 | web/c_cpp/cweb/examples/wc-dos.ch
+2023/08/19 | 9029 | web/c_cpp/cweb/examples/wc.w
+2023/08/19 | 25355 | web/c_cpp/cweb/examples/wmerge.w
+2023/08/19 | 599 | web/c_cpp/cweb/examples/wmerg-pc.ch
+2023/08/19 | 581 | web/c_cpp/cweb/examples/wmer-os2.ch
+2023/08/19 | 20913 | web/c_cpp/cweb/examples/wordtest.w
+2023/08/19 | 1858 | web/c_cpp/cweb/examples/xlib_types.w
+2023/08/19 | 5811 | web/c_cpp/cweb/examples/xview_types.w
+2023/08/19 | 2176 | web/c_cpp/cweb/iso_types.w
+2023/08/19 | 5556 | web/c_cpp/cweb/Makefile
+2023/08/19 | 1542 | web/c_cpp/cweb/makefile.bs
1992/09/07 | 254049 | web/c_cpp/cweb-p/cweb-p.tar.gz
-2022/06/05 | 18573 | web/c_cpp/cweb/prod.w
-2022/06/05 | 3940 | web/c_cpp/cweb/README
-2022/06/05 | 2858 | web/c_cpp/cweb/readme.ql
+2023/08/19 | 18576 | web/c_cpp/cweb/prod.w
+2023/08/19 | 3940 | web/c_cpp/cweb/README
+2023/08/19 | 2858 | web/c_cpp/cweb/readme.ql
1996/09/18 | 23499 | web/c_cpp/cwebx/common.c
1997/09/23 | 2809 | web/c_cpp/cwebx/common.h
1994/12/19 | 9852 | web/c_cpp/cwebx/common.inc
@@ -315921,7 +315985,7 @@
1998/02/10 | 39270 | web/c_cpp/cwebx/rules.w
1998/01/13 | 40083 | web/c_cpp/cwebx/sample.ps
2006/03/21 | 667661 | web/c_cpp/cwebx.zip
-2022/06/06 | 580002 | web/c_cpp/cweb.zip
+2023/08/19 | 580183 | web/c_cpp/cweb.zip
1993/02/22 | 37233 | web/clip/clip_ann.ps
1993/02/24 | 32049 | web/clip/clip_style_a.ps
1993/02/24 | 9202 | web/clip/clip_style_b.ps
diff --git a/FILES.byname.gz b/FILES.byname.gz
index c575585cbd..4cdcc55434 100644
--- a/FILES.byname.gz
+++ b/FILES.byname.gz
Binary files differ
diff --git a/FILES.last07days b/FILES.last07days
index 0805c45a86..4f2ed8959b 100644
--- a/FILES.last07days
+++ b/FILES.last07days
@@ -1,28 +1,426 @@
+2023/08/19 | 988 | web/c_cpp/cweb/ctang-pc.ch
+2023/08/19 | 9881 | systems/win32/miktex/tm/packages/writeongrid__source.tar.lzma
+2023/08/19 | 9854 | systems/win32/miktex/tm/packages/jeuxcartes__source.tar.lzma
+2023/08/19 | 976438 | systems/win32/miktex/tm/packages/writeongrid__doc.tar.lzma
+2023/08/19 | 9627 | systems/win32/miktex/tm/packages/luacolor__source.tar.lzma
+2023/08/19 | 961 | web/c_cpp/cweb/examples/Makefile
+2023/08/19 | 956 | web/c_cpp/cweb/cweav-pc.ch
+2023/08/19 | 952 | systems/win32/miktex/tm/packages/pr.ini
+2023/08/19 | 9504 | systems/win32/miktex/tm/packages/panneauxroute__source.tar.lzma
+2023/08/19 | 9275 | systems/win32/miktex/tm/packages/lualinalg__source.tar.lzma
+2023/08/19 | 91339 | systems/win32/miktex/tm/packages/luatruthtable__doc.tar.lzma
+2023/08/19 | 9029 | web/c_cpp/cweb/examples/wc.w
+2023/08/19 | 897 | web/c_cpp/cweb/ctang-w32.ch
+2023/08/19 | 896 | web/c_cpp/cweb/comm-pc.ch
+2023/08/19 | 88483 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma
+2023/08/19 | 8796 | systems/win32/miktex/tm/packages/xkcdcolors.tar.lzma
+2023/08/19 | 8792 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma
+2023/08/19 | 8687 | web/c_cpp/cweb/cweb.el
+2023/08/19 | 86746 | systems/win32/miktex/tm/packages/luacomplex__doc.tar.lzma
+2023/08/19 | 8661548 | systems/win32/miktex/tm/packages/profcollege__doc.tar.lzma
+2023/08/19 | 8624 | systems/win32/miktex/tm/packages/setspaceenhanced__source.tar.lzma
+2023/08/19 | 85076 | web/c_cpp/cweb/cwebman.tex
+2023/08/19 | 8466 | systems/win32/miktex/tm/packages/wordcloud__source.tar.lzma
+2023/08/19 | 831240 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma
+2023/08/19 | 8209 | systems/win32/miktex/tm/packages/lettrine.tar.lzma
+2023/08/19 | 82059 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma
+2023/08/19 | 81573 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma
+2023/08/19 | 81487 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma
+2023/08/19 | 8023 | web/c_cpp/cweb/examples/oemacs.el
+2023/08/19 | 8023 | systems/win32/miktex/tm/packages/floatrowbytocbasic__source.tar.lzma
+2023/08/19 | 7994 | web/c_cpp/cweb/comm-ql.ch
+2023/08/19 | 7938133 | systems/win32/miktex/tm/packages/jeuxcartes__doc.tar.lzma
+2023/08/19 | 786953 | systems/win32/miktex/tm/packages/huawei__doc.tar.lzma
+2023/08/19 | 78652 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma
+2023/08/19 | 783 | web/c_cpp/cweb/cweav-man.ch
+2023/08/19 | 783 | web/c_cpp/cweb/ctang-man.ch
+2023/08/19 | 782 | web/c_cpp/cweb/comm-man.ch
+2023/08/19 | 778695 | systems/win32/miktex/tm/packages/zref-vario__doc.tar.lzma
+2023/08/19 | 77708 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma
+2023/08/19 | 763027 | systems/win32/miktex/tm/packages/next/files.csv.lzma
+2023/08/19 | 762315 | systems/win32/miktex/tm/packages/files.csv.lzma
+2023/08/19 | 76084 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma
+2023/08/19 | 746829 | systems/win32/miktex/tm/packages/caption__doc.tar.lzma
+2023/08/19 | 74503 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma
+2023/08/19 | 7336 | systems/win32/miktex/tm/packages/luamaths__source.tar.lzma
+2023/08/19 | 7336 | systems/win32/miktex/tm/packages/floatbytocbasic__source.tar.lzma
+2023/08/19 | 7329 | systems/win32/miktex/tm/packages/eolang.tar.lzma
+2023/08/19 | 73289 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma
+2023/08/19 | 72793 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma
+2023/08/19 | 7255 | systems/win32/miktex/tm/packages/fontsetup.tar.lzma
+2023/08/19 | 7164 | systems/win32/miktex/tm/packages/verbatimbox__source.tar.lzma
+2023/08/19 | 7144 | systems/win32/miktex/tm/packages/arraycols__source.tar.lzma
+2023/08/19 | 7082 | systems/win32/miktex/tm/packages/wordcloud.tar.lzma
+2023/08/19 | 70677 | systems/win32/miktex/tm/packages/memoir.tar.lzma
+2023/08/19 | 706051 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma
+2023/08/19 | 697810 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma
+2023/08/19 | 6976 | web/c_cpp/cweb/cweav-bs.ch
+2023/08/19 | 69692 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma
+2023/08/19 | 6936 | systems/texlive/tlnet/archive/collection-latexextra.r67974.tar.xz
+2023/08/19 | 6835 | web/c_cpp/cweb/examples/treeprint.w
+2023/08/19 | 6793 | systems/win32/miktex/tm/packages/xpunctuate__source.tar.lzma
+2023/08/19 | 675304 | systems/win32/miktex/tm/packages/naive-ebnf__doc.tar.lzma
+2023/08/19 | 67415 | systems/win32/miktex/tm/packages/siunitx.tar.lzma
+2023/08/19 | 6729050 | systems/win32/miktex/tm/packages/jeuxcartes.tar.lzma
+2023/08/19 | 67180 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma
+2023/08/19 | 6660 | systems/win32/miktex/tm/packages/lualinalg.tar.lzma
+2023/08/19 | 659 | web/c_cpp/cweb/comm-os2.ch
+2023/08/19 | 659242 | systems/win32/miktex/tm/packages/piton__doc.tar.lzma
+2023/08/19 | 653 | web/c_cpp/cweb/cweav-w32.ch
+2023/08/19 | 6532736 | systems/win32/miktex/tm/packages/newtx.tar.lzma
+2023/08/19 | 649608 | systems/texlive/tlnet/archive/logoetalab.doc.r67974.tar.xz
+2023/08/19 | 649274 | systems/win32/miktex/tm/packages/logoetalab__doc.tar.lzma
+2023/08/19 | 64571 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma
+2023/08/19 | 63231 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma
+2023/08/19 | 629301 | systems/win32/miktex/tm/packages/tikzfill__doc.tar.lzma
+2023/08/19 | 625312 | support/TeX4ht/source/tex4ht-html4.tex
+2023/08/19 | 6167 | systems/win32/miktex/tm/packages/naive-ebnf__source.tar.lzma
+2023/08/19 | 6135 | systems/win32/miktex/tm/packages/hebrew-fonts.tar.lzma
+2023/08/19 | 61087 | systems/win32/miktex/tm/packages/caption.tar.lzma
+2023/08/19 | 608179 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma
+2023/08/19 | 60434 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma
+2023/08/19 | 601525 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma
+2023/08/19 | 600085 | systems/win32/miktex/tm/packages/l3kernel__source.tar.lzma
+2023/08/19 | 599 | web/c_cpp/cweb/examples/wmerg-pc.ch
+2023/08/19 | 5971 | web/c_cpp/cweb/comm-bs.ch
+2023/08/19 | 589951 | systems/win32/miktex/tm/packages/panneauxroute__doc.tar.lzma
+2023/08/19 | 58726 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin-x64.tar.lzma
+2023/08/19 | 58532 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma
+2023/08/19 | 581 | web/c_cpp/cweb/examples/wmer-os2.ch
+2023/08/19 | 5811 | web/c_cpp/cweb/examples/xview_types.w
+2023/08/19 | 5803 | systems/win32/miktex/tm/packages/zref-check.tar.lzma
+2023/08/19 | 580183 | web/c_cpp/cweb.zip
+2023/08/19 | 578 | web/c_cpp/cweb/examples/extex.ch
+2023/08/19 | 577246 | systems/win32/miktex/tm/packages/fontsetup__doc.tar.lzma
+2023/08/19 | 5736248 | systems/texlive/tlnet/install-tl-unx.tar.gz
+2023/08/19 | 5723 | systems/win32/miktex/tm/packages/fontsetup__source.tar.lzma
+2023/08/19 | 56005 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma
+2023/08/19 | 558854 | macros/latex/contrib/babel-contrib/greek/babel-greek.pdf
+2023/08/19 | 5587 | systems/win32/miktex/tm/packages/xkcdcolors__source.tar.lzma
+2023/08/19 | 55843 | systems/win32/miktex/tm/packages/reledmac.tar.lzma
+2023/08/19 | 55659 | web/c_cpp/cweb/ctangle.w
+2023/08/19 | 5556 | web/c_cpp/cweb/Makefile
+2023/08/19 | 552746 | systems/win32/miktex/tm/packages/apa6__doc.tar.lzma
+2023/08/19 | 550394 | systems/win32/miktex/tm/packages/joinbox__doc.tar.lzma
+2023/08/19 | 54586 | systems/win32/miktex/tm/packages/piton__source.tar.lzma
+2023/08/19 | 54569 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma
+2023/08/19 | 5430307 | systems/win32/miktex/tm/packages/stellenbosch-2__doc.tar.lzma
+2023/08/19 | 5417 | systems/win32/miktex/tm/packages/joinbox__source.tar.lzma
+2023/08/19 | 54071 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma
+2023/08/19 | 53383 | systems/win32/miktex/tm/packages/zref-clever__source.tar.lzma
+2023/08/19 | 5303 | web/c_cpp/cweb/comm-mac.ch
+2023/08/19 | 529459 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma
+2023/08/19 | 5291 | web/c_cpp/cweb/ctang-bs.ch
+2023/08/19 | 52537 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma
+2023/08/19 | 5229 | systems/win32/miktex/tm/packages/cahierprof.tar.lzma
+2023/08/19 | 502 | web/c_cpp/cweb/comm-amiga.ch
+2023/08/19 | 501420 | systems/win32/miktex/tm/packages/next/miktex-ptex-bin-x64.tar.lzma
+2023/08/19 | 497990 | systems/win32/miktex/tm/packages/mandi__doc.tar.lzma
+2023/08/19 | 49654 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma
+2023/08/19 | 495833 | macros/latex/contrib/babel-contrib/greek/test-greek.pdf
+2023/08/19 | 4908 | systems/win32/miktex/tm/packages/brandeis-dissertation__source.tar.lzma
+2023/08/19 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
+2023/08/19 | 488 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
+2023/08/19 | 488 | systems/texlive/tlnet/install-tl.zip.sha512.asc
+2023/08/19 | 488 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
+2023/08/19 | 488 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
+2023/08/19 | 4863 | systems/win32/miktex/tm/packages/tikzfill.tar.lzma
+2023/08/19 | 482958 | systems/win32/miktex/tm/packages/cahierprof__doc.tar.lzma
+2023/08/19 | 48099 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma
+2023/08/19 | 479 | web/c_cpp/cweb/cweav-ql.ch
+2023/08/19 | 47809 | web/c_cpp/cweb/common.w
+2023/08/19 | 4777 | systems/win32/miktex/tm/packages/zref-vario.tar.lzma
+2023/08/19 | 472954 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma
+2023/08/19 | 47052 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma
+2023/08/19 | 467463 | systems/win32/miktex/tm/packages/buctthesis__doc.tar.lzma
+2023/08/19 | 466135 | systems/win32/miktex/tm/packages/arraycols__doc.tar.lzma
+2023/08/19 | 45881 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma
+2023/08/19 | 4567 | systems/win32/miktex/tm/packages/luatruthtable__source.tar.lzma
+2023/08/19 | 455 | web/c_cpp/cweb/ctang-ql.ch
+2023/08/19 | 44568 | systems/win32/miktex/tm/packages/greek-fontenc__source.tar.lzma
+2023/08/19 | 44162 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma
+2023/08/19 | 4405 | systems/win32/miktex/tm/packages/logoetalab__source.tar.lzma
+2023/08/19 | 438512 | systems/win32/miktex/tm/packages/xindex__doc.tar.lzma
+2023/08/19 | 43835 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma
+2023/08/19 | 43732 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma
+2023/08/19 | 4371 | systems/win32/miktex/tm/packages/ot-tableau__source.tar.lzma
+2023/08/19 | 431024 | systems/win32/miktex/tm/packages/circledsteps__doc.tar.lzma
+2023/08/19 | 43062 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin-x64.tar.lzma
+2023/08/19 | 430214 | systems/win32/miktex/tm/packages/lettrine__doc.tar.lzma
+2023/08/19 | 429379 | systems/win32/miktex/tm/packages/msu-thesis__source.tar.lzma
+2023/08/19 | 428768 | systems/texlive/tlnet/archive/texlive-scripts.doc.r67964.tar.xz
+2023/08/19 | 4269 | systems/win32/miktex/tm/packages/defoldfonts__source.tar.lzma
+2023/08/19 | 4241605 | systems/win32/miktex/tm/packages/bidi__doc.tar.lzma
+2023/08/19 | 42382 | systems/win32/miktex/tm/packages/unicode-math.tar.lzma
+2023/08/19 | 4181 | systems/win32/miktex/tm/packages/brandeis-thesis__source.tar.lzma
+2023/08/19 | 4142 | systems/win32/miktex/tm/packages/writeongrid.tar.lzma
+2023/08/19 | 4100294 | biblio/ctan-bibdata.zip
+2023/08/19 | 40803 | systems/win32/miktex/tm/packages/nicematrix.tar.lzma
+2023/08/19 | 4045 | systems/win32/miktex/tm/packages/gamebooklib.tar.lzma
+2023/08/19 | 404029 | systems/win32/miktex/tm/packages/chronology__doc.tar.lzma
+2023/08/19 | 403573 | systems/win32/miktex/tm/packages/hebrew-fonts__doc.tar.lzma
+2023/08/19 | 402152 | systems/texlive/tlnet/archive/chronology.doc.r67973.tar.xz
+2023/08/19 | 40163 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma
+2023/08/19 | 401564 | systems/win32/miktex/tm/packages/gamebooklib__doc.tar.lzma
+2023/08/19 | 401107 | systems/win32/miktex/tm/packages/babel-hebrew__doc.tar.lzma
+2023/08/19 | 3973 | web/c_cpp/cweb/cweb.1
+2023/08/19 | 3947 | systems/win32/miktex/tm/packages/joinbox.tar.lzma
+2023/08/19 | 394715 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma
+2023/08/19 | 3940 | web/c_cpp/cweb/README
+2023/08/19 | 39046 | systems/win32/miktex/tm/packages/expex-glossonly__doc.tar.lzma
+2023/08/19 | 38424 | systems/win32/miktex/tm/packages/apa6__source.tar.lzma
+2023/08/19 | 38418 | web/c_cpp/cweb/examples/oemacs.w
+2023/08/19 | 377137 | systems/win32/miktex/tm/packages/panneauxroute.tar.lzma
+2023/08/19 | 37632 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma
+2023/08/19 | 37451 | systems/win32/miktex/tm/packages/unicode-math__source.tar.lzma
+2023/08/19 | 3733 | systems/win32/miktex/tm/packages/verbatimbox.tar.lzma
+2023/08/19 | 3706 | systems/win32/miktex/tm/packages/cahierprof__source.tar.lzma
+2023/08/19 | 3699058 | biblio/ctan-bibdata/ctan.pdf
+2023/08/19 | 36639 | systems/win32/miktex/tm/packages/xindex.tar.lzma
+2023/08/19 | 36620 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma
+2023/08/19 | 36528 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma
+2023/08/19 | 36248 | systems/win32/miktex/tm/packages/proflycee.tar.lzma
+2023/08/19 | 359634 | systems/win32/miktex/tm/packages/pxpic__doc.tar.lzma
+2023/08/19 | 353938 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma
+2023/08/19 | 35268 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma
+2023/08/19 | 35199 | systems/win32/miktex/tm/packages/tagpdf.tar.lzma
+2023/08/19 | 346283 | web/c_cpp/cweb/cwebman.pdf
+2023/08/19 | 344885 | systems/win32/miktex/tm/packages/luacolor__doc.tar.lzma
+2023/08/19 | 3401 | systems/win32/miktex/tm/packages/pxpic.tar.lzma
+2023/08/19 | 33803 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma
+2023/08/19 | 33663 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma
+2023/08/19 | 3352779 | systems/win32/miktex/tm/packages/unicode-math__doc.tar.lzma
+2023/08/19 | 3318 | web/c_cpp/cweb/comm-vms.ch
+2023/08/19 | 329847 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma
+2023/08/19 | 329834 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma
+2023/08/19 | 328557 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma
+2023/08/19 | 32703 | systems/win32/miktex/tm/packages/greek-fontenc.tar.lzma
+2023/08/19 | 326908 | systems/texlive/tlnet/archive/pxchfon.doc.r67972.tar.xz
+2023/08/19 | 32677 | web/c_cpp/cweb/ctangle.c
+2023/08/19 | 32631 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma
+2023/08/19 | 32337 | macros/latex/contrib/babel-contrib/greek/test-greek.tex
+2023/08/19 | 31752 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma
+2023/08/19 | 31752 | systems/win32/miktex/tm/packages/babel-hebrew__source.tar.lzma
+2023/08/19 | 31619 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma
+2023/08/19 | 31545 | systems/win32/miktex/tm/packages/mandi__source.tar.lzma
+2023/08/19 | 3133224 | systems/win32/miktex/tm/packages/memoir__doc.tar.lzma
+2023/08/19 | 312700 | systems/win32/miktex/tm/packages/pxchfon__doc.tar.lzma
+2023/08/19 | 310630 | systems/win32/miktex/tm/packages/setspaceenhanced__doc.tar.lzma
+2023/08/19 | 305160 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma
+2023/08/19 | 2957 | systems/win32/miktex/tm/packages/luacomplex__source.tar.lzma
+2023/08/19 | 2956772 | systems/win32/miktex/tm/packages/simpleicons.tar.lzma
+2023/08/19 | 2946 | web/c_cpp/cweb/examples/README
+2023/08/19 | 2929684 | systems/texlive/tlnet/archive/simpleicons.r67971.tar.xz
+2023/08/19 | 290272 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma
+2023/08/19 | 290209 | systems/win32/miktex/tm/packages/dccpaper__doc.tar.lzma
+2023/08/19 | 28941 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma
+2023/08/19 | 288293 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma
+2023/08/19 | 2858 | web/c_cpp/cweb/readme.ql
+2023/08/19 | 2850884 | systems/win32/miktex/tm/packages/greek-fontenc__doc.tar.lzma
+2023/08/19 | 2830955 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma
+2023/08/19 | 2805595 | biblio/ctan-bibdata/ctan.bib
+2023/08/19 | 28048 | web/c_cpp/cweb/cwebmac.tex
+2023/08/19 | 2795 | systems/win32/miktex/tm/packages/luacolor.tar.lzma
+2023/08/19 | 27955 | systems/win32/miktex/tm/packages/buctthesis__source.tar.lzma
+2023/08/19 | 27880 | systems/win32/miktex/tm/packages/luamplib__source.tar.lzma
+2023/08/19 | 2773 | systems/win32/miktex/tm/packages/ot-tableau.tar.lzma
+2023/08/19 | 27674 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma
+2023/08/19 | 2754 | systems/win32/miktex/tm/packages/floatrowbytocbasic.tar.lzma
+2023/08/19 | 27442 | systems/win32/miktex/tm/packages/dccpaper__source.tar.lzma
+2023/08/19 | 271755 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma
+2023/08/19 | 2637 | systems/win32/miktex/tm/packages/naive-ebnf.tar.lzma
+2023/08/19 | 2633 | web/c_cpp/cweb/comm-w32.ch
+2023/08/19 | 262330 | systems/win32/miktex/tm/packages/huawei.tar.lzma
+2023/08/19 | 26025603 | systems/texlive/tlnet/install-tl.zip
+2023/08/19 | 258048 | systems/win32/miktex/tm/packages/reledmac__source.tar.lzma
+2023/08/19 | 2549524 | systems/win32/miktex/tm/packages/culmus.tar.lzma
+2023/08/19 | 25465 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma
+2023/08/19 | 25427 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma
+2023/08/19 | 25355 | web/c_cpp/cweb/examples/wmerge.w
+2023/08/19 | 2525 | systems/win32/miktex/tm/packages/luatruthtable.tar.lzma
+2023/08/19 | 25212 | web/c_cpp/cweb/common.c
+2023/08/19 | 25165 | systems/win32/miktex/tm/packages/dccpaper.tar.lzma
+2023/08/19 | 25124 | systems/win32/miktex/tm/packages/quran__source.tar.lzma
+2023/08/19 | 250555 | systems/win32/miktex/tm/packages/floatrowbytocbasic__doc.tar.lzma
+2023/08/19 | 249607 | systems/win32/miktex/tm/packages/next/miktex-hitex-bin-x64.tar.lzma
+2023/08/19 | 2468136 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
+2023/08/19 | 246224 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma
+2023/08/19 | 245246 | systems/win32/miktex/tm/packages/floatbytocbasic__doc.tar.lzma
+2023/08/19 | 2406 | systems/win32/miktex/tm/packages/expex-glossonly.tar.lzma
+2023/08/19 | 24039 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma
+2023/08/19 | 236849 | systems/win32/miktex/tm/packages/tagpdf__source.tar.lzma
+2023/08/19 | 236625 | systems/win32/miktex/tm/packages/verbatimbox__doc.tar.lzma
+2023/08/19 | 23629 | systems/win32/miktex/tm/packages/zref-clever.tar.lzma
+2023/08/19 | 23239 | systems/win32/miktex/tm/packages/miktex-misc.tar.lzma
+2023/08/19 | 231271 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma
+2023/08/19 | 2297 | systems/win32/miktex/tm/packages/brandeis-dissertation.tar.lzma
+2023/08/19 | 2255 | systems/win32/miktex/tm/packages/floatbytocbasic.tar.lzma
+2023/08/19 | 2251 | systems/win32/miktex/tm/packages/spacingtricks.tar.lzma
+2023/08/19 | 221636 | systems/win32/miktex/tm/packages/xkcdcolors__doc.tar.lzma
+2023/08/19 | 221090 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma
+2023/08/19 | 21920 | systems/win32/miktex/tm/packages/zref-check__source.tar.lzma
+2023/08/19 | 2183 | systems/win32/miktex/tm/packages/chronology.tar.lzma
+2023/08/19 | 218114 | systems/win32/miktex/tm/packages/caption__source.tar.lzma
+2023/08/19 | 217 | web/c_cpp/cweb/examples/wc-dos.ch
+2023/08/19 | 2179 | systems/win32/miktex/tm/packages/brandeis-thesis.tar.lzma
+2023/08/19 | 2176 | web/c_cpp/cweb/iso_types.w
+2023/08/19 | 217672 | systems/win32/miktex/tm/packages/xpunctuate__doc.tar.lzma
+2023/08/19 | 217620 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma
+2023/08/19 | 217128 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma
+2023/08/19 | 2159 | systems/win32/miktex/tm/packages/circledsteps.tar.lzma
+2023/08/19 | 21561 | systems/win32/miktex/tm/packages/pxchfon__source.tar.lzma
+2023/08/19 | 2148671 | systems/win32/miktex/tm/packages/simpleicons__doc.tar.lzma
+2023/08/19 | 2143 | macros/latex/contrib/babel-contrib/greek/test-greek-ini.tex
+2023/08/19 | 2141900 | systems/texlive/tlnet/archive/simpleicons.doc.r67971.tar.xz
+2023/08/19 | 213139 | systems/win32/miktex/tm/packages/memoir__source.tar.lzma
+2023/08/19 | 2126 | systems/win32/miktex/tm/packages/addtoluatexpath__doc.tar.lzma
+2023/08/19 | 2119627 | systems/win32/miktex/tm/packages/profcollege__source.tar.lzma
+2023/08/19 | 211584 | macros/latex/contrib/readablecv.zip
+2023/08/19 | 21035590 | systems/texlive/tlnet/install-tl-windows.exe
+2023/08/19 | 2095 | systems/win32/miktex/tm/packages/setspaceenhanced.tar.lzma
+2023/08/19 | 20913 | web/c_cpp/cweb/examples/wordtest.w
+2023/08/19 | 20847 | systems/win32/miktex/tm/packages/lettrine__source.tar.lzma
+2023/08/19 | 2081504 | systems/win32/miktex/tm/packages/stellenbosch-2__source.tar.lzma
+2023/08/19 | 20703 | systems/win32/miktex/tm/packages/kpfonts-otf__source.tar.lzma
+2023/08/19 | 2045492 | systems/win32/miktex/tm/packages/nicematrix__doc.tar.lzma
+2023/08/19 | 203399 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma
+2023/08/19 | 202598 | systems/win32/miktex/tm/packages/proflycee__source.tar.lzma
+2023/08/19 | 2023515 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma
+2023/08/19 | 20228 | systems/texlive/tlnet/archive/pxchfon.r67972.tar.xz
+2023/08/19 | 2019026 | systems/win32/miktex/tm/packages/kpfonts-otf__doc.tar.lzma
+2023/08/19 | 199062 | systems/win32/miktex/tm/packages/defoldfonts__doc.tar.lzma
+2023/08/19 | 19744 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma
+2023/08/19 | 19645 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma
+2023/08/19 | 1944 | systems/texlive/tlnet/archive/chronology.r67973.tar.xz
+2023/08/19 | 19397 | systems/win32/miktex/tm/packages/expex-glossonly__source.tar.lzma
+2023/08/19 | 1936536 | systems/win32/miktex/tm/packages/tagpdf__doc.tar.lzma
+2023/08/19 | 1932840 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma
+2023/08/19 | 19301 | systems/win32/miktex/tm/packages/simpleicons__source.tar.lzma
+2023/08/19 | 1929857 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma
+2023/08/19 | 1919 | systems/win32/miktex/tm/packages/luacomplex.tar.lzma
+2023/08/19 | 191506 | systems/win32/miktex/tm/packages/couleurs-fr__doc.tar.lzma
+2023/08/19 | 190378 | systems/win32/miktex/tm/packages/lualinalg__doc.tar.lzma
+2023/08/19 | 189338 | macros/latex/contrib/babel-contrib/greek/test-athnum.pdf
+2023/08/19 | 1858 | web/c_cpp/cweb/examples/xlib_types.w
+2023/08/19 | 18576 | web/c_cpp/cweb/prod.w
+2023/08/19 | 182852 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma
+2023/08/19 | 18225442 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
+2023/08/19 | 1781186 | macros/latex/contrib/babel-contrib/greek.zip
+2023/08/19 | 177691 | web/c_cpp/cweb/cweave.w
+2023/08/19 | 17483 | systems/win32/miktex/tm/packages/gamebooklib__source.tar.lzma
+2023/08/19 | 174405 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma
+2023/08/19 | 173861 | systems/win32/miktex/tm/packages/l3kernel.tar.lzma
+2023/08/19 | 173620 | systems/win32/miktex/tm/packages/brandeis-dissertation__doc.tar.lzma
+2023/08/19 | 173160 | systems/win32/miktex/tm/packages/xindex__source.tar.lzma
+2023/08/19 | 16838 | systems/win32/miktex/tm/packages/pxchfon.tar.lzma
+2023/08/19 | 1679 | systems/win32/miktex/tm/packages/addtoluatexpath.tar.lzma
+2023/08/19 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx
+2023/08/19 | 1674 | web/c_cpp/cweb/c++lib.w
+2023/08/19 | 1673289 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma
+2023/08/19 | 1672176 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma
+2023/08/19 | 1671 | systems/win32/miktex/tm/packages/xpunctuate.tar.lzma
+2023/08/19 | 167006 | systems/win32/miktex/tm/packages/nicematrix__source.tar.lzma
+2023/08/19 | 16580 | systems/win32/miktex/tm/packages/eolang__source.tar.lzma
+2023/08/19 | 1650 | web/c_cpp/cweb/cweav-vms.ch
+2023/08/19 | 1632295 | systems/win32/miktex/tm/packages/quran.tar.lzma
+2023/08/19 | 158517 | systems/win32/miktex/tm/packages/spacingtricks__doc.tar.lzma
+2023/08/19 | 157655 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma
+2023/08/19 | 157324 | systems/win32/miktex/tm/packages/luamplib__doc.tar.lzma
+2023/08/19 | 15712 | macros/latex/contrib/readablecv/ReadableCV.cls
+2023/08/19 | 1570276 | systems/win32/miktex/tm/packages/zref-clever__doc.tar.lzma
+2023/08/19 | 1557 | systems/win32/miktex/tm/packages/arraycols.tar.lzma
+2023/08/19 | 1556 | web/c_cpp/cweb/ctang-vms.ch
+2023/08/19 | 1555368 | systems/win32/miktex/tm/packages/stellenbosch-2.tar.lzma
+2023/08/19 | 15473 | systems/win32/miktex/tm/packages/pxpic__source.tar.lzma
+2023/08/19 | 1542 | web/c_cpp/cweb/makefile.bs
+2023/08/19 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
+2023/08/19 | 1530208 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma
+2023/08/19 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
+2023/08/19 | 151425 | systems/win32/miktex/tm/packages/brandeis-thesis__doc.tar.lzma
+2023/08/19 | 150476 | systems/win32/miktex/tm/packages/bidi__source.tar.lzma
+2023/08/19 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
+2023/08/19 | 1459 | systems/win32/miktex/tm/packages/luamaths.tar.lzma
+2023/08/19 | 1451008 | systems/texlive/tlnet/archive/tex4ht.source.r67975.tar.xz
+2023/08/19 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
+2023/08/19 | 14485 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma
+2023/08/19 | 144417 | systems/win32/miktex/tm/packages/culmus__doc.tar.lzma
+2023/08/19 | 1438625 | systems/win32/miktex/tm/packages/eolang__doc.tar.lzma
+2023/08/19 | 1427213 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma
+2023/08/19 | 14088 | systems/win32/miktex/tm/packages/apa6.tar.lzma
+2023/08/19 | 140485 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma
+2023/08/19 | 14016 | systems/win32/miktex/tm/packages/hebrew-fonts__source.tar.lzma
+2023/08/19 | 13791 | systems/win32/miktex/tm/packages/piton.tar.lzma
+2023/08/19 | 137701 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma
+2023/08/19 | 1373153 | systems/win32/miktex/tm/packages/profcollege.tar.lzma
+2023/08/19 | 13692 | systems/win32/miktex/tm/packages/logoetalab.tar.lzma
+2023/08/19 | 136384 | systems/texlive/tlnet/archive/tex4ht.doc.r67975.tar.xz
+2023/08/19 | 136202 | systems/win32/miktex/tm/packages/pdfjam__source.tar.lzma
+2023/08/19 | 135316 | macros/latex/contrib/readablecv/ReadableCV.pdf
+2023/08/19 | 13508 | systems/texlive/tlnet/archive/logoetalab.r67974.tar.xz
+2023/08/19 | 13474 | systems/win32/miktex/tm/packages/pdfjam__doc.tar.lzma
+2023/08/19 | 134507 | systems/win32/miktex/tm/packages/bidi.tar.lzma
+2023/08/19 | 13436 | systems/win32/miktex/tm/packages/msu-thesis.tar.lzma
+2023/08/19 | 1339177 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma
+2023/08/19 | 1293396 | systems/win32/miktex/tm/packages/siunitx__doc.tar.lzma
+2023/08/19 | 12925 | systems/win32/miktex/tm/packages/pdfjam.tar.lzma
+2023/08/19 | 12897 | systems/win32/miktex/tm/packages/zref-vario__source.tar.lzma
+2023/08/19 | 1288 | systems/win32/miktex/tm/packages/defoldfonts.tar.lzma
+2023/08/19 | 12827 | systems/win32/miktex/tm/packages/couleurs-fr__source.tar.lzma
+2023/08/19 | 1281021 | systems/win32/miktex/tm/packages/culmus__source.tar.lzma
+2023/08/19 | 12717 | systems/win32/miktex/tm/packages/spacingtricks__source.tar.lzma
+2023/08/19 | 12672 | web/c_cpp/cweb/examples/extex.w
+2023/08/19 | 12367 | systems/win32/miktex/tm/packages/luamplib.tar.lzma
+2023/08/19 | 122344 | systems/win32/miktex/tm/packages/siunitx__source.tar.lzma
+2023/08/19 | 12173 | systems/win32/miktex/tm/packages/babel-hebrew.tar.lzma
+2023/08/19 | 11991057 | systems/win32/miktex/tm/packages/l3kernel__doc.tar.lzma
+2023/08/19 | 117065 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma
+2023/08/19 | 1167598 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma
+2023/08/19 | 11605 | systems/win32/miktex/tm/packages/couleurs-fr.tar.lzma
+2023/08/19 | 115437 | systems/win32/miktex/tm/packages/wordcloud__doc.tar.lzma
+2023/08/19 | 1150 | systems/win32/miktex/tm/packages/next/pr.ini
+2023/08/19 | 11447 | web/c_cpp/cweb/common.h
+2023/08/19 | 11423 | systems/win32/miktex/tm/packages/mandi.tar.lzma
+2023/08/19 | 114124 | systems/texlive/tlnet/archive/texlive-scripts.r67964.tar.xz
+2023/08/19 | 1132230 | systems/win32/miktex/tm/packages/proflycee__doc.tar.lzma
+2023/08/19 | 113052 | systems/win32/miktex/tm/packages/msu-thesis__doc.tar.lzma
+2023/08/19 | 1125658 | systems/win32/miktex/tm/packages/kpfonts-otf.tar.lzma
+2023/08/19 | 112037 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma
+2023/08/19 | 1103040 | systems/texlive/tlnet/archive/tex4ht.r67975.tar.xz
+2023/08/19 | 109777 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma
+2023/08/19 | 10940 | systems/win32/miktex/tm/packages/huawei__source.tar.lzma
+2023/08/19 | 109127 | systems/win32/miktex/tm/packages/luamaths__doc.tar.lzma
+2023/08/19 | 10823 | systems/win32/miktex/tm/packages/buctthesis.tar.lzma
+2023/08/19 | 108134 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma
+2023/08/19 | 106304 | systems/win32/miktex/tm/packages/ot-tableau__doc.tar.lzma
+2023/08/19 | 106195 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma
+2023/08/19 | 105602 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma
+2023/08/19 | 10549 | web/c_cpp/cweb/examples/kspell.el
+2023/08/19 | 1053436 | systems/win32/miktex/tm/packages/zref-check__doc.tar.lzma
+2023/08/19 | 10420147 | systems/win32/miktex/tm/packages/reledmac__doc.tar.lzma
+2023/08/19 | 103793 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma
+2023/08/19 | 102816 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma
+2023/08/19 | 1022334 | systems/win32/miktex/tm/packages/newtx__doc.tar.lzma
+2023/08/19 | 1012632 | systems/win32/miktex/tm/packages/quran__doc.tar.lzma
+2023/08/19 | 100141 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma
2023/08/18 | 97952 | systems/texlive/tlnet/archive/texinfo.r67954.tar.xz
2023/08/18 | 85858 | macros/jptex/latex/pxchfon/pxchfon.sty
2023/08/18 | 816 | systems/texlive/tlnet/archive/collection-langother.r67960.tar.xz
+2023/08/18 | 79013 | macros/latex/contrib/babel-contrib/greek/babel-greek.dtx
2023/08/18 | 77626 | macros/jptex/latex/pxchfon/pxchfon.tex
+2023/08/18 | 7415 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
2023/08/18 | 674245 | macros/latex/contrib/logoetalab/doc/logoetalab-doc.pdf
2023/08/18 | 671967 | macros/latex/contrib/logoetalab.zip
2023/08/18 | 6717 | macros/jptex/latex/pxchfon/README.md
2023/08/18 | 665 | fonts/simpleicons/README.md
2023/08/18 | 644 | macros/jptex/latex/pxchfon/pxjafont.sty
2023/08/18 | 5892 | systems/texlive/tlnet/archive/hebrew-fonts.r67959.tar.xz
-2023/08/18 | 5737445 | systems/texlive/tlnet/install-tl-unx.tar.gz
+2023/08/18 | 57479 | macros/latex/contrib/babel-contrib/greek/babel-greek-doc.html
2023/08/18 | 56632 | systems/texlive/tlnet/archive/expex-glossonly.doc.r67958.tar.xz
2023/08/18 | 5336438 | fonts/simpleicons.zip
2023/08/18 | 492 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsoneone.tfm
-2023/08/18 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
-2023/08/18 | 488 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
-2023/08/18 | 488 | systems/texlive/tlnet/install-tl.zip.sha512.asc
-2023/08/18 | 488 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
-2023/08/18 | 488 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
-2023/08/18 | 428628 | systems/texlive/tlnet/archive/texlive-scripts.doc.r67954.tar.xz
-2023/08/18 | 4099346 | biblio/ctan-bibdata.zip
2023/08/18 | 404356 | systems/texlive/tlnet/archive/hebrew-fonts.doc.r67959.tar.xz
2023/08/18 | 400240 | systems/texlive/tlnet/archive/babel-hebrew.doc.r67957.tar.xz
2023/08/18 | 391334 | macros/jptex/latex/pxchfon.zip
-2023/08/18 | 3698303 | biblio/ctan-bibdata/ctan.pdf
2023/08/18 | 368 | macros/latex/contrib/luacolor/README.md
2023/08/18 | 358564 | systems/texlive/tlnet/archive/pxpic.doc.r67955.tar.xz
2023/08/18 | 353916 | macros/latex/contrib/luacolor/luacolor.pdf
@@ -33,7 +431,6 @@
2023/08/18 | 31288 | systems/texlive/tlnet/archive/babel-hebrew.source.r67957.tar.xz
2023/08/18 | 2880268 | systems/texlive/tlnet/archive/greek-fontenc.doc.r67956.tar.xz
2023/08/18 | 2841 | fonts/simpleicons/enc/simpleiconsone.enc
-2023/08/18 | 2805220 | biblio/ctan-bibdata/ctan.bib
2023/08/18 | 274 | fonts/simpleicons/tex/usimpleiconsonezero.fd
2023/08/18 | 2737 | fonts/simpleicons/enc/simpleiconsfour.enc
2023/08/18 | 2708 | fonts/simpleicons/enc/simpleiconsnine.enc
@@ -45,7 +442,6 @@
2023/08/18 | 264 | fonts/simpleicons/tex/usimpleiconsseven.fd
2023/08/18 | 264 | fonts/simpleicons/tex/usimpleiconseight.fd
2023/08/18 | 263472 | macros/jptex/latex/pxchfon/pxchfon.pdf
-2023/08/18 | 26025609 | systems/texlive/tlnet/install-tl.zip
2023/08/18 | 259 | fonts/simpleicons/tex/usimpleiconsnine.fd
2023/08/18 | 259 | fonts/simpleicons/tex/usimpleiconsfour.fd
2023/08/18 | 259 | fonts/simpleicons/tex/usimpleiconsfive.fd
@@ -55,28 +451,21 @@
2023/08/18 | 254 | fonts/simpleicons/tex/usimpleiconsone.fd
2023/08/18 | 2540 | fonts/simpleicons/enc/simpleiconsthree.enc
2023/08/18 | 2512 | fonts/simpleicons/enc/simpleiconsonezero.enc
-2023/08/18 | 2467644 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
2023/08/18 | 2425 | fonts/simpleicons/enc/simpleiconsfive.enc
2023/08/18 | 236954 | fonts/simpleicons/tex/simpleiconsglyphs-pdftex.tex
2023/08/18 | 231960 | fonts/simpleicons/tex/simpleiconsglyphs-xeluatex.tex
2023/08/18 | 2289 | fonts/simpleicons/enc/simpleiconsoneone.enc
2023/08/18 | 2184 | systems/texlive/tlnet/archive/expex-glossonly.r67958.tar.xz
2023/08/18 | 2131367 | fonts/simpleicons/doc/simpleicons.pdf
-2023/08/18 | 21038675 | systems/texlive/tlnet/install-tl-windows.exe
2023/08/18 | 2042036 | systems/texlive/tlnet/archive/culmus.source.r67961.tar.xz
2023/08/18 | 2031168 | fonts/simpleicons/opentype/SimpleIcons.otf
2023/08/18 | 1892293 | fonts/simpleicons/type1/SimpleIcons.pfb
+2023/08/18 | 18588 | macros/latex/contrib/babel-contrib/greek/babel-greek-doc.rst
2023/08/18 | 1844 | fonts/simpleicons/doc/simpleicons.tex
-2023/08/18 | 18223438 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
-2023/08/18 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx
2023/08/18 | 15771 | macros/latex/contrib/logoetalab/doc/logoetalab-doc.tex
-2023/08/18 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
-2023/08/18 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
2023/08/18 | 1521 | fonts/simpleicons/tex/simpleicons.sty
2023/08/18 | 1518740 | systems/texlive/tlnet/archive/culmus.r67961.tar.xz
2023/08/18 | 15028 | systems/texlive/tlnet/archive/pxpic.source.r67955.tar.xz
-2023/08/18 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
-2023/08/18 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
2023/08/18 | 144300 | systems/texlive/tlnet/archive/culmus.doc.r67961.tar.xz
2023/08/18 | 140214 | fonts/simpleicons/doc/bindings.tex
2023/08/18 | 13684 | systems/texlive/tlnet/archive/hebrew-fonts.source.r67959.tar.xz
@@ -91,18 +480,16 @@
2023/08/18 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsfour.tfm
2023/08/18 | 1232 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsfive.tfm
2023/08/18 | 1228 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsone.tfm
+2023/08/18 | 1209 | macros/latex/contrib/babel-contrib/greek/README.md
2023/08/18 | 11960 | systems/texlive/tlnet/archive/babel-hebrew.r67957.tar.xz
-2023/08/18 | 114132 | systems/texlive/tlnet/archive/texlive-scripts.r67954.tar.xz
2023/08/18 | 10951 | macros/jptex/latex/pxchfon/README-ja.md
2023/08/17 | 945 | obsolete/macros/latex/contrib/substitutefont/README.md
2023/08/17 | 8112 | systems/texlive/tlnet/archive/zref-vario.source.r67949.tar.xz
2023/08/17 | 781408 | systems/texlive/tlnet/archive/zref-vario.doc.r67949.tar.xz
2023/08/17 | 7800 | macros/latex/contrib/expex-glossonly/testfiles/covington-expex.pdf
2023/08/17 | 7424 | macros/latex/contrib/expex-glossonly/expex-glossonly.tex
-2023/08/17 | 7419 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl
2023/08/17 | 736 | graphics/pxpic/pxpic-parrot.csv
2023/08/17 | 7328 | systems/texlive/tlnet/archive/floatrowbytocbasic.source.r67946.tar.xz
-2023/08/17 | 6944 | systems/texlive/tlnet/archive/collection-latexextra.r67945.tar.xz
2023/08/17 | 6672 | systems/texlive/tlnet/archive/floatbytocbasic.source.r67945.tar.xz
2023/08/17 | 644 | systems/texlive/tlnet/archive/collection-langfrench.r67951.tar.xz
2023/08/17 | 60974 | macros/latex/contrib/expex-glossonly.zip
@@ -170,15 +557,12 @@
2023/08/17 | 1708 | macros/latex/contrib/logoetalab/tex/LogoLicenceOuverte-Noir-V.pdf
2023/08/17 | 1706 | macros/latex/contrib/logoetalab/tex/LogoLicenceOuverte-Noir-H.pdf
2023/08/17 | 1705 | macros/latex/contrib/logoetalab/tex/LogoLicenceOuverte-Rouge-H.pdf
-2023/08/17 | 1450988 | systems/texlive/tlnet/archive/tex4ht.source.r67952.tar.xz
2023/08/17 | 139120 | fonts/culmus/doc/culmus.pdf
2023/08/17 | 13664 | systems/texlive/tlnet/archive/profmaquette.r67948.tar.xz
-2023/08/17 | 136384 | systems/texlive/tlnet/archive/tex4ht.doc.r67952.tar.xz
2023/08/17 | 125731 | macros/latex/contrib/babel-contrib/hebrew/hebrew.dtx
2023/08/17 | 1195 | fonts/culmus/README.md
2023/08/17 | 1149 | graphics/pxpic/README.md
2023/08/17 | 1107 | macros/latex/contrib/expex-glossonly/README.md
-2023/08/17 | 1102924 | systems/texlive/tlnet/archive/tex4ht.r67952.tar.xz
2023/08/17 | 10923 | fonts/niceframe/type1/dingbat.pfb
2023/08/17 | 10792 | fonts/culmus/latex/culmus.sty
2023/08/17 | 1002 | macros/latex/contrib/hebrew-fonts/README.md
@@ -1467,264 +1851,3 @@
2023/08/13 | 10300 | macros/unicodetex/latex/unicode-math/um-code-mathtext.dtx
2023/08/13 | 101227 | support/TeX4ht/source/tex4ht-docbook.tex
2023/08/13 | 1002 | macros/latex/contrib/zref-check/README.md
-2023/08/12 | 9981 | macros/latex/contrib/msu-thesis/samples/MSU-thesis-testfile.tex
-2023/08/12 | 997 | obsolete/macros/latex/contrib/substitutefont/test-artemisia-greek.tex
-2023/08/12 | 9134 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC14_1.pdf
-2023/08/12 | 8755 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB6d.pdf
-2023/08/12 | 8692 | systems/texlive/tlnet/archive/xkcdcolors.r67895.tar.xz
-2023/08/12 | 82785 | macros/latex/contrib/couleurs-fr/doc/couleurs-fr-doc-prefix.pdf
-2023/08/12 | 8028 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC25a.pdf
-2023/08/12 | 7626 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE50.pdf
-2023/08/12 | 7160 | systems/texlive/tlnet/archive/eolang.r67897.tar.xz
-2023/08/12 | 70914 | macros/latex/contrib/msu-thesis/samples/MSU-thesis-template.pdf
-2023/08/12 | 6956 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC3.pdf
-2023/08/12 | 6771 | macros/latex/contrib/msu-thesis/samples/MSU-thesis-template.tex
-2023/08/12 | 672020 | systems/texlive/tlnet/archive/naive-ebnf.doc.r67892.tar.xz
-2023/08/12 | 6692 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB39.pdf
-2023/08/12 | 662 | obsolete/macros/latex/contrib/substitutefont/artemisia-greek.sty
-2023/08/12 | 6621 | macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB3a.pdf
-2023/08/12 | 6610 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC50.pdf
-2023/08/12 | 6415 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC25b.pdf
-2023/08/12 | 597464 | systems/texlive/tlnet/archive/l3kernel.source.r67891.tar.xz
-2023/08/12 | 58373 | macros/latex/contrib/couleurs-fr/doc/couleurs-fr-doc.tex
-2023/08/12 | 5800 | systems/texlive/tlnet/archive/naive-ebnf.source.r67892.tar.xz
-2023/08/12 | 5662 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB19.pdf
-2023/08/12 | 563476 | macros/latex/contrib/msu-thesis.zip
-2023/08/12 | 5574 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB4.pdf
-2023/08/12 | 5403096 | systems/texlive/tlnet/archive/stellenbosch-2.doc.r67894.tar.xz
-2023/08/12 | 5335 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_30.pdf
-2023/08/12 | 5069 | macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB5.pdf
-2023/08/12 | 5012 | systems/texlive/tlnet/archive/cahierprof.r67896.tar.xz
-2023/08/12 | 483400 | systems/texlive/tlnet/archive/cahierprof.doc.r67896.tar.xz
-2023/08/12 | 4830 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB13a.pdf
-2023/08/12 | 46927 | macros/latex/contrib/couleurs-fr/tex/couleurs-fr.sty
-2023/08/12 | 4678 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_130.pdf
-2023/08/12 | 4457 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA8.pdf
-2023/08/12 | 4444 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_50.pdf
-2023/08/12 | 439218 | obsolete/macros/latex/contrib/substitutefont/test-artemisia-greek.pdf
-2023/08/12 | 4358 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_90.pdf
-2023/08/12 | 432076 | systems/texlive/tlnet/archive/circledsteps.doc.r67889.tar.xz
-2023/08/12 | 43133 | macros/latex/contrib/msu-thesis/msu-thesis.cls
-2023/08/12 | 42169 | macros/latex/contrib/msu-thesis/docs/msu-thesis.tex
-2023/08/12 | 4144 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB49.pdf
-2023/08/12 | 4117 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA4.pdf
-2023/08/12 | 3990 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_70.pdf
-2023/08/12 | 393 | macros/latex/contrib/msu-thesis/samples/chap2bib.tex
-2023/08/12 | 3914 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_110.pdf
-2023/08/12 | 3884 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA16.pdf
-2023/08/12 | 3815 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE2a.pdf
-2023/08/12 | 3779 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC64c.pdf
-2023/08/12 | 3542 | macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB3b.pdf
-2023/08/12 | 3527 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB29.pdf
-2023/08/12 | 3485 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB7b.pdf
-2023/08/12 | 3478 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC62.pdf
-2023/08/12 | 3459 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE25.pdf
-2023/08/12 | 3430 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_130.pdf
-2023/08/12 | 3347 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB43.pdf
-2023/08/12 | 3338 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_30.pdf
-2023/08/12 | 3296 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB25.pdf
-2023/08/12 | 327 | macros/latex/contrib/msu-thesis/samples/chap4bib.tex
-2023/08/12 | 3274 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB5a.pdf
-2023/08/12 | 3210 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB22c.pdf
-2023/08/12 | 3205 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB10a.pdf
-2023/08/12 | 319 | macros/latex/contrib/msu-thesis/samples/chap3bib.tex
-2023/08/12 | 3178 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9i.pdf
-2023/08/12 | 3165 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB6a3.pdf
-2023/08/12 | 3096 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB17.pdf
-2023/08/12 | 3058 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB12.pdf
-2023/08/12 | 3036 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA21.pdf
-2023/08/12 | 3016 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB5b.pdf
-2023/08/12 | 2962 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_90.pdf
-2023/08/12 | 2936 | macros/latex/contrib/msu-thesis/README.md
-2023/08/12 | 2925012 | systems/texlive/tlnet/archive/simpleicons.r67888.tar.xz
-2023/08/12 | 2923 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC4b.pdf
-2023/08/12 | 2919 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE22.pdf
-2023/08/12 | 291696 | systems/texlive/tlnet/archive/dccpaper.doc.r67890.tar.xz
-2023/08/12 | 2895 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_50.pdf
-2023/08/12 | 2884 | macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB4.pdf
-2023/08/12 | 2877 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB41.pdf
-2023/08/12 | 2865 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC4a.pdf
-2023/08/12 | 2823 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE26.pdf
-2023/08/12 | 2823 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_15.pdf
-2023/08/12 | 2815 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9h.pdf
-2023/08/12 | 2787 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE10.pdf
-2023/08/12 | 277 | macros/latex/contrib/msu-thesis/samples/chap1bib.tex
-2023/08/12 | 2757 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB22b.pdf
-2023/08/12 | 27072 | systems/texlive/tlnet/archive/dccpaper.source.r67890.tar.xz
-2023/08/12 | 2706 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB11.pdf
-2023/08/12 | 2700 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB34.pdf
-2023/08/12 | 2670 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_110.pdf
-2023/08/12 | 2668 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB27b.pdf
-2023/08/12 | 2661 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB5c.pdf
-2023/08/12 | 2644 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA13b.pdf
-2023/08/12 | 2567 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE30a.pdf
-2023/08/12 | 2567 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB7a.pdf
-2023/08/12 | 2555 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE30b.pdf
-2023/08/12 | 2549 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA9.pdf
-2023/08/12 | 2544 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_70.pdf
-2023/08/12 | 2526 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC20a.pdf
-2023/08/12 | 2525 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC116.pdf
-2023/08/12 | 25060 | systems/texlive/tlnet/archive/dccpaper.r67890.tar.xz
-2023/08/12 | 2503 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24c2.pdf
-2023/08/12 | 2494 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE15c.pdf
-2023/08/12 | 2482 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB34a.pdf
-2023/08/12 | 2470 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA15b.pdf
-2023/08/12 | 2461 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC115.pdf
-2023/08/12 | 2458 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC114.pdf
-2023/08/12 | 2445 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB40.pdf
-2023/08/12 | 2427 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB13.pdf
-2023/08/12 | 2424 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9e.pdf
-2023/08/12 | 2418 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC113.pdf
-2023/08/12 | 2416 | systems/texlive/tlnet/archive/naive-ebnf.r67892.tar.xz
-2023/08/12 | 2414 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC5.pdf
-2023/08/12 | 2397 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9b.pdf
-2023/08/12 | 2376 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE20b.pdf
-2023/08/12 | 2367 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE24.pdf
-2023/08/12 | 236377 | macros/latex/contrib/couleurs-fr.zip
-2023/08/12 | 2336 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE19.pdf
-2023/08/12 | 2335 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB22a.pdf
-2023/08/12 | 2295 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE23.pdf
-2023/08/12 | 2270 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA13a.pdf
-2023/08/12 | 2268 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB35.pdf
-2023/08/12 | 2264 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE12.pdf
-2023/08/12 | 2264 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB6a2.pdf
-2023/08/12 | 224804 | systems/texlive/tlnet/archive/xkcdcolors.doc.r67895.tar.xz
-2023/08/12 | 2247 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA20.pdf
-2023/08/12 | 2242 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24a1.pdf
-2023/08/12 | 2217 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB3a.pdf
-2023/08/12 | 2212 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC1c.pdf
-2023/08/12 | 2207 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24a4.pdf
-2023/08/12 | 2205 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB18a.pdf
-2023/08/12 | 2158 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9g.pdf
-2023/08/12 | 2152 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA15c.pdf
-2023/08/12 | 215120 | macros/latex/contrib/msu-thesis/samples/MSU-thesis-testfile.pdf
-2023/08/12 | 2138936 | systems/texlive/tlnet/archive/simpleicons.doc.r67888.tar.xz
-2023/08/12 | 2127 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE4c.pdf
-2023/08/12 | 2124 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA15a2.pdf
-2023/08/12 | 211 | macros/latex/contrib/joinbox/build.sh
-2023/08/12 | 2069 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE6a.pdf
-2023/08/12 | 2065404 | systems/texlive/tlnet/archive/stellenbosch-2.source.r67894.tar.xz
-2023/08/12 | 2059 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC20c.pdf
-2023/08/12 | 2055 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9c.pdf
-2023/08/12 | 2046 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA6.pdf
-2023/08/12 | 2041 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA24.pdf
-2023/08/12 | 2004 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE20a.pdf
-2023/08/12 | 2002 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE8.pdf
-2023/08/12 | 2000 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC64a.pdf
-2023/08/12 | 1997 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE6b.pdf
-2023/08/12 | 1986 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE5a.pdf
-2023/08/12 | 1984 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB42.pdf
-2023/08/12 | 1968 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24c1.pdf
-2023/08/12 | 1949 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB18b.pdf
-2023/08/12 | 1945 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_15.pdf
-2023/08/12 | 1937 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA15a1.pdf
-2023/08/12 | 1928 | systems/texlive/tlnet/archive/circledsteps.r67889.tar.xz
-2023/08/12 | 1925 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB45a.pdf
-2023/08/12 | 1910 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB8.pdf
-2023/08/12 | 1903 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE27.pdf
-2023/08/12 | 1898 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE4b.pdf
-2023/08/12 | 1891 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA19.pdf
-2023/08/12 | 1874 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB3.pdf
-2023/08/12 | 1867 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE9.pdf
-2023/08/12 | 1867 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC6.pdf
-2023/08/12 | 18670 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC14_2.pdf
-2023/08/12 | 1866 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE16.pdf
-2023/08/12 | 1857 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9f.pdf
-2023/08/12 | 18555 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC23.pdf
-2023/08/12 | 1842 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA7.pdf
-2023/08/12 | 1815 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE2b.pdf
-2023/08/12 | 181306 | dviware/dvidvi.zip
-2023/08/12 | 1798 | macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB25.pdf
-2023/08/12 | 1776 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB27a.pdf
-2023/08/12 | 1769 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA17.pdf
-2023/08/12 | 1750 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9d.pdf
-2023/08/12 | 173512 | systems/texlive/tlnet/archive/l3kernel.r67891.tar.xz
-2023/08/12 | 1732 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE7.pdf
-2023/08/12 | 1720 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE14.pdf
-2023/08/12 | 1708 | systems/texlive/tlnet/archive/collection-publishers.r67894.tar.xz
-2023/08/12 | 1707 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC108.pdf
-2023/08/12 | 1705 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA14.pdf
-2023/08/12 | 1702 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC112.pdf
-2023/08/12 | 16930 | macros/latex/contrib/couleurs-fr/doc/couleurs-fr-doc-prefix.tex
-2023/08/12 | 1676 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9a.pdf
-2023/08/12 | 1675 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE17.pdf
-2023/08/12 | 1671 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE5b.pdf
-2023/08/12 | 1669 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE29.pdf
-2023/08/12 | 1669 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA2a.pdf
-2023/08/12 | 1663 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC64b.pdf
-2023/08/12 | 1656 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA23.pdf
-2023/08/12 | 1655 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB18c.pdf
-2023/08/12 | 1646 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC111.pdf
-2023/08/12 | 1636 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE28.pdf
-2023/08/12 | 1634 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC107.pdf
-2023/08/12 | 1631 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC1b.pdf
-2023/08/12 | 1628 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB2c.pdf
-2023/08/12 | 1627 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA1d.pdf
-2023/08/12 | 1624 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA1c.pdf
-2023/08/12 | 1615 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE15a.pdf
-2023/08/12 | 1607 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA1a.pdf
-2023/08/12 | 1603 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE21.pdf
-2023/08/12 | 16020 | systems/texlive/tlnet/archive/eolang.source.r67897.tar.xz
-2023/08/12 | 1599 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB2a.pdf
-2023/08/12 | 1596 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA1b.pdf
-2023/08/12 | 1590 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB16.pdf
-2023/08/12 | 1589 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA2b.pdf
-2023/08/12 | 1586 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB6a1.pdf
-2023/08/12 | 1584 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC208.pdf
-2023/08/12 | 1577 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB2b.pdf
-2023/08/12 | 1577 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA18.pdf
-2023/08/12 | 1566 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC29a.pdf
-2023/08/12 | 1565 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA3.pdf
-2023/08/12 | 1550020 | systems/texlive/tlnet/archive/stellenbosch-2.r67894.tar.xz
-2023/08/12 | 1546 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE3a.pdf
-2023/08/12 | 1546 | macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB1.pdf
-2023/08/12 | 1543 | macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB2.pdf
-2023/08/12 | 1543 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA3a.pdf
-2023/08/12 | 1540 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA3b.pdf
-2023/08/12 | 1538 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC26a.pdf
-2023/08/12 | 1537 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC26b.pdf
-2023/08/12 | 1528 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE18.pdf
-2023/08/12 | 1525 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC64d2.pdf
-2023/08/12 | 1524 | macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB7.pdf
-2023/08/12 | 1510 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC207.pdf
-2023/08/12 | 1504 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC8.pdf
-2023/08/12 | 1502 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24b2.pdf
-2023/08/12 | 1491 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21e.pdf
-2023/08/12 | 1490 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE4a.pdf
-2023/08/12 | 1488 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21d2.pdf
-2023/08/12 | 1487 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC30.pdf
-2023/08/12 | 1484 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC18.pdf
-2023/08/12 | 1475 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC29b.pdf
-2023/08/12 | 1464 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24b1.pdf
-2023/08/12 | 1463 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC28b.pdf
-2023/08/12 | 1461 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC64d1.pdf
-2023/08/12 | 1451 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21d1.pdf
-2023/08/12 | 1444 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC12.pdf
-2023/08/12 | 1440 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC1a.pdf
-2023/08/12 | 1436428 | systems/texlive/tlnet/archive/eolang.doc.r67897.tar.xz
-2023/08/12 | 1432 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21c2.pdf
-2023/08/12 | 1428 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC27.pdf
-2023/08/12 | 1427 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC28a.pdf
-2023/08/12 | 1417 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB15.pdf
-2023/08/12 | 1415 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21c1.pdf
-2023/08/12 | 1403 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE1.pdf
-2023/08/12 | 139419 | macros/latex/contrib/msu-thesis/samples/MSU-thesis-chapterbib-testfile.pdf
-2023/08/12 | 1393 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC13b.pdf
-2023/08/12 | 1388 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC13a.pdf
-2023/08/12 | 1370 | macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB6.pdf
-2023/08/12 | 1355 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB31.pdf
-2023/08/12 | 1335 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21a2.pdf
-2023/08/12 | 1332 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21b.pdf
-2023/08/12 | 1311 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21a1.pdf
-2023/08/12 | 1306 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21-2.pdf
-2023/08/12 | 1299 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB0.pdf
-2023/08/12 | 1298 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21-1.pdf
-2023/08/12 | 1287 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB1.pdf
-2023/08/12 | 1276 | macros/latex/contrib/msu-thesis/samples/MSU-thesis-chapterbib-testfile.tex
-2023/08/12 | 123277 | macros/latex/contrib/couleurs-fr/doc/couleurs-fr-doc.pdf
-2023/08/12 | 121780 | macros/latex/contrib/joinbox/tl-lion.pdf
-2023/08/12 | 11995468 | systems/texlive/tlnet/archive/l3kernel.doc.r67891.tar.xz
-2023/08/12 | 113915 | macros/latex/contrib/msu-thesis/msu-thesis.pdf
-2023/08/12 | 11003 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB44.pdf
-2023/08/12 | 1088 | macros/latex/contrib/msu-thesis/samples/MSU-thesis-testfile.bib
-2023/08/12 | 10223 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB26.pdf
diff --git a/biblio/bibtex/bibtex-x/ChangeLog b/biblio/bibtex/bibtex-x/ChangeLog
index aef597149e..f881b19602 100644
--- a/biblio/bibtex/bibtex-x/ChangeLog
+++ b/biblio/bibtex/bibtex-x/ChangeLog
@@ -1,3 +1,8 @@
+2023-08-20 TANAKA Takuji <ttk@t-lab.opal.ne.jp>
+
+ * bibtex.c, sysdep.h: Avoid compiler warnings on Windows.
+ * tests/bibtex8u-mem.test: Tweak.
+
2023-08-11 TANAKA Takuji <ttk@t-lab.opal.ne.jp>
* tests/bibtex{8,u}.test, tests/bibtex8-{char,sort}.test,
diff --git a/biblio/bibtex/bibtex-x/bibtex.c b/biblio/bibtex/bibtex-x/bibtex.c
index 94ccb742ad..56ad6c0d9d 100644
--- a/biblio/bibtex/bibtex-x/bibtex.c
+++ b/biblio/bibtex/bibtex-x/bibtex.c
@@ -100,12 +100,6 @@
#include <config.h>
#endif
-#ifdef KPATHSEA
-#include <kpathsea/config.h>
-#include <kpathsea/progname.h>
-#include <kpathsea/variable.h>
-#endif
-
#include "sysdep.h"
#include "bibtex.h"
#include "datatype.h"
diff --git a/biblio/bibtex/bibtex-x/sysdep.h b/biblio/bibtex/bibtex-x/sysdep.h
index 7edc3230c5..d137180fe1 100644
--- a/biblio/bibtex/bibtex-x/sysdep.h
+++ b/biblio/bibtex/bibtex-x/sysdep.h
@@ -111,6 +111,11 @@
#include <string.h>
#include <ctype.h>
+#ifdef KPATHSEA
+#include <kpathsea/config.h>
+#include <kpathsea/progname.h>
+#include <kpathsea/variable.h>
+#endif
/*-
**============================================================================
diff --git a/biblio/bibtex/bibtex-x/tests/bibtex8u-mem.test b/biblio/bibtex/bibtex-x/tests/bibtex8u-mem.test
index 7c34b039f7..4e936537a8 100755
--- a/biblio/bibtex/bibtex-x/tests/bibtex8u-mem.test
+++ b/biblio/bibtex/bibtex-x/tests/bibtex8u-mem.test
@@ -69,14 +69,14 @@ for t in 1 2 3; do
TEXMFCNF=$srcdir/../kpathsea \
BSTINPUTS=$srcdir/../web2c/tests'\;'$srcdir/csf \
BIBINPUTS=./tests \
- $_bibtex8 -s tests/memtest$t || exit 1
+ $_bibtex8 -s tests/memtest$t || exit $((10 + t))
cp -p tests/memtest$t.aux tests/memtestu$t.aux
eval $env \
TEXMFCNF=$srcdir/../kpathsea \
BSTINPUTS=$srcdir/../web2c/tests \
BIBINPUTS=./tests \
- $_bibtexu -s tests/memtestu$t || exit 2
+ $_bibtexu -s tests/memtestu$t || exit $((20 + t))
done
diff --git a/biblio/ctan-bibdata/ctan.bib b/biblio/ctan-bibdata/ctan.bib
index 14922f550e..785215a026 100644
--- a/biblio/ctan-bibdata/ctan.bib
+++ b/biblio/ctan-bibdata/ctan.bib
@@ -1,7 +1,7 @@
%% bib file of all CTAN packages
%% (C) Herbert Voß
%%
-%% created at 19-08-2023, 02:00:55
+%% created at 20-08-2023, 02:00:13
%%
%% This file is provided under the terms of the LPPL v1.3 or
@@ -4622,8 +4622,8 @@
title = {The \texttt{babel-greek} package},
subtitle = {Babel support for the Greek language and script},
author = {Apostolos Syropoulos and Javier Bezos López and Johannes L. Braams and Günter Milde},
- date = {2023-06-01},
- version = {1.13.2},
+ date = {2023-08-19},
+ version = {1.14},
license = {lppl1.3},
mirror = {https://mirror.ctan.org/macros/latex/contrib/babel-contrib/greek},
url = {https://ctan.org/pkg/babel-greek},
@@ -16762,8 +16762,8 @@
title = {The \texttt{cweb} package},
subtitle = {A Web system in C},
author = {Donald E. Knuth and Andreas Scherer and Silvio Levy},
- date = {2022-06-06},
- version = {4.8},
+ date = {2023-08-19},
+ version = {4.10},
license = {knuth},
mirror = {https://mirror.ctan.org/web/c_cpp/cweb},
url = {https://ctan.org/pkg/cweb},
@@ -40090,7 +40090,7 @@
title = {The \texttt{logoetalab} package},
subtitle = {Insert Licence Etalab 2.0 logo},
author = {Cédric Pierquet},
- date = {2023-08-18},
+ date = {2023-08-19},
version = {0.1.0},
license = {lppl1.3c,cc-by-2},
mirror = {https://mirror.ctan.org/macros/latex/contrib/logoetalab},
@@ -58243,8 +58243,8 @@
title = {The \texttt{ReadableCV} package},
subtitle = {A highly readable and good looking CV and letter class},
author = {Philip Stone},
- date = {2021-03-24},
- version = {3.0},
+ date = {2023-08-19},
+ version = {4.0},
license = {lppl1.3},
mirror = {https://mirror.ctan.org/macros/latex/contrib/readablecv},
url = {https://ctan.org/pkg/readablecv},
diff --git a/biblio/ctan-bibdata/ctan.pdf b/biblio/ctan-bibdata/ctan.pdf
index 6a45cd182b..cf2f046eb0 100644
--- a/biblio/ctan-bibdata/ctan.pdf
+++ b/biblio/ctan-bibdata/ctan.pdf
Binary files differ
diff --git a/macros/latex/contrib/babel-contrib/greek/README.md b/macros/latex/contrib/babel-contrib/greek/README.md
index d98c68be1a..c4158d53c5 100644
--- a/macros/latex/contrib/babel-contrib/greek/README.md
+++ b/macros/latex/contrib/babel-contrib/greek/README.md
@@ -4,7 +4,7 @@ babel-greek
Comprehensive support for the Greek language and script with
[Babel](https://ctan.org/pkg/babel).
-**Version**: 1.13.2
+**Version**: 1.14
**Copyright**: © 1997 Apostolos Syropoulos, Claudio Beccari, Johannes Brahms,
© 2013 - 2023 Günter Milde.
diff --git a/macros/latex/contrib/babel-contrib/greek/babel-greek-doc.html b/macros/latex/contrib/babel-contrib/greek/babel-greek-doc.html
index 2faaa5d067..49f6092ea7 100644
--- a/macros/latex/contrib/babel-contrib/greek/babel-greek-doc.html
+++ b/macros/latex/contrib/babel-contrib/greek/babel-greek-doc.html
@@ -2,7 +2,7 @@
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta charset="utf-8" />
-<meta name="generator" content="Docutils 0.20.2b.dev: https://docutils.sourceforge.io/" />
+<meta name="generator" content="Docutils 0.21b.dev: https://docutils.sourceforge.io/" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="dcterms.rights" content="© 1997 Apostolos Syropoulos, Claudio Beccari, Johannes Brahms, © 2013 – 2023 Günter Milde." />
<title>babel-greek</title>
@@ -794,7 +794,7 @@ mstyle.mathscr, mi.mathscr {
<p class="subtitle" id="babel-support-for-the-greek-language-and-script">Babel support for the Greek language and script</p>
<dl class="docinfo">
<dt class="version">Version<span class="colon">:</span></dt>
-<dd class="version">1.13.2 (<a class="reference internal" href="#changelog">changelog</a>)</dd>
+<dd class="version">1.14 (<a class="reference internal" href="#changelog">changelog</a>)</dd>
<dt class="copyright">Copyright<span class="colon">:</span></dt>
<dd class="copyright">© 1997 Apostolos Syropoulos, Claudio Beccari, Johannes Brahms,
© 2013 – 2023 Günter Milde.</dd>
@@ -901,11 +901,11 @@ The repository sources include a <a class="reference external" href="https://cod
<dd><p>run LaTeX on the test documents,</p>
</dd>
<dt><span class="docutils literal">update</span><span class="colon">:</span></dt>
-<dd><p>copy packages into a local TeX tree,<a class="footnote-reference superscript" href="#update" id="footnote-reference-1" role="doc-noteref"><span class="fn-bracket">[</span>1<span class="fn-bracket">]</span></a></p>
+<dd><p>copy packages into a local TeX tree,<a class="superscript" href="#update" id="footnote-reference-1" role="doc-noteref"><span class="fn-bracket">[</span>1<span class="fn-bracket">]</span></a></p>
</dd>
<dt><span class="docutils literal"><span class="pre">update-package</span></span><span class="colon">:</span></dt>
<dd><p>copy documentation and sources into a local
-TeX tree,<a class="footnote-reference superscript" href="#update" id="footnote-reference-2" role="doc-noteref"><span class="fn-bracket">[</span>1<span class="fn-bracket">]</span></a></p>
+TeX tree,<a class="superscript" href="#update" id="footnote-reference-2" role="doc-noteref"><span class="fn-bracket">[</span>1<span class="fn-bracket">]</span></a></p>
</dd>
<dt><span class="docutils literal">clean</span><span class="colon">:</span></dt>
<dd><p>delete auxiliary files.</p>
@@ -926,7 +926,7 @@ package are not removed.</p>
<p>To <strong>load Greek language support</strong> with Babel, use the <span class="docutils literal">greek</span>
document option or pass the <span class="docutils literal">greek</span> option to Babel. For example,</p>
<pre class="code latex literal-block"><code><span class="keyword">\usepackage</span><span class="name attribute">[greek,english]</span><span class="name builtin">{</span>babel<span class="name builtin">}</span></code></pre>
-<p>activates support for Greek text parts in an English document.<a class="footnote-reference superscript" href="#footnote-1" id="footnote-reference-3" role="doc-noteref"><span class="fn-bracket">[</span>2<span class="fn-bracket">]</span></a></p>
+<p>activates support for Greek text parts in an English document.<a class="superscript" href="#footnote-1" id="footnote-reference-3" role="doc-noteref"><span class="fn-bracket">[</span>2<span class="fn-bracket">]</span></a></p>
<p>For ancient Greek, set the language attribute “ancient”, either
after loading Babel</p>
<pre class="code latex literal-block"><code><span class="keyword">\usepackage</span><span class="name attribute">[greek,english]</span><span class="name builtin">{</span>babel<span class="name builtin">}</span>
@@ -948,9 +948,9 @@ case-changing and hyphenation rules.
For details see the <a class="reference external" href="https://ctan.org/pkg/babel">Babel</a> documentation and <a class="reference external" href="babel-greek.pdf">babel-greek.pdf</a>.</p>
<p>Input of Greek characters is possible</p>
<ul class="simple">
-<li><p>as literal characters (α … Ω)<a class="footnote-reference superscript" href="#footnote-2" id="footnote-reference-4" role="doc-noteref"><span class="fn-bracket">[</span>3<span class="fn-bracket">]</span></a>,</p></li>
+<li><p>as literal characters (α … Ω)<a class="superscript" href="#footnote-2" id="footnote-reference-4" role="doc-noteref"><span class="fn-bracket">[</span>3<span class="fn-bracket">]</span></a>,</p></li>
<li><p>as LICR macro (<span class="docutils literal">\textalpha{} ... \textOmega</span>),</p></li>
-<li><p>or via the <a class="reference internal" href="#lgr-latin-transliteration">LGR Latin transliteration</a> (a … W)<a class="footnote-reference superscript" href="#footnote-3" id="footnote-reference-5" role="doc-noteref"><span class="fn-bracket">[</span>4<span class="fn-bracket">]</span></a>.</p></li>
+<li><p>or via the <a class="reference internal" href="#lgr-latin-transliteration">LGR Latin transliteration</a> (a … W)<a class="superscript" href="#footnote-3" id="footnote-reference-5" role="doc-noteref"><span class="fn-bracket">[</span>4<span class="fn-bracket">]</span></a>.</p></li>
</ul>
<p>For details and caveats, see <a class="reference external" href="test-greek.pdf">test-greek.pdf</a> and the example files
provided with <a class="reference external" href="https://ctan.org/pkg/greek-fontenc">greek-fontenc</a>.</p>
@@ -1154,7 +1154,7 @@ via the ligature definitions in the font (see <a class="reference external" href
<tr><td><p>dialytika</p></td>
<td><p><span class="docutils literal">&quot;i</span></p></td>
<td><p>ϊ</p></td>
-<td><p>ano teleia<a class="footnote-reference superscript" href="#footnote-4" id="footnote-reference-6" role="doc-noteref"><span class="fn-bracket">[</span>5<span class="fn-bracket">]</span></a></p></td>
+<td><p>ano teleia<a class="superscript" href="#footnote-4" id="footnote-reference-6" role="doc-noteref"><span class="fn-bracket">[</span>5<span class="fn-bracket">]</span></a></p></td>
<td><p><span class="docutils literal">;</span></p></td>
<td><p>·</p></td>
</tr>
@@ -1192,7 +1192,8 @@ from the city of Miletus in Ionia replacing the <a class="reference external" hr
They are still used in everyday life for ordinal numbers and
more generally by the Orthodox church and certain scholars.</p>
<p>Greek numerals use several now obsolete letters:
-<a class="reference external" href="https://en.wikipedia.org/wiki/Digamma">digamma</a> ϝ or <a class="reference external" href="https://en.wikipedia.org/wiki/Stigma_(ligature)">stigma</a> ϛ, <a class="reference external" href="https://en.wikipedia.org/wiki/Koppa_(letter)">koppa</a> ϟ or ϙ, and <a class="reference external" href="https://en.wikipedia.org/wiki/Sampi">sampi</a> ϡ <a class="citation-reference" href="#nicholas-05" id="citation-reference-2" role="doc-biblioref">[Nicholas-05]</a>.</p>
+<a class="reference external" href="https://en.wikipedia.org/wiki/Digamma">digamma</a> ϝ or <a class="reference external" href="https://en.wikipedia.org/wiki/Stigma_(ligature)">stigma</a> ϛ, <a class="reference external" href="https://en.wikipedia.org/wiki/Koppa_(letter)">koppa</a> ϟ or ϙ, and <a class="reference external" href="https://en.wikipedia.org/wiki/Sampi">sampi</a> ϡ
+<a class="citation-reference" href="#nicholas-05" id="citation-reference-2" role="doc-biblioref">[Nicholas-05]</a> <a class="citation-reference" href="#haralambous-98" id="citation-reference-3" role="doc-biblioref">[Haralambous-98]</a>.</p>
<ul>
<li><p>Standing for 6 is the <a class="reference external" href="https://en.wikipedia.org/wiki/Digamma">digamma</a> ϝ, the sixth letter of the Ionic
alphabet (just as its Latin equivalent F is the sixth letter of the
@@ -1329,7 +1330,7 @@ This package is outdated and obsoleted by <a class="reference external" href="ht
<dd><ul class="simple">
<li><p>Babel 3.9i deprecated <span class="docutils literal">\textlatin</span> and fixed <span class="docutils literal">\latinencoding</span>.
1.9h (2019-07-11)</p></li>
-<li><p>Move breathing composite commands to <a class="reference external" href="https://ctan.org/pkg/greek-fontenc">textalpha</a>.</p></li>
+<li><p>Move breathing composite commands to <a class="reference external" href="http://mirrors.ctan.org/language/greek/greek-fontenc/textalpha-doc.pdf">textalpha</a>.</p></li>
</ul>
</dd>
<dt>1.9i (2020-02-28)</dt>
@@ -1364,7 +1365,7 @@ to hard-coded <span class="docutils literal">\latinencoding</span> when leaving
<dd><ul class="simple">
<li><p>Do not change the uccode values if the LaTeX version is newer than
2022/06. The new <span class="docutils literal">\MakeUppercase</span> definition ignores them and fails
-with the “dummy” character 0x9f (cf. <a class="citation-reference" href="#ltnews35" id="citation-reference-3" role="doc-biblioref">[ltnews35]</a>, <a class="reference external" href="https://github.com/latex3/latex2e/issues/987">LaTeX issue 987</a>).</p></li>
+with the “dummy” character 0x9f (cf. <a class="citation-reference" href="#ltnews35" id="citation-reference-4" role="doc-biblioref">[ltnews35]</a>, <a class="reference external" href="https://github.com/latex3/latex2e/issues/987">LaTeX issue 987</a>).</p></li>
<li><p>New modifiers <span class="docutils literal"><span class="pre">local-LGR-fixes</span></span> and <span class="docutils literal"><span class="pre">no-LGR-fixes</span></span> to address
indexing problmes with Roman numerals (<a class="reference external" href="https://github.com/latex3/babel/issues/170">Babel issue 170</a>). Provisional.</p></li>
<li><p>New TextCommand <span class="docutils literal">\EnsureStandardFontEncoding</span>.</p></li>
@@ -1398,6 +1399,12 @@ Use LICR macros instead of the Latin transliteration.</p></li>
drop accents with <span class="docutils literal">\DeclareUppercaseMapping</span> (<a class="reference external" href="https://www.latex-project.org/news/latex2e-news/ltnews37.pdf">new in LaTeX 2023</a>).</p></li>
</ul>
</dd>
+<dt>1.14 (2023-08-18)</dt>
+<dd><ul class="simple">
+<li><p>Fix upcasing of Greek letters with standard accent macros.</p></li>
+<li><p>New modifier <cite>local-MakeUppercase-fixes</cite>.</p></li>
+</ul>
+</dd>
</dl>
</section>
<section id="references">
@@ -1409,7 +1416,7 @@ drop accents with <span class="docutils literal">\DeclareUppercaseMapping</span>
<a class="reference external" href="https://www.latex-project.org/help/documentation/fntguide.pdf">https://www.latex-project.org/help/documentation/fntguide.pdf</a></p>
</div>
<div class="citation" id="ltnews35" role="doc-biblioentry">
-<span class="label"><span class="fn-bracket">[</span><a role="doc-backlink" href="#citation-reference-3">ltnews35</a><span class="fn-bracket">]</span></span>
+<span class="label"><span class="fn-bracket">[</span><a role="doc-backlink" href="#citation-reference-4">ltnews35</a><span class="fn-bracket">]</span></span>
<p>LaTeX Project Team <cite>LaTeX News 35</cite>, June 2022.
<a class="reference external" href="https://www.latex-project.org/news/latex2e-news/ltnews35.pdf">https://www.latex-project.org/news/latex2e-news/ltnews35.pdf</a></p>
</div>
@@ -1425,7 +1432,7 @@ drop accents with <span class="docutils literal">\DeclareUppercaseMapping</span>
<a class="reference external" href="https://irenevl.github.io/Polytonic-tutorial/">https://irenevl.github.io/Polytonic-tutorial/</a></p>
</div>
<div class="citation" id="haralambous-98" role="doc-biblioentry">
-<span class="label"><span class="fn-bracket">[</span>Haralambous-98<span class="fn-bracket">]</span></span>
+<span class="label"><span class="fn-bracket">[</span><a role="doc-backlink" href="#citation-reference-3">Haralambous-98</a><span class="fn-bracket">]</span></span>
<p>Yannis Haralambous
<cite>From Unicode to Typography, a Case Study: the Greek Script</cite>, 1998.
<a class="reference external" href="https://hal.science/hal-02101618">https://hal.science/hal-02101618</a></p>
diff --git a/macros/latex/contrib/babel-contrib/greek/babel-greek-doc.rst b/macros/latex/contrib/babel-contrib/greek/babel-greek-doc.rst
index 73f921de32..e714318919 100644
--- a/macros/latex/contrib/babel-contrib/greek/babel-greek-doc.rst
+++ b/macros/latex/contrib/babel-contrib/greek/babel-greek-doc.rst
@@ -3,7 +3,7 @@ babel-greek
Babel support for the Greek language and script
===============================================
-:Version: 1.13.2 (changelog_)
+:Version: 1.14 (changelog_)
:Copyright: © 1997 Apostolos Syropoulos, Claudio Beccari, Johannes Brahms,
© 2013 -- 2023 Günter Milde.
@@ -261,7 +261,8 @@ They are still used in everyday life for ordinal numbers and
more generally by the Orthodox church and certain scholars.
Greek numerals use several now obsolete letters:
-digamma_ ϝ or stigma_ ϛ, koppa_ ϟ or ϙ, and sampi_ ϡ [Nicholas-05]_.
+digamma_ ϝ or stigma_ ϛ, koppa_ ϟ or ϙ, and sampi_ ϡ
+[Nicholas-05]_ [Haralambous-98]_.
* Standing for 6 is the digamma_ ϝ, the sixth letter of the Ionic
alphabet (just as its Latin equivalent F is the sixth letter of the
@@ -406,6 +407,9 @@ Changelog
(code contributed by Javier Bezos).
- Fix upcasing of text using the `LGR Latin transliteration`_:
drop accents with ``\DeclareUppercaseMapping`` (`new in LaTeX 2023`_).
+1.14 (2023-08-18)
+ - Fix upcasing of Greek letters with standard accent macros.
+ - New modifier `local-MakeUppercase-fixes`.
.. _babel/4303: http://www.latex-project.org/cgi-bin/ltxbugs2html?pr=babel/4303
.. _babel/4305: http://www.latex-project.org/cgi-bin/ltxbugs2html?pr=babel/4305
@@ -447,7 +451,7 @@ References
.. _e-TeX: http://www.tex.ac.uk/cgi-bin/texfaq2html?label=etex
.. _grtimes: https://ctan.org/pkg/grtimes
.. _hyperref: https://ctan.org/pkg/hyperref
-.. _textalpha:
+.. _textalpha: http://mirrors.ctan.org/language/greek/greek-fontenc/textalpha-doc.pdf
.. _greek-fontenc: https://ctan.org/pkg/greek-fontenc
.. _LGR: http://mirrors.ctan.org/language/greek/greek-fontenc/greek-fontenc-doc.html#lgr
.. _greek-inputenc: https://ctan.org/pkg/greek-inputenc
diff --git a/macros/latex/contrib/babel-contrib/greek/babel-greek.dtx b/macros/latex/contrib/babel-contrib/greek/babel-greek.dtx
index 7cf57237f7..bc3060207e 100644
--- a/macros/latex/contrib/babel-contrib/greek/babel-greek.dtx
+++ b/macros/latex/contrib/babel-contrib/greek/babel-greek.dtx
@@ -26,7 +26,7 @@
% and covered by LPPL is defined by the unpacking script (babel-greek.ins)
% which is part of the package.
% \fi
-% \CheckSum{1675}
+% \CheckSum{1701}
%
% \iffalse
% Tell the \LaTeX\ system who we are and write an entry on the
@@ -37,7 +37,7 @@
%<code>\ProvidesLanguage{greek}
%\fi
%\ProvidesFile{babel-greek.dtx}
- [2023-06-01 1.13.2 Greek support for the babel system]
+ [2023/08/18 1.14 Greek support for the babel system]
%\iffalse
%% File `babel-greek.dtx'
%% Greek language Definition File
@@ -105,8 +105,6 @@
% \cs{textlatin} and fixed \cs{latinencoding}.}
% \changes{babel-greek-1.09i}{2020/02/28}{
% Fix accent in \cs{seename} and \cs{alsoname}.}
-% \changes{babel-greek-1.12}{2023/03/04}{
-% Update and restructure documentation.}
%
% \title{Babel support for the Greek language}
% \author{Apostolos Syropoulos, Günter Milde}
@@ -114,7 +112,7 @@
%
% Babel-greek is a contributed package providing support for the Greek
% language and script via the \pkgref{babel} system.
-% See the \href{README.html}{README} file for an overwiew of the
+% See \href{babel-greek-doc.html}{babel-greek-doc} for an overwiew of the
% \pkg{babel-greek} package and links to requirements and related packages.
%
% The file \file{\filename}\footnote{
@@ -210,17 +208,17 @@
%
% \subsection{Modifiers \label{sec:modifiers}}
%
+% \changes{babel-greek-1.12}{2023/03/04}{
+% New modifiers \Lopt{local-LGR-fixes} and \Lopt{no-LGR-fixes}.}
+% \changes{babel-greek-1.14}{2023-08-18}{
+% New modifier \Lopt{local-MakeUppercase-fixes}.}
+%
% All language attributes may also be used as modifiers, e.g.
% \begin{verbatim}
% \usepackage[greek.polutoniko,english]{babel}\end{verbatim}
-% In addition, there are two modifiers that cannot be set with
+% In addition, there are modifiers that cannot be set with
% |\languageattribute|.
%
-% \changes{babel-greek-1.12}{2023/03/04}{
-% New modifiers \Lopt{local-LGR-fixes} and \Lopt{no-LGR-fixes}.}
-%
-% Some workarounds for the non-standard LGR font encoding may have
-% serious side-effects.
% The \hyperref[sec:lgr-redefinitions]{\Lopt{local-LGR-fixes}} modifier
% restricts the re-definitions in section~\ref{sec:lgr-redefinitions}
% to text parts using the Greek language.
@@ -232,8 +230,14 @@
% and using Xe/LuaTeX with Unicode fonts is not an option.
% Check for problems with enumerations in Greek text parts and with
% Roman and Greek numerals everywhere (especially in the ToC).
+%
+% The \hyperref[sec:MakeUppercase-fixes]{\Lopt{local-MakeUppercase-fixes}}
+% modifier skips the mapping of standard accents to ``capital'' accents
+% in section~\ref{sec:MakeUppercase-fixes}.
+%
% These modifiers are provisional, naming and behaviour may change.
%
+%
% \subsection{Language hooks \label{sec:language-hooks}}
%
% \DescribeMacro\extrasgreek
@@ -524,7 +528,11 @@
% modern Greek with ``polytonic'' spelling can also be
% selected via the dummy language \Lopt{polutonikogreek}.
% However, it is not possible to use both options,
-% \Lopt{greek} and \Lopt{polutonikogreek} in one document.
+% \Lopt{greek} and \Lopt{polutonikogreek} in one document.^^A
+% \footnote{Use of more than one Greek orthograpies in one document
+% is possible with \cs{babelprovide}.
+% However, there are side-effects.
+% See the example in \file{test-greek.tex}.}
% We also define aliases to allow language switching commands using
% the language name |polutonikogreek|:
% \changes{greek-1.3f}{1999/09/29}{
@@ -619,8 +627,9 @@
% Test for unsupported (or misspelled) \hyperref[sec:modifiers]{modifiers}
% (code contributed by Javier Bezos).
% \begin{macrocode}
-\def\bbl@greek@modifiers{,polutoniko,polytonic,ancient,keep-semicolon,}
-\addto\bbl@greek@modifiers{local-LGR-fixes,no-LGR-fixes,}
+\def\bbl@greek@modifiers{,%
+ polutoniko,polytonic,ancient,keep-semicolon,%
+ local-LGR-fixes,no-LGR-fixes,local-MakeUppercase-fixes,}
\ifx\BabelModifiers\relax\else
\bbl@foreach\BabelModifiers{%
\@expandtwoargs\in@{,#1,}{\bbl@greek@modifiers}
@@ -1228,7 +1237,7 @@
%
% \begin{macro}{\dategreek}
% The macro |\dategreek| redefines the command |\today| to
-% produce greek dates. The name of the month is produced
+% produce Greek dates. The name of the month is produced
% by the macro |\gr@month| since it is also needed in the definition
% of the macro |\Grtoday|.
% \changes{greek-1.1a}{1997/03/03}{Fixed typo, \texttt{Oktwbr'iou}
@@ -1245,9 +1254,10 @@
%
% \begin{macro}{\Grtoday}
% \changes{greek-1.1}{1996/10/28}{Added macro \cs{Grtoday}}
-% The macro |\Grtoday| produces the current date, only that the
-% month and the day are shown as greek numerals instead of arabic
-% as it is usually the case.
+% The macro |\Grtoday| produces the current date, only that the
+% month and the day are shown as greek numerals instead of arabic
+% as it is usually the case. (The \pkgref{teubner} package defines
+% a matching lowercase version \cs{grtoday}.)
% \begin{macrocode}
\def\Grtoday{%
\expandafter\Greeknumeral\expandafter{\the\day}\space
@@ -1506,34 +1516,24 @@
%
% \subsection{Character codes \label{sec:character-codes}}
%
-% Greek letters drop diacritics (eccept dialytika and sub-iota) in
-% UPPERCASE. This is not cared for by the Unicode standard.
-%
-% Up to the June 2022 LaTeX release, this could be corrected by
-% defining |\lccode| and |\uccode| values. The June 2023 release introduced
-% the |\DeclareUppercaseMapping| command as a replacement configuration
-% option.
-%
-% The file \file{tuenc-greek.def} from \pkg{greek-fontenc}
-% contains the required |\lccode| and |\uccode| corrections from the
-% \pkgref{xgreek} package by Apostolos Syropoulos. It is loaded if the
-% Greek font encoding is TU (i.e. with XeTeX/LuaTeX),
-% see section~\ref{load-greek-font-encoding-definitions}.
+% \changes{greek-1.1c}{1997/04/30}{fixed two typos}
+% \changes{greek-1.1e}{1997/10/12}{Added lowercase code for v}
+% \changes{greek-1.2}{1997/10/28}{Definitions for ``modern'' Greek are
+% now the definitions of ``polutoniko'' Greek}
+% \changes{greek-1.2}{1997/10/28}{Added lowercase codes for ``modern''
+% greek}
+% \changes{greek-1.3e}{1999/09/24}{\cs{extrasgreek} and
+% \cs{extraspolutonikogreek} should be complementary}
+% \changes{babel-greek-1.09}{2014/07/20}{Added lc codes for chars 128 to 255}
+% \changes{babel-greek-1.09b}{2014/09/18}{Remove spurious whitespace from
+% `extrasgreek' definition (report Eike Schmidt).}
+% \changes{babel-greek-1.09e}{2015/11/27}{Fix bug in lccode-setting loop
+% (patch by Enrico Gregorio).}
+% \changes{babel-greek-1.12}{2023/03/04}{
+% Only change uc/lccodes if \cs{greekfontencoding} is LGR.}
%
-% If the Greek font encoding is LGR, configuration is done here because
-% character code changes must be restricted to text parts using the
-% LGR encoding.
-% \changes{greek-1.5}{2013/06/21}{Support XeTeX/LuaTeX.}
-% \changes{babel-greek-1.09d}{2015/07/06}{uc-/lccode corrections from xgreek
-% are now in greek-euenc.def (the polyglossia version has bugs).}
-% \changes{babel-greek-1.12}{2023/03/04}{%
-% Only change uc/lccodes if \cs{greekfontencoding} is LGR.}
-% \begin{macrocode}
-\def\bbl@tempa{LGR}
-\ifx\greekfontencoding\bbl@tempa
-% \end{macrocode}
% In order to get correct hyphenation we need to set the lower case
-% code of a number of characters.
+% code for all characters that can be part of a word.
%
% In LGR encoded fonts, diacritics can be obtained using Knuth's
% ligature mechanism (see usage.pdf). This means that the characters
@@ -1547,18 +1547,9 @@
% ligature mechanism so that it is possible to typeset an isolated $\sigma$
% without it becoming a $\varsigma$.
% Because of this we make sure its lowercase code is not changed.
-% \changes{greek-1.1c}{1997/04/30}{fixed two typos}
-% \changes{greek-1.1e}{1997/10/12}{Added lowercase code for v}
-% \changes{greek-1.2}{1997/10/28}{Definitions for ``modern'' Greek are
-% now the definitions of ``polutoniko'' Greek}
-% \changes{greek-1.2}{1997/10/28}{Added lowercase codes for ``modern''
-% greek}
-% \changes{greek-1.3e}{1999/09/24}{\cs{extrasgreek} and
-% \cs{extraspolutonikogreek} should be complementary}
-% \changes{babel-greek-1.09}{2014/07/20}{Added lc codes for chars 128 to 255}
-% \changes{babel-greek-1.09b}{2014/09/18}{Remove spurious whitespace from
-% `extrasgreek' definition (report Eike Schmidt).}
% \begin{macrocode}
+\def\bbl@tempa{LGR}
+\ifx\greekfontencoding\bbl@tempa
\addto\extrasgreek{%
\babel@savevariable{\lccode`v}\lccode`v=`v%
\babel@savevariable{\lccode`\'}\lccode`\'=`\'%
@@ -1573,15 +1564,12 @@
\babel@savevariable{\lccode`\`}\lccode`\`=`\`%
}
% \end{macrocode}
-% In order to process the suitable characters and in such a way that
-% hyphenation patterns work also with precomposed characters, it is
-% necessary to declare the lc code for all characters that can be part
-% of a word. We do this in |\extrasgreek| because this is a feature of
+% Also set the lc code for the precomposed characters in the upper half
+% of the code table.
+% We do this in |\extrasgreek| because this is a feature of
% the LGR font encoding (used in all language variants).
% This means that multi-accented characters are regarded parts of a word
-% (and not non-word characters) also in monotonic spelling.
-% \changes{babel-greek-1.09e}{2015/11/27}{Fix bug in lccode-setting loop
-% (patch by Enrico Gregorio).}
+% also in monotonic spelling.
% \begin{macrocode}
\addto\extrasgreek{%
% ``high bit characters'': set in a loop and correct exceptions
@@ -1603,34 +1591,103 @@
\lccode223=244% GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA
}
% \end{macrocode}
-% Drop diacritics (except dialytika and sub-iota) in UPPERCASE also with
-% ``input ligatures''. (The optional ``locale'' argument |[el]| restricts
-% this change to Greek text parts.)
-% If LaTeX is older than 2022/06/01, set the |\uccode| of the
-% relevant characters to a dummy character instead.
+%
+% \begin{macro}{\bbl@greek@tilde}
+% \changes{greek-1.0c}{1997/02/19}{Added command}
+% \changes{greek-1.1b}{1997/03/06}{Made tilde expand to a tilde with
+% \cs{catcode 12}.}
+% \changes{greek-1.3k}{2003/04/10}{Make sure the character `!' is not
+% active during the definition of \cs{greek@tilde}}
+% \changes{greek-1.4}{2013/05/17}{Do not re-define the tilde accent macro:
+% it works as expected with \file{lgrenc.def} from \pkg{greek-fontenc}.}
+% \changes{babel-greek-1.13}{2023/03/15}{
+% Renamed from \cs{greek@tilde}. Simplified definition.}
+%
+% By default, the tilde produces an unbreakable space in text mode.
+% For the variants ``polutoniko'' and ``ancient'', we change its meaning
+% to allow using |~| in the Latin transliteration of characters with
+% perispomeni and in composite diacritics.
+% \begin{macrocode}
+ \DeclareTextSymbol{\bbl@greek@tilde}{LGR}{126}
+ \addto\bbl@greek@setup@polytonic{
+ \declare@shorthand{greek}{~}{\bbl@greek@tilde}
+ }
+\fi % End of LGR-specific code.
+% \end{macrocode}
+% \end{macro}
+%
+%
+% \subsection{MakeUppercase fixes \label{sec:MakeUppercase-fixes}}
+%
% \changes{greek-1.1b}{1997/03/06}{Added setting of \cs{uccode}s
-% (after \file{kdgreek.sty})}
+% (after \file{kdgreek.sty})}
% \changes{greek-1.1e}{1997/10/12}{Added uppercase code for special
-% letter ``v''. Uppercase code for accents is now \texttt{9f},
-% instead of \texttt{ff}}
+% letter ``v''. Uppercase code for accents is now \texttt{9f},
+% instead of \texttt{ff}}
% \changes{greek-1.2}{1997/10/28}{Added uppercase codes for ``modern''
-% Greek. The old codes are now for ``Polutoniko'' Greek}
+% Greek. The old codes are now for ``Polutoniko'' Greek}
% \changes{greek-1.3e}{1999/09/24}{\cs{extrasgreek} and
-% \cs{extraspolutonikogreek} should be complementary}
+% \cs{extraspolutonikogreek} should be complementary}
% {\catcode`|=12\relax\gdef\indexbar{\cs{|}}}
% \changes{greek-1.3g}{1999/11/17}{uc code of \indexbar{} is now just
-% \indexbar{} to reflect recent changes in the cb fonts}
+% \indexbar{} to reflect recent changes in the cb fonts}
% \changes{greek-1.3i}{2000/10/02}{uc code of `v' is switched to V
-% so that mixed text appears correctly in headers.}
+% so that mixed text appears correctly in headers.}
% \changes{greek-1.3j}{2001/02/03}{Don't use the double caret notation here,
-% because other languages might make the caret active.}
+% because other languages might make the caret active.}
+% \changes{greek-1.5}{2013/06/21}{Support XeTeX/LuaTeX.}
+% \changes{babel-greek-1.09d}{2015/07/06}{uc-/lccode corrections from xgreek
+% are now in greek-euenc.def (the polyglossia version has bugs).}
% \changes{babel-greek-1.12}{2023/03/04}{
-% Only change uccodes if LaTeX is older than 2022/06/01.}
+% Only change uccodes if LaTeX is older than 2022/06/01.}
% \changes{babel-greek-1.13.2}{2023-06-01}{
-% Use \cs{DeclareUppercaseMapping} to drop diacritics.}
+% \cs{MakeUppercase} fix for transliteration input.}
+% \changes{babel-greek-1.14}{2023-08-18}{
+% \cs{MakeUppercase} fix for standard accent macros.}
+% In Greek typographical praxis,
+% letters drop accents (eccept dialytika) and breathings in
+% UPPERCASE. This is not cared for by the Unicode standard.
+% For Unicode literals, |\MakeUppercase| implements locale-specific
+% corrections.\footnote{
+% The pre-2022 implementation is corrected by character code definitions
+% in \file{tuenc-greek.def} from \pkgref{greek-fontenc},
+% cf. section~\ref{load-greek-font-encoding-definitions}.}
+%
+% To fix the behaviour of the 2022 |\MakeUppercase| implementation with
+% standard accent macros, we define and use ``capital'' accent
+% macros.
+% Font-encoding specific definitions for the ``capital'' accent macros
+% in \pkgref{greek-fontenc}~$\ge 2.4$ suppress them on Greek letters.
+% The \Lopt{local-MakeUppercase-fixes} modifier can be used to skip this step
+% (cf. section~\ref{sec:modifiers}).
+% \begin{macrocode}
+\providecommand\IfFormatAtLeastTF{\@ifl@t@r\fmtversion} % new in 2020
+\bbl@xin@{,local-MakeUppercase-fixes,}{,\BabelModifiers,}%
+\ifin@
+\else
+ \IfFormatAtLeastTF{2022/06/01}
+ {\ProvideTextCommandDefault{\accACUTE}{\@tabacckludge'}
+ \ProvideTextCommandDefault{\accGRAVE}{\@tabacckludge`}
+ \ProvideTextCommandDefault{\accTILDE}{\@tabacckludge~}
+ \ProvideTextCommandDefault{\accDIAERESIS}{\@tabacckludge"}
+ \addto\@uclclist{\'\accACUTE \`\accGRAVE \~\accTILDE \"\accDIAERESIS}%
+ }
+ {}
+\fi
+% \end{macrocode}
+% Drop diacritics also with ``input ligatures'' defined in LGR fonts:
+%
+% Since 2023/06, we can set up character mappings to be used on the argument
+% of |\MakeUppercase|.\footnote{cf.
+% \href{https://www.latex-project.org/news/latex2e-news/ltnews37.pdf}
+% {LaTeX News~37}}
+% The optional ``locale'' argument |[el]| restricts the mapping to Greek
+% text parts.
% \begin{macrocode}
+\def\bbl@tempa{LGR}
+\ifx\greekfontencoding\bbl@tempa
\ifdefined\DeclareUppercaseMapping % new in 2023
- \DeclareUppercaseMapping[el]{"1FBE}{\prosgegrammeni}%
+ % \DeclareUppercaseMapping[el]{"1FBE}{\prosgegrammeni}%
\DeclareUppercaseMapping[el]{"0027}{}% '
\addto\bbl@greek@setup@polytonic{
\DeclareUppercaseMapping[el]{"003C}{}% <
@@ -1639,11 +1696,14 @@
\DeclareUppercaseMapping[el]{"007E}{}% ~
}
\fi
- % fallback for for LaTeX versions older than 2020-10-01
- \providecommand\IfFormatAtLeastTF{\@ifl@t@r\fmtversion}
- \IfFormatAtLeastTF{2022/06/01}%
- {}
- {% else
+% \end{macrocode}
+% If LaTeX is older than 2022/06,
+% we set the |\uccode| of the relevant characters to a dummy character
+% (|\uccode| changes are ignored by |\MakeUppercase| since 2022).
+% To minimize side-effects, the re-definition is limited to Greek text parts.
+% \begin{macrocode}
+ \IfFormatAtLeastTF{2022/06/01}{}
+ {% else (LaTeX format older than 2022/06/01)
\addto\extrasgreek{%
\babel@savevariable{\uccode`\"}\uccode`\"=`\"%
\babel@savevariable{\uccode`\'}\uccode`\'=159% 159 == ^^9f
@@ -1652,7 +1712,6 @@
\babel@savevariable{\uccode`\~}\uccode`\~=159%
\babel@savevariable{\uccode`\>}\uccode`\>=159%
\babel@savevariable{\uccode`\<}\uccode`\<=159%
- \babel@savevariable{\uccode`\|}\uccode`\|=`\|%
\babel@savevariable{\uccode`\`}\uccode`\`=159%
}
% \end{macrocode}
@@ -1685,8 +1744,8 @@
}
% \end{macrocode}
% Add composite commands, so that the dialytika is kept or put on the
-% following character of a diphthong with |\MakeUppercase|
-% (see lgrdef.enc from the the greek-fontenc package for details).
+% following character of a diphthong with |\MakeUppercase| (see
+% \file{lgrdef.enc} from the \pkgref{greek-fontenc} package for details).
% \changes{greek-1.4}{2013/05/17}{
% Add TextCompositeCommands for ``uppercase diacritics''.}
% \changes{greek-1.5}{2013/05/27}{Bugfix: @hiatus->LGR@hiatus}
@@ -1708,35 +1767,9 @@
\DeclareTextCompositeCommand{\"}{TU}{^^9f}{\accdialytika}
\fi
}% end of the \IfFormatAtLeastTF else block
-% \end{macrocode}
-%
-% \begin{macro}{\bbl@greek@tilde}
-% By default, the tilde produces an unbreakable space in text mode.
-% In polytonic and ancient Greek, we change its meaning to allow
-% using |~| in the Latin transliteration of characters with perispomeni.
-% As the perispomeni is not required with monotonic Greek, this is
-% only done for the variants ``polutoniko'' and ``ancient''.
-% \changes{greek-1.0c}{1997/02/19}{Added command}
-% \changes{greek-1.1b}{1997/03/06}{Made tilde expand to a tilde with
-% \cs{catcode 12}.}
-% \changes{greek-1.3k}{2003/04/10}{Make sure the character `!' is not
-% active during the definition of \cs{greek@tilde}}
-% \changes{greek-1.4}{2013/05/17}{Do not re-define the tilde accent macro:
-% it works as expected with \file{lgrenc.def} from \pkg{greek-fontenc}.}
-% \changes{babel-greek-1.13}{2023/03/15}{
-% Renamed from \cs{greek@tilde}. Simplify definition.}
-% \begin{macrocode}
- \DeclareTextSymbol{\bbl@greek@tilde}{LGR}{126}
- \addto\bbl@greek@setup@polytonic{
- \declare@shorthand{greek}{~}{\bbl@greek@tilde}
- }
-% \end{macrocode}
-% \end{macro}
-% \begin{macrocode}
\fi % End of LGR-specific code.
% \end{macrocode}
%
-%
% \subsection{Symbol name aliases}
% For backwards compatibility, we keep aliases for a few symbols.
% \changes{greek-1.1c}{1997/03/10}{Added a couple of symbols, needed
diff --git a/macros/latex/contrib/babel-contrib/greek/babel-greek.pdf b/macros/latex/contrib/babel-contrib/greek/babel-greek.pdf
index 0a2586bb5c..20ab08d842 100644
--- a/macros/latex/contrib/babel-contrib/greek/babel-greek.pdf
+++ b/macros/latex/contrib/babel-contrib/greek/babel-greek.pdf
Binary files differ
diff --git a/macros/latex/contrib/babel-contrib/greek/test-athnum.pdf b/macros/latex/contrib/babel-contrib/greek/test-athnum.pdf
index badf0226a5..2f8f10102f 100644
--- a/macros/latex/contrib/babel-contrib/greek/test-athnum.pdf
+++ b/macros/latex/contrib/babel-contrib/greek/test-athnum.pdf
Binary files differ
diff --git a/macros/latex/contrib/babel-contrib/greek/test-case-changing.tex b/macros/latex/contrib/babel-contrib/greek/test-case-changing.tex
deleted file mode 100644
index 50eaf650ea..0000000000
--- a/macros/latex/contrib/babel-contrib/greek/test-case-changing.tex
+++ /dev/null
@@ -1,1117 +0,0 @@
-% Backrolling does not work for \MakeUppercase (cf. LaTeX News 35)
-% \RequirePackage{latexbug}
-%\RequirePackage[2022-05-01]{latexrelease}
-
-\documentclass[a4paper]{article}
-
-\usepackage[LGR,T1]{fontenc}
-\usepackage{lmodern}
-
-\ifdefined \UnicodeEncodingName
- \usepackage{fontspec}
- \setmainfont{FreeSerif}
- \newcommand*{\texengine}{Xe/LuaLaTeX}
-\else
- \usepackage{lmodern}
- \newcommand*{\texengine}{pdfLaTeX}
-\fi
-
-% Load encoding definitions
-\usepackage[normalize-symbols]{textalpha} % "Greek script everywhere"
-
-% With TL22, the special handling of Greek UPPERCASE is only triggered
-% if the text language is set to "greek" with Babel:
-%
-\usepackage[greek,english]{babel} % babel-greek
-% \usepackage[greek,english,provide=*]{babel} % Babel's Greek "ini"
-% \languageattribute{greek}{polutoniko} % "modern" polytonic Greek
-\languageattribute{greek}{ancient}
-
-
-\usepackage[unicode,colorlinks,linkcolor=blue]{hyperref}
-\usepackage{bookmark}
-
-% Auxiliary commands
-
-\newcommand{\langGreek}{\foreignlanguage{greek}}
-
-% print the selected language variant
-\newcommand{\GreekLanguageVariant}{%
- \ifx\captionsgreek\captionspolutonikogreek
- \ifx\captionsgreek\captionsancientgreek
- ancient%
- \else
- polutoniko%
- \fi
- \else
- monotoniko%
- \fi
-}
-
-% test effect of new implementations on compilation time:
-%
-% pdflatex from TL22 is about 7 times slower than the version from TL21
-% (7s vs. 1s for this document with 13 pages).
-% With the dummy definitons,
-% \renewcommand{\MakeUppercase}{}
-% \renewcommand{\MakeLowercase}{}
-% pdflatex from TL22 is a bit faster than before
-% (0.7s vs. 1s for this document),
-
-% -----------------------------------------------------------------------
-
-\begin{document}
-
-\tableofcontents
-
-\section{Test case conversions of Greek letters}
-
-This document tests the combination of \verb|MakeUppercase| and Greek.
-
-\makeatletter
-It is compiled with \texengine, format version \fmtversion{} patch-level
-\patch@level{} and the L3 programming layer from \ExplFileDate{}.
-\makeatother
-The \verb|\greekfontencoding| is \greekfontencoding.
-
-\section{Unicode literals}
-
-\subsection{Greek and Coptic}
-
-Characters from the Greek and Coptic Unicode block that are supported by
-\emph{greek-fontenc} and \emph{greek-inputenc}:
-
-\newcommand{\GreekAndCoptic}{
- \raggedright
- ␣ ␣ ␣ ␣ ʹ ͵ ␣ ␣ ␣ ␣ ͺ ␣ ␣ ␣ ; ␣ \\
- ␣ ␣ ␣ ␣ ΄ ΅ Ά · Έ Ή Ί ␣ Ό ␣ Ύ Ώ \\
- ΐ Α Β Γ Δ Ε Ζ Η Θ Ι Κ Λ Μ Ν Ξ Ο \\
- Π Ρ ␣ Σ Τ Υ Φ Χ Ψ Ω Ϊ Ϋ ά έ ή ί \\
- ΰ α β γ δ ε ζ η θ ι κ λ μ ν ξ ο \\
- π ρ ς σ τ υ φ χ ψ ω ϊ ϋ ό ύ ώ ␣ \\
- ϐ ϑ ␣ ␣ ␣ ϕ ϖ ␣ Ϙ ϙ Ϛ ϛ Ϝ ϝ Ϟ ϟ \\
- Ϡ ϡ ␣ ␣ ␣ ␣ ␣ ␣ ␣ ␣ ␣ ␣ ϰ ϱ ϴ ϵ ␣ \\
-
-}
-\begin{quote}
- \selectlanguage{greek}
- \GreekAndCoptic
-\end{quote}
-%
-MakeUppercase:
-\begin{quote}
- \selectlanguage{greek}
- \MakeUppercase{\GreekAndCoptic}
-\end{quote}
-%
-MakeLowercase:
-\begin{quote}
- \selectlanguage{greek}
- \MakeLowercase{\GreekAndCoptic}
-\end{quote}
-
-The lowercase of \langGreek{Σ} is the «auto-sigma»
-(\verb|\textautosigma|): \langGreek{ΣΣ $\mapsto$ \MakeLowercase{ΣΣ}}.
-Add a ZWNJ or use the \verb|\noboundary| macro to prevent conversion to
-final sigma: \langGreek{\MakeLowercase{ΣΣ‌}} (works only with "old"
-(pre-2022) \verb|\MakeLowercase|).
-
-
-\subsection{Greek extended}
-
-Characters of the Greek Extended Unicode block:
-
-\newcommand{\GreekExtended}{\raggedright
- ἀ ἁ ἂ ἃ ἄ ἅ ἆ ἇ Ἀ Ἁ Ἂ Ἃ Ἄ Ἅ Ἆ Ἇ \\
- ἐ ἑ ἒ ἓ ἔ ἕ ␣ ␣ Ἐ Ἑ Ἒ Ἓ Ἔ Ἕ \\
- ἠ ἡ ἢ ἣ ἤ ἥ ἦ ἧ Ἠ Ἡ Ἢ Ἣ Ἤ Ἥ Ἦ Ἧ \\
- ἰ ἱ ἲ ἳ ἴ ἵ ἶ ἷ Ἰ Ἱ Ἲ Ἳ Ἴ Ἵ Ἶ Ἷ \\
- ὀ ὁ ὂ ὃ ὄ ὅ ␣ ␣ Ὀ Ὁ Ὂ Ὃ Ὄ Ὅ \\
- ὐ ὑ ὒ ὓ ὔ ὕ ὖ ὗ ␣ Ὑ ␣ Ὓ ␣ Ὕ ␣ Ὗ \\
- ὠ ὡ ὢ ὣ ὤ ὥ ὦ ὧ Ὠ Ὡ Ὢ Ὣ Ὤ Ὥ Ὦ Ὧ \\
- ὰ ά ὲ έ ὴ ή ὶ ί ὸ ό ὺ ύ ὼ ώ \\
- ᾀ ᾁ ᾂ ᾃ ᾄ ᾅ ᾆ ᾇ ᾈ ᾉ ᾊ ᾋ ᾌ ᾍ ᾎ ᾏ \\
- ᾐ ᾑ ᾒ ᾓ ᾔ ᾕ ᾖ ᾗ ᾘ ᾙ ᾚ ᾛ ᾜ ᾝ ᾞ ᾟ \\
- ᾠ ᾡ ᾢ ᾣ ᾤ ᾦ ᾧ ᾥ ᾨ ᾩ ᾪ ᾫ ᾬ ᾭ ᾮ ᾯ \\
- ᾰ ᾱ ᾲ ᾳ ᾴ ␣ ᾶ ᾷ Ᾰ Ᾱ Ὰ Ά ᾼ ᾽ ι ᾿ \\
- ῀ ῁ ῂ ῃ ῄ ␣ ῆ ῇ Ὲ Έ Ὴ Ή ῌ ῍ ῎ ῏ \\
- ῐ ῑ ῒ ΐ ␣ ␣ ῖ ῗ Ῐ Ῑ Ὶ Ί ␣ ῝ ῞ ῟ \\
- ῠ ῡ ῢ ΰ ␣ ␣ ῤ ῥ ῦ ῧ Ὺ Ύ Ῥ ῭ ΅ ` \\
- ␣ ␣ ῲ ῳ ῴ ␣ ῶ ῷ Ὸ Ό Ὼ Ώ ῼ ´ ῾ ␣
-}
-
-\begin{quote}
- \selectlanguage{greek}
- \GreekExtended
-\end{quote}
-%
-MakeUppercase:
-\begin{quote}
- \selectlanguage{greek}
- \MakeUppercase{\GreekExtended}
-\end{quote}
-
-MakeLowercase:
-\begin{quote}
- \selectlanguage{greek}
- \MakeLowercase{\GreekExtended}
-\end{quote}
-
-% With TeXLive 2020 (old \verb|\Makeuppercase|),
-% all accents except dialytika and prosgegrammeni are dropped in UPPERCASE
-% and kept in lowercase.
-% No errors.
-%
-% With current TeXLive:
-% pdfTeX, Version 3.141592653-2.6-1.40.24 (TeX Live 2022)
-% LaTeX2e <2022-11-01> patch level 1
-% L3 programming layer <2023-02-22>
-%
-% Upcasing ``Unicode errors'' are resolved.
-%
-% Uppercase of character ';' 0x37E GREEK QUESTION MARK is a semicolon
-% which is mapped to '·' 0x387 GREEK ANO TELEIA by LGR. :(
-%
-% Accents dropped with MakeUppercase (not for single letter ή) :)
-% TODO: how to treat MakeUppercase of a single captial «΄Η»?
-%
-% Should the “educational”/“Latin” accents *macron* and *breve* (*vrachy*)
-% be kept (they stay above capital letters similar to the dialytika,
-% they are kept by Apostolos Syropoulos' “xgreek” package and in babel-greek
-% “since ages”) or dropped (they are optional even in lowercase or titlecase
-% and dropped for the entry by the English wiktionary).
-% https://en.wiktionary.org/wiki/Wiktionary:About_Ancient_Greek#Diacritics_and_accentuation
-%
-% Spacing prosgegrammeni (ι) turned to capital Iota. (minor)
-%
-% Spacing single diacritics are kept. (irrelevant, OK)
-% Spacing combining diacritics are mapped to single diacritics. (irrelevant)
-%
-% Auto-Hiatus: ἀυπνία → ΑΥΠΝΙΑ (missing dialytika on the Upsilon).
-
-% With pdfLaTeX and LGR, a ZWNJ or the ``\noboundary`` macro can be used to
-% prevent conversion of trailing Σ to a final sigma ς by ``\MakeLowercase``.
-% This does not work with Unicode fonts (XeTeX/LuaTeX).
-
-% With XeTeX and Unicode fonts,
-\subsubsection{hiatus}
-
-Tonos and dasia mark a \emph{hiatus} (break-up of a diphthong) if placed on
-the first of two consecutive vowels (άι, άυ, έι, ἀυ, ἄι, ἄυ, ἔι).
-A dialytika must be placed on the second vowel if they are dropped.
-
-Since the 2022/06 LaTeX release, it works with monotonic Unicode literals
-(since 2023/02/10] also some polytonic but fails with psili):
-\begin{quote}
- \selectlanguage{greek}
- \newcommand*{\hiatest}{άι, άυ, έι, ἄι, ἄυ, ἔι, ἀυ}
- \hiatest{} $\mapsto$ \MakeUppercase{\hiatest}
-\end{quote}
-
-Example \foreignlanguage{greek}{ἀυπνία $\mapsto$ \MakeUppercase{ἀυπνία}}
-(missing dialytika on the Upsilon).
-
-\section{LICR macros}
-
-This section compares literal Unicode Greek characters to characters input
-as LICR macros
-
-\subsection{Greek and Coptic}
-
-\subsubsection{short accent macros}
-
-\renewcommand{\GreekAndCoptic}{% only characters supported by LGR
- \raggedright
- ␣ ␣ ␣ ␣ ʹ ͵ ␣ ␣ ␣ ␣ ͺ ␣ ␣ ␣ ; ␣ \\
- ␣ ␣ ␣ ␣ \textnumeralsigngreek{} \textnumeralsignlowergreek{}
- ␣ ␣ ␣ ␣ { }\ypogegrammeni{} ␣ ␣ ␣ \texterotimatiko\\
-
- ␣ ␣ ␣ ␣ ΄ ΅ Ά · Έ Ή Ί ␣ Ό ␣ Ύ Ώ \\
-
- ␣ ␣ ␣ ␣ \'{ } \"'{ } \'\textAlpha{} \textanoteleia{}
- \'\textEpsilon{} \'\textEta{} \'\textIota{}
- ␣ \'\textOmicron{} ␣ \'\textUpsilon{} \'\textOmega{} \\
-
- ΐ Α Β Γ Δ Ε Ζ Η Θ Ι Κ Λ Μ Ν Ξ Ο \\
- \'"\textiota{} \textAlpha{} \textBeta{} \textGamma{} \textDelta{}
- \textEpsilon{} \textZeta{} \textEta{} \textTheta{} \textIota{}
- \textKappa{} \textLambda{} \textMu{} \textNu{} \textXi{} \textOmicron{} \\
-
- Π Ρ ␣ Σ Τ Υ Φ Χ Ψ Ω Ϊ Ϋ ά έ ή ί \\
- \textPi{} \textRho{} ␣ \textSigma{} \textTau{} \textUpsilon{}
- \textPhi{} \textChi{} \textPsi{} \textOmega{} \"\textIota{}
- \"\textUpsilon{} \'\textalpha{} \'\textepsilon{} \'\texteta{}
- \'\textiota{} \\
-
- ΰ α β γ δ ε ζ η θ ι κ λ μ ν ξ ο \\
- \"'\textupsilon{} \textalpha{} \textbeta{} \textgamma{} \textdelta{}
- \textepsilon{} \textzeta{} \texteta{} \texttheta{} \textiota{}
- \textkappa{} \textlambda{} \textmu{} \textnu{} \textxi{} \textomicron{} \\
-
- π ρ ς σ τ υ φ χ ψ ω ϊ ϋ ό ύ ώ ␣ \\
- \textpi{} \textrho{} \textfinalsigma{} \textsigma{} \texttau{}
- \textupsilon{} \textphi{} \textchi{} \textpsi{} \textomega{} \"\textiota{}
- \"\textupsilon{} \'\textomicron{} \'\textupsilon{} \'\textomega{} \\
-
- ϐ ϑ ␣ ␣ ␣ ϕ ϖ ␣ Ϙ ϙ Ϛ ϛ Ϝ ϝ Ϟ ϟ \\
- \textbetasymbol{} \textthetasymbol{} ␣ ␣ ␣ \textphisymbol{}
- \textpisymbol{} ␣ \textQoppa{} \textqoppa{} \textStigma{} \textstigma{}
- \textDigamma{} \textdigamma{} \textKoppa{} \textkoppa{} \\
-
- Ϡ ϡ ␣ ␣ ␣ ␣ ␣ ␣ ␣ ␣ ␣ ␣ ϰ ϱ ϴ ϵ \\
- \textSampi{} \textsampi{} ␣ ␣ ␣ ␣ ␣ ␣ ␣ ␣ ␣ ␣
- \textkappasymbol{} \textrhosymbol{} \textThetasymbol{} \textepsilonsymbol
-}
-
-No case change:
-
-\begin{quote}
- \selectlanguage{greek}
- \GreekAndCoptic
-\end{quote}
-%
-MakeUppercase:
-\begin{quote}
- \selectlanguage{greek}
- \MakeUppercase{\GreekAndCoptic}
-\end{quote}
-%
-MakeLowercase:
-\begin{quote}
- \selectlanguage{greek}
- \MakeLowercase{\GreekAndCoptic}
-\end{quote}
-
-\subsubsection{named accent macros}
-
-\renewcommand{\GreekAndCoptic}{% only characters supported by LGR
- \raggedright
- ␣ ␣ ␣ ␣ ʹ ͵ ␣ ␣ ␣ ␣ ͺ ␣ ␣ ␣ ; ␣ \\
- ␣ ␣ ␣ ␣ \textnumeralsigngreek{} \textnumeralsignlowergreek{}
- ␣ ␣ ␣ ␣ { }\ypogegrammeni{} ␣ ␣ ␣ \texterotimatiko\\
-
- ␣ ␣ ␣ ␣ ΄ ΅ Ά · Έ Ή Ί ␣ Ό ␣ Ύ Ώ \\
- ␣ ␣ ␣ ␣ \acctonos{ } \accdialytikatonos{ } \acctonos\textAlpha{}
- \textanoteleia{} \acctonos\textEpsilon{} \acctonos\textEta{}
- \acctonos\textIota{} ␣ \acctonos\textOmicron{} ␣ \acctonos\textUpsilon{}
- \acctonos\textOmega{} \\
-
- ΐ Α Β Γ Δ Ε Ζ Η Θ Ι Κ Λ Μ Ν Ξ Ο \\
- \accdialytikatonos\textiota{} \textAlpha{} \textBeta{} \textGamma{}
- \textDelta{} \textEpsilon{} \textZeta{} \textEta{} \textTheta{} \textIota{}
- \textKappa{} \textLambda{} \textMu{} \textNu{} \textXi{} \textOmicron{} \\
-
- Π Ρ ␣ Σ Τ Υ Φ Χ Ψ Ω Ϊ Ϋ ά έ ή ί \\
- \textPi{} \textRho{} ␣ \textSigma{} \textTau{} \textUpsilon{}
- \textPhi{} \textChi{} \textPsi{} \textOmega{} \accdialytika\textIota{}
- \accdialytika\textUpsilon{} \acctonos\textalpha{} \acctonos\textepsilon{}
- \acctonos\texteta{} \acctonos\textiota{} \\
-
- ΰ α β γ δ ε ζ η θ ι κ λ μ ν ξ ο \\
- \accdialytikatonos\textupsilon{} \textalpha{} \textbeta{} \textgamma{}
- \textdelta{} \textepsilon{} \textzeta{} \texteta{} \texttheta{} \textiota{}
- \textkappa{} \textlambda{} \textmu{} \textnu{} \textxi{} \textomicron{} \\
-
- π ρ ς σ τ υ φ χ ψ ω ϊ ϋ ό ύ ώ ␣ \\
- \textpi{} \textrho{} \textfinalsigma{} \textsigma{} \texttau{}
- \textupsilon{} \textphi{} \textchi{} \textpsi{} \textomega{}
- \accdialytika\textiota{} \accdialytika\textupsilon{}
- \acctonos\textomicron{} \acctonos\textupsilon{} \acctonos\textomega{} ␣\\
-
- ϐ ϑ ␣ ␣ ␣ ϕ ϖ ␣ Ϙ ϙ Ϛ ϛ Ϝ ϝ Ϟ ϟ \\
- \textbetasymbol{} \textthetasymbol{} ␣ ␣ ␣ \textphisymbol{}
- \textpisymbol{} ␣ \textQoppa{} \textqoppa{} \textStigma{} \textstigma{}
- \textDigamma{} \textdigamma{} \textKoppa{} \textkoppa{} \\
-
- Ϡ ϡ ␣ ␣ ␣ ␣ ␣ ␣ ␣ ␣ ␣ ␣ ϰ ϱ ϴ ϵ \\
- \textSampi{} \textsampi{} ␣ ␣ ␣ ␣ ␣ ␣ ␣ ␣ ␣ ␣
- \textkappasymbol{} \textrhosymbol{} \textThetasymbol{} \textepsilonsymbol
-}
-No case change:
-\begin{quote}
- \selectlanguage{greek}
- \GreekAndCoptic
-\end{quote}
-%
-MakeUppercase:
-\begin{quote}
- \selectlanguage{greek}
- \MakeUppercase{\GreekAndCoptic}
-\end{quote}
-%
-MakeLowercase:
-\begin{quote}
- \selectlanguage{greek}
- \MakeLowercase{\GreekAndCoptic}
-\end{quote}
-
-\subsubsection{symbol variants}
-
-\newcommand{\symbolvariants}{
- \textbeta \textvarbeta \textbetasymbol ϐ
- \textepsilon \textvarepsilon \textepsilonsymbol ϵ
- \texttheta \textvartheta \textthetasymbol ϑ
- \textTheta \textvarTheta \textThetasymbol ϴ
- \textkappa \textvarkappa \textkappasymbol ϰ
- \textpi \textvarpi \textpisymbol ϖ
- \textrho \textvarrho \textrhosymbol ϱ
- \textphi \textvarphi \textphisymbol ϕ
-}
-
-No case change (letter, ``var''-letter, letter-``symbol'', literal symbol)
-\begin{quote}
- \selectlanguage{greek}
- \symbolvariants
-\end{quote}
-%
-MakeUppercase selects the matching capital lette
-\begin{quote}
- \selectlanguage{greek}
- \MakeUppercase{\symbolvariants}
-\end{quote}
-%
-MakeLowercase select the lowercase letter (not the symbol)
-\begin{quote}
- \selectlanguage{greek}
- \MakeLowercase{\textBeta Β \textEpsilon Ε
- \textTheta Θ \textThetasymbol \textvarTheta ϴ
- \textKappa Κ \textPi Π \textRho Ρ \textPhi Φ}
-\end{quote}
-
-
-
-\subsection{Greek extended}
-
-\subsubsection{short accent macros}
-
-\renewcommand{\GreekExtended}{\raggedright
- ἀ ἁ ἂ ἃ ἄ ἅ ἆ ἇ Ἀ Ἁ Ἂ Ἃ Ἄ Ἅ Ἆ Ἇ \\
- \>\textalpha{}
- \<\textalpha{}
- \>`\textalpha{}
- \<`\textalpha{}
- \>'\textalpha{}
- \<'\textalpha{}
- \~>\textalpha{}
- \~<\textalpha{}
- \>\textAlpha{}
- \<\textAlpha{}
- \>`\textAlpha{}
- \<`\textAlpha{}
- \>'\textAlpha{}
- \<'\textAlpha{}
- \~>\textAlpha{}
- \~<\textAlpha{} \\
-
- ἐ ἑ ἒ ἓ ἔ ἕ ␣ ␣ Ἐ Ἑ Ἒ Ἓ Ἔ Ἕ \\
- \>\textepsilon{}
- \<\textepsilon{}
- \>`\textepsilon{}
- \<`\textepsilon{}
- \>'\textepsilon{}
- \<'\textepsilon{}
- ␣ ␣ \>\textEpsilon{}
- \<\textEpsilon{}
- \>`\textEpsilon{}
- \<`\textEpsilon{}
- \>'\textEpsilon{}
- \<'\textEpsilon{}\\
-
- ἠ ἡ ἢ ἣ ἤ ἥ ἦ ἧ Ἠ Ἡ Ἢ Ἣ Ἤ Ἥ Ἦ Ἧ \\
- \>\texteta{}
- \<\texteta{}
- \>`\texteta{}
- \<`\texteta{}
- \>'\texteta{}
- \<'\texteta{}
- \~>\texteta{}
- \~<\texteta{}
- \>\textEta{}
- \<\textEta{}
- \>`\textEta{}
- \<`\textEta{}
- \>'\textEta{}
- \<'\textEta{}
- \~>\textEta{}
- \~<\textEta{} \\
-
- ἰ ἱ ἲ ἳ ἴ ἵ ἶ ἷ Ἰ Ἱ Ἲ Ἳ Ἴ Ἵ Ἶ Ἷ \\
- \>\textiota{}
- \<\textiota{}
- \>`\textiota{}
- \<`\textiota{}
- \>'\textiota{}
- \<'\textiota{}
- \~>\textiota{}
- \~<\textiota{}
- \>\textIota{}
- \<\textIota{}
- \>`\textIota{}
- \<`\textIota{}
- \>'\textIota{}
- \<'\textIota{}
- \~>\textIota{}
- \~<\textIota{} \\
-
- ὀ ὁ ὂ ὃ ὄ ὅ ␣ ␣ Ὀ Ὁ Ὂ Ὃ Ὄ Ὅ \\
- \>\textomicron{}
- \<\textomicron{}
- \>`\textomicron{}
- \<`\textomicron{}
- \>'\textomicron{}
- \<'\textomicron{}
- ␣ ␣ \>\textOmicron{}
- \<\textOmicron{}
- \>`\textOmicron{}
- \<`\textOmicron{}
- \>'\textOmicron{}
- \<'\textOmicron{} \\
-
- ὐ ὑ ὒ ὓ ὔ ὕ ὖ ὗ ␣ Ὑ ␣ Ὓ ␣ Ὕ ␣ Ὗ \\
- \>\textupsilon{}
- \<\textupsilon{}
- \>`\textupsilon{}
- \<`\textupsilon{}
- \>'\textupsilon{}
- \<'\textupsilon{}
- \~>\textupsilon{}
- \~<\textupsilon{}
- ␣ \<\textUpsilon{}
- ␣ \<`\textUpsilon{}
- ␣ \<'\textUpsilon{}
- ␣ \~<\textUpsilon{} \\
-
- ὠ ὡ ὢ ὣ ὤ ὥ ὦ ὧ Ὠ Ὡ Ὢ Ὣ Ὤ Ὥ Ὦ Ὧ \\
- \>\textomega{}
- \<\textomega{}
- \>`\textomega{}
- \<`\textomega{}
- \>'\textomega{}
- \<'\textomega{}
- \~>\textomega{}
- \~<\textomega{}
- \>\textOmega{}
- \<\textOmega{}
- \>`\textOmega{}
- \<`\textOmega{}
- \>'\textOmega{}
- \<'\textOmega{}
- \~>\textOmega{}
- \~<\textOmega{} \\
-
- ὰ ά ὲ έ ὴ ή ὶ ί ὸ ό ὺ ύ ὼ ώ \\
- \`\textalpha{}
- \'\textalpha{}
- \`\textepsilon{}
- \'\textepsilon{}
- \`\texteta{}
- \'\texteta{}
- \`\textiota{}
- \'\textiota{}
- \`\textomicron{}
- \'\textomicron{}
- \`\textupsilon{}
- \'\textupsilon{}
- \`\textomega{}
- \'\textomega{} \\
-
- ᾀ ᾁ ᾂ ᾃ ᾄ ᾅ ᾆ ᾇ ᾈ ᾉ ᾊ ᾋ ᾌ ᾍ ᾎ ᾏ \\
- \>\textalpha\ypogegrammeni{}
- \<\textalpha\ypogegrammeni{}
- \>`\textalpha\ypogegrammeni{}
- \<`\textalpha\ypogegrammeni{}
- \>'\textalpha\ypogegrammeni{}
- \<'\textalpha\ypogegrammeni{}
- \~>\textalpha\ypogegrammeni{}
- \~<\textalpha\ypogegrammeni{}
- \>\textAlpha\ypogegrammeni{}
- \<\textAlpha\ypogegrammeni{}
- \>`\textAlpha\ypogegrammeni{}
- \<`\textAlpha\ypogegrammeni{}
- \>'\textAlpha\ypogegrammeni{}
- \<'\textAlpha\ypogegrammeni{}
- \~>\textAlpha\ypogegrammeni{}
- \~<\textAlpha\ypogegrammeni{} \\
-
- ᾐ ᾑ ᾒ ᾓ ᾔ ᾕ ᾖ ᾗ ᾘ ᾙ ᾚ ᾛ ᾜ ᾝ ᾞ ᾟ \\
- \>\texteta\ypogegrammeni{}
- \<\texteta\ypogegrammeni{}
- \>`\texteta\ypogegrammeni{}
- \<`\texteta\ypogegrammeni{}
- \>'\texteta\ypogegrammeni{}
- \<'\texteta\ypogegrammeni{}
- \~>\texteta\ypogegrammeni{}
- \~<\texteta\ypogegrammeni{}
- \>\textEta\ypogegrammeni{}
- \<\textEta\ypogegrammeni{}
- \>`\textEta\ypogegrammeni{}
- \<`\textEta\ypogegrammeni{}
- \>'\textEta\ypogegrammeni{}
- \<'\textEta\ypogegrammeni{}
- \~>\textEta\ypogegrammeni{}
- \~<\textEta\ypogegrammeni{} \\
-
- ᾠ ᾡ ᾢ ᾣ ᾤ ᾦ ᾧ ᾥ ᾨ ᾩ ᾪ ᾫ ᾬ ᾭ ᾮ ᾯ \\
- \>\textomega\ypogegrammeni{}
- \<\textomega\ypogegrammeni{}
- \>`\textomega\ypogegrammeni{}
- \<`\textomega\ypogegrammeni{}
- \>'\textomega\ypogegrammeni{}
- \<'\textomega\ypogegrammeni{}
- \~>\textomega\ypogegrammeni{}
- \~<\textomega\ypogegrammeni{}
- \>\textOmega\ypogegrammeni{}
- \<\textOmega\ypogegrammeni{}
- \>`\textOmega\ypogegrammeni{}
- \<`\textOmega\ypogegrammeni{}
- \>'\textOmega\ypogegrammeni{}
- \<'\textOmega\ypogegrammeni{}
- \~>\textOmega\ypogegrammeni{}
- \~<\textOmega\ypogegrammeni{} \\
-
- ᾰ ᾱ ᾲ ᾳ ᾴ ␣ ᾶ ᾷ Ᾰ Ᾱ Ὰ Ά ᾼ ᾽ ι ᾿ \\
- \u\textalpha{}
- \=\textalpha{}
- \`\textalpha\ypogegrammeni{}
- \textalpha\ypogegrammeni{}
- \'\textalpha\ypogegrammeni{}
- ␣ \~\textalpha{}
- \~\textalpha\ypogegrammeni{}
- \u\textAlpha{}
- \=\textAlpha{}
- \`\textAlpha{}
- \'\textAlpha{}
- \textAlpha\ypogegrammeni{}
- \>{}
- \prosgegrammeni{}
- \>{} \\
-
- ῀ ῁ ῂ ῃ ῄ ␣ ῆ ῇ Ὲ Έ Ὴ Ή ῌ ῍ ῎ ῏ \\
- \~{}
- \"\~{}
- \`\texteta\ypogegrammeni{}
- \texteta\ypogegrammeni{}
- \'\texteta\ypogegrammeni{}
- ␣ \~\texteta{}
- \~\texteta\ypogegrammeni{}
- \`\textEpsilon{}
- \'\textEpsilon{}
- \`\textEta{}
- \'\textEta{}
- \textEta\ypogegrammeni{}
- \>`{}
- \>'{}
- \~>{} \\
-
- ῐ ῑ ῒ ΐ ␣ ␣ ῖ ῗ Ῐ Ῑ Ὶ Ί ␣ ῝ ῞ ῟ \\
- \u\textiota{}
- \=\textiota{}
- \`"\textiota{}
- \'"\textiota{}
- ␣ ␣ \~\textiota{}
- \~"\textiota{}
- \u\textIota{}
- \=\textIota{}
- \`\textIota{}
- \'\textIota{}
- ␣
- \<`{}
- \<'{}
- \~<{} \\
-
- ῠ ῡ ῢ ΰ ῤ ῥ ῦ ῧ Ῠ Ῡ Ὺ Ύ Ῥ ῭ ΅ ` \\
- \u\textupsilon{}
- \=\textupsilon{}
- \`"\textupsilon{}
- \'"\textupsilon{}
- \>\textrho{}
- \<\textrho{}
- \~\textupsilon{}
- \~"\textupsilon{}
- \u\textUpsilon{}
- \=\textUpsilon{}
- \`\textUpsilon{}
- \'\textUpsilon{}
- \<\textRho{}
- \`"{}
- \'"{}
- \`{} \\
-
- ␣ ␣ ῲ ῳ ῴ ␣ ῶ ῷ Ὸ Ό Ὼ Ώ ῼ ´ ῾ ␣ \\
-
- ␣ ␣ \`\textomega\ypogegrammeni{}
- \textomega\ypogegrammeni{}
- \'\textomega\ypogegrammeni{}
- ␣ \~\textomega{}
- \~\textomega\ypogegrammeni{}
- \`\textOmicron{}
- \'\textOmicron{}
- \`\textOmega{}
- \'\textOmega{}
- \textOmega\ypogegrammeni{}
- \'{}
- \<{} ␣
-}
-
-No case change:
-\begin{quote}
- \selectlanguage{greek}
- \GreekExtended
-\end{quote}
-%
-MakeUppercase:
-\begin{quote}
- \selectlanguage{greek}
- \MakeUppercase{\GreekExtended}
-\end{quote}
-%
-MakeLowercase:
-\begin{quote}
- \selectlanguage{greek}
- \MakeLowercase{\GreekExtended}
-\end{quote}
-
-
-\subsubsection{named accent macros}
-
-\renewcommand{\GreekExtended}{\raggedright
- ἀ ἁ ἂ ἃ ἄ ἅ ἆ ἇ Ἀ Ἁ Ἂ Ἃ Ἄ Ἅ Ἆ Ἇ \\
- \accpsili\textalpha{}
- \accdasia\textalpha{}
- \accpsilivaria\textalpha{}
- \accdasiavaria\textalpha{}
- \accpsilioxia\textalpha{}
- \accdasiaoxia\textalpha{}
- \accpsiliperispomeni\textalpha{}
- \accdasiaperispomeni\textalpha{}
- \accpsili\textAlpha{}
- \accdasia\textAlpha{}
- \accpsilivaria\textAlpha{}
- \accdasiavaria\textAlpha{}
- \accpsilioxia\textAlpha{}
- \accdasiaoxia\textAlpha{}
- \accpsiliperispomeni\textAlpha{}
- \accdasiaperispomeni\textAlpha{} \\
-
- ἐ ἑ ἒ ἓ ἔ ἕ ␣ ␣ Ἐ Ἑ Ἒ Ἓ Ἔ Ἕ \\
- \accpsili\textepsilon{}
- \accdasia\textepsilon{}
- \accpsilivaria\textepsilon{}
- \accdasiavaria\textepsilon{}
- \accpsilioxia\textepsilon{}
- \accdasiaoxia\textepsilon{}
- ␣ ␣ \accpsili\textEpsilon{}
- \accdasia\textEpsilon{}
- \accpsilivaria\textEpsilon{}
- \accdasiavaria\textEpsilon{}
- \accpsilioxia\textEpsilon{}
- \accdasiaoxia\textEpsilon{}\\
-
- ἠ ἡ ἢ ἣ ἤ ἥ ἦ ἧ Ἠ Ἡ Ἢ Ἣ Ἤ Ἥ Ἦ Ἧ \\
- \accpsili\texteta{}
- \accdasia\texteta{}
- \accpsilivaria\texteta{}
- \accdasiavaria\texteta{}
- \accpsilioxia\texteta{}
- \accdasiaoxia\texteta{}
- \accpsiliperispomeni\texteta{}
- \accdasiaperispomeni\texteta{}
- \accpsili\textEta{}
- \accdasia\textEta{}
- \accpsilivaria\textEta{}
- \accdasiavaria\textEta{}
- \accpsilioxia\textEta{}
- \accdasiaoxia\textEta{}
- \accpsiliperispomeni\textEta{}
- \accdasiaperispomeni\textEta{} \\
-
- ἰ ἱ ἲ ἳ ἴ ἵ ἶ ἷ Ἰ Ἱ Ἲ Ἳ Ἴ Ἵ Ἶ Ἷ \\
- \accpsili\textiota{}
- \accdasia\textiota{}
- \accpsilivaria\textiota{}
- \accdasiavaria\textiota{}
- \accpsilioxia\textiota{}
- \accdasiaoxia\textiota{}
- \accpsiliperispomeni\textiota{}
- \accdasiaperispomeni\textiota{}
- \accpsili\textIota{}
- \accdasia\textIota{}
- \accpsilivaria\textIota{}
- \accdasiavaria\textIota{}
- \accpsilioxia\textIota{}
- \accdasiaoxia\textIota{}
- \accpsiliperispomeni\textIota{}
- \accdasiaperispomeni\textIota{} \\
-
- ὀ ὁ ὂ ὃ ὄ ὅ ␣ ␣ Ὀ Ὁ Ὂ Ὃ Ὄ Ὅ \\
- \accpsili\textomicron{}
- \accdasia\textomicron{}
- \accpsilivaria\textomicron{}
- \accdasiavaria\textomicron{}
- \accpsilioxia\textomicron{}
- \accdasiaoxia\textomicron{}
- ␣ ␣ \accpsili\textOmicron{}
- \accdasia\textOmicron{}
- \accpsilivaria\textOmicron{}
- \accdasiavaria\textOmicron{}
- \accpsilioxia\textOmicron{}
- \accdasiaoxia\textOmicron{} \\
-
- ὐ ὑ ὒ ὓ ὔ ὕ ὖ ὗ ␣ Ὑ ␣ Ὓ ␣ Ὕ ␣ Ὗ \\
- \accpsili\textupsilon{}
- \accdasia\textupsilon{}
- \accpsilivaria\textupsilon{}
- \accdasiavaria\textupsilon{}
- \accpsilioxia\textupsilon{}
- \accdasiaoxia\textupsilon{}
- \accpsiliperispomeni\textupsilon{}
- \accdasiaperispomeni\textupsilon{}
- ␣ \accdasia\textUpsilon{}
- ␣ \accdasiavaria\textUpsilon{}
- ␣ \accdasiaoxia\textUpsilon{}
- ␣ \accdasiaperispomeni\textUpsilon{} \\
-
- ὠ ὡ ὢ ὣ ὤ ὥ ὦ ὧ Ὠ Ὡ Ὢ Ὣ Ὤ Ὥ Ὦ Ὧ \\
- \accpsili\textomega{}
- \accdasia\textomega{}
- \accpsilivaria\textomega{}
- \accdasiavaria\textomega{}
- \accpsilioxia\textomega{}
- \accdasiaoxia\textomega{}
- \accpsiliperispomeni\textomega{}
- \accdasiaperispomeni\textomega{}
- \accpsili\textOmega{}
- \accdasia\textOmega{}
- \accpsilivaria\textOmega{}
- \accdasiavaria\textOmega{}
- \accpsilioxia\textOmega{}
- \accdasiaoxia\textOmega{}
- \accpsiliperispomeni\textOmega{}
- \accdasiaperispomeni\textOmega{} \\
-
- ὰ ά ὲ έ ὴ ή ὶ ί ὸ ό ὺ ύ ὼ ώ \\
- \accvaria\textalpha{}
- \accoxia\textalpha{}
- \accvaria\textepsilon{}
- \accoxia\textepsilon{}
- \accvaria\texteta{}
- \accoxia\texteta{}
- \accvaria\textiota{}
- \accoxia\textiota{}
- \accvaria\textomicron{}
- \accoxia\textomicron{}
- \accvaria\textupsilon{}
- \accoxia\textupsilon{}
- \accvaria\textomega{}
- \accoxia\textomega{} \\
-
- ᾀ ᾁ ᾂ ᾃ ᾄ ᾅ ᾆ ᾇ ᾈ ᾉ ᾊ ᾋ ᾌ ᾍ ᾎ ᾏ \\
- \accpsili\textalpha\ypogegrammeni{}
- \accdasia\textalpha\ypogegrammeni{}
- \accpsilivaria\textalpha\ypogegrammeni{}
- \accdasiavaria\textalpha\ypogegrammeni{}
- \accpsilioxia\textalpha\ypogegrammeni{}
- \accdasiaoxia\textalpha\ypogegrammeni{}
- \accpsiliperispomeni\textalpha\ypogegrammeni{}
- \accdasiaperispomeni\textalpha\ypogegrammeni{}
- \accpsili\textAlpha\ypogegrammeni{}
- \accdasia\textAlpha\ypogegrammeni{}
- \accpsilivaria\textAlpha\ypogegrammeni{}
- \accdasiavaria\textAlpha\ypogegrammeni{}
- \accpsilioxia\textAlpha\ypogegrammeni{}
- \accdasiaoxia\textAlpha\ypogegrammeni{}
- \accpsiliperispomeni\textAlpha\ypogegrammeni{}
- \accdasiaperispomeni\textAlpha\ypogegrammeni{} \\
-
- ᾐ ᾑ ᾒ ᾓ ᾔ ᾕ ᾖ ᾗ ᾘ ᾙ ᾚ ᾛ ᾜ ᾝ ᾞ ᾟ \\
- \accpsili\texteta\ypogegrammeni{}
- \accdasia\texteta\ypogegrammeni{}
- \accpsilivaria\texteta\ypogegrammeni{}
- \accdasiavaria\texteta\ypogegrammeni{}
- \accpsilioxia\texteta\ypogegrammeni{}
- \accdasiaoxia\texteta\ypogegrammeni{}
- \accpsiliperispomeni\texteta\ypogegrammeni{}
- \accdasiaperispomeni\texteta\ypogegrammeni{}
- \accpsili\textEta\ypogegrammeni{}
- \accdasia\textEta\ypogegrammeni{}
- \accpsilivaria\textEta\ypogegrammeni{}
- \accdasiavaria\textEta\ypogegrammeni{}
- \accpsilioxia\textEta\ypogegrammeni{}
- \accdasiaoxia\textEta\ypogegrammeni{}
- \accpsiliperispomeni\textEta\ypogegrammeni{}
- \accdasiaperispomeni\textEta\ypogegrammeni{} \\
-
- ᾠ ᾡ ᾢ ᾣ ᾤ ᾦ ᾧ ᾥ ᾨ ᾩ ᾪ ᾫ ᾬ ᾭ ᾮ ᾯ \\
- \accpsili\textomega\ypogegrammeni{}
- \accdasia\textomega\ypogegrammeni{}
- \accpsilivaria\textomega\ypogegrammeni{}
- \accdasiavaria\textomega\ypogegrammeni{}
- \accpsilioxia\textomega\ypogegrammeni{}
- \accdasiaoxia\textomega\ypogegrammeni{}
- \accpsiliperispomeni\textomega\ypogegrammeni{}
- \accdasiaperispomeni\textomega\ypogegrammeni{}
- \accpsili\textOmega\ypogegrammeni{}
- \accdasia\textOmega\ypogegrammeni{}
- \accpsilivaria\textOmega\ypogegrammeni{}
- \accdasiavaria\textOmega\ypogegrammeni{}
- \accpsilioxia\textOmega\ypogegrammeni{}
- \accdasiaoxia\textOmega\ypogegrammeni{}
- \accpsiliperispomeni\textOmega\ypogegrammeni{}
- \accdasiaperispomeni\textOmega\ypogegrammeni{} \\
-
- ᾰ ᾱ ᾲ ᾳ ᾴ ␣ ᾶ ᾷ Ᾰ Ᾱ Ὰ Ά ᾼ ᾽ ι ᾿ \\
- \u\textalpha{}
- \=\textalpha{}
- \accvaria\textalpha\ypogegrammeni{}
- \textalpha\ypogegrammeni{}
- \accoxia\textalpha\ypogegrammeni{}
- ␣ \accperispomeni\textalpha{}
- \accperispomeni\textalpha\ypogegrammeni{}
- \u\textAlpha{}
- \=\textAlpha{}
- \accvaria\textAlpha{}
- \accoxia\textAlpha{}
- \textAlpha\ypogegrammeni{}
- \accpsili{}
- \prosgegrammeni{}
- \accpsili{} \\
-
- ῀ ῁ ῂ ῃ ῄ ␣ ῆ ῇ Ὲ Έ Ὴ Ή ῌ ῍ ῎ ῏ \\
- \accperispomeni{}
- \accdialytikaperispomeni{}
- \accvaria\texteta\ypogegrammeni{}
- \texteta\ypogegrammeni{}
- \accoxia\texteta\ypogegrammeni{}
- ␣ \accperispomeni\texteta{}
- \accperispomeni\texteta\ypogegrammeni{}
- \accvaria\textEpsilon{}
- \accoxia\textEpsilon{}
- \accvaria\textEta{}
- \accoxia\textEta{}
- \textEta\ypogegrammeni{}
- \accpsilivaria{}
- \accpsilioxia{}
- \accpsiliperispomeni{} \\
-
- ῐ ῑ ῒ ΐ ␣ ␣ ῖ ῗ Ῐ Ῑ Ὶ Ί ␣ ῝ ῞ ῟ \\
- \u\textiota{}
- \=\textiota{}
- \accdialytikavaria\textiota{}
- \accdialytikatonos\textiota{}
- ␣ ␣ \accperispomeni\textiota{}
- \accperispomeni"\textiota{}
- \u\textIota{}
- \=\textIota{}
- \accvaria\textIota{}
- \accoxia\textIota{}
- ␣
- \accdasiavaria{}
- \accdasiaoxia{}
- \accdasiaperispomeni{} \\
-
- ῠ ῡ ῢ ΰ ῤ ῥ ῦ ῧ Ῠ Ῡ Ὺ Ύ Ῥ ῭ ΅ ` \\
- \u\textupsilon{}
- \=\textupsilon{}
- \accdialytikavaria\textupsilon{}
- \accdialytikatonos\textupsilon{}
- \accpsili\textrho{}
- \accdasia\textrho{}
- \accperispomeni\textupsilon{}
- \accdialytikaperispomeni\textupsilon{}
- \u\textUpsilon{}
- \=\textUpsilon{}
- \accvaria\textUpsilon{}
- \accoxia\textUpsilon{}
- \accdasia\textRho{}
- \accdialytikavaria{}
- \accdialytikatonos{}
- \accvaria{} \\
-
- ␣ ␣ ῲ ῳ ῴ ␣ ῶ ῷ Ὸ Ό Ὼ Ώ ῼ ´ ῾ ␣ \\
-
- ␣ ␣ \accvaria\textomega\ypogegrammeni{}
- \textomega\ypogegrammeni{}
- \accoxia\textomega\ypogegrammeni{}
- ␣ \accperispomeni\textomega{}
- \accperispomeni\textomega\ypogegrammeni{}
- \accvaria\textOmicron{}
- \accoxia\textOmicron{}
- \accvaria\textOmega{}
- \accoxia\textOmega{}
- \textOmega\ypogegrammeni{}
- \accoxia{}
- \accdasia{} ␣
-}
-
-No case change:
-\begin{quote}
- \selectlanguage{greek}
- \GreekExtended
-\end{quote}
-%
-MakeUppercase:
-\begin{quote}
- \selectlanguage{greek}
- \MakeUppercase{\GreekExtended}
-\end{quote}
-%
-MakeLowercase:
-\begin{quote}
- \selectlanguage{greek}
- \MakeLowercase{\GreekExtended}
-\end{quote}
-
-
-\section{Latin transliteration}
-
-\ifdefined \UnicodeEncodingName % set by LaTeX for Unicode-aware engines
- \textbf{Warning:}
- As the uc/lccode re-definitions are not performed when Unicode fonts are
- used, the accents are not dropped from upcased Latin transliterations.
- Accent macros work fine also in Latin transliterations with Xe/LuaTeX.
-\fi
-
-\subsection{Greek and Coptic}
-
-Every second line is input as Latin transliteration:
-
-\let\:\textvisiblespace
-
-\renewcommand{\GreekAndCoptic}{%
- ͺ ; ␣ ␣ ΄ ΅ Ά · Έ Ή Ί ␣ Ό ␣ Ύ Ώ \\
- \lgrfont{ | ? \: \: ' "' 'A ; 'E 'H 'I \: 'O \: 'U 'W} \\
- ΐ Α Β Γ Δ Ε Ζ Η Θ Ι Κ Λ Μ Ν Ξ Ο \\
- \lgrfont{'"i A B G D E Z H J I K L M N X O} \\
- Π Ρ ␣ Σ Τ Υ Φ Χ Ψ Ω Ϊ Ϋ ά έ ή ί \\
- \lgrfont{ P R \: S T U F Q Y W "I "U 'a 'e 'h 'i} \\
- ΰ α β γ δ ε ζ η θ ι κ λ μ ν ξ ο \\
- \lgrfont{'"u a b g d e z h j i k l m n x o} \\
- π ρ ς σ τ υ φ χ ψ ω ϊ ϋ ό ύ ώ ␣ \\
- \lgrfont{ p r s s\textcompwordmark{}
- t u f q y w "i "u 'o 'u 'w \:}
-}
-
-\begin{quote}
- \selectlanguage{greek}
- \GreekAndCoptic
-\end{quote}
-%
-MakeUppercase:
-
-\begin{quote}
- \selectlanguage{greek}
- \MakeUppercase{\GreekAndCoptic}
-\end{quote}
-%
-Letters upcased, dialytika and sub-iota unchanged, other diacritics dropped
-(if \verb|\greekfontencoding| is LGR).
-
-
-MakeLowercase:
-
-\begin{quote}
- \selectlanguage{greek}
- \MakeLowercase{\GreekAndCoptic}
-\end{quote}
-%
-With LGR, the lowercase of \ensuregreek{Σ} is the «auto-sigma»
-(\verb|\textautosigma|): \ensuregreek{ΣΣ $\mapsto$ \MakeLowercase{ΣΣ}}.
-Add a ZWNJ or use the \verb|\noboundary| macro to prevent conversion to
-final sigma: \ensuregreek{\MakeLowercase{ΣΣ‌}}.
-The lowercase of GREEK LETTER STIGMA \ensuregreek{Ϛ} is
-\ensuregreek{\MakeLowercase{Ϛ}}, not \verb|\textvarstigma|%
-\ifdefined \UnicodeEncodingName \else
- (\ensuregreek\textvarstigma)%
-\fi .
-
-\subsection{Greek extended}
-
-Every second line is input as Latin transliteration. The current language
-variant is \emph\GreekLanguageVariant.
-
-\renewcommand{\GreekExtended}{\raggedright
- ἀ ἁ ἂ ἃ ἄ ἅ ἆ ἇ Ἀ Ἁ Ἂ Ἃ Ἄ Ἅ Ἆ Ἇ \\
- \lgrfont{>a <a >`a <`a >'a <'a >~a <~a >A <A >`A <`A >'A <'A >~A <~A } \\
- ἐ ἑ ἒ ἓ ἔ ἕ ␣ ␣ Ἐ Ἑ Ἒ Ἓ Ἔ Ἕ \\
- \lgrfont{>e <e >`e <`e >'e <'e \: \: >E <E >`E <`E >'E <'E } \\
- ἠ ἡ ἢ ἣ ἤ ἥ ἦ ἧ Ἠ Ἡ Ἢ Ἣ Ἤ Ἥ Ἦ Ἧ \\
- \lgrfont{>h <h >`h <`h >'h <'h >~h <~h >H <H >`H <`H >'H <'H >~H <~H } \\
- ἰ ἱ ἲ ἳ ἴ ἵ ἶ ἷ Ἰ Ἱ Ἲ Ἳ Ἴ Ἵ Ἶ Ἷ \\
- \lgrfont{>i <i >`i <`i >'i <'i >~i <~i >I <I >`I <`I >'I <'I >~I <~I } \\
- ὀ ὁ ὂ ὃ ὄ ὅ ␣ ␣ Ὀ Ὁ Ὂ Ὃ Ὄ Ὅ \\
- \lgrfont{>o <o >`o <`o >'o <'o \: \: >O <O >`O <`O >'O <'O } \\
- ὐ ὑ ὒ ὓ ὔ ὕ ὖ ὗ ␣ Ὑ ␣ Ὓ ␣ Ὕ ␣ Ὗ \\
- \lgrfont{>u <u >`u <`u >'u <'u >~u <~u \: <U \: <`U \: <'U \: <~U } \\
- ὠ ὡ ὢ ὣ ὤ ὥ ὦ ὧ Ὠ Ὡ Ὢ Ὣ Ὤ Ὥ Ὦ Ὧ \\
- \lgrfont{>w <w >`w <`w >'w <'w >~w <~w >W <W >`W <`W >'W <'W >~W <~W } \\
- ὰ ά ὲ έ ὴ ή ὶ ί ὸ ό ὺ ύ ὼ ώ \\
- \lgrfont{`a 'a `e 'e `h 'h `i 'i `o 'o `u 'u `w 'w } \\
- ᾀ ᾁ ᾂ ᾃ ᾄ ᾅ ᾆ ᾇ ᾈ ᾉ ᾊ ᾋ ᾌ ᾍ ᾎ ᾏ \\
- \lgrfont{>a| <a| >`a| <`a| >'a| <'a| >~a| <~a| >A| <A| >`A| <`A| >'A| <'A| >~A| <~A|} \\
- ᾐ ᾑ ᾒ ᾓ ᾔ ᾕ ᾖ ᾗ ᾘ ᾙ ᾚ ᾛ ᾜ ᾝ ᾞ ᾟ \\
- \lgrfont{>h| <h| >`h| <`h| >'h| <'h| >~h| <~h| >H| <H| >`H| <`H| >'H| <'H| >~H| <~H|} \\
- ᾠ ᾡ ᾢ ᾣ ᾤ ᾦ ᾧ ᾥ ᾨ ᾩ ᾪ ᾫ ᾬ ᾭ ᾮ ᾯ \\
- \lgrfont{>w| <w| >`w| <`w| >'w| <'w| >~w| <~w| >W| <W| >`W| <`W| >'W| <'W| >~W| <~W|} \\
- ᾰ ᾱ ᾲ ᾳ ᾴ ␣ ᾶ ᾷ Ᾰ Ᾱ Ὰ Ά ᾼ ᾽ ι ᾿ \\
-\lgrfont{\u{a} \=a `a| a| 'a| \: ~a ~a| \u{A} \=A `A 'A A| > | > } \\
- ῀ ῁ ῂ ῃ ῄ ␣ ῆ ῇ Ὲ Έ Ὴ Ή ῌ ῍ ῎ ῏ \\
- \lgrfont{~ "~ `h| h| 'h| \: ~h ~h| `E 'E `H 'H H| >` >' ~> } \\
- ῐ ῑ ῒ ΐ ␣ ␣ ῖ ῗ Ῐ Ῑ Ὶ Ί ␣ ῝ ῞ ῟ \\
-\lgrfont{\u{i} \=i `"i '"i \: \: ~i ~"i \u{I} \=I `I 'I \: <` <' ~< } \\
- ῠ ῡ ῢ ΰ ␣ ␣ ῤ ῥ ῦ ῧ Ὺ Ύ Ῥ ῭ ΅ ` \\
-\lgrfont{\u{u} \=u `"u '"u \: \: >r <r ~u ~"u `U 'U <R `" '" ` } \\
- ␣ ␣ ῲ ῳ ῴ ␣ ῶ ῷ Ὸ Ό Ὼ Ώ ῼ ´ ῾ \\
- \lgrfont{\: \: `w| w| 'w| \: ~w ~w| `O 'O `W 'W W| ' < }
-}
-
-\begin{quote}
- \selectlanguage{greek}
- \GreekExtended
-\end{quote}
-
-With monotonic Greek or if the Greek font encoding is not LGR, the tilde
-keeps its default expansion as NBSP and transliterations involving \verb|~|
-fail. (The tilde accent \verb|\~| as well as combined accents involving the
-tilde work in all language variants.)
-
-MakeUppercase:
-
-\begin{quote}
- \selectlanguage{greek}
- \MakeUppercase{\GreekExtended}
-\end{quote}
-
-Breathings, combined accents and varia are re-mapped to the "empty" char
-only with the language variants \emph{polutoniko} or \emph{ancient}
-(currently \GreekLanguageVariant) as they are not required with monotonic
-Greek and only if \verb|\greekfontencoding| is LGR.
-
-In literal input, the uppercase of spacing combining accents including a
-dialytika \verb|"~ "` "'| appears as apostrophe, as a single \verb|"| stands
-for an apostrophe in the LGR transliteration if followed by a space or empty
-character.
-
-Side-effect of mapping `,',~, <, and > to the "empty" char for accent
-dropping: the characters vanish if used stand-alone
-(also with the ``old'' MakeUppercase):
-\begin{quote}
- \selectlanguage{greek}
- ` ' ~ < > → \MakeUppercase{` ' ~ < >}
- ``x'' <<y>> → \MakeUppercase{``x'' <<y>>}
-\end{quote}
-
-Workaround: use literal typographical quote characters:
-\begin{quote}
- \selectlanguage{greek}
- ‘x’ «y» → \MakeUppercase{‘x’ «y»}
-\end{quote}
-
-MakeLowercase:
-
-\begin{quote}
- \selectlanguage{greek}
- \MakeLowercase{\GreekExtended}
-\end{quote}
-
-
-\end{document}
diff --git a/macros/latex/contrib/babel-contrib/greek/test-greek-ini.tex b/macros/latex/contrib/babel-contrib/greek/test-greek-ini.tex
index 244ee3e345..fcf1f763cf 100644
--- a/macros/latex/contrib/babel-contrib/greek/test-greek-ini.tex
+++ b/macros/latex/contrib/babel-contrib/greek/test-greek-ini.tex
@@ -26,15 +26,16 @@
% \usepackage{textalpha}
\ProvideTextCommand{\ensuregreek}{TU}[1]{##1}
\ProvideTextCommand{\greekscript}{TU}{}
- \ProvideTextCommand{\textalpha}{TU}{\cs{textalpha}}
- \ProvideTextCommand{\textOmega}{TU}{\cs{textOmega}}
+ \ProvideTextCommand{\textalpha}{TU}{only with the \pkgref{textalpha}
+ package}
+ \ProvideTextCommand{\textOmega}{TU}{}
\fi
\usepackage{hyperref}
\hypersetup{unicode, colorlinks=true,linkcolor=blue,urlcolor=blue}
% fallbacks for commands defined in babel-greek:
- \providecommand*\greekfontencoding{None}
+ \providecommand*\greekfontencoding{not set}
% \providecommand*\lgrfont[1]{\cs{lgrfont} \emph{missing}}
\ProvideTextCommandDefault{\textampersand}{\&}
\providecommand*\greeknumeral[1]{\{##1\}}
diff --git a/macros/latex/contrib/babel-contrib/greek/test-greek.pdf b/macros/latex/contrib/babel-contrib/greek/test-greek.pdf
index 50235b0c51..9a12610f7c 100644
--- a/macros/latex/contrib/babel-contrib/greek/test-greek.pdf
+++ b/macros/latex/contrib/babel-contrib/greek/test-greek.pdf
Binary files differ
diff --git a/macros/latex/contrib/babel-contrib/greek/test-greek.tex b/macros/latex/contrib/babel-contrib/greek/test-greek.tex
index f46b1db526..1bae1bb88d 100644
--- a/macros/latex/contrib/babel-contrib/greek/test-greek.tex
+++ b/macros/latex/contrib/babel-contrib/greek/test-greek.tex
@@ -39,7 +39,7 @@
% Uncomment the desired language variant
% Default: modern monotonic Greek
%
- \languageattribute{greek}{polutoniko} % "modern" polytonic Greek
+ % \languageattribute{greek}{polutoniko} % "modern" polytonic Greek
% \languageattribute{greek}{polytonic} % alias for polutoniko
% \languageattribute{greek}{ancient} % ancient Greek
%
@@ -51,6 +51,12 @@
% \selectlanguage{polutonikogreek} instead of \selectlanguage{greek} etc.
% if the "polutoniko" Greek language variant is selected.
+ % To use modern and ancient Greek in one document, load the second language
+ % with \babelprovide.
+ % Caveat: With 8-bit Greek, the font-encoding switch to LGR fails
+ % in the ToC: section titles with Greek come out wrong!
+ \babelprovide[hyphenrules=ancientgreek]{ancientgreek}
+
% Make ; active to prevent mapping to a middle dot:
\languageattribute{greek}{keep-semicolon}
}
@@ -66,19 +72,18 @@
\usepackage{hyperref}
\hypersetup{unicode, colorlinks=true,linkcolor=blue,urlcolor=blue}
-% \usepackage{bookmark}
+\usepackage{bookmark}
\usepackage{parskip}
-% Semantic styling:
+% Auxiliary commands:
+
+% Semantic styling:
\newcommand{\file}{\texttt}
\newcommand{\cs}[1]{\texttt{\textbackslash#1}}
\newcommand{\pkgref}[1]{\emph{\href{https://ctan.org/pkg/#1}{#1}}}
-
-% Auxiliary commands:
-
% print the selected language variant
\newcommand{\GreekLanguageVariant}{%
\ifx\captionsgreek\captionspolutonikogreek
@@ -92,6 +97,17 @@
\fi
}
+% which engine is used?
+\ifdefined \UnicodeEncodingName
+ \ifdefined\luatexversion
+ \newcommand*{\texengine}{LuaLaTeX}
+ \else
+ \newcommand*{\texengine}{XeLaTeX}
+ \fi
+\else
+ \newcommand*{\texengine}{pdfLaTeX}
+\fi
+
% The paragraph after \showhyphenpar is printed with all words
% shown as hy-phen-ated.
% from https://tex.stackexchange.com/questions/55282/display-hyphenation-options-for-a-specific-word/55283#55283
@@ -120,6 +136,15 @@
\SETUPDOC % print additional setup information.
+\makeatletter
+This document is compiled with \texengine,
+format version \fmtversion{} patch-level \patch@level{},
+and the L3 programming layer from \ExplFileDate{}.
+The Greek font encoding is \greekfontencoding{}
+and the language variant is \GreekLanguageVariant.
+\makeatother
+
+
\tableofcontents
@@ -134,6 +159,15 @@ The declaration \verb|\selectlanguage| switches between languages.
ἐρῶν άπῆλθες εὐθύς;
\end{quote}
+The command \verb|\foreignlanguage| sets its second argument in the language
+specified as first argument. This is intended for short text parts or
+single words like \foreignlanguage{greek}{Βιβλιοθήκη}.
+
+Input may use literal Greek characters (\foreignlanguage{greek}{α \ldots Ω}),
+LICR macros (\foreignlanguage{greek}{\textalpha{} \ldots{} \textOmega}),
+or (if the LGR font encoding is used) the Latin transliteration
+(\foreignlanguage{greek}{a \ldots{} W}).
+
\textbf{Warning: With 8-bit TeX, Latin letters and some symbols in the input
are mapped to Greek equivalents!}.
Without precautions, quotes copied from external sources (like this Wikpedia
@@ -146,15 +180,6 @@ entry about the question mark) may come out simply wrong:
\end{quote}
See section~\ref{Latin transliteration} for remedies.
-The command \verb|\foreignlanguage| sets its second argument in the language
-specified as first argument. This is intended for short text parts or
-single words like \foreignlanguage{greek}{Βιβλιοθήκη}.
-
-Input may use literal Greek characters (\foreignlanguage{greek}{α \ldots Ω}),
-LICR macros (\foreignlanguage{greek}{\textalpha{} \ldots{} \textOmega}),
-or the Latin transliteration (\foreignlanguage{greek}{a \ldots{} W}) defined
-by the LGR font encoding (if LGR is used).
-
There should be no inserted space before or after the language switch (this
may happen if there are unescaped linebreaks in the font or language
definitions):
@@ -266,30 +291,53 @@ ancient: \verb|\l@ancientgreek| = \the\l@ancientgreek
current: \verb|\l@greek| = \the\l@greek
\makeatletter
+\newcommand*{\sample}{%
+ \ensureascii{monotonic:} Ευρετήριο, επίσης, Απόδειξη, Θράκη, τραγωδία\\
+ \ifdefined \UnicodeEncodingName \else
+ \ensureascii{'' '' translit:} Euret'hrio, ep'ishs, Ap'odeixh, Jr'akh,
+ tragwd'ia\\
+ \fi
+ \ensureascii{polytonic:} Εὑρετήριο, ἐπίσης, Ἀπόδειξη, Θρᾴκη, τραγῳδία\\
+ \ifdefined \UnicodeEncodingName \else
+ \ensureascii{'' translit:} E<uret'hrio, >ep'ishs, >Ap'odeixh, Jr'a|kh,
+ tragw|d'ia\\
+ \fi
+ \ensureascii{ancient:} Εὑρετήριον, ὡσαύτως, Ἀπόδειξις, Θρᾴκη, τραγῳδία%
+}
+
Greek paragraph:
-\begin{quote}
- \selectlanguage{greek}
- \showhyphenpar
- \ensureascii{monotonic:} Ευρετήριο, επίσης, Απόδειξη \\
- \ensureascii{polytonic:} Εὑρετήριο, ἐπίσης, Ἀπόδειξη \\
- \ensureascii{ancient:} Εὑρετήριον, ὡσαύτως, Ἀπόδειξις
-\end{quote}
+
+{
+ \selectlanguage{greek}
+ \showhyphenpar
+ \sample
+ \par % (new paragraph to end \showhyphenpar before leaving group)
+}
English paragraph with Greek text (\verb|\foreignlanguage{greek}|):
-\begin{quote}
- \showhyphenpar
- monotonic: \foreignlanguage{greek}{Ευρετήριο, επίσης, Απόδειξη } \\
- polytonic: \foreignlanguage{greek}{Εὑρετήριο, ἐπίσης, Ἀπόδειξη } \\
- ancient: \foreignlanguage{greek}{Εὑρετήριον, ὡσαύτως, Ἀπόδειξις}
-\end{quote}
-English paragraph with Greek script (\verb|\ensuregreek|): no hypenation
-\begin{quote}
- \showhyphenpar
- monotonic: \ensuregreek{Ευρετήριο, επίσης, Απόδειξη } \\
- polytonic: \ensuregreek{Εὑρετήριο, ἐπίσης, Ἀπόδειξη } \\
- ancient: \ensuregreek{Εὑρετήριον, ὡσαύτως, Ἀπόδειξις}
-\end{quote}
+\showhyphenpar
+\foreignlanguage{greek}{\sample}
+
+English paragraph with Greek script (\verb|\ensuregreek|):
+
+\showhyphenpar
+\ensuregreek{\sample}
+
+% Ancient Greek paragraph:
+%
+% {
+% \selectlanguage{ancientgreek}
+% \greekscript
+% \showhyphenpar
+% \sample
+% }
+%
+% !! Warning !!
+% After use of \verb|\selectlanguage{ancientgreek}| (set up with
+% \cs{babelprovide} in the preamble), Greek text in section headings
+% is written with the wrong font encoding in the ToC.
+
\section{Greek Numerals (\greeknumeral{1} \ldots{} \greeknumeral{999999})%
\label{sec:greek-numerals}}
@@ -467,27 +515,35 @@ the final output.
With the \texttt{keep-semicolon} language attribute, 003B SEMICOLON is made
active and inserts an \emph{erotimatiko} also with LGR encoded fonts, if the
-text language is set to Greek:
+text language is set to Greek
+(in this document, the semicolon is
+\ifnum\catcode59 = 13
+ active).
+\else
+ not active).
+\fi
-\begin{tabular}{lcccl}
- Input & \latinencoding{} & \greekfontencoding & Greek \\
+\begin{tabular}{lccc}
+ Input & \latinencoding{} & \greekfontencoding
+ & Greek language \\
003F QUESTION MARK & ? & \ensuregreek{?}
- & \foreignlanguage{greek}{?} \\
- \\
- 037E GREEK QUESTION MARK & ␣ & \ensuregreek{;}
- & \foreignlanguage{greek}{;}
- & not defined for T1 \\
+ & \foreignlanguage{greek}{?} \\
+ \\
+ 037E GREEK QUESTION MARK & {\footnotesize n/d} & \ensuregreek{;}
+ & \foreignlanguage{greek}{;} \\
003B SEMICOLON & ; & \ensuregreek{;}
- & \foreignlanguage{greek}{;} \\
+ & \foreignlanguage{greek}{;} \\
00B7 MIDDLE DOT & · & \ensuregreek{·}
- & \foreignlanguage{greek}{·} \\
+ & \foreignlanguage{greek}{·} \\
\end{tabular}
+{\footnotesize n/d}: character not defined in T1 encoding.
+
This attribute is ignored with Unicode fonts (where the SEMICOLON literal
always prints a semicolon character).
Test in math mode:
-\newcommand{\semicolontest}{ab; $a b; a\;b, (\mathrm{a;}\textrm{a;}2)$}
+\newcommand{\semicolontest}{$a b; a\;b, (\mathrm{a;}\textrm{a;}2)$}
English: \semicolontest, Greek: \foreignlanguage{greek}{\semicolontest}.
\subsubsection{LGR-proofed macros}
@@ -602,15 +658,14 @@ More test of the LGR-redefinitions are in \file{test-lgr-fixes.tex}.
\end{document}
\fi
+
\section{Up- and downcasing in Greek}
Capital Greek letters have diacritics (except the dialytika and sub-iota) to
the left (instead of above) and drop them in uppercase (except the
dialytika), e.g., \ensuregreek{μαΐστρος $\mapsto$ \MakeUppercase{μαΐστρος}}.
-For literal Greek characters and accent macros, these rules are implemented
-and tested in the required package \pkgref{greek-fontenc}.
-Tonos and dasia mark a \emph{hiatus} (break-up of a diphthong) if
+Tonos and psili mark a \emph{hiatus} (break-up of a diphthong) if
placed on the first vowel of a diphthong.
A dialytika must be placed on the second vowel if they are dropped, e.g.
%
@@ -620,8 +675,8 @@ A dialytika must be placed on the second vowel if they are dropped, e.g.
\'>\textalpha\textiota,
\'>\textalpha\textupsilon,
\accpsili\textalpha\textupsilon,
- \accdasiaoxia\textepsilon\textiota}%
-\ensuregreek{\HiatusLICR\ $\mapsto$ \MakeUppercase{\HiatusLICR}}.
+ \accpsilioxia\textepsilon\textiota}%
+\foreignlanguage{greek}{\HiatusLICR\ $\mapsto$ \MakeUppercase{\HiatusLICR}}.
Some affected words:
\begin{quotation}
@@ -634,9 +689,9 @@ Some affected words:
\aylos{} $\mapsto$ \MakeUppercase{\aylos},
% from http://diacritics.typo.cz/index.php?id=69
- \newcommand*{\maina}{%μάινα → ΜΑΪΝΑ
- \textmu\acctonos\textalpha\textiota\textnu\textalpha}
- \maina{} $\mapsto$ \MakeUppercase{\maina},
+ \newcommand*{\maine}{%μάινη → ΜΑΪΝΗ
+ \textmu\acctonos\textalpha\textiota\textnu\texteta}
+ \maine{} $\mapsto$ \MakeUppercase{\maine},
% from http://de.wikipedia.org/wiki/Neugriechische_Orthographie#Das_Trema
\newcommand*{\keik}{% κέικ → ΚΕΪΚ
@@ -651,134 +706,142 @@ Some affected words:
\newcommand*{\romeika}{\textrho\textomega\textmu
\acctonos\textepsilon\textiota\textkappa\textalpha}
\romeika{} $\mapsto$ \MakeUppercase{\romeika}.
-\end{quotation}
-
-With the pre-2022/06 \cs{MakeUppercase}, automatic upcasing of words with
-\emph{hiatus} works correctly only if the accents are input as macro and the
-letters as macro or via the Latin transliteration.
-With the current (2023/02/10) \cs{MakeUppercase}, it works for literal
-Unicode input and named accents. The \cs{uccode} changes are ignored.
+ % from Yannis Haralambous https://hal.science/hal-02101618
+ \newcommand*{\aute}{% ἀυτή → ΑΫΤΗ a cry, shout, esp. battle-shout
+ \accpsili\textalpha\textupsilon\texttau\acctonos\texteta}
+ \aute{} → \MakeUppercase{\aute}
+\end{quotation}
+The file \file{char-list.tex} in the \pkgref{greek-fontenc} package includes
+a comprehensive test of case changing for all supported Greek characters and
+their various input methods.
-\subsection{Iota subscript vs. iota adscript}
-Pre-composed capital letters with \emph{mute iota} decompose to the base
-letter and COMBINING GREEK YPOGEGRAMMENI (U+0345) even if they are named
-... WITH [... AND] PROSGEGRAMMENI for ``historic reasons''.%
-\footnote{cf. \href{https://opoudjis.net/unicode/unicode_adscript.html}
- {Nick Nicholas `Titlecase and Adscripts'}}
-Accordingly, the ``canonical'' LICR for capital letters with mute iota
-is the base character LICR followed by \verb|\ypogegrammeni|.
+\subsection{Problems and fixes}
-Compare letters followed by \verb|\prosgegrammeni| and
-\verb|\ypogegrammeni| with the pre-composed characters and with
-character + literal GREEK YPOGEGRAMMENI.
+\subsubsection{Input variants}
-prosgegrammeni:
-\begin{quotation}
- \selectlanguage{greek}
- \newcommand{\alphapros}{\textalpha\prosgegrammeni α\prosgegrammeni{} αι /
- \textAlpha\prosgegrammeni Α\prosgegrammeni{} ᾼΑι /
- \accpsili\textAlpha\prosgegrammeni Ἀ\prosgegrammeni{} ᾈἈι}
+Depending on the LaTeX version and input variant, there are several
+limitations and problems.
- \phantom{MakeUppercase} \alphapros
+With \cs{greekfontencoding} \greekfontencoding, LaTeX version \fmtversion,
+and language variant ``\GreekLanguageVariant'', we get
- \ensureascii{MakeUppercase} \MakeUppercase{\alphapros}
+\newcommand{\precomposed}{ῶ, ή, ΐ, ᾂ, άι}
+\newcommand{\translit}{{~w, 'h, '"i, >`a|, 'ai}}
+\newcommand{\acconLICR}{\~\textomega, \'\texteta, \'"\textiota,
+ \`>\textalpha\ypogegrammeni, \'\textalpha\textiota}
+\newcommand{\accontranslit}{{\~w, \'h, \'"i, \`>a|, \'ai}}
+\newcommand{\acconliteral}{\~ω, \'η, \'"ι, \`>ᾳ, \'αι}
- \ensureascii{MakeLowercase} \MakeLowercase{\alphapros}
-\end{quotation}
+pre-composed:
+\foreignlanguage{greek}{\precomposed\ → \MakeUppercase{\precomposed}}
-ypogegrammeni:
-\begin{quotation}
- \selectlanguage{greek}
- \newcommand{\alphaypo}{\textalpha\ypogegrammeni α\ypogegrammeni{} ᾳ /
- \textAlpha\ypogegrammeni Α\ypogegrammeni{} ᾼ /
- \accpsili\textAlpha\ypogegrammeni Ἀ\ypogegrammeni{} ᾈ}
+transliteration:
+\foreignlanguage{greek}{\translit\ → \MakeUppercase{\translit}}
- \phantom{MakeUppercase} \alphaypo
+accent macro + LICR:
+\foreignlanguage{greek}{\acconLICR\ → \MakeUppercase{\acconLICR}}
- \ensureascii{MakeUppercase} \MakeUppercase{\alphaypo}
+accent macro + transliteration:
+\foreignlanguage{greek}{\accontranslit\ → \MakeUppercase{\accontranslit}}
- \ensureascii{MakeLowercase} \MakeLowercase{\alphaypo}
-\end{quotation}
+accent macro + literal:
+\ifdefined \UnicodeEncodingName
+ \foreignlanguage{greek}{\acconliteral\ → \MakeUppercase{\acconliteral}}
+\else
+ → inputenc Error: Invalid UTF-8 byte sequence
+\fi
+\begin{itemize}
+\item The implementation of \cs{MakeUppercase}
+ introduced in the 2022/06 LaTeX release\footnote{cf.\
+ \href{https://www.latex-project.org/news/latex2e-news/ltnews35.pdf}%
+ {LaTeX News 35}}
+ works (almost) fine with pre-composed literal characters but there are
+ Unicode errors (unknown characters) under 8-bit TeX.
+ Fixed with LaTeX 2023, babel-greek 1.13 and greek-fontenc 2.3.
+
+\item The new \cs{MakeUppercase} did not drop
+ accents input as short accent macros or with the Latin transliteration.
+ Fixed with the 2023 LaTeX release, babel-greek~1.14, and
+ greek-fontenc~2.4.
+
+\item The \emph{hiatus} feature fails with the Latin transliteration.
+ Use accent macros, e.g., replace \verb|k'eik| with \verb|k\'eik|.
+
+ It also failed with pre-composed characters and LaTeX
+ versions older than 2022/06.%
+ \footnote{Some ``pro'' Unicode fonts provide this feature on their own,
+ cf. \href{http://multilingualtypesetting.co.uk/blog/greek-typesetting-tips/}%
+ {Greek typesetting without the tears}}
+
+% \item With \emph{babel-greek} versions up to 1.11, using the tilde for the
+% \emph{perispomeni} accent inside \verb|\MakeUppercase| led to
+% \texttt{inputenc Error: Invalid UTF-8 byte "9F}.%
+% \footnote{even without loading \emph{inputenc} and with
+% \cs{UseRawInputEncoding}, cf.
+% \href{https://www.latex-project.org/news/latex2e-news/ltnews28.pdf}%
+% {LaTeX News 28}}
-\subsection{Changed uccode/lccode values for LGR}
+\end{itemize}
-LGR encoded fonts define ligatures for characters with diacritics. To enable
-correct upcasing, \emph{babel-greek} changes the uc/lccodes of some
-characters. Characters used to input diacritics are mapped to the ``empty''
-character 0x9f = 159.
+\subsubsection{Particuliarities of the Latin Transliteration}
-To minimise side-effects (see below), uc/lccodes are only changed:
+To enable correct upcasing of the ``Latin transliteration'',
+\emph{babel-greek} changes the uppercase
+equivalent of some characters with special meaning in LGR.
+To minimise side-effects, this is done:
\begin{itemize}
- \item if \cs{greekfontencoding} is a ``short macro'' expanding to LGR,%
- \footnote{i.e. not in documents using Unicode fonts unless
- \cs{greekfontencoding} is explicitly set to \texttt{LGR} before
- loading \emph{babel-greek}}
- \item if the LaTeX version is older than 2022/06, as \cs{uccode}s are ignored
- by the \cs{MakeUppercase} implementation introduced in this version,
- \item for accents that are actually required in the selcected language
- variant (i.e. only for the \emph{tonos}, if the language variant
- is the default ``monotonic''.
-\end{itemize}
-
-With \cs{greekfontencoding} \greekfontencoding, LaTeX version \fmtversion,
-and language variant ``\GreekLanguageVariant'' we get for
-dialytika\footnote{%
- Unless followed by a to-be accented vowel, the quotation mark \texttt{"}
- is converted to an upper right apostrophe by LGR.},
-sub-iota, tonos/oxia, varia, psili, and dasia:
+\item only if \cs{greekfontencoding} is a ``short macro'' expanding to LGR,
+ i.e.\ not in documents using Unicode fonts
+ (unless \cs{greekfontencoding} is explicitly set to \texttt{LGR}
+ before loading \emph{babel-greek}),
+\item only for diacritics that are actually required in the selected language
+ variant (i.e.\ only for the \emph{tonos} \texttt{'},
+ if the language variant is the default \texttt{monotoniko}),
+\item not for the characters ``v'' (zero-width space) and ``c'' (final sigma).
+ Use \verb|\textcompwordmark| instead of \texttt{v} and autosigma
+ (\texttt{s}) instead of \texttt{c} in text parts that could/should
+ become upcased, e.g., \lgrfont{a\textcompwordmark us $\mapsto$
+ \MakeUppercase{a\textcompwordmark us}}
+ not \lgrfont{avuc $\mapsto$ \MakeUppercase{avuc}}.
-\newcommand{\AccentCharacters}{" | ' ` > <}
-\begin{quote}
- \selectlanguage{greek}
- \AccentCharacters{} $\mapsto$ \MakeUppercase{\AccentCharacters}
-\end{quote}
+\end{itemize}
+Since version 1.13.2, \emph{babel-greek} utilises \cs{DeclareUppercaseMapping}
+(a LaTeX kernel command, new in 2023) for the required change.
+For LaTeX version older than 2022/06, the \cs{uccode} is set to
+the ``empty'' character 0x9f = 159.
\emph{Composite command} definitions ensure that combined accents
also work for accent characters ``upcased'' to the charcter
-No 159 = 0x9f):
-
-\newcommand{\CombinedAccentSample}{
+No 159 = 0x9f:
+\newcommand{\CombinedAccentSample}{%
\ifdefined \UnicodeEncodingName
- % TODO: combined accents swallow whitespace after base char
- % unless protected
\"'υ{} \"`υ{} \`"υ{} \'"υ{} \`<α{} \'<α{}
\else
\"'u \"`u \`"u \'"u \`<a \'<a \'<ai
\fi
\'<\textalpha\textiota
-}
-\begin{quote}
- \selectlanguage{greek}
- \CombinedAccentSample{} $\mapsto$ \MakeUppercase{\CombinedAccentSample}
-\end{quote}
+}%
+\foreignlanguage{greek}{%
+ \CombinedAccentSample{} $\mapsto$ \MakeUppercase{\CombinedAccentSample}%
+}.
-With babel-greek versions up to 1.11, using the tilde for the
-\emph{perispomeni} accent inside \verb|\MakeUppercase| led to a
-\begin{quote}
- \texttt{Package inputenc Error: Invalid UTF-8 byte "9F}
-\end{quote}
-(even without loading \emph{inputenc} and with \verb|\UseRawInputEncoding|).%
-\footnote{cf.
- \href{https://www.latex-project.org/news/latex2e-news/ltnews28.pdf}%
- {LaTeX News 28}}
-Version 1.12 fixes the issue so that all three input variants work again
-(with LaTeX versions up to 2022/06)%
-\footnote{The implementation of \cs{MakeUppercase}
- introduced in the 2022/06 LaTeX release, cf.\
- \href{https://www.latex-project.org/news/latex2e-news/ltnews35.pdf}%
- {LaTeX News 35}, works (almost) fine with literal input but currently
- fails with the Latin transliteration and standard accent macros.}
+
+\newcommand{\AccentCharacters}{" | ' ` > <}
+With font encoding \greekfontencoding, LaTeX version \fmtversion,
+and language variant ``\GreekLanguageVariant'', we get for
+\texttt{\AccentCharacters} (dialytika\footnote{%
+ Unless followed by a to-be accented vowel, the quotation mark \texttt{"}
+ is converted to an upper right apostrophe by LGR.},
+sub-iota, tonos/oxia, varia, psili, and dasia):
\begin{quote}
\selectlanguage{greek}
- \greektext
- ~u \~u \accperispomeni{u} $\mapsto$ \MakeUppercase{~u \~u \accperispomeni{u}}
+ \AccentCharacters{} $\mapsto$ \MakeUppercase{\AccentCharacters}
\end{quote}
-
The changed uc/lccodes have strange effects on Latin text parts
in Greek paragraphs if only the encoding is switched:
\begin{quote}
@@ -790,14 +853,51 @@ in Greek paragraphs if only the encoding is switched:
Let's see: \AccentCharacters{} $\mapsto$
\MakeUppercase{Let's see: \AccentCharacters}}
\end{quote}
-%
-To limit the effect on, e.g., section headings (which are printed
-capitalised with the ``headings'' style), uccodes for ``v''
-(zero-width space) and ``c'' (final sigma) are not changed.
-Use \verb|\textcompwordmark| instead of \texttt{v} and autosigma
-(\texttt{s}) instead of \texttt{c} in text parts that could/should
-become upcased, e.g., \lgrfont{a\textcompwordmark us $\mapsto$
-\MakeUppercase{a\textcompwordmark us}}
-not \lgrfont{avuc $\mapsto$ \MakeUppercase{avuc}}.
+
+\subsubsection{Iota subscript vs. iota adscript}
+
+Unicode decomposes letters with \emph{mute iota}
+(GREEK CAPITAL LETTER ... WITH [... AND] PROSGEGRAMMENI)
+to the base letter and a COMBINING GREEK YPOGEGRAMMENI (U+0345).%
+\footnote{They are named ... WITH PROSGEGRAMMENI
+ for ``historic reasons''
+ (cf. \href{https://opoudjis.net/unicode/unicode_adscript.html}
+ {Nick Nicholas \emph{Titlecase and Adscripts}}).}
+Accordingly, the ``canonical'' LICR for all pre-composed letters with
+mute iota is the base character LICR followed by \verb|\ypogegrammeni|.
+
+The appearance in the output and upcasing results depend on the chosen font
+and LaTeX version.
+Compare letters followed by \verb|\ypogegrammeni| with pre-composed
+characters
+\begin{quotation}
+ \selectlanguage{greek}
+ \newcommand{\alphaypo}{\textalpha\ypogegrammeni α\ypogegrammeni{} ᾳ /
+ \textAlpha\ypogegrammeni Α\ypogegrammeni{} ᾼ /
+ \accpsili\textAlpha\ypogegrammeni Ἀ\ypogegrammeni{} ᾈ}
+
+ \phantom{MakeUppercase} \alphaypo
+
+ \ensureascii{MakeUppercase} \MakeUppercase{\alphaypo}
+
+ \ensureascii{MakeLowercase} \MakeLowercase{\alphaypo}
+\end{quotation}
+
+and letters followed by \verb|\prosgegrammeni|
+with literal character + literal GREEK YPOGEGRAMMENI:
+\begin{quotation}
+ \selectlanguage{greek}
+ \newcommand{\alphapros}{\textalpha\prosgegrammeni α\prosgegrammeni{} αι /
+ \textAlpha\prosgegrammeni Α\prosgegrammeni{} Αι /
+ \accpsili\textAlpha\prosgegrammeni Ἀ\prosgegrammeni{} Ἀι}
+
+ \phantom{MakeUppercase} \alphapros
+
+ \ensureascii{MakeUppercase} \MakeUppercase{\alphapros}
+
+ \ensureascii{MakeLowercase} \MakeLowercase{\alphapros}
+\end{quotation}
+
+See also the \href{https://www.unicode.org/faq/greek.html#6}{Unicode FAQ}.
\end{document}
diff --git a/macros/latex/contrib/readablecv/ReadableCV.cls b/macros/latex/contrib/readablecv/ReadableCV.cls
index a6fbe38354..8e30cb7a56 100644
--- a/macros/latex/contrib/readablecv/ReadableCV.cls
+++ b/macros/latex/contrib/readablecv/ReadableCV.cls
@@ -1,5 +1,5 @@
-%% ReadableCV
-%% Copyright 2021 Philip Stone
+%% ReadableCV 4
+%% Copyright 2023 Philip Stone
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3
@@ -16,8 +16,8 @@
% This work consists of the files ReadableCV.cls and ReadableCV.tex
\NeedsTeXFormat{LaTeX2e}
-\def\ClassDate{2021/01/09}
-\def\ClassVersion{3.0}
+\def\ClassDate{2023/08/19}
+\def\ClassVersion{4.0}
\ProvidesClass{ReadableCV}[\ClassDate ReadableCV \ClassVersion class written by Philip Stone]
\DeclareOption{twocolumn}{\OptionNotUsed}
@@ -429,7 +429,7 @@
% \vspace{\baselineskip}
}
-\newcommand{\addSkills}[9]{
+\newcommand{\addSkills}[8]{
\def\sone{#1}
\def\stwo{#2}
\def\sthree{#3}
@@ -438,9 +438,9 @@
\def\ssix{#6}
\def\sseven{#7}
\def\seight{#8}
- \def\snine{#9}
+ %\def\snine{#9}
- \begin{multicols}{3}
+ \begin{multicols}{2}
\begin{itemize}
\ifdefempty{\sone}{}{\item \sone}
\ifdefempty{\stwo}{}{\item \stwo}
@@ -450,7 +450,7 @@
\ifdefempty{\ssix}{}{\item \ssix}
\ifdefempty{\sseven}{}{\item \sseven}
\ifdefempty{\seight}{}{\item \seight}
- \ifdefempty{\snine}{}{\item \snine}
+ % \ifdefempty{\snine}{}{\item \snine}
\end{itemize}
\end{multicols}
}
@@ -493,6 +493,30 @@
\end{samepage}
}
+\newcommand{\newQuickRole}[3]{
+ % This displays the whole of the role information
+ % including dates [1], job title [2],
+ % company name [3]
+
+ \vspace{0.5em}
+ \begin{samepage}
+ \iftoggle{jobfirst}{
+ % Display job before company
+ \noindent\begin{tabular}{@{}p{3cm} l}
+ \textbf{#1} & \textbf{#2}\\
+ & \textbf{#3}\\
+ \end{tabular}
+ }
+ {
+ % Display company before job
+ \noindent\begin{tabular}{@{}p{3cm} l}
+ \textbf{#1} & \textbf{#3}\\
+ & \textbf{#2}\\
+ \end{tabular}
+ }
+ \end{samepage}
+}
+
\newcommand{\roleResponsibilities}[5]{
% Adds up to five responsibilities in an itemized list
\vspace{\baselineskip}
@@ -527,7 +551,7 @@
\def\afive{#5}
\def\asix{#6}
-% \begin{samepage}
+ %\begin{samepage}
\vspace{-0.5em}
\noindent\sffamily{\textit{Achievements}}\rmfamily
\vspace{-1em}
@@ -552,13 +576,15 @@
\iftoggle{jobfirst}{
% Display job before company
\begin{tabular}{@{}p{3cm} l}
- \textbf{#1} & \textbf{#2} (#3)\\
+ \textbf{#1} & \textbf{#2}\\
+ & #3\\
\end{tabular}
}
{
% Display company before job
\begin{tabular}{@{}p{3cm} l}
- \textbf{#1} & \textbf{#3} (#2)\\
+ \textbf{#1} & \textbf{#3}\\
+ & #2\\
\end{tabular}
}
}
@@ -597,4 +623,4 @@
% Finish letter image of signature and your name
\newcommand{\closeletter}[1]{%
\includegraphics{#1}\\ \bigskip \rcvname
-} \ No newline at end of file
+}
diff --git a/macros/latex/contrib/readablecv/ReadableCV.pdf b/macros/latex/contrib/readablecv/ReadableCV.pdf
index 63c79940e7..36c7bdb252 100644
--- a/macros/latex/contrib/readablecv/ReadableCV.pdf
+++ b/macros/latex/contrib/readablecv/ReadableCV.pdf
Binary files differ
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb b/systems/texlive/tlnet/tlpkg/texlive.tlpdb
index 3f649a6c5a..2b2827514e 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb
@@ -26,11 +26,11 @@ depend container_split_src_files/1
depend frozen/0
depend minrelease/2016
depend release/2023
-depend revision/67975
+depend revision/67987
name 00texlive.image
category TLCore
-revision 67974
+revision 67987
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
@@ -29775,7 +29775,7 @@ catalogue-version 2.13
name babel-greek
category Package
-revision 67268
+revision 67985
shortdesc Babel support for the Greek language and script
relocated 1
longdesc The bundle provides comprehensive support for the Greek
@@ -29784,11 +29784,11 @@ longdesc select between the monotonic (single-diacritic), polytonic
longdesc (multiple-diacritic), and ancient orthography of the Greek
longdesc language. Included are the packages grmath for Greek function
longdesc names in mathematics, and athnum for Attic numerals.
-containersize 6912
-containerchecksum 1184ea2de3eeb3dec5df62b2d401e343863a13cdee98a37a207d24043db3d5a3a507343c7104067ca3e02dde010727af6c49e177a6faee5e7ccc3bd4ae7ecf90
-doccontainersize 1682388
-doccontainerchecksum f12285bf43d3028b201d88ec2dcc811176d89e55400a2987d3a79f828b15fa0aa4bbfd217c45088342d08a60c25008c3d162924fad91fe44e68ae5e78e653fd5
-docfiles size=462
+containersize 7004
+containerchecksum e00505b6fd27e227d00b688eaed59c4a1fb99b9b3c8f7a18e48aee8799f92f874f103477d75df5dd0e2d43fa26fc1eca6e5d4fc18541180abebc1674c9112c1c
+doccontainersize 1705812
+doccontainerchecksum e7f20794c6cdcb2175ad9196180582d174cb7edb28689b304d8184f56d3a73e2e48608a482300ff6dd956f0a7801e015ea017557df698130f5deb7c232240fd0
+docfiles size=466
RELOC/doc/generic/babel-greek/README.md details="Readme"
RELOC/doc/generic/babel-greek/athnum.pdf
RELOC/doc/generic/babel-greek/babel-greek-doc.html details="Documentation (HTML)"
@@ -29797,7 +29797,6 @@ docfiles size=462
RELOC/doc/generic/babel-greek/grmath.pdf
RELOC/doc/generic/babel-greek/test-athnum.pdf
RELOC/doc/generic/babel-greek/test-athnum.tex
- RELOC/doc/generic/babel-greek/test-case-changing.tex
RELOC/doc/generic/babel-greek/test-greek-8bitcompat.tex
RELOC/doc/generic/babel-greek/test-greek-ini.tex
RELOC/doc/generic/babel-greek/test-greek.pdf
@@ -29806,8 +29805,8 @@ docfiles size=462
RELOC/doc/generic/babel-greek/test-lgr-fixes.tex
RELOC/doc/generic/babel-greek/usage.pdf
RELOC/doc/generic/babel-greek/usage.tex
-srccontainersize 24712
-srccontainerchecksum 26f9f92fa30a3c04511fd6ad9e03d1bbdaa2c8b1dc6a3936e5f90a6d71c1870c5ea5bf8eeb4280b030ac9d1b620784da64bc824238857e4f464e15285d9bd742
+srccontainersize 25008
+srccontainerchecksum d00eea3cf4d940c4a6fa1925f4ba0073c4046feac8b1e265205e1723314e60e4a42aeb8b5b695ae028c7f3103eb22915e88a5b5f570134eebbfb5c9154d2bb3d
srcfiles size=26
RELOC/source/generic/babel-greek/athnum.dtx
RELOC/source/generic/babel-greek/babel-greek.dtx
@@ -29822,7 +29821,7 @@ catalogue-contact-repository https://codeberg.org/milde/greek-tex
catalogue-ctan /macros/latex/contrib/babel-contrib/greek
catalogue-license lppl1.3
catalogue-topics greek multilingual-addon
-catalogue-version 1.13.2
+catalogue-version 1.14
name babel-hebrew
category Package
@@ -89027,7 +89026,7 @@ catalogue-version 1.1.0
name cweb
category Package
-revision 67845
+revision 67979
catalogue cwebbin
shortdesc CWEB for ANSI-C/C++ compilers
longdesc A highly portable and extended version of Levy/Knuth CWEB 3.64c
@@ -89045,10 +89044,10 @@ longdesc version and adding new features from CWEBbin. As of November
longdesc 2019 CTAN no longer holds a copy of this material. Please go to
longdesc the package's github repository for more information.
depend cweb.ARCH
-containersize 24544
-containerchecksum 347dbd17afdfe45a2bfad91afd0eb8737752b9a0f210c3607c196e006bd84f8e1563c4c5ba5fcc06d32a6b6768acd31c54c3c85e51fd9cb49718e917b7fd835d
-doccontainersize 73548
-doccontainerchecksum 2fa3239d34d736473cf94543c8856a936271d3c5a8122ca1c98686283397e5141e73dac9b0200f5fbdeaf2180ba5b993dbee24ae8ea3369cbc9b5bc2f6665c99
+containersize 24552
+containerchecksum 50206f4516a4fb7fb67bc2aa007b3f4b1cdc4b5091efe80732760bbcd19984d6989ec2a4f1a8a8902037a3a4f936e24d72b052b5432f8af0ddf8619ab597fb63
+doccontainersize 73552
+doccontainerchecksum 294f7de0936e5cf35db702bd49953f727239525be9ea9739db73eda1986021bc8f298c9b103b86677fcaddd51c3a562dc6b721adaea4ecc217c158f9055cdb85
docfiles size=64
texmf-dist/doc/man/man1/ctangle.1
texmf-dist/doc/man/man1/ctangle.man1.pdf
@@ -195726,20 +195725,20 @@ catalogue-version 1.2a
name luacolor
category Package
-revision 57829
+revision 67987
shortdesc Color support based on LuaTeX's node attributes
relocated 1
longdesc This package implements color support based on LuaTeX's node
longdesc attributes.
-containersize 4152
-containerchecksum 39252eb36291bf6023e8ab24e7f4cbca10caa9d89204e8e80a5962b08e66c6ba5b588e98d17f9b13be3a52fb5c392499ebb73ded2e43a4ce7ccad4cf30a24302
-doccontainersize 328240
-doccontainerchecksum 4aeb524631531e6d18decde7b01acae4aaaee8f80392da87a2e7fadec9d353749b2d1dc65573ce2f184c24494ba340589fb83203ffcd49271e05dcbb79a1fd19
-docfiles size=82
+containersize 4164
+containerchecksum 142376345f25de68236e56fd334d8f24af90f510abc0d2314049bb03142df76988cd5451e22cf98df4443348f7686bbf9c269e311d5036cf8ae621200ae585ba
+doccontainersize 344248
+doccontainerchecksum d6654c3ac1ca1c18cc60cea463cc3b4b4ed902ba6c29521883079123b9906f089ed25e2268e7a1f92800d9b1158225b50c0b019ea28c68b846e73bcb350dee6a
+docfiles size=88
RELOC/doc/latex/luacolor/README.md details="Readme"
RELOC/doc/latex/luacolor/luacolor.pdf details="Package documentation"
-srccontainersize 9244
-srccontainerchecksum 93d7f9ac094612760c7cbaa1b591dee5f31f8278f462808a484311e2ba6dd6a20671e7431e7f22985a7f77e23436eefe02484026820d4b125a7a1b4b9d6becbc
+srccontainersize 9328
+srccontainerchecksum 8b29907f0e0d865704e5de710ac2dd37607330d66a4282ff1f4673306be40ce366a0c2eccdf4dd25c3592e804cd6fa1e2a35044c494c4a3c73e64bd0c264d102
srcfiles size=9
RELOC/source/latex/luacolor/luacolor.dtx
runfiles size=4
@@ -195750,7 +195749,7 @@ catalogue-contact-repository https://github.com/ho-tex/luacolor
catalogue-ctan /macros/latex/contrib/luacolor
catalogue-license lppl1.3
catalogue-topics colour luatex
-catalogue-version 1.17
+catalogue-version 1.18
name luacomplex
category Package
@@ -270678,16 +270677,16 @@ catalogue-version 1.11
name readablecv
category Package
-revision 61719
+revision 67986
shortdesc A highly readable and good looking CV and letter class
relocated 1
longdesc This class provides, what I have found, to be an extremely
longdesc attractive and highly readable CV which will lead to your CV
longdesc being read rather than disgarded.
-containersize 3884
-containerchecksum ca024cf78918406ca68a750832bf4046b22ca36cbd8ad7784cc2cc9aef6440de43c7d5c38aea95d738ec1f67685f02e1fd37440dc90d76046ee663cc475a187f
-doccontainersize 207540
-doccontainerchecksum c7b793994b11ae49bc93c8b39c0e257c24c54ebf19026db125ff1ae236f9b8443290b31443baff3a587fff073259621b001a75b0bb4f8f4e4963245f7c739019
+containersize 3948
+containerchecksum bfbc2764d56277d9a215d4366f812e53361faabd136ae86ae8152ab763742f51d27e9b61bf4a1d42fe2f14a90d5d3d0cf6cb513b3c6f5990ad34abeb26c22d44
+doccontainersize 207192
+doccontainerchecksum 6a337934b2f52cc8543ac0bee5dd52d2deff2e3fbf192977937c8331134227d816c846845923ead87615ddc117b44fb141239024e766e17e1896cfa1c4afbb05
docfiles size=57
RELOC/doc/latex/readablecv/README.md details="Readme"
RELOC/doc/latex/readablecv/ReadableCV.pdf details="Package documentation"
@@ -270700,7 +270699,7 @@ catalogue-contact-home https://www.typewithtex.com
catalogue-ctan /macros/latex/contrib/readablecv
catalogue-license lppl1.3
catalogue-topics class cv
-catalogue-version 3.0
+catalogue-version 4.0
name readarray
category Package
@@ -314859,7 +314858,7 @@ docfiles size=376
name texlive-scripts
category TLCore
-revision 67964
+revision 67977
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.
@@ -314868,9 +314867,9 @@ depend texlive.infra
execute addMap mathpple.map
postaction shortcut type=menu name="TeX Live command-line" cmd=TEXDIR/tlpkg/installer/tl-cmd.bat
containersize 114124
-containerchecksum 24a2ae4a4bcb727aad0b2388521b560a74221002f8f809e3602940b88899a3a1ac1aacefa9991796409325f744dfefaa82382313c5274ff19ae2ed73874d68e7
-doccontainersize 428768
-doccontainerchecksum 6d68a0bf6c2f5cd4933556ed082a40890f139ffda4a2a15cc5cae73c556b4c2684bcd5f75bb0ff553150d3e2ea39fc4a31d2b0e7a01de85fa5d6d3b9b5390cc7
+containerchecksum d85270241c544a77697d2d7a10c7e2c9f95f7cd3a1174d99b9f77dac1c22cde732ea8e6a4007995289af8975c098e5ff51203381fde441434634450eee24a5f7
+doccontainersize 428724
+doccontainerchecksum f832853d2be50b682c0b8ee27d65240a961bf2830c0058209f6a3c907d16235c29cacc041c4ded5d09207719e079e0beeea3656ced9f7dcb466dffaa2b1eac34
docfiles size=549
doc.html
texmf-dist/doc/man/man1/fmtutil-sys.1
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
index 7603c7f578..40bcde0a4f 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
@@ -1 +1 @@
-63e378597b51e45e6b48d57d2b0637e7 texlive.tlpdb
+0965219b6c63f7e733591cedbbb70c51 texlive.tlpdb
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
index 3a20eaec28..25d426573d 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
@@ -1 +1 @@
-c34c0aa7781cc59d2b3f63ea5f16acf20ff2b3d0236eb17f581e0a594b04e7040ea2daf84a70de7562d4d302bd10b25b70c3362588970202d6ebe25a12f8c747 texlive.tlpdb
+50753ec5322dab923160a11cb23e6bbfdd36298b3655c21b17b3cb970a19f978567d94c71c0a7cf52e8a1c5e93f681a98a55e55aed5ef2b0b51a14437ed80d9c texlive.tlpdb
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
index c43da5a3f0..0a2f8fd912 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
@@ -1,11 +1,11 @@
-----BEGIN PGP SIGNATURE-----
-iQEzBAEBCgAdFiEE2PL4YFeoV+QqiBBqTOGHfhlDjHAFAmTgAmwACgkQTOGHfhlD
-jHAktQf/Rz4MrE0EaPJNP79xexl56sqWsN3otYJaebitpL40PevSCXQCCJtMtiIr
-XYqIy6WcyH1AAWvaVxvFaDQEztzETXi1i5EBK89SIiO+Hh91zmYzLOgo4DN6swUH
-YJb20huuFB8myLaAFsK+TGmBFJH5PugNvUgPufvJPXBPW9TqC4ehFkWPXsq+BEFq
-a1FIT8zXi2oZr1/K2L59VBzbg1IzXX8+eM7VDffibyTczA8TDJ1oQ280MkYDbd72
-b40gtnVo1Hu+HpOQtuHp7Au0uzln437CB3UXB33ZCGvQ6Zi5nfHBdYk8GujUlxof
-HGNhD6dHTHLgihm9V1uti4GMlnNcVw==
-=flXk
+iQEzBAEBCgAdFiEE2PL4YFeoV+QqiBBqTOGHfhlDjHAFAmThVSUACgkQTOGHfhlD
+jHA0Ogf8C9ufsvQi8bKDmS5NMujeKgRw/0Xf3sW+QEq1I7ipu8wuVFLpg5AJb735
+oQebnijmYYck/H4lN2PNaI9NbEbSid+rkuCOPj8umjz7ggMQ/a6NIBTPxvCWg1w2
+Wmbd4v50CmICxM4YlVivRV3etAsYcrZdL+Oa2pQs4nDWcpuJSkL5NpUMZyjy/UOk
+MtPo+qXLQ724NqAd3QT+NTTZK08m7TULeR5fAUeinsDSu25BJfFadwD/ZTkSCuoO
+fkyCGZMWgocZUv2lOK2fDx39O539QzduAH0Mg7DP2+tdbmzJsDCijOx8sdxc8F2C
+sI3X14asqmqz0O9oDlI6rqYPVl5FUg==
+=NOik
-----END PGP SIGNATURE-----
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
index f499c7d27c..b7ac7d4e72 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
Binary files differ
diff --git a/systems/win32/miktex/tm/packages/files.csv.lzma b/systems/win32/miktex/tm/packages/files.csv.lzma
index 17b1a1e54e..cf9ab94c7f 100644
--- a/systems/win32/miktex/tm/packages/files.csv.lzma
+++ b/systems/win32/miktex/tm/packages/files.csv.lzma
Binary files differ
diff --git a/systems/win32/miktex/tm/packages/next/files.csv.lzma b/systems/win32/miktex/tm/packages/next/files.csv.lzma
index 3233e8e4e5..9fef00bcf8 100644
--- a/systems/win32/miktex/tm/packages/next/files.csv.lzma
+++ b/systems/win32/miktex/tm/packages/next/files.csv.lzma
Binary files differ
diff --git a/systems/win32/miktex/tm/packages/next/pr.ini b/systems/win32/miktex/tm/packages/next/pr.ini
index b4b16ff78e..a8e7deabec 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=1690545662
+date=1692469259
lastupd=miktex-zzip-bin-x64-2.9 miktex-zlib-bin-x64-2.9 miktex-yap-bin-x64-2.9 miktex-xml2pmx-bin-x64 miktex-xetex-bin-x64-2.9 miktex-web-bin-x64-2.9 miktex-uriparser-bin-x64-2.9 miktex-upmendex-bin-x64 miktex-ttf2pk2-bin-x64-2.9 miktex-texworks-bin-x64-2.9 miktex-texware-bin-x64-2.9 miktex-texify-bin-x64-2.9 miktex-tex4ht-bin-x64-2.9 miktex-tex2xindy-bin-x64-2.9 miktex-tex-bin-x64-2.9 miktex-teckit-bin-x64-2.9 miktex-tdsutil-bin-x64 miktex-synctex-bin-x64-2.9 miktex-runtime-bin-x64-2.9 miktex-ptex-bin-x64
-lstdigest=cacde0bda63a131621313baaa534abd4
-numpkg=6706
+lstdigest=c99a7e731bf95f23786c39f051b45c68
+numpkg=6769
relstate=next
-version=8609
+version=8631
;;;;This configuration file is signed by a MiKTeX maintainer. The signature follows.
;;;;-----BEGIN MIKTEX SIGNATURE-----
-;;;; signature/miktex: AI+30B+ukWI4BsWg03++AGt1DLHuks/6PX/0F8FqPhDrtonRf1wxoZys1WyjxACkrlNFDn5mX57aZJShLkKYers5bXFOEcam4/vemFQavTV83TCZ/lafX1xYumVvqZ7M94gds0ObP8P3tkGOmwX25uFR6W7LcYAoHOSbLv06i/AzVDE+wYZxyloT8AfGAAUqgmY8u7d30i+4Ap71/0ovUVB4Ld1W+BWJjMIwVqruyM7LpryCWoP1AVN68ErwY9iOQ1EmhSS+tzEjPdHzMbpV1GjG1y/jAUrPUn7g9u4G86Ph7M81U8CObURs6fAMrX/cmy3FZnfFsZGSIYQRvmOSZw==
+;;;; signature/miktex: k60kb4JbLpPWhWxtgkKHmMmJOVlV+Fnm6jMOPYMIc2ISwl0KuGcsJavUSQ7onFlhy0ytTD9f6MmZU4PGX5t8NzKQjYgVyNqiY4eTvYHTqPyWrMpYfXkfFpzSCdGI4oCjXZeawvZFBOB3teaBPngWN7acEWlJkSGfrmvVQHIFZLHZ+7u7i716JvnIak37H4kvZdAZUfHnyKa8sIsJ4WYj1xLE6elUYhfQHWJYC/pawWoYCFxhW+1Vu2J2833jLZFfxjHebrYKSJ13gP/eWOxp8wzd62+mPa/xkLGp1Sez64et8tYWNl/EULVur61KIFlP5wKK2m2ndd/ghfJ0xHCzsA==
;;;;-----END MIKTEX SIGNATURE-----
diff --git a/systems/win32/miktex/tm/packages/pr.ini b/systems/win32/miktex/tm/packages/pr.ini
index dae600dfe9..c6be2141c7 100644
--- a/systems/win32/miktex/tm/packages/pr.ini
+++ b/systems/win32/miktex/tm/packages/pr.ini
@@ -1,13 +1,13 @@
[repository]
-date=1690545625
-lastupd=hyphenex__source hyphenex typeoutfileinfo__source typeoutfileinfo__doc typeoutfileinfo yamlvars__source yamlvars__doc yamlvars xcharter__source xcharter__doc xcharter tikz3d-fr__source tikz3d-fr__doc tikz3d-fr tikz-nfold__source tikz-nfold__doc tikz-nfold tidyres__source tidyres__doc tidyres
-lstdigest=d2faac3518324868730e3537b208fb00
-numpkg=6706
+date=1692469140
+lastupd=zref-vario__source zref-vario__doc zref-vario zref-clever__source zref-clever__doc zref-clever zref-check__source zref-check__doc zref-check xpunctuate__source xpunctuate__doc xpunctuate xkcdcolors__source xkcdcolors__doc xkcdcolors xindex__source xindex__doc xindex writeongrid__source writeongrid__doc
+lstdigest=5ca73f1fb3cfdc806c9259cd72f8adf1
+numpkg=6769
relstate=stable
-version=8609
+version=8631
;;;;This configuration file is signed by a MiKTeX maintainer. The signature follows.
;;;;-----BEGIN MIKTEX SIGNATURE-----
-;;;; signature/miktex: w4EzHygpsAc+4W1tO1UEBxvT7yRWT++U0lrs9fB5DyKEnlKBEjn2I8QyZ0nnffLpG2JAbhIT3HtIm03F+clK3U/DkGBmlBugMGHnArwXNyM81XGau4KTaBILyOumprn9RYdIdn2gsE9KvzRHMtRs3OeHIKRUvsZBeiMCs7Aw8Omw/Sz5xTK20IAeTT8a8l1mc/Q6J6sEnYuuUmVIjSemezvE+nygqUGlvFAQSsQvT+vhQ4VJce4Yc9amQgulsgnWMv7tb/WVJ9ucWEewZlRX3Lxl5xWth/f/yGVasKg4BrXJd7JOQeBELVSgcISx6/Dmr3atlLMAW0Xq1vbe0MMrNw==
+;;;; signature/miktex: a/kRzcYUz8vRMOmCHd2T+/6zRLanlQLiT34Df8Owji9tG/wGy20spa9hWO0n2WV6qRg3kVMM1c8XwQOjzLgptTuMBW8yJdYrcEN5Q75t8cgx1X2wx+VPgkgvjZyonZ0UJvPdR2EKqBMf4kfbl6V1GaqfeiiGWL8RHNbkfKaBW0SGTvttoio/brSCFzU1EznIITvmPgfQlBXHPxPp0YqUVgoS0Ww3l7NAXGMXe1t0qdnZB7TX1bLrLlgwb2qG/z18fJiFUSyKyJjvlTmVw1noqeFPglYS1K57HDcCKpXlaxlK6VLNA5Mopz1I2tXfXnxReAzGvsBjWxf0aHz/DYxMhg==
;;;;-----END MIKTEX SIGNATURE-----
diff --git a/timestamp b/timestamp
index 96c7ab50ae..73ccfc37dd 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:
-2023-08-19-02-02
+2023-08-20-02-02
diff --git a/web/c_cpp/cweb/Makefile b/web/c_cpp/cweb/Makefile
index e3db8819c6..c547ef9154 100644
--- a/web/c_cpp/cweb/Makefile
+++ b/web/c_cpp/cweb/Makefile
@@ -1,6 +1,6 @@
# This file is part of CWEB.
# It is distributed WITHOUT ANY WARRANTY, express or implied.
-# Version 4.8 --- June 2022
+# Version 4.10 --- August 2023
# Copyright (C) 1987,1990,1993,2000 Silvio Levy and Donald E. Knuth
@@ -203,3 +203,8 @@ tarfile: $(ALL) examples
tarball:
tar zcvhf /tmp/cweb.tgz $(ALL) examples
+
+ctan:
+ git archive -o ~/cweb-4.10.zip --prefix=cweb/ cweb-4.10
+ make PDF=pdf usermanual
+ cd ..; zip -r ~/cweb-4.10.zip cweb/cwebman.pdf
diff --git a/web/c_cpp/cweb/comm-bs.ch b/web/c_cpp/cweb/comm-bs.ch
index b5e1d21b9b..ac2e26e9bd 100644
--- a/web/c_cpp/cweb/comm-bs.ch
+++ b/web/c_cpp/cweb/comm-bs.ch
@@ -15,8 +15,8 @@ by using "huge" pointers.
(Update attempt by Andreas Scherer, 31 Jan 2021. Good luck!)
-@x Section 9.
- for section names */
+@x Section 10.
+@d ilk dummy.Ilk /* used by \.{CWEAVE} only */
@<Common code...@>=
typedef struct name_info {
@@ -25,7 +25,7 @@ typedef struct name_info {
union {
struct name_info *Rlink; /* right link in binary search tree for section
names */
- char Ilk; /* used by identifiers in \.{CWEAVE} only */
+ eight_bits Ilk; /* used by identifiers in \.{CWEAVE} only */
} dummy;
void *equiv_or_xref; /* info corresponding to names */
} name_info; /* contains information about an identifier or section name */
@@ -34,7 +34,7 @@ typedef name_pointer *hash_pointer;
extern char byte_mem[]; /* characters of names */
extern char *byte_mem_end; /* end of |byte_mem| */
@y
- for section names */
+@d ilk dummy.Ilk /* used by \.{CWEAVE} only */
@f huge extern
@@ -45,7 +45,7 @@ typedef struct name_info {
union {
struct name_info *Rlink; /* right link in binary search tree for section
names */
- char Ilk; /* used by identifiers in \.{CWEAVE} only */
+ eight_bits Ilk; /* used by identifiers in \.{CWEAVE} only */
} dummy;
union {
void huge* equiv_member;
@@ -59,7 +59,7 @@ extern char huge* byte_mem_end; /* end of |byte_mem| */
@z
-@x Section 39.
+@x Section 36.
cur_file_name[l]='/'; /* \UNIX/ pathname separator */
@y
cur_file_name[l]='/'; /* A valid {\mc MSDOS} pathname separator */
diff --git a/web/c_cpp/cweb/comm-mac.ch b/web/c_cpp/cweb/comm-mac.ch
index 6bad610d1b..83df560cb4 100644
--- a/web/c_cpp/cweb/comm-mac.ch
+++ b/web/c_cpp/cweb/comm-mac.ch
@@ -4,29 +4,29 @@ No changes to CTANGLE or CWEAVE are needed.
(Contributed 13 Oct 2000 by AndPio@aol.com; slightly edited by Don Knuth)
@x in limbo, change the title page document to specify Mac version
- \centerline{(Version 4.8)}
+ \centerline{(Version 4.10)}
@y
- \centerline{(Version 4.8 for MacOS)}
+ \centerline{(Version 4.10 for MacOS)}
@z
@x section 23: Make input_ln accept \n, \r, \n\r, or \r\n as line endings
@ In the unlikely event that your standard I/O library does not
-support |feof|, |getc|, and |ungetc| you may have to change things here.
+support |feof| and |getc| you may have to change things here.
@^system dependencies@>
@c
static boolean input_ln( /* copies a line into |buffer| or returns |false| */
FILE *fp) /* what file to read from */
{
- register int c=EOF; /* character read; initialized so some compilers won't complain */
- register char *k; /* where next character goes */
+ int c=EOF; /* character read; initialized so some compilers won't complain */
+ char *k; /* where next character goes */
if (feof(fp)) return false; /* we have hit end-of-file */
limit = k = buffer; /* beginning of buffer */
while (k<=buffer_end && (c=getc(fp)) != EOF && c!='\n')
if ((*(k++) = c) != ' ') limit = k;
- if (k>buffer_end)
- if ((c=getc(fp))!=EOF && c!='\n') {
- ungetc(c,fp); loc=buffer; err_print("! Input line too long");
+ if (k>buffer_end) {
+ while ((c=getc(fp))!=EOF && c!='\n'); /* discard rest of line */
+ loc=buffer; err_print("! Input line too long");
@.Input line too long@>
}
if (c==EOF && limit==buffer) return false; /* there was nothing after
@@ -46,8 +46,8 @@ line endings, so that \.{CWEB} will works with ASCII files stored in
static boolean input_ln( /* copies a line into |buffer| or returns |false| */
FILE *fp) /* what file to read from */
{
- register int c=EOF; /* character read; initialized so some compilers won't complain */
- register char *k; /* where next character goes */
+ int c=EOF; /* character read; initialized so some compilers won't complain */
+ char *k; /* where next character goes */
if (feof(fp)) return false; /* we have hit end-of-file */
limit = k = buffer; /* beginning of buffer */
while (true) {
@@ -61,7 +61,7 @@ FILE *fp) /* what file to read from */
return true;
}
else if (k>buffer_end) {
- ungetc(c,fp); loc=buffer; err_print("! Input line too long");
+ while ((c=getc(fp))!=EOF && c!='\n' && c!='\r'); /* discard rest of line */
return true;
@.Input line too long@>
}
@@ -81,17 +81,7 @@ FILE *fp) /* what file to read from */
@<Skip over comment lines in the change file; |return| if end of file@>@;
@z
-@x section 36, don't try to open a change file if none was specified
-if ((change_file=fopen(change_file_name,"r"))==NULL)
- fatal("! Cannot open change file ", change_file_name);
-@y
-if (change_file_name[0] == '\0') /* no change file specified */
- change_file = NULL; /* reset at least the |change_file| */
-else if ((change_file=fopen(change_file_name,"r"))==NULL)
- fatal("! Cannot open change file ", change_file_name);
-@z
-
-@x section 39, declare colon as Mac's path separator
+@x section 36, declare colon as Mac's path separator
(Colon-separated paths are not supported.)
The remainder of the \.{@@i} line after the file name is ignored.
@@ -104,12 +94,22 @@ The remainder of the \.{@@i} line after the file name is ignored.
@d PATH_SEP ':' /* MacOS pathname separator */
@^system dependencies@>
@z
-@x section 39, use the path separator constant
+@x section 36, use the path separator constant
cur_file_name[l]='/'; /* \UNIX/ pathname separator */
@y
cur_file_name[l]=PATH_SEP; /* pathname separator */
@z
+@x section 41, don't try to open a change file if none was specified
+if ((change_file=fopen(change_file_name,"r"))==NULL)
+ fatal("! Cannot open change file ", change_file_name);
+@y
+if (change_file_name[0] == '\0') /* no change file specified */
+ change_file = NULL; /* reset at least the |change_file| */
+else if ((change_file=fopen(change_file_name,"r"))==NULL)
+ fatal("! Cannot open change file ", change_file_name);
+@z
+
@x section 75, explain the convention for omitted change files
An omitted change file argument means that |"/dev/null"| should be used,
@y
@@ -134,7 +134,7 @@ An omitted change file argument means that no change file should be used,
@z
@x section 85, insert an extra module before the index
-@** Index.
+@* Index.
@y by putting the new module here, we preserve all the previous section numbers
@ We assume an interface to \CEE/ command-line emulation as supplied by
the |ccommand| function of Metrowerks CodeWarrior, as defined in
@@ -144,5 +144,5 @@ the header file \.{console.h}.
#include <console.h>
@^system dependencies@>
-@** Index.
+@* Index.
@z
diff --git a/web/c_cpp/cweb/comm-ql.ch b/web/c_cpp/cweb/comm-ql.ch
index 52c4834bed..592c7e04a1 100644
--- a/web/c_cpp/cweb/comm-ql.ch
+++ b/web/c_cpp/cweb/comm-ql.ch
@@ -10,24 +10,24 @@ ex <dev_>cc;'-v -h -c -=500000 -DCWEBINPUTS=flp2_ common_c'
@x
\def\v{\char'174} % vertical (|) in typewriter font
-\def\title{Common code for CTANGLE and CWEAVE (Version 4.8)}
+\def\title{Common code for CTANGLE and CWEAVE (Version 4.10)}
\def\topofcontents{\null\vfill
\centerline{\titlefont Common code for {\ttitlefont CTANGLE} and
{\ttitlefont CWEAVE}}
\vskip 15pt
- \centerline{(Version 4.8)}
+ \centerline{(Version 4.10)}
\vfill}
\def\botofcontents{\vfill
\noindent
@y
\def\v{\char'174} % vertical (|) in typewriter font
-\def\title{Common code for CTANGLE and CWEAVE (QL Version 4.8)}
+\def\title{Common code for CTANGLE and CWEAVE (QL Version 4.10)}
\def\topofcontents{\null\vfill
\centerline{\titlefont Common code for {\ttitlefont CTANGLE} and
{\ttitlefont CWEAVE}}
\vskip 15pt
- \centerline{(Version 4.8)}
+ \centerline{(Version 4.10)}
\vfill}
\def\botofcontents{\vfill
\noindent
@@ -212,17 +212,15 @@ the routine as if it would work.
@<Complain about argument length@>@;
if (dot_pos==NULL) {
sprintf(tex_file_name,"%s.tex",*argv);
- sprintf(idx_file_name,"%s.idx",*argv);
- sprintf(scn_file_name,"%s.scn",*argv);
sprintf(C_file_name,"%s.c",*argv);
} else {
strcpy(tex_file_name,*argv);
strcpy(C_file_name,*argv);
- if (make_xrefs) { /* indexes will be generated */
- *dot_pos='\0';
- sprintf(idx_file_name,"%s.idx",*argv);
- sprintf(scn_file_name,"%s.scn",*argv);
- }
+ *dot_pos='\0'; /* string now ends where the dot was */
+ }
+ if (make_xrefs) { /* indexes will be generated */
+ sprintf(idx_file_name,"%s.idx",*argv);
+ sprintf(scn_file_name,"%s.scn",*argv);
}
found_out=true;
}
@@ -233,17 +231,15 @@ the routine as if it would work.
@<Complain about argument length@>;
if (dot_pos==NULL) {
sprintf(tex_file_name,"%s_tex",*argv);
- sprintf(idx_file_name,"%s_idx",*argv);
- sprintf(scn_file_name,"%s_scn",*argv);
sprintf(C_file_name,"%s_c",*argv);
} else {
strcpy(tex_file_name,*argv);
strcpy(C_file_name,*argv);
- if (make_xrefs) { /* indexes will be generated */
- *dot_pos='\0';
- sprintf(idx_file_name,"%s_idx",*argv);
- sprintf(scn_file_name,"%s_scn",*argv);
- }
+ *dot_pos='\0'; /* string now ends where the dot was */
+ }
+ if (make_xrefs) { /* indexes will be generated */
+ sprintf(idx_file_name,"%s_idx",*argv);
+ sprintf(scn_file_name,"%s_scn",*argv);
}
found_out=true;
}
diff --git a/web/c_cpp/cweb/comm-vms.ch b/web/c_cpp/cweb/comm-vms.ch
index a5ddc252f3..fe72d604fd 100644
--- a/web/c_cpp/cweb/comm-vms.ch
+++ b/web/c_cpp/cweb/comm-vms.ch
@@ -75,7 +75,7 @@ null device |"NL:"| should be used, when no changes are desired.
@z
@x section 85 (01-FEB-1992 ST)
-@** Index.
+@* Index.
@y
@* VAX/VMS specific code.
We have used |SS$_NORMAL| and |SS$_ABORT| as return codes,
@@ -84,5 +84,5 @@ so we have to include the system message codes.
@<Include files@>=
#include ssdef /* we need VAX/VMS system messages */
-@** Index.
+@* Index.
@z
diff --git a/web/c_cpp/cweb/comm-w32.ch b/web/c_cpp/cweb/comm-w32.ch
index 38c209981a..cf5d63c9c1 100644
--- a/web/c_cpp/cweb/comm-w32.ch
+++ b/web/c_cpp/cweb/comm-w32.ch
@@ -34,16 +34,10 @@ header files to be safe.
Admittedly, this is not vital for cweb, except that I build the whole texlive
set of programs using the __fastcall convention.
-@x
-extern boolean names_match(name_pointer,const char *,size_t,eight_bits);@/
+@x section 11
+extern boolean names_match(name_pointer,const char *,size_t,eight_bits);
@y
-extern boolean __cdecl names_match(name_pointer,const char *,size_t,eight_bits);@/
-@z
-
-@x
-extern void init_p(name_pointer,eight_bits);@/
-@y
-extern void __cdecl init_p(name_pointer,eight_bits);@/
+extern boolean __cdecl names_match(name_pointer,const char *,size_t,eight_bits);
@z
@x section 75
diff --git a/web/c_cpp/cweb/common.c b/web/c_cpp/cweb/common.c
index 2b5c7c9ccc..ccedc5e914 100644
--- a/web/c_cpp/cweb/common.c
+++ b/web/c_cpp/cweb/common.c
@@ -1,8 +1,8 @@
/*1:*/
#line 62 "common.w"
-/*3:*/
-#line 44 "common.h"
+/*4:*/
+#line 48 "common.h"
#include <ctype.h>
#include <stdbool.h>
@@ -12,7 +12,7 @@
#include <stdlib.h>
#include <string.h>
-/*:3*/
+/*:4*/
#line 63 "common.w"
#define ctangle false
@@ -61,14 +61,15 @@
#define llink link
#define rlink dummy.Rlink
#define root name_dir->rlink \
- \
+
+#define ilk dummy.Ilk \
#define spotless 0
#define harmless_message 1
#define error_message 2
#define fatal_message 3
-#define mark_harmless if(history==spotless) history= harmless_message
-#define mark_error history= error_message
+#define mark_harmless() if(history==spotless) history= harmless_message
+#define mark_error() history= error_message
#define confusion(s) fatal("! This can't happen: ",s) \
\
@@ -78,8 +79,8 @@
#define show_stats flags['s']
#define make_xrefs flags['x'] \
-#define update_terminal fflush(stdout)
-#define new_line putchar('\n')
+#define update_terminal() fflush(stdout)
+#define new_line() putchar('\n')
#define term_write(a,b) fflush(stdout) ,fwrite(a,sizeof(char) ,b,stdout) \
#define buf_size 200
@@ -133,24 +134,24 @@ typedef uint16_t sixteen_bits;
extern boolean program;
extern int phase;
-/*:2*//*4:*/
-#line 74 "common.h"
+/*:2*//*5:*/
+#line 78 "common.h"
extern char section_text[];
extern char*section_text_end;
extern char*id_first;
extern char*id_loc;
-/*:4*//*5:*/
-#line 92 "common.h"
+/*:5*//*6:*/
+#line 96 "common.h"
extern char buffer[];
extern char*buffer_end;
extern char*loc;
extern char*limit;
-/*:5*//*6:*/
-#line 109 "common.h"
+/*:6*//*7:*/
+#line 113 "common.h"
extern int include_depth;
extern FILE*file[];
@@ -165,16 +166,16 @@ extern boolean input_has_ended;
extern boolean changing;
extern boolean web_file_open;
-/*:6*//*8:*/
-#line 129 "common.h"
+/*:7*//*9:*/
+#line 133 "common.h"
extern sixteen_bits section_count;
extern boolean changed_section[];
extern boolean change_pending;
extern boolean print_where;
-/*:8*//*9:*/
-#line 143 "common.h"
+/*:9*//*10:*/
+#line 148 "common.h"
typedef struct name_info{
char*byte_start;
@@ -182,7 +183,7 @@ struct name_info*link;
union{
struct name_info*Rlink;
-char Ilk;
+eight_bits Ilk;
}dummy;
void*equiv_or_xref;
}name_info;
@@ -198,13 +199,13 @@ extern name_pointer hash[];
extern hash_pointer hash_end;
extern hash_pointer h;
-/*:9*//*11:*/
-#line 187 "common.h"
+/*:10*//*12:*/
+#line 193 "common.h"
extern int history;
-/*:11*//*13:*/
-#line 203 "common.h"
+/*:12*//*14:*/
+#line 211 "common.h"
extern int argc;
extern char**argv;
@@ -214,8 +215,8 @@ extern char idx_file_name[];
extern char scn_file_name[];
extern boolean flags[];
-/*:13*//*14:*/
-#line 217 "common.h"
+/*:14*//*15:*/
+#line 225 "common.h"
extern FILE*C_file;
extern FILE*tex_file;
@@ -223,7 +224,7 @@ extern FILE*idx_file;
extern FILE*scn_file;
extern FILE*active_file;
-/*:14*/
+/*:15*/
#line 65 "common.w"
/*18:*/
@@ -275,8 +276,8 @@ boolean web_file_open= false;
static char change_buffer[buf_size];
static char*change_limit;
-/*:26*//*37:*/
-#line 393 "common.w"
+/*:26*//*42:*/
+#line 545 "common.w"
sixteen_bits section_count;
boolean changed_section[max_sections];
@@ -284,7 +285,7 @@ boolean change_pending;
boolean print_where= false;
-/*:37*//*43:*/
+/*:42*//*43:*/
#line 590 "common.w"
char byte_mem[max_bytes];
@@ -306,12 +307,12 @@ hash_pointer hash_end= hash+hash_size-1;
hash_pointer h;
/*:46*//*65:*/
-#line 1003 "common.w"
+#line 1002 "common.w"
int history= spotless;
/*:65*//*73:*/
-#line 1126 "common.w"
+#line 1125 "common.w"
int argc;
char**argv;
@@ -322,7 +323,7 @@ char scn_file_name[max_file_name_length];
boolean flags[128];
/*:73*//*83:*/
-#line 1269 "common.w"
+#line 1266 "common.w"
FILE*C_file;
FILE*tex_file;
@@ -333,41 +334,43 @@ FILE*active_file;
/*:83*/
#line 66 "common.w"
-/*7:*/
-#line 123 "common.h"
+/*3:*/
+#line 43 "common.h"
+
+extern void common_init(void);
+
+/*:3*//*8:*/
+#line 127 "common.h"
extern boolean get_line(void);
extern void check_complete(void);
extern void reset_input(void);
-/*:7*//*10:*/
-#line 166 "common.h"
+/*:8*//*11:*/
+#line 171 "common.h"
-extern boolean names_match(name_pointer,const char*,size_t,eight_bits);
extern name_pointer id_lookup(const char*,const char*,eight_bits);
extern name_pointer section_lookup(char*,char*,boolean);
-extern void init_node(name_pointer);
-extern void init_p(name_pointer,eight_bits);
extern void print_prefix_name(name_pointer);
extern void print_section_name(name_pointer);
extern void sprint_section_name(char*,name_pointer);
-/*:10*//*12:*/
-#line 190 "common.h"
+extern boolean names_match(name_pointer,const char*,size_t,eight_bits);
+
+extern void init_node(name_pointer);
+
+/*:11*//*13:*/
+#line 196 "common.h"
extern int wrap_up(void);
extern void err_print(const char*);
extern void fatal(const char*,const char*);
extern void overflow(const char*);
-/*:12*//*15:*/
-#line 225 "common.h"
-
-extern void common_init(void);
extern void print_stats(void);
-/*:15*//*24:*/
+/*:13*//*24:*/
#line 176 "common.w"
static boolean input_ln(FILE*);
@@ -380,18 +383,18 @@ static void prime_the_change_buffer(void);
static void check_change(void);
/*:33*//*55:*/
-#line 764 "common.w"
+#line 763 "common.w"
static int web_strcmp(char*,size_t,char*,size_t);
static name_pointer add_section_name(name_pointer,int,char*,char*,boolean);
static void extend_section_name(name_pointer,char*,char*,boolean);
/*:55*//*64:*/
-#line 991 "common.w"
+#line 990 "common.w"
static int section_name_cmp(char**,size_t,name_pointer);
/*:64*//*76:*/
-#line 1186 "common.w"
+#line 1185 "common.w"
static void scan_args(void);
/*:76*/
@@ -421,7 +424,7 @@ for(h= hash;h<=hash_end;*h++= NULL);
#line 99 "common.w"
/*74:*/
-#line 1139 "common.w"
+#line 1138 "common.w"
show_banner= show_happiness= show_progress= make_xrefs= true;
@@ -429,7 +432,7 @@ show_banner= show_happiness= show_progress= make_xrefs= true;
#line 100 "common.w"
/*84:*/
-#line 1276 "common.w"
+#line 1273 "common.w"
scan_args();
if(program==ctangle){
@@ -453,15 +456,15 @@ fatal("! Cannot open output file ",tex_file_name);
static boolean input_ln(
FILE*fp)
{
-register int c= EOF;
-register char*k;
+int c= EOF;
+char*k;
if(feof(fp))return false;
limit= k= buffer;
while(k<=buffer_end&&(c= getc(fp))!=EOF&&c!='\n')
if((*(k++)= c)!=' ')limit= k;
-if(k> buffer_end)
-if((c= getc(fp))!=EOF&&c!='\n'){
-ungetc(c,fp);loc= buffer;err_print("! Input line too long");
+if(k> buffer_end){
+while((c= getc(fp))!=EOF&&c!='\n');
+loc= buffer;err_print("! Input line too long");
}
if(c==EOF&&limit==buffer)return false;
@@ -544,15 +547,15 @@ change_limit= change_buffer;changing= false;
return;
}
if(limit> buffer+1&&buffer[0]=='@'){
-char xyz_code= xisupper(buffer[1])?tolower((int)buffer[1]):buffer[1];
+if(xisupper(buffer[1]))buffer[1]= tolower((int)buffer[1]);
/*34:*/
#line 336 "common.w"
-if(xyz_code=='x'||xyz_code=='z'){
+if(buffer[1]=='x'||buffer[1]=='z'){
loc= buffer+2;err_print("! Where is the matching @y?");
}
-else if(xyz_code=='y'){
+else if(buffer[1]=='y'){
if(n> 0){
loc= buffer+2;
printf("\n! Hmm... %d ",n);
@@ -590,44 +593,14 @@ if(lines_dont_match)n++;
}
/*:32*//*35:*/
-#line 356 "common.w"
-
-void
-reset_input(void)
-{
-limit= buffer;loc= buffer+1;buffer[0]= ' ';
-/*36:*/
-#line 371 "common.w"
-
-if((web_file= fopen(web_file_name,"r"))==NULL){
-strcpy(web_file_name,alt_web_file_name);
-if((web_file= fopen(web_file_name,"r"))==NULL)
-fatal("! Cannot open input file ",web_file_name);
-}
-
-
-web_file_open= true;
-if((change_file= fopen(change_file_name,"r"))==NULL)
-fatal("! Cannot open change file ",change_file_name);
-
-/*:36*/
-#line 361 "common.w"
-
-include_depth= cur_line= change_line= 0;
-change_depth= include_depth;
-changing= true;prime_the_change_buffer();changing= !changing;
-limit= buffer;loc= buffer+1;buffer[0]= ' ';input_has_ended= false;
-}
-
-/*:35*//*38:*/
-#line 400 "common.w"
+#line 362 "common.w"
boolean get_line(void)
{
restart:
if(changing&&include_depth==change_depth)
-/*41:*/
-#line 508 "common.w"
+/*38:*/
+#line 470 "common.w"
{
change_line++;
if(!input_ln(change_file)){
@@ -657,12 +630,12 @@ prime_the_change_buffer();changing= !changing;print_where= true;
}
}
-/*:41*/
-#line 405 "common.w"
+/*:38*/
+#line 367 "common.w"
if(!changing||include_depth> change_depth){
-/*40:*/
-#line 491 "common.w"
+/*37:*/
+#line 453 "common.w"
{
cur_line++;
while(!input_ln(cur_file)){
@@ -680,8 +653,8 @@ if(buffer[0]==change_buffer[0])
if(change_limit> change_buffer)check_change();
}
-/*:40*/
-#line 407 "common.w"
+/*:37*/
+#line 369 "common.w"
if(changing&&include_depth==change_depth)goto restart;
}
@@ -701,8 +674,8 @@ err_print("! Too many nested includes");
goto restart;
}
include_depth++;
-/*39:*/
-#line 445 "common.w"
+/*36:*/
+#line 407 "common.w"
{
char temp_file_name[max_file_name_length];
char*cur_file_name_end= cur_file_name+max_file_name_length-1;
@@ -723,7 +696,6 @@ cur_line= 0;print_where= true;
goto restart;
}
if((kk= getenv("CWEBINPUTS"))!=NULL){
-
if((l= strlen(kk))> max_file_name_length-2)too_long();
strcpy(temp_file_name,kk);
}
@@ -732,10 +704,10 @@ else{
if((l= strlen(CWEBINPUTS))> max_file_name_length-2)too_long();
strcpy(temp_file_name,CWEBINPUTS);
#else
-#line 474 "common.w"
+#line 435 "common.w"
l= 0;
#endif
-#line 476 "common.w"
+#line 437 "common.w"
}
if(l> 0){
if(k+l+2>=cur_file_name_end)too_long();
@@ -743,6 +715,7 @@ if(k+l+2>=cur_file_name_end)too_long();
for(;k>=cur_file_name;k--)*(k+l+1)= *k;
strcpy(cur_file_name,temp_file_name);
cur_file_name[l]= '/';
+
if((cur_file= fopen(cur_file_name,"r"))!=NULL){
cur_line= 0;print_where= true;
goto restart;
@@ -751,15 +724,15 @@ goto restart;
include_depth--;err_print("! Cannot open include file");goto restart;
}
-/*:39*/
-#line 426 "common.w"
+/*:36*/
+#line 388 "common.w"
}
return true;
}
-/*:38*//*42:*/
-#line 540 "common.w"
+/*:35*//*39:*/
+#line 502 "common.w"
void
check_complete(void){
@@ -772,7 +745,37 @@ err_print("! Change file entry did not match");
}
}
-/*:42*//*48:*/
+/*:39*//*40:*/
+#line 518 "common.w"
+
+void
+reset_input(void)
+{
+limit= buffer;loc= buffer+1;buffer[0]= ' ';
+/*41:*/
+#line 533 "common.w"
+
+if((web_file= fopen(web_file_name,"r"))==NULL){
+strcpy(web_file_name,alt_web_file_name);
+if((web_file= fopen(web_file_name,"r"))==NULL)
+fatal("! Cannot open input file ",web_file_name);
+}
+
+
+web_file_open= true;
+if((change_file= fopen(change_file_name,"r"))==NULL)
+fatal("! Cannot open change file ",change_file_name);
+
+/*:41*/
+#line 523 "common.w"
+
+include_depth= cur_line= change_line= 0;
+change_depth= include_depth;
+changing= true;prime_the_change_buffer();changing= !changing;
+limit= buffer;loc= buffer+1;buffer[0]= ' ';input_has_ended= false;
+}
+
+/*:40*//*48:*/
#line 633 "common.w"
name_pointer
@@ -811,13 +814,13 @@ p->link= hash[h];hash[h]= p;
#line 647 "common.w"
if(p==name_ptr)/*51:*/
-#line 676 "common.w"
+#line 675 "common.w"
{
if(byte_ptr+l> byte_mem_end)overflow("byte memory");
if(name_ptr>=name_dir_end)overflow("name");
strncpy(byte_ptr,first,l);
(++name_ptr)->byte_start= byte_ptr+= l;
-init_p(p,t);
+if(program==cweave)p->ilk= t,init_node(p);
}
/*:51*/
@@ -827,7 +830,7 @@ return p;
}
/*:48*//*52:*/
-#line 708 "common.w"
+#line 707 "common.w"
void
print_section_name(
@@ -846,7 +849,7 @@ if(q)term_write("...",3);
}
/*:52*//*53:*/
-#line 725 "common.w"
+#line 724 "common.w"
void
sprint_section_name(
@@ -866,7 +869,7 @@ s= p->byte_start;
}
/*:53*//*54:*/
-#line 743 "common.w"
+#line 742 "common.w"
void
print_prefix_name(
@@ -879,7 +882,7 @@ if(s+l<(p+1)->byte_start)term_write("...",3);
}
/*:54*//*56:*/
-#line 769 "common.w"
+#line 768 "common.w"
static int web_strcmp(
char*j,
@@ -897,7 +900,7 @@ else return greater;
}
/*:56*//*57:*/
-#line 798 "common.w"
+#line 797 "common.w"
static name_pointer
add_section_name(
@@ -927,7 +930,7 @@ return par==NULL?(root= p):c==less?(par->llink= p):(par->rlink= p);
}
/*:57*//*58:*/
-#line 826 "common.w"
+#line 825 "common.w"
static void
extend_section_name(
@@ -951,7 +954,7 @@ if(ispref)*(byte_ptr-1)= ' ';
}
/*:58*//*59:*/
-#line 854 "common.w"
+#line 853 "common.w"
name_pointer
section_lookup(
@@ -966,7 +969,7 @@ name_pointer par= NULL;
size_t name_len= (size_t)(last-first+1);
/*60:*/
-#line 878 "common.w"
+#line 877 "common.w"
while(p){
c= web_strcmp(first,name_len,first_chunk(p),prefix_length(p));
@@ -993,19 +996,19 @@ p= q,q= NULL;
}
/*:60*/
-#line 868 "common.w"
+#line 867 "common.w"
/*61:*/
-#line 903 "common.w"
+#line 902 "common.w"
if(r==NULL)
return add_section_name(par,c,first,last+1,ispref);
/*:61*/
-#line 869 "common.w"
+#line 868 "common.w"
/*62:*/
-#line 911 "common.w"
+#line 910 "common.w"
switch(section_name_cmp(&first,name_len,r)){
@@ -1039,12 +1042,12 @@ err_print(">");
return r;
/*:62*/
-#line 870 "common.w"
+#line 869 "common.w"
}
/*:59*//*63:*/
-#line 959 "common.w"
+#line 958 "common.w"
static int section_name_cmp(
char**pfirst,
@@ -1066,7 +1069,7 @@ if(ispref){
*pfirst= first+(ptrdiff_t)(ss-s);
return extension;
}else return equal;
-else return(q->byte_start==(q+1)->byte_start)?equal:prefix;
+else return length(q)==0?equal:prefix;
case extension:
if(!ispref)return bad_extension;
first+= ss-s;
@@ -1078,7 +1081,7 @@ default:return c;
}
/*:63*//*66:*/
-#line 1013 "common.w"
+#line 1012 "common.w"
void
err_print(
@@ -1086,7 +1089,7 @@ const char*s)
{
*s=='!'?printf("\n%s",s):printf("%s",s);
if(web_file_open)/*67:*/
-#line 1032 "common.w"
+#line 1031 "common.w"
{char*k,*l;
if(changing&&include_depth==change_depth)
@@ -1098,7 +1101,7 @@ if(l> buffer){
for(k= buffer;k<l;k++)
if(*k=='\t')putchar(' ');
else putchar(*k);
-new_line;
+new_line();
for(k= buffer;k<l;k++)putchar(' ');
}
for(k= l;k<limit;k++)putchar(*k);
@@ -1107,20 +1110,20 @@ putchar(' ');
}
/*:67*/
-#line 1019 "common.w"
+#line 1018 "common.w"
-update_terminal;mark_error;
+update_terminal();mark_error();
}
/*:66*//*68:*/
-#line 1065 "common.w"
+#line 1064 "common.w"
int wrap_up(void){
-if(show_progress)new_line;
+if(show_progress)new_line();
if(show_stats)
print_stats();
/*69:*/
-#line 1075 "common.w"
+#line 1074 "common.w"
switch(history){
case spotless:
@@ -1134,14 +1137,14 @@ puts("(That was a fatal error, my friend.)");
}
/*:69*/
-#line 1070 "common.w"
+#line 1069 "common.w"
if(history> harmless_message)return EXIT_FAILURE;
else return EXIT_SUCCESS;
}
/*:68*//*70:*/
-#line 1093 "common.w"
+#line 1092 "common.w"
void
fatal(
const char*s,const char*t)
@@ -1152,7 +1155,7 @@ history= fatal_message;exit(wrap_up());
}
/*:70*//*71:*/
-#line 1104 "common.w"
+#line 1103 "common.w"
void
overflow(
const char*t)
@@ -1162,27 +1165,27 @@ printf("\n! Sorry, %s capacity exceeded",t);fatal("","");
/*:71*//*75:*/
-#line 1157 "common.w"
+#line 1156 "common.w"
static void
scan_args(void)
{
char*dot_pos;
char*name_pos;
-register char*s;
+char*s;
boolean found_web= false,found_change= false,found_out= false;
strcpy(change_file_name,"/dev/null");
while(--argc> 0){
if((**(++argv)=='-'||**argv=='+')&&*(*argv+1))/*80:*/
-#line 1247 "common.w"
+#line 1244 "common.w"
for(dot_pos= *argv+1;*dot_pos> '\0';dot_pos++)
flags[(eight_bits)*dot_pos]= flag_change;
/*:80*/
-#line 1169 "common.w"
+#line 1168 "common.w"
else{
s= name_pos= *argv;dot_pos= NULL;
@@ -1191,17 +1194,17 @@ if(*s=='.')dot_pos= s++;
else if(*s=='/')dot_pos= NULL,name_pos= ++s;
else s++;
if(!found_web)/*77:*/
-#line 1195 "common.w"
+#line 1194 "common.w"
{
if(s-*argv> max_file_name_length-5)
/*82:*/
-#line 1263 "common.w"
+#line 1260 "common.w"
fatal("! Filename too long\n",*argv);
/*:82*/
-#line 1198 "common.w"
+#line 1197 "common.w"
if(dot_pos==NULL)
sprintf(web_file_name,"%s.w",*argv);
@@ -1218,21 +1221,21 @@ found_web= true;
}
/*:77*/
-#line 1177 "common.w"
+#line 1176 "common.w"
else if(!found_change)/*78:*/
-#line 1213 "common.w"
+#line 1212 "common.w"
{
if(strcmp(*argv,"-")!=0){
if(s-*argv> max_file_name_length-4)
/*82:*/
-#line 1263 "common.w"
+#line 1260 "common.w"
fatal("! Filename too long\n",*argv);
/*:82*/
-#line 1217 "common.w"
+#line 1216 "common.w"
if(dot_pos==NULL)
sprintf(change_file_name,"%s.ch",*argv);
@@ -1242,43 +1245,41 @@ found_change= true;
}
/*:78*/
-#line 1178 "common.w"
+#line 1177 "common.w"
else if(!found_out)/*79:*/
-#line 1225 "common.w"
+#line 1224 "common.w"
{
if(s-*argv> max_file_name_length-5)
/*82:*/
-#line 1263 "common.w"
+#line 1260 "common.w"
fatal("! Filename too long\n",*argv);
/*:82*/
-#line 1228 "common.w"
+#line 1227 "common.w"
if(dot_pos==NULL){
sprintf(tex_file_name,"%s.tex",*argv);
-sprintf(idx_file_name,"%s.idx",*argv);
-sprintf(scn_file_name,"%s.scn",*argv);
sprintf(C_file_name,"%s.c",*argv);
}else{
strcpy(tex_file_name,*argv);
strcpy(C_file_name,*argv);
-if(make_xrefs){
*dot_pos= '\0';
+}
+if(make_xrefs){
sprintf(idx_file_name,"%s.idx",*argv);
sprintf(scn_file_name,"%s.scn",*argv);
}
-}
found_out= true;
}
/*:79*/
-#line 1179 "common.w"
+#line 1178 "common.w"
else/*81:*/
-#line 1251 "common.w"
+#line 1248 "common.w"
{
if(program==ctangle)
@@ -1292,12 +1293,12 @@ else fatal(
}
/*:81*/
-#line 1180 "common.w"
+#line 1179 "common.w"
}
}
if(!found_web)/*81:*/
-#line 1251 "common.w"
+#line 1248 "common.w"
{
if(program==ctangle)
@@ -1311,7 +1312,7 @@ else fatal(
}
/*:81*/
-#line 1183 "common.w"
+#line 1182 "common.w"
}
diff --git a/web/c_cpp/cweb/common.h b/web/c_cpp/cweb/common.h
index 186e87fd63..4104965917 100644
--- a/web/c_cpp/cweb/common.h
+++ b/web/c_cpp/cweb/common.h
@@ -2,7 +2,7 @@
% This program by Silvio Levy and Donald E. Knuth
% is based on a program by Knuth.
% It is distributed WITHOUT ANY WARRANTY, express or implied.
-% Version 4.8 --- June 2022 (works also with later versions)
+% Version 4.10 --- August 2023 (works also with later versions)
% Copyright (C) 1987,1990,1993 Silvio Levy and Donald E. Knuth
@@ -32,13 +32,17 @@ First comes general stuff:
@d ctangle false
@d cweave true
-@<Common code...@>=
+@<Common code...@>=@^system dependencies@>
typedef bool boolean;
typedef uint8_t eight_bits;
typedef uint16_t sixteen_bits;
extern boolean program; /* \.{CWEAVE} or \.{CTANGLE}? */
extern int phase; /* which phase are we in? */
+@ The procedure that gets everything rolling:
+@<Predecl...@>=
+extern void common_init(void);@/
+
@ Interface to the standard \CEE/ library:
@<Include files@>=
@@ -139,6 +143,7 @@ extern boolean print_where; /* tells \.{CTANGLE} to print line and file info */
@d rlink dummy.Rlink /* right link in binary search tree for section names */
@d root name_dir->rlink /* the root of the binary search tree
for section names */
+@d ilk dummy.Ilk /* used by \.{CWEAVE} only */
@<Common code...@>=
typedef struct name_info {
@@ -147,7 +152,7 @@ typedef struct name_info {
union {
struct name_info *Rlink; /* right link in binary search tree for section
names */
- char Ilk; /* used by identifiers in \.{CWEAVE} only */
+ eight_bits Ilk; /* used by identifiers in \.{CWEAVE} only */
} dummy;
void *equiv_or_xref; /* info corresponding to names */
} name_info; /* contains information about an identifier or section name */
@@ -164,23 +169,24 @@ extern hash_pointer hash_end; /* end of |hash| */
extern hash_pointer h; /* index into hash-head array */
@ @<Predecl...@>=
-extern boolean names_match(name_pointer,const char *,size_t,eight_bits);@/
extern name_pointer id_lookup(const char *,const char *,eight_bits);
/* looks up a string in the identifier table */
extern name_pointer section_lookup(char *,char *,boolean); /* finds section name */
-extern void init_node(name_pointer);@/
-extern void init_p(name_pointer,eight_bits);@/
extern void print_prefix_name(name_pointer);@/
extern void print_section_name(name_pointer);@/
extern void sprint_section_name(char *,name_pointer);
+@#
+extern boolean names_match(name_pointer,const char *,size_t,eight_bits);
+/* two routines defined in \.{ctangle.w} and \.{cweave.w} */
+extern void init_node(name_pointer);
@ Code related to error handling:
@d spotless 0 /* |history| value for normal jobs */
@d harmless_message 1 /* |history| value when non-serious info was printed */
@d error_message 2 /* |history| value when an error was noted */
@d fatal_message 3 /* |history| value when we had to stop prematurely */
-@d mark_harmless if (history==spotless) history=harmless_message
-@d mark_error history=error_message
+@d mark_harmless() if (history==spotless) history=harmless_message
+@d mark_error() history=error_message
@d confusion(s) fatal("! This can't happen: ",s)
@.This can't happen@>
@@ -192,6 +198,8 @@ extern int wrap_up(void); /* indicate |history| and exit */
extern void err_print(const char *); /* print error message and context */
extern void fatal(const char *,const char *); /* issue error message and die */
extern void overflow(const char *); /* succumb because a table has overflowed */
+@#
+extern void print_stats(void); /* defined in \.{ctangle.w} and \.{cweave.w} */
@ Code related to command line arguments:
@d show_banner flags['b'] /* should the banner line be printed? */
@@ -210,8 +218,8 @@ extern char scn_file_name[]; /* name of |scn_file| */
extern boolean flags[]; /* an option for each 7-bit code */
@ Code related to output:
-@d update_terminal fflush(stdout) /* empty the terminal output buffer */
-@d new_line putchar('\n')
+@d update_terminal() fflush(stdout) /* empty the terminal output buffer */
+@d new_line() putchar('\n')
@d term_write(a,b) fflush(stdout),fwrite(a,sizeof(char),b,stdout)
@<Common code...@>=
@@ -221,11 +229,6 @@ extern FILE *idx_file; /* where index from \.{CWEAVE} goes */
extern FILE *scn_file; /* where list of sections from \.{CWEAVE} goes */
extern FILE *active_file; /* currently active file for \.{CWEAVE} output */
-@ The procedure that gets everything rolling:
-@<Predecl...@>=
-extern void common_init(void);@/
-extern void print_stats(void);
-
@ The following parameters are sufficient to handle \TEX/ (converted to
\.{CWEB}), so they should be sufficient for most applications of \.{CWEB}.
diff --git a/web/c_cpp/cweb/common.w b/web/c_cpp/cweb/common.w
index 4ec17241c3..dbcd57e31f 100644
--- a/web/c_cpp/cweb/common.w
+++ b/web/c_cpp/cweb/common.w
@@ -2,7 +2,7 @@
% This program by Silvio Levy and Donald E. Knuth
% is based on a program by Knuth.
% It is distributed WITHOUT ANY WARRANTY, express or implied.
-% Version 4.8 --- June 2022
+% Version 4.10 --- August 2023
% Copyright (C) 1987,1990,1993,2000 Silvio Levy and Donald E. Knuth
@@ -22,12 +22,12 @@
\def\v{\char'174} % vertical (|) in typewriter font
-\def\title{Common code for CTANGLE and CWEAVE (Version 4.8)}
+\def\title{Common code for CTANGLE and CWEAVE (Version 4.10)}
\def\topofcontents{\null\vfill
\centerline{\titlefont Common code for {\ttitlefont CTANGLE} and
{\ttitlefont CWEAVE}}
\vskip 15pt
- \centerline{(Version 4.8)}
+ \centerline{(Version 4.10)}
\vfill}
\def\botofcontents{\vfill
\noindent
@@ -47,7 +47,7 @@ under the terms of a permission notice identical to this one.
\pageno=\contentspagenumber \advance\pageno by 1
\let\maybe=\iftrue
-@** Introduction. This file contains code common
+@* Introduction. This file contains code common
to both \.{CTANGLE} and \.{CWEAVE}, which roughly concerns the following
problems: character uniformity, input routines, error handling and
parsing of command line. We have tried to concentrate in this file
@@ -129,7 +129,7 @@ char *section_text_end = section_text+longest_name; /* end of |section_text| */
char *id_first; /* where the current identifier begins in the buffer */
char *id_loc; /* just after the current identifier in the buffer */
-@** Input routines. The lowest level of input to the \.{CWEB} programs
+@* Input routines. The lowest level of input to the \.{CWEB} programs
is performed by |input_ln|, which must be told which file to read from.
The return value of |input_ln| is |true| if the read is successful and
|false| if not (generally this means the file has ended). The conventions
@@ -150,22 +150,22 @@ char *loc=buffer; /* points to the next character to be read from the buffer */
char *limit=buffer; /* points to the last character in the buffer */
@ In the unlikely event that your standard I/O library does not
-support |feof|, |getc|, and |ungetc| you may have to change things here.
+support |feof| and |getc| you may have to change things here.
@^system dependencies@>
@c
static boolean input_ln( /* copies a line into |buffer| or returns |false| */
FILE *fp) /* what file to read from */
{
- register int c=EOF; /* character read; initialized so some compilers won't complain */
- register char *k; /* where next character goes */
+ int c=EOF; /* character read; initialized so some compilers won't complain */
+ char *k; /* where next character goes */
if (feof(fp)) return false; /* we have hit end-of-file */
limit = k = buffer; /* beginning of buffer */
while (k<=buffer_end && (c=getc(fp)) != EOF && c!='\n')
if ((*(k++) = c) != ' ') limit = k;
- if (k>buffer_end)
- if ((c=getc(fp))!=EOF && c!='\n') {
- ungetc(c,fp); loc=buffer; err_print("! Input line too long");
+ if (k>buffer_end) {
+ while ((c=getc(fp))!=EOF && c!='\n'); /* discard rest of line */
+ loc=buffer; err_print("! Input line too long");
@.Input line too long@>
}
if (c==EOF && limit==buffer) return false; /* there was nothing after
@@ -175,8 +175,8 @@ FILE *fp) /* what file to read from */
@ @<Predecl...@>=@+static boolean input_ln(FILE *);
-@ Now comes the problem of deciding which file to read from next.
-Recall that the actual text that \.{CWEB} should process comes from two
+@* File handling. Now comes the problem of deciding which file to read from
+next. Recall that the actual text that \.{CWEB} should process comes from two
streams: a |web_file|, which can contain possibly nested include
commands~\.{@@i}, and a |change_file|, which might also contain
includes. The |web_file| together with the currently open include
@@ -313,7 +313,7 @@ check_change(void) /* switches to |change_file| if the buffers match */
return;
}
if (limit>buffer+1 && buffer[0]=='@@') {
- char xyz_code=xisupper(buffer[1])? tolower((int)buffer[1]): buffer[1];
+ if (xisupper(buffer[1])) buffer[1]=tolower((int)buffer[1]);
@<If the current line starts with \.{@@y},
report any discrepancies and |return|@>@;
}
@@ -334,11 +334,11 @@ check_change(void) /* switches to |change_file| if the buffers match */
@ @<Predecl...@>=@+static void check_change(void);
@ @<If the current line starts with \.{@@y}...@>=
-if (xyz_code=='x' || xyz_code=='z') {
+if (buffer[1]=='x' || buffer[1]=='z') {
loc=buffer+2; err_print("! Where is the matching @@y?");
@.Where is the match...@>
}
-else if (xyz_code=='y') {
+else if (buffer[1]=='y') {
if (n>0) {
loc=buffer+2;
printf("\n! Hmm... %d ",n);
@@ -349,37 +349,6 @@ else if (xyz_code=='y') {
return;
}
-@ The |reset_input| procedure, which gets \.{CWEB} ready to read the
-user's \.{CWEB} input, is used at the beginning of phase one of \.{CTANGLE},
-phases one and two of \.{CWEAVE}.
-
-@c
-void
-reset_input(void)
-{
- limit=buffer; loc=buffer+1; buffer[0]=' ';
- @<Open input files@>@;
- include_depth=cur_line=change_line=0;
- change_depth=include_depth;
- changing=true; prime_the_change_buffer(); changing=!changing;
- limit=buffer; loc=buffer+1; buffer[0]=' '; input_has_ended=false;
-}
-
-@ The following code opens the input files.
-@^system dependencies@>
-
-@<Open input files@>=
-if ((web_file=fopen(web_file_name,"r"))==NULL) {
- strcpy(web_file_name,alt_web_file_name);
- if ((web_file=fopen(web_file_name,"r"))==NULL)
- fatal("! Cannot open input file ", web_file_name);
-}
-@.Cannot open input file@>
-@.Cannot open change file@>
-web_file_open=true;
-if ((change_file=fopen(change_file_name,"r"))==NULL)
- fatal("! Cannot open change file ", change_file_name);
-
@ The |get_line| procedure is called when |loc>limit|; it puts the next
line of merged input into the buffer and updates the other variables
appropriately. A space is placed at the right end of the line.
@@ -390,14 +359,7 @@ If we've just changed from the |cur_file| to the |change_file|, or if
the |cur_file| has changed, we tell \.{CTANGLE} to print this
information in the \CEE/ file by means of the |print_where| flag.
-@<Global var...@>=
-sixteen_bits section_count; /* the current section number */
-boolean changed_section[max_sections]; /* is the section changed? */
-boolean change_pending; /* if the current change is not yet recorded in
- |changed_section[section_count]| */
-boolean print_where=false; /* should \.{CTANGLE} print line and file info? */
-
-@ @c
+@c
boolean get_line(void) /* inputs the next line */
{
restart:
@@ -432,7 +394,7 @@ boolean get_line(void) /* inputs the next line */
stop reading it and start reading from the named include file. The
\.{@@i} line should give a complete file name with or without
double quotes.
-If the environment variable \.{CWEBINPUTS} is set, or if the compiler flag
+If the environment variable |CWEBINPUTS| is set, or if the compiler flag
of the same name was defined at compile time,
\.{CWEB} will look for include files in the directory thus named, if
it cannot find them in the current directory.
@@ -462,7 +424,6 @@ The remainder of the \.{@@i} line after the file name is ignored.
goto restart; /* success */
}
if ((kk=getenv("CWEBINPUTS"))!=NULL) {
-@.CWEBINPUTS@>
if ((l=strlen(kk))>max_file_name_length-2) too_long();
strcpy(temp_file_name,kk);
}
@@ -480,6 +441,7 @@ The remainder of the \.{@@i} line after the file name is ignored.
for (; k>=cur_file_name; k--) *(k+l+1)=*k;
strcpy(cur_file_name,temp_file_name);
cur_file_name[l]='/'; /* \UNIX/ pathname separator */
+@^system dependencies@>
if ((cur_file=fopen(cur_file_name,"r"))!=NULL) {
cur_line=0; print_where=true;
goto restart; /* success */
@@ -549,7 +511,45 @@ check_complete(void) {
}
}
-@** Storage of names and strings.
+@ The |reset_input| procedure, which gets \.{CWEB} ready to read the
+user's \.{CWEB} input, is used at the beginning of phase one of \.{CTANGLE},
+phases one and two of \.{CWEAVE}.
+
+@c
+void
+reset_input(void)
+{
+ limit=buffer; loc=buffer+1; buffer[0]=' ';
+ @<Open input files@>@;
+ include_depth=cur_line=change_line=0;
+ change_depth=include_depth;
+ changing=true; prime_the_change_buffer(); changing=!changing;
+ limit=buffer; loc=buffer+1; buffer[0]=' '; input_has_ended=false;
+}
+
+@ The following code opens the input files.
+@^system dependencies@>
+
+@<Open input files@>=
+if ((web_file=fopen(web_file_name,"r"))==NULL) {
+ strcpy(web_file_name,alt_web_file_name);
+ if ((web_file=fopen(web_file_name,"r"))==NULL)
+ fatal("! Cannot open input file ", web_file_name);
+}
+@.Cannot open input file@>
+@.Cannot open change file@>
+web_file_open=true;
+if ((change_file=fopen(change_file_name,"r"))==NULL)
+ fatal("! Cannot open change file ", change_file_name);
+
+@ @<Global var...@>=
+sixteen_bits section_count; /* the current section number */
+boolean changed_section[max_sections]; /* is the section changed? */
+boolean change_pending; /* if the current change is not yet recorded in
+ |changed_section[section_count]| */
+boolean print_where=false; /* should \.{CTANGLE} print line and file info? */
+
+@* Storage of names and strings.
Both \.{CWEAVE} and \.{CTANGLE} store identifiers, section names and
other strings in a large array of |char|s, called |byte_mem|.
Information about the names is kept in the array |name_dir|, whose
@@ -670,15 +670,14 @@ if (p==NULL) {
}
@ The information associated with a new identifier must be initialized
-in a slightly different way in \.{CWEAVE} than in \.{CTANGLE}; hence the
-|init_p| procedure.
+in a slightly different way in \.{CWEAVE} than in \.{CTANGLE}.
@<Enter a new name...@>= {
if (byte_ptr+l>byte_mem_end) overflow("byte memory");
if (name_ptr>=name_dir_end) overflow("name");
strncpy(byte_ptr,first,l);
(++name_ptr)->byte_start=byte_ptr+=l;
- init_p(p,t);
+ if (program==cweave) p->ilk=t, init_node(p);
}
@ If |p| is a |name_pointer| variable, as we have seen,
@@ -977,7 +976,7 @@ name_pointer r) /* section name being compared */
*pfirst=first+(ptrdiff_t)(ss-s);
return extension; /* null extension */
} else return equal;
- else return (q->byte_start==(q+1)->byte_start)? equal: prefix;
+ else return length(q)==0? equal: prefix;
case extension:
if (!ispref) return bad_extension;
first += ss-s;
@@ -990,7 +989,7 @@ name_pointer r) /* section name being compared */
@ @<Predec...@>=@+static int section_name_cmp(char **,size_t,name_pointer);
-@** Reporting errors to the user.
+@* Reporting errors to the user.
A global variable called |history| will contain one of four values
at the end of every run: |spotless| means that no unusual messages were
printed; |harmless_message| means that a message of possible interest
@@ -1017,7 +1016,7 @@ const char *s)
{
*s=='!'? printf("\n%s",s) : printf("%s",s);
if (web_file_open) @<Print error location based on input buffer@>@;
- update_terminal; mark_error;
+ update_terminal(); mark_error();
}
@ The error locations can be indicated by using the global variables
@@ -1040,7 +1039,7 @@ if (l>buffer) {
for (k=buffer; k<l; k++)
if (*k=='\t') putchar(' ');
else putchar(*k); /* print the characters already read */
- new_line;
+ new_line();
for (k=buffer; k<l; k++) putchar(' '); /* space out the next line */
}
for (k=l; k<limit; k++) putchar(*k); /* print the part not yet read */
@@ -1064,7 +1063,7 @@ a status of |EXIT_SUCCESS| if and only if only harmless messages were printed.
@c
int wrap_up(void) {
- if (show_progress) new_line;
+ if (show_progress) new_line();
if (show_stats)
print_stats(); /* print statistics about memory usage */
@<Print the job |history|@>@;
@@ -1114,7 +1113,7 @@ and \.{CWEB} prints an error message that is really for the \.{CWEB}
maintenance person, not the user. In such cases the program says
|confusion("indication of where we are")|.
-@** Command line arguments.
+@* Command line arguments.
The user calls \.{CWEAVE} and \.{CTANGLE} with arguments on the command line.
These are either file names or flags to be turned off (beginning with |"-"|)
or flags to be turned on (beginning with |"+"|).
@@ -1160,7 +1159,7 @@ scan_args(void)
{
char *dot_pos; /* position of |'.'| in the argument */
char *name_pos; /* file name beginning, sans directory */
- register char *s; /* register for scanning strings */
+ char *s; /* pointer for scanning strings */
boolean found_web=false,found_change=false,found_out=false;
/* have these names been seen? */
@@ -1228,17 +1227,15 @@ after the dot. We must check that there is enough room in
@<Complain about argument length@>@;
if (dot_pos==NULL) {
sprintf(tex_file_name,"%s.tex",*argv);
- sprintf(idx_file_name,"%s.idx",*argv);
- sprintf(scn_file_name,"%s.scn",*argv);
sprintf(C_file_name,"%s.c",*argv);
} else {
strcpy(tex_file_name,*argv);
strcpy(C_file_name,*argv);
- if (make_xrefs) { /* indexes will be generated */
- *dot_pos='\0';
- sprintf(idx_file_name,"%s.idx",*argv);
- sprintf(scn_file_name,"%s.scn",*argv);
- }
+ *dot_pos='\0'; /* string now ends where the dot was */
+ }
+ if (make_xrefs) { /* indexes will be generated */
+ sprintf(idx_file_name,"%s.idx",*argv);
+ sprintf(scn_file_name,"%s.scn",*argv);
}
found_out=true;
}
@@ -1263,7 +1260,7 @@ else fatal(
@ @<Complain about arg...@>= fatal("! Filename too long\n", *argv);
@.Filename too long@>
-@** Output. Here is the code that opens the output file:
+@* Output. Here is the code that opens the output file:
@^system dependencies@>
@<Global var...@>=
@@ -1285,4 +1282,4 @@ else {
fatal("! Cannot open output file ", tex_file_name);
}
-@** Index.
+@* Index.
diff --git a/web/c_cpp/cweb/ctang-bs.ch b/web/c_cpp/cweb/ctang-bs.ch
index 911d7d5dcf..6c6331c0c7 100644
--- a/web/c_cpp/cweb/ctang-bs.ch
+++ b/web/c_cpp/cweb/ctang-bs.ch
@@ -17,17 +17,17 @@ by using "huge" pointers.
The ``banner line'' defined here should be changed whenever \.{CTANGLE}
is modified.
-@d banner "This is CTANGLE (Version 4.8)"
+@d banner "This is CTANGLE (Version 4.10)"
@y
The ``banner line'' defined here should be changed whenever \.{CTANGLE}
is modified.
-@d banner "This is CTANGLE (Version 4.8pc/big)"
+@d banner "This is CTANGLE (Version 4.10pc/big)"
@z
-@x Section 10.
- for section names */
+@x Section 11.
+@d ilk dummy.Ilk /* used by \.{CWEAVE} only */
@<Common code...@>=
typedef struct name_info {
@@ -36,7 +36,7 @@ typedef struct name_info {
union {
struct name_info *Rlink; /* right link in binary search tree for section
names */
- char Ilk; /* used by identifiers in \.{CWEAVE} only */
+ eight_bits Ilk; /* used by identifiers in \.{CWEAVE} only */
} dummy;
void *equiv_or_xref; /* info corresponding to names */
} name_info; /* contains information about an identifier or section name */
@@ -52,7 +52,7 @@ extern name_pointer hash[]; /* heads of hash lists */
extern hash_pointer hash_end; /* end of |hash| */
extern hash_pointer h; /* index into hash-head array */
@y
- for section names */
+@d ilk dummy.Ilk /* used by \.{CWEAVE} only */
@f huge extern
@@ -63,7 +63,7 @@ typedef struct name_info {
union {
struct name_info *Rlink; /* right link in binary search tree for section
names */
- char Ilk; /* used by identifiers in \.{CWEAVE} only */
+ eight_bits Ilk; /* used by identifiers in \.{CWEAVE} only */
} dummy;
union {
char *equiv_member;
@@ -144,10 +144,8 @@ text_ptr=text_info+1; text_ptr->tok_start=tok_mem;
@x Section 31.
- eight_bits *end_field; /* ending location of replacement text */
eight_bits *byte_field; /* present location within replacement text */
@y
- eight_bits huge* end_field; /* ending location of replacement text */
eight_bits huge* byte_field; /* present location within replacement text */
@z
@@ -156,10 +154,10 @@ text_ptr=text_info+1; text_ptr->tok_start=tok_mem;
out_char(
eight_bits cur_char)
{
- char *j, *k; /* pointer into |byte_mem| */
+ char *j; /* pointer into |byte_mem| */
@y
out_char(cur_char)
eight_bits cur_char;
{
- char huge* j, huge* k; /* pointer into |byte_mem| */
+ char huge* j; /* pointer into |byte_mem| */
@z
diff --git a/web/c_cpp/cweb/ctang-pc.ch b/web/c_cpp/cweb/ctang-pc.ch
index 00c1937307..25d62cdb6b 100644
--- a/web/c_cpp/cweb/ctang-pc.ch
+++ b/web/c_cpp/cweb/ctang-pc.ch
@@ -9,9 +9,9 @@ that allows >64K arrays. If you need lots of bytes and toks, try the
alternate change files with -bs suffix instead of -pc.
@x section 1
-@d banner "This is CTANGLE (Version 4.8)"
+@d banner "This is CTANGLE (Version 4.10)"
@y
-@d banner "This is CTANGLE (Version 4.8pc)"
+@d banner "This is CTANGLE (Version 4.10pc)"
@z
@x section 17
@d max_bytes 100000 /* the number of bytes in identifiers,
diff --git a/web/c_cpp/cweb/ctang-ql.ch b/web/c_cpp/cweb/ctang-ql.ch
index 809dff497d..91aa24fff2 100644
--- a/web/c_cpp/cweb/ctang-ql.ch
+++ b/web/c_cpp/cweb/ctang-ql.ch
@@ -7,15 +7,15 @@ ex <dev_>cc;"-v -h -c -=500000 ctangle_c"
@x
-\def\title{CTANGLE (Version 4.8)}
+\def\title{CTANGLE (Version 4.10)}
@y
-\def\title{CTANGLE (QL Version 4.8)}
+\def\title{CTANGLE (QL Version 4.10)}
@z
@x section 1
-@d banner "This is CTANGLE (Version 4.8)"
+@d banner "This is CTANGLE (Version 4.10)"
@y
-@d banner "This is CTANGLE (QL Version 4.8)"
+@d banner "This is CTANGLE (QL Version 4.10)"
@z
@x
diff --git a/web/c_cpp/cweb/ctang-vms.ch b/web/c_cpp/cweb/ctang-vms.ch
index a928d912cf..9e311d3aa3 100644
--- a/web/c_cpp/cweb/ctang-vms.ch
+++ b/web/c_cpp/cweb/ctang-vms.ch
@@ -10,12 +10,12 @@ created:
(these changes not necessary for initial bootstrapping)
@x section 1 (01-FEB-1992 ST)
-@d banner "This is CTANGLE (Version 4.8)"
+@d banner "This is CTANGLE (Version 4.10)"
@y
-@d banner "This is CTANGLE (VAX/VMS Version 4.8)"
+@d banner "This is CTANGLE (VAX/VMS Version 4.10)"
@z
-@x section 4 (01-FEB-1992 ST)
+@x section 5 (01-FEB-1992 ST)
#include <ctype.h> /* definition of |@!isalpha|, |@!isdigit| and so on */
#include <stdbool.h> /* definition of |@!bool|, |@!true| and |@!false| */
#include <stddef.h> /* definition of |@!ptrdiff_t| */
diff --git a/web/c_cpp/cweb/ctang-w32.ch b/web/c_cpp/cweb/ctang-w32.ch
index ab76415410..51d3212b13 100644
--- a/web/c_cpp/cweb/ctang-w32.ch
+++ b/web/c_cpp/cweb/ctang-w32.ch
@@ -4,12 +4,12 @@ This is the change file for CWEB's CTANGLE under Win32
Changes necessary for compiling with Borland C/C++
@x section 1
-@d banner "This is CTANGLE (Version 4.8)"
+@d banner "This is CTANGLE (Version 4.10)"
@y
-@d banner "This is CTANGLE (Version 4.8win32)"
+@d banner "This is CTANGLE (Version 4.10win32)"
@z
-@x
+@x section 24
boolean names_match(
name_pointer p, /* points to the proposed match */
const char *first, /* position of first character of string */
@@ -23,15 +23,13 @@ size_t l, /* length of identifier */
eight_bits t) /* not used by \.{CTANGLE} */
@z
-@x
+@x section 25
void
init_node(
name_pointer node)
{
node->equiv=(void *)text_info;
}
-void
-init_p(name_pointer p,eight_bits t) {@+(void)p;@+(void)t;@+}
@y
void
init_node(
@@ -39,6 +37,4 @@ name_pointer node)
{
node->equiv=(void *)text_info;
}
-void __cdecl
-init_p(name_pointer p,eight_bits t) {@+(void)p;@+(void)t;@+}
@z
diff --git a/web/c_cpp/cweb/ctangle.c b/web/c_cpp/cweb/ctangle.c
index 262469d611..2c31732e22 100644
--- a/web/c_cpp/cweb/ctangle.c
+++ b/web/c_cpp/cweb/ctangle.c
@@ -1,8 +1,8 @@
/*1:*/
#line 66 "ctangle.w"
-/*4:*/
-#line 44 "common.h"
+/*5:*/
+#line 48 "common.h"
#include <ctype.h>
#include <stdbool.h>
@@ -12,10 +12,10 @@
#include <stdlib.h>
#include <string.h>
-/*:4*/
+/*:5*/
#line 67 "ctangle.w"
-#define banner "This is CTANGLE (Version 4.8)" \
+#define banner "This is CTANGLE (Version 4.10)" \
#define ctangle false
#define cweave true \
@@ -63,14 +63,15 @@
#define llink link
#define rlink dummy.Rlink
#define root name_dir->rlink \
- \
+
+#define ilk dummy.Ilk \
#define spotless 0
#define harmless_message 1
#define error_message 2
#define fatal_message 3
-#define mark_harmless if(history==spotless) history= harmless_message
-#define mark_error history= error_message
+#define mark_harmless() if(history==spotless) history= harmless_message
+#define mark_error() history= error_message
#define confusion(s) fatal("! This can't happen: ",s) \
\
@@ -80,8 +81,8 @@
#define show_stats flags['s']
#define make_xrefs flags['x'] \
-#define update_terminal fflush(stdout)
-#define new_line putchar('\n')
+#define update_terminal() fflush(stdout)
+#define new_line() putchar('\n')
#define term_write(a,b) fflush(stdout) ,fwrite(a,sizeof(char) ,b,stdout) \
#define buf_size 200
@@ -107,11 +108,13 @@
#define output_defs_flag (2*024000-1) \
#define stack_size 50
-#define cur_end cur_state.end_field
+#define cur_state stack[stack_size+1] \
+
#define cur_byte cur_state.byte_field
#define cur_name cur_state.name_field
#define cur_repl cur_state.repl_field
-#define cur_section cur_state.section_field \
+#define cur_section cur_state.section_field
+#define cur_end (cur_repl+1) ->tok_start \
#define section_number 0201
#define identifier 0202 \
@@ -123,8 +126,10 @@
#define verbatim 4 \
#define max_files 256
+#define macro_end (cur_text+1) ->tok_start \
+
#define C_printf(c,a) fprintf(C_file,c,a)
-#define C_putc(c) putc((int) (c) ,C_file) \
+#define C_putc(c) fputc((int) (c) ,C_file) \
#define translit_length 10 \
@@ -162,24 +167,24 @@ typedef uint16_t sixteen_bits;
extern boolean program;
extern int phase;
-/*:3*//*5:*/
-#line 74 "common.h"
+/*:3*//*6:*/
+#line 78 "common.h"
extern char section_text[];
extern char*section_text_end;
extern char*id_first;
extern char*id_loc;
-/*:5*//*6:*/
-#line 92 "common.h"
+/*:6*//*7:*/
+#line 96 "common.h"
extern char buffer[];
extern char*buffer_end;
extern char*loc;
extern char*limit;
-/*:6*//*7:*/
-#line 109 "common.h"
+/*:7*//*8:*/
+#line 113 "common.h"
extern int include_depth;
extern FILE*file[];
@@ -194,16 +199,16 @@ extern boolean input_has_ended;
extern boolean changing;
extern boolean web_file_open;
-/*:7*//*9:*/
-#line 129 "common.h"
+/*:8*//*10:*/
+#line 133 "common.h"
extern sixteen_bits section_count;
extern boolean changed_section[];
extern boolean change_pending;
extern boolean print_where;
-/*:9*//*10:*/
-#line 143 "common.h"
+/*:10*//*11:*/
+#line 148 "common.h"
typedef struct name_info{
char*byte_start;
@@ -211,7 +216,7 @@ struct name_info*link;
union{
struct name_info*Rlink;
-char Ilk;
+eight_bits Ilk;
}dummy;
void*equiv_or_xref;
}name_info;
@@ -227,13 +232,13 @@ extern name_pointer hash[];
extern hash_pointer hash_end;
extern hash_pointer h;
-/*:10*//*12:*/
-#line 187 "common.h"
+/*:11*//*13:*/
+#line 193 "common.h"
extern int history;
-/*:12*//*14:*/
-#line 203 "common.h"
+/*:13*//*15:*/
+#line 211 "common.h"
extern int argc;
extern char**argv;
@@ -243,8 +248,8 @@ extern char idx_file_name[];
extern char scn_file_name[];
extern boolean flags[];
-/*:14*//*15:*/
-#line 217 "common.h"
+/*:15*//*16:*/
+#line 225 "common.h"
extern FILE*C_file;
extern FILE*tex_file;
@@ -252,7 +257,7 @@ extern FILE*idx_file;
extern FILE*scn_file;
extern FILE*active_file;
-/*:15*/
+/*:16*/
#line 69 "ctangle.w"
/*19:*/
@@ -265,10 +270,9 @@ sixteen_bits text_link;
typedef text*text_pointer;
/*:19*//*31:*/
-#line 274 "ctangle.w"
+#line 267 "ctangle.w"
typedef struct{
-eight_bits*end_field;
eight_bits*byte_field;
name_pointer name_field;
text_pointer repl_field;
@@ -290,32 +294,30 @@ static eight_bits*tok_mem_end= tok_mem+max_toks-1;
static eight_bits*tok_ptr;
/*:20*//*26:*/
-#line 200 "ctangle.w"
+#line 196 "ctangle.w"
static text_pointer last_unnamed;
/*:26*//*32:*/
-#line 291 "ctangle.w"
+#line 285 "ctangle.w"
-static output_state cur_state;
-
-static output_state stack[stack_size+1];
+static output_state stack[stack_size+2];
static stack_pointer stack_end= stack+stack_size;
static stack_pointer stack_ptr;
/*:32*//*37:*/
-#line 367 "ctangle.w"
+#line 357 "ctangle.w"
static int cur_val;
/*:37*//*42:*/
-#line 459 "ctangle.w"
+#line 449 "ctangle.w"
static eight_bits out_state;
static boolean protect;
/*:42*//*45:*/
-#line 490 "ctangle.w"
+#line 480 "ctangle.w"
static name_pointer output_files[max_files];
static name_pointer*cur_out_file,*end_output_files,*an_output_file;
@@ -323,33 +325,33 @@ static char cur_section_name_char;
static char output_file_name[longest_name+1];
/*:45*//*52:*/
-#line 590 "ctangle.w"
+#line 573 "ctangle.w"
static boolean output_defs_seen= false;
/*:52*//*57:*/
-#line 703 "ctangle.w"
+#line 687 "ctangle.w"
-static char translit[128][translit_length];
+static char translit[0200][translit_length];
/*:57*//*62:*/
-#line 779 "ctangle.w"
+#line 763 "ctangle.w"
static eight_bits ccode[256];
/*:62*//*66:*/
-#line 839 "ctangle.w"
+#line 823 "ctangle.w"
static boolean comment_continues= false;
/*:66*//*68:*/
-#line 876 "ctangle.w"
+#line 860 "ctangle.w"
static name_pointer cur_section_name;
static boolean no_where;
/*:68*//*82:*/
-#line 1193 "ctangle.w"
+#line 1177 "ctangle.w"
static text_pointer cur_text;
static eight_bits next_control;
@@ -357,92 +359,94 @@ static eight_bits next_control;
/*:82*/
#line 71 "ctangle.w"
-/*8:*/
-#line 123 "common.h"
+/*4:*/
+#line 43 "common.h"
+
+extern void common_init(void);
+
+/*:4*//*9:*/
+#line 127 "common.h"
extern boolean get_line(void);
extern void check_complete(void);
extern void reset_input(void);
-/*:8*//*11:*/
-#line 166 "common.h"
+/*:9*//*12:*/
+#line 171 "common.h"
-extern boolean names_match(name_pointer,const char*,size_t,eight_bits);
extern name_pointer id_lookup(const char*,const char*,eight_bits);
extern name_pointer section_lookup(char*,char*,boolean);
-extern void init_node(name_pointer);
-extern void init_p(name_pointer,eight_bits);
extern void print_prefix_name(name_pointer);
extern void print_section_name(name_pointer);
extern void sprint_section_name(char*,name_pointer);
-/*:11*//*13:*/
-#line 190 "common.h"
+extern boolean names_match(name_pointer,const char*,size_t,eight_bits);
+
+extern void init_node(name_pointer);
+
+/*:12*//*14:*/
+#line 196 "common.h"
extern int wrap_up(void);
extern void err_print(const char*);
extern void fatal(const char*,const char*);
extern void overflow(const char*);
-/*:13*//*16:*/
-#line 225 "common.h"
-
-extern void common_init(void);
extern void print_stats(void);
-/*:16*//*30:*/
-#line 246 "ctangle.w"
+/*:14*//*30:*/
+#line 242 "ctangle.w"
static void store_two_bytes(sixteen_bits);
/*:30*//*35:*/
-#line 330 "ctangle.w"
+#line 321 "ctangle.w"
static void push_level(name_pointer);
static void pop_level(boolean);
/*:35*//*39:*/
-#line 404 "ctangle.w"
+#line 394 "ctangle.w"
static void get_output(void);
/*:39*//*44:*/
-#line 480 "ctangle.w"
+#line 470 "ctangle.w"
static void flush_buffer(void);
/*:44*//*49:*/
-#line 557 "ctangle.w"
+#line 541 "ctangle.w"
static void phase_two(void);
/*:49*//*53:*/
-#line 593 "ctangle.w"
+#line 576 "ctangle.w"
static void output_defs(void);
static void out_char(eight_bits);
/*:53*//*65:*/
-#line 819 "ctangle.w"
+#line 803 "ctangle.w"
static eight_bits skip_ahead(void);
static boolean skip_comment(boolean);
/*:65*//*70:*/
-#line 926 "ctangle.w"
+#line 910 "ctangle.w"
static eight_bits get_next(void);
/*:70*//*84:*/
-#line 1219 "ctangle.w"
+#line 1203 "ctangle.w"
static void scan_repl(eight_bits);
/*:84*//*91:*/
-#line 1411 "ctangle.w"
+#line 1395 "ctangle.w"
static void scan_section(void);
/*:91*//*99:*/
-#line 1488 "ctangle.w"
+#line 1472 "ctangle.w"
static void phase_one(void);
/*:99*//*101:*/
-#line 1521 "ctangle.w"
+#line 1505 "ctangle.w"
static void skip_limbo(void);
/*:101*/
@@ -471,24 +475,24 @@ text_ptr= text_info+1;text_ptr->tok_start= tok_mem;
init_node(name_dir);
/*:23*//*27:*/
-#line 203 "ctangle.w"
+#line 199 "ctangle.w"
last_unnamed= text_info;text_info->text_link= macro;
/*:27*//*46:*/
-#line 500 "ctangle.w"
+#line 490 "ctangle.w"
cur_out_file= end_output_files= output_files+max_files;
/*:46*//*58:*/
-#line 706 "ctangle.w"
+#line 690 "ctangle.w"
-{
-int i;
-for(i= 0;i<128;i++)sprintf(translit[i],"X%02X",(unsigned int)(128+i));
+{int i;
+for(i= 0;i<0200;i++)
+snprintf(translit[i],translit_length,"X%02X",(unsigned int)(0200+i));
}
/*:58*//*63:*/
-#line 782 "ctangle.w"
+#line 766 "ctangle.w"
{
int c;
for(c= 0;c<256;c++)ccode[c]= ignore;
@@ -508,7 +512,7 @@ ccode['<']= ccode['(']= section_name;
ccode['\'']= ord;
/*:63*//*78:*/
-#line 1114 "ctangle.w"
+#line 1098 "ctangle.w"
section_text[0]= ' ';
/*:78*/
@@ -534,7 +538,7 @@ return length(p)==l&&strncmp(first,p->byte_start,l)==0;
}
/*:24*//*25:*/
-#line 170 "ctangle.w"
+#line 168 "ctangle.w"
void
init_node(
@@ -542,11 +546,9 @@ name_pointer node)
{
node->equiv= (void*)text_info;
}
-void
-init_p(name_pointer p,eight_bits t){(void)p;(void)t;}
/*:25*//*29:*/
-#line 236 "ctangle.w"
+#line 232 "ctangle.w"
static void
store_two_bytes(
@@ -558,7 +560,7 @@ if(tok_ptr+2> tok_mem_end)overflow("token");
}
/*:29*//*34:*/
-#line 315 "ctangle.w"
+#line 307 "ctangle.w"
static void
push_level(
@@ -569,13 +571,12 @@ if(stack_ptr==stack_end)overflow("stack");
stack_ptr++;
if(p!=NULL){
cur_name= p;cur_repl= (text_pointer)p->equiv;
-cur_byte= cur_repl->tok_start;cur_end= (cur_repl+1)->tok_start;
-cur_section= 0;
+cur_byte= cur_repl->tok_start;cur_section= 0;
}
}
/*:34*//*36:*/
-#line 338 "ctangle.w"
+#line 329 "ctangle.w"
static void
pop_level(
@@ -583,15 +584,14 @@ boolean flag)
{
if(flag&&cur_repl->text_link<section_flag){
cur_repl= cur_repl->text_link+text_info;
-cur_byte= cur_repl->tok_start;cur_end= (cur_repl+1)->tok_start;
-return;
+cur_byte= cur_repl->tok_start;return;
}
stack_ptr--;
if(stack_ptr> stack)cur_state= *stack_ptr;
}
/*:36*//*38:*/
-#line 374 "ctangle.w"
+#line 364 "ctangle.w"
static void
get_output(void)
@@ -614,7 +614,7 @@ switch(a/024000){
case 0:cur_val= (int)a;out_char(identifier);break;
case 1:if(a==output_defs_flag)output_defs();
else/*40:*/
-#line 409 "ctangle.w"
+#line 399 "ctangle.w"
{
a-= 024000;
@@ -628,7 +628,7 @@ goto restart;
}
/*:40*/
-#line 395 "ctangle.w"
+#line 385 "ctangle.w"
break;
default:cur_val= (int)a-050000;
@@ -639,7 +639,7 @@ out_char(section_number);
}
/*:38*//*43:*/
-#line 467 "ctangle.w"
+#line 457 "ctangle.w"
static void
flush_buffer(void)
@@ -648,13 +648,13 @@ C_putc('\n');
if(cur_line%100==0&&show_progress){
putchar('.');
if(cur_line%500==0)printf("%d",cur_line);
-update_terminal;
+update_terminal();
}
cur_line++;
}
/*:43*//*48:*/
-#line 519 "ctangle.w"
+#line 509 "ctangle.w"
static void
phase_two(void){
@@ -662,47 +662,41 @@ phase= 2;
web_file_open= false;
cur_line= 1;
/*33:*/
-#line 304 "ctangle.w"
+#line 296 "ctangle.w"
stack_ptr= stack+1;cur_name= name_dir;cur_repl= text_info->text_link+text_info;
-cur_byte= cur_repl->tok_start;cur_end= (cur_repl+1)->tok_start;cur_section= 0;
+cur_byte= cur_repl->tok_start;cur_section= 0;
/*:33*/
-#line 525 "ctangle.w"
+#line 515 "ctangle.w"
/*51:*/
-#line 586 "ctangle.w"
+#line 569 "ctangle.w"
if(!output_defs_seen)
output_defs();
/*:51*/
-#line 526 "ctangle.w"
+#line 516 "ctangle.w"
if(text_info->text_link==macro&&cur_out_file==end_output_files){
-fputs("\n! No program text was specified.",stdout);mark_harmless;
+fputs("\n! No program text was specified.",stdout);mark_harmless();
}
else{
-if(cur_out_file==end_output_files){
if(show_progress){
-printf("\nWriting the output file (%s):",C_file_name);
-update_terminal;
-}
-}
-else{
-if(show_progress){
-fputs("\nWriting the output files:",stdout);
+printf(cur_out_file==end_output_files?
+"\nWriting the output file (%s):":
+"\nWriting the output files: (%s)",C_file_name);
-printf(" (%s)",C_file_name);
-update_terminal;
-}
-if(text_info->text_link==macro)goto writeloop;
+update_terminal();
}
+if(text_info->text_link!=macro){
while(stack_ptr> stack)get_output();
flush_buffer();
-writeloop:/*50:*/
-#line 563 "ctangle.w"
+}
+/*50:*/
+#line 547 "ctangle.w"
for(an_output_file= end_output_files;an_output_file> cur_out_file;){
an_output_file--;
@@ -711,29 +705,28 @@ fclose(C_file);
if((C_file= fopen(output_file_name,"wb"))==NULL)
fatal("! Cannot open output file ",output_file_name);
-if(show_progress){printf("\n(%s)",output_file_name);update_terminal;}
+if(show_progress){printf("\n(%s)",output_file_name);update_terminal();}
cur_line= 1;
stack_ptr= stack+1;
cur_name= *an_output_file;
cur_repl= (text_pointer)cur_name->equiv;
cur_byte= cur_repl->tok_start;
-cur_end= (cur_repl+1)->tok_start;
while(stack_ptr> stack)get_output();
flush_buffer();
}
/*:50*/
-#line 549 "ctangle.w"
+#line 533 "ctangle.w"
if(show_happiness){
-if(show_progress)new_line;
+if(show_progress)new_line();
fputs("Done.",stdout);
}
}
}
/*:48*//*54:*/
-#line 600 "ctangle.w"
+#line 585 "ctangle.w"
static void
output_defs(void)
@@ -743,13 +736,12 @@ push_level(NULL);
for(cur_text= text_info+1;cur_text<text_ptr;cur_text++)
if(cur_text->text_link==macro){
cur_byte= cur_text->tok_start;
-cur_end= (cur_text+1)->tok_start;
C_printf("%s","#define ");
out_state= normal;
protect= true;
-while(cur_byte<cur_end){
+while(cur_byte<macro_end){
a= *cur_byte++;
-if(cur_byte==cur_end&&a=='\n')break;
+if(cur_byte==macro_end&&a=='\n')break;
if(out_state==verbatim&&a!=string&&a!=constant&&a!='\n')
C_putc(a);
@@ -774,35 +766,35 @@ pop_level(false);
}
/*:54*//*55:*/
-#line 644 "ctangle.w"
+#line 628 "ctangle.w"
static void
out_char(
eight_bits cur_char)
{
-char*j,*k;
+char*j;
restart:
switch(cur_char){
case'\n':if(protect&&out_state!=verbatim)C_putc(' ');
if(protect||out_state==verbatim)C_putc('\\');
flush_buffer();if(out_state!=verbatim)out_state= normal;break;
/*59:*/
-#line 712 "ctangle.w"
+#line 696 "ctangle.w"
case identifier:
if(out_state==num_or_id)C_putc(' ');
-for(j= (cur_val+name_dir)->byte_start,k= (cur_val+name_dir+1)->byte_start;
-j<k;j++)
+for(j= (cur_val+name_dir)->byte_start;
+j<(cur_val+name_dir+1)->byte_start;j++)
if((eight_bits)(*j)<0200)C_putc(*j);
else C_printf("%s",translit[(eight_bits)(*j)-0200]);
out_state= num_or_id;break;
/*:59*/
-#line 655 "ctangle.w"
+#line 639 "ctangle.w"
/*60:*/
-#line 722 "ctangle.w"
+#line 706 "ctangle.w"
case section_number:
if(cur_val> 0)C_printf("/*%d:*/",cur_val);
@@ -819,8 +811,8 @@ C_printf("\n#line %d \"",(int)a);
cur_val= (int)(*cur_byte++-0200)*0400;
cur_val+= *cur_byte++;
-for(j= (cur_val+name_dir)->byte_start,k= (cur_val+name_dir+1)->byte_start;
-j<k;j++){
+for(j= (cur_val+name_dir)->byte_start;
+j<(cur_val+name_dir+1)->byte_start;j++){
if(*j=='\\'||*j=='"')C_putc('\\');
C_putc(*j);
}
@@ -829,10 +821,10 @@ C_putc('"');C_putc('\n');
break;
/*:60*/
-#line 656 "ctangle.w"
+#line 640 "ctangle.w"
/*56:*/
-#line 674 "ctangle.w"
+#line 658 "ctangle.w"
case plus_plus:C_putc('+');C_putc('+');out_state= normal;break;
case minus_minus:C_putc('-');C_putc('-');out_state= normal;break;
@@ -853,7 +845,7 @@ case minus_gt_ast:C_putc('-');C_putc('>');C_putc('*');out_state= normal;
break;
/*:56*/
-#line 657 "ctangle.w"
+#line 641 "ctangle.w"
case'=':case'>':C_putc(cur_char);C_putc(' ');
out_state= normal;break;
@@ -872,7 +864,7 @@ default:C_putc(cur_char);out_state= normal;break;
}
/*:55*//*64:*/
-#line 803 "ctangle.w"
+#line 787 "ctangle.w"
static eight_bits
skip_ahead(void)
@@ -890,7 +882,7 @@ if(c!=ignore||*(loc-1)=='>')return c;
}
/*:64*//*67:*/
-#line 842 "ctangle.w"
+#line 826 "ctangle.w"
static boolean skip_comment(
boolean is_long_comment)
@@ -924,7 +916,7 @@ else loc++;
}
/*:67*//*69:*/
-#line 883 "ctangle.w"
+#line 867 "ctangle.w"
static eight_bits
get_next(void)
@@ -938,7 +930,7 @@ if(get_line()==false)return new_section;
else if(print_where&&!no_where){
print_where= false;
/*85:*/
-#line 1229 "ctangle.w"
+#line 1213 "ctangle.w"
{
eight_bits a;
@@ -955,7 +947,7 @@ store_id(a);
}
/*:85*/
-#line 895 "ctangle.w"
+#line 879 "ctangle.w"
}
else return(eight_bits)'\n';
@@ -968,7 +960,7 @@ else continue;
}
loc++;
if(xisdigit(c)||c=='.')/*73:*/
-#line 967 "ctangle.w"
+#line 951 "ctangle.w"
{
boolean hex_flag= false;
id_first= loc-1;
@@ -1002,13 +994,13 @@ return constant;
}
/*:73*/
-#line 906 "ctangle.w"
+#line 890 "ctangle.w"
else if(c=='\''||c=='"'
||((c=='L'||c=='u'||c=='U')&&(*loc=='\''||*loc=='"'))
||((c=='u'&&*loc=='8')&&(*(loc+1)=='\''||*(loc+1)=='"')))
/*74:*/
-#line 1004 "ctangle.w"
+#line 988 "ctangle.w"
{
char delim= (char)c;
id_first= section_text+1;
@@ -1052,11 +1044,11 @@ return string;
}
/*:74*/
-#line 910 "ctangle.w"
+#line 894 "ctangle.w"
else if(isalpha((int)c)||isxalpha(c)||ishigh(c))
/*72:*/
-#line 958 "ctangle.w"
+#line 942 "ctangle.w"
{
id_first= --loc;
do
@@ -1067,10 +1059,10 @@ id_loc= loc;return identifier;
}
/*:72*/
-#line 912 "ctangle.w"
+#line 896 "ctangle.w"
else if(c=='@')/*75:*/
-#line 1049 "ctangle.w"
+#line 1033 "ctangle.w"
switch(c= ccode[(eight_bits)*loc++]){
case ignore:continue;
@@ -1085,11 +1077,11 @@ continue;
case section_name:
cur_section_name_char= *(loc-1);
/*77:*/
-#line 1094 "ctangle.w"
+#line 1078 "ctangle.w"
{
char*k= section_text;
/*79:*/
-#line 1116 "ctangle.w"
+#line 1100 "ctangle.w"
while(true){
if(loc> limit&&get_line()==false){
@@ -1099,7 +1091,7 @@ loc= buffer+1;break;
}
c= (eight_bits)*loc;
/*80:*/
-#line 1139 "ctangle.w"
+#line 1123 "ctangle.w"
if(c=='@'){
c= (eight_bits)*(loc+1);
@@ -1118,7 +1110,7 @@ err_print("! Nesting of section names not allowed");break;
}
/*:80*/
-#line 1124 "ctangle.w"
+#line 1108 "ctangle.w"
loc++;if(k<section_text_end)k++;
if(xisspace(c)){
@@ -1130,12 +1122,12 @@ if(k>=section_text_end){
fputs("\n! Section name too long: ",stdout);
term_write(section_text+1,25);
-printf("...");mark_harmless;
+printf("...");mark_harmless();
}
if(*k==' '&&k> section_text)k--;
/*:79*/
-#line 1096 "ctangle.w"
+#line 1080 "ctangle.w"
if(k-section_text> 3&&strncmp(k-2,"...",3)==0)
cur_section_name= section_lookup(section_text+1,k-3,true);
@@ -1144,7 +1136,7 @@ else cur_section_name= section_lookup(section_text+1,k,false);
if(cur_section_name_char=='(')
/*47:*/
-#line 504 "ctangle.w"
+#line 494 "ctangle.w"
{
for(an_output_file= cur_out_file;
@@ -1158,16 +1150,16 @@ else overflow("output files");
}
/*:47*/
-#line 1104 "ctangle.w"
+#line 1088 "ctangle.w"
return section_name;
}
/*:77*/
-#line 1062 "ctangle.w"
+#line 1046 "ctangle.w"
case string:/*81:*/
-#line 1161 "ctangle.w"
+#line 1145 "ctangle.w"
id_first= loc++;*(limit+1)= '@';*(limit+2)= '>';
while(*loc!='@'||*(loc+1)!='>')loc++;
@@ -1177,10 +1169,10 @@ id_loc= loc;loc+= 2;
return string;
/*:81*/
-#line 1063 "ctangle.w"
+#line 1047 "ctangle.w"
case ord:/*76:*/
-#line 1074 "ctangle.w"
+#line 1058 "ctangle.w"
id_first= loc;
if(*loc=='\\')
@@ -1202,13 +1194,13 @@ loc++;
return ord;
/*:76*/
-#line 1064 "ctangle.w"
+#line 1048 "ctangle.w"
default:return c;
}
/*:75*/
-#line 913 "ctangle.w"
+#line 897 "ctangle.w"
else if(xisspace(c)){
if(!preprocessing||loc> limit)continue;
@@ -1218,7 +1210,7 @@ else return(eight_bits)' ';
}
else if(c=='#'&&loc==buffer+1)preprocessing= true;
mistake:/*71:*/
-#line 935 "ctangle.w"
+#line 919 "ctangle.w"
switch(c){
case'+':if(*loc=='+')compress(plus_plus);break;
@@ -1243,14 +1235,14 @@ case'!':if(*loc=='=')compress(non_eq);break;
}
/*:71*/
-#line 921 "ctangle.w"
+#line 905 "ctangle.w"
return c;
}
}
/*:69*//*83:*/
-#line 1197 "ctangle.w"
+#line 1181 "ctangle.w"
static void
scan_repl(
@@ -1258,7 +1250,7 @@ eight_bits t)
{
sixteen_bits a;
if(t==section_name)/*85:*/
-#line 1229 "ctangle.w"
+#line 1213 "ctangle.w"
{
eight_bits a;
@@ -1275,11 +1267,11 @@ store_id(a);
}
/*:85*/
-#line 1203 "ctangle.w"
+#line 1187 "ctangle.w"
while(true)switch(a= get_next()){
/*86:*/
-#line 1244 "ctangle.w"
+#line 1228 "ctangle.w"
case identifier:store_id(a);
if(*buffer=='#'&&(
@@ -1292,7 +1284,7 @@ break;
case section_name:if(t!=section_name)goto done;
else{
/*87:*/
-#line 1285 "ctangle.w"
+#line 1269 "ctangle.w"
{
char*try_loc= loc;
while(*try_loc==' '&&try_loc<limit)try_loc++;
@@ -1305,13 +1297,13 @@ if(*try_loc=='=')err_print("! Missing `@ ' before a named section");
}
/*:87*/
-#line 1255 "ctangle.w"
+#line 1239 "ctangle.w"
a= cur_section_name-name_dir;
app_repl((a/0400)+0250);
app_repl(a%0400);
/*85:*/
-#line 1229 "ctangle.w"
+#line 1213 "ctangle.w"
{
eight_bits a;
@@ -1328,7 +1320,7 @@ store_id(a);
}
/*:85*/
-#line 1259 "ctangle.w"
+#line 1243 "ctangle.w"
}
break;
@@ -1340,7 +1332,7 @@ a= output_defs_flag;
app_repl((a/0400)+0200);
app_repl(a%0400);
/*85:*/
-#line 1229 "ctangle.w"
+#line 1213 "ctangle.w"
{
eight_bits a;
@@ -1357,13 +1349,13 @@ store_id(a);
}
/*:85*/
-#line 1269 "ctangle.w"
+#line 1253 "ctangle.w"
}
break;
case constant:case string:
/*88:*/
-#line 1302 "ctangle.w"
+#line 1286 "ctangle.w"
app_repl(a);
while(id_first<id_loc){
@@ -1379,12 +1371,12 @@ app_repl(*id_first++);
app_repl(a);
/*:88*/
-#line 1273 "ctangle.w"
+#line 1257 "ctangle.w"
break;
case ord:
/*89:*/
-#line 1320 "ctangle.w"
+#line 1304 "ctangle.w"
{
int c= (int)((eight_bits)*id_first);
if(c=='\\'){
@@ -1434,7 +1426,7 @@ app_repl(constant);
}
/*:89*/
-#line 1276 "ctangle.w"
+#line 1260 "ctangle.w"
break;
case definition:case format_code:case begin_C:if(t!=section_name)goto done;
@@ -1445,7 +1437,7 @@ err_print("! @d, @f and @c are ignored in C text");continue;
case new_section:goto done;
/*:86*/
-#line 1208 "ctangle.w"
+#line 1192 "ctangle.w"
case')':app_repl(a);
if(t==macro)app_repl(' ');
@@ -1458,7 +1450,7 @@ cur_text= text_ptr;(++text_ptr)->tok_start= tok_ptr;
}
/*:83*//*90:*/
-#line 1378 "ctangle.w"
+#line 1362 "ctangle.w"
static void
scan_section(void)
@@ -1468,12 +1460,12 @@ text_pointer q;
sixteen_bits a;
section_count++;no_where= true;
if(*(loc-1)=='*'&&show_progress){
-printf("*%d",(int)section_count);update_terminal;
+printf("*%d",(int)section_count);update_terminal();
}
next_control= ignore;
while(true){
/*92:*/
-#line 1419 "ctangle.w"
+#line 1403 "ctangle.w"
while(next_control<definition)
@@ -1482,11 +1474,11 @@ loc-= 2;next_control= get_next();
}
/*:92*/
-#line 1392 "ctangle.w"
+#line 1376 "ctangle.w"
if(next_control==definition){
/*93:*/
-#line 1426 "ctangle.w"
+#line 1410 "ctangle.w"
while((next_control= get_next())=='\n');
if(next_control!=identifier){
@@ -1502,7 +1494,7 @@ scan_repl(macro);
cur_text->text_link= macro;
/*:93*/
-#line 1394 "ctangle.w"
+#line 1378 "ctangle.w"
continue;
}
@@ -1512,14 +1504,14 @@ p= name_dir;break;
if(next_control==section_name){
p= cur_section_name;
/*94:*/
-#line 1448 "ctangle.w"
+#line 1432 "ctangle.w"
while((next_control= get_next())=='+');
if(next_control!='='&&next_control!=eq_eq)
continue;
/*:94*/
-#line 1402 "ctangle.w"
+#line 1386 "ctangle.w"
break;
}
@@ -1527,20 +1519,20 @@ return;
}
no_where= print_where= false;
/*95:*/
-#line 1453 "ctangle.w"
+#line 1437 "ctangle.w"
/*96:*/
-#line 1458 "ctangle.w"
+#line 1442 "ctangle.w"
store_two_bytes((sixteen_bits)(0150000+section_count));
/*:96*/
-#line 1454 "ctangle.w"
+#line 1438 "ctangle.w"
scan_repl(section_name);
/*97:*/
-#line 1462 "ctangle.w"
+#line 1446 "ctangle.w"
if(p==name_dir||p==NULL){
last_unnamed->text_link= cur_text-text_info;last_unnamed= cur_text;
@@ -1557,16 +1549,16 @@ cur_text->text_link= section_flag;
/*:97*/
-#line 1456 "ctangle.w"
+#line 1440 "ctangle.w"
/*:95*/
-#line 1408 "ctangle.w"
+#line 1392 "ctangle.w"
}
/*:90*//*98:*/
-#line 1477 "ctangle.w"
+#line 1461 "ctangle.w"
static void
phase_one(void){
@@ -1579,7 +1571,7 @@ check_complete();
}
/*:98*//*100:*/
-#line 1493 "ctangle.w"
+#line 1477 "ctangle.w"
static void
skip_limbo(void)
@@ -1593,7 +1585,7 @@ char c= *loc++;
switch(ccode[(eight_bits)c]){
case new_section:return;
case translit_code:/*102:*/
-#line 1523 "ctangle.w"
+#line 1507 "ctangle.w"
while(xisspace(*loc)&&loc<limit)loc++;
loc+= 3;
@@ -1607,7 +1599,7 @@ char*beg;
sscanf(loc-3,"%x",&i);
while(xisspace(*loc)&&loc<limit)loc++;
beg= loc;
-while(loc<limit&&(xisalpha(*loc)||xisdigit(*loc)||*loc=='_'))loc++;
+while(loc<limit&&(xisalpha(*loc)||xisdigit(*loc)||isxalpha(*loc)))loc++;
if(loc-beg>=translit_length)
err_print("! Replacement string in @l too long");
@@ -1618,7 +1610,7 @@ translit[i-0200][loc-beg]= '\0';
}
/*:102*/
-#line 1505 "ctangle.w"
+#line 1489 "ctangle.w"
break;
case format_code:case'@':break;
case control_text:if(c=='q'||c=='Q'){
@@ -1636,7 +1628,7 @@ default:err_print("! Double @ should be used in limbo");
}
/*:100*//*103:*/
-#line 1549 "ctangle.w"
+#line 1533 "ctangle.w"
void
print_stats(void){
diff --git a/web/c_cpp/cweb/ctangle.w b/web/c_cpp/cweb/ctangle.w
index 0c372e59ed..c8ae55df85 100644
--- a/web/c_cpp/cweb/ctangle.w
+++ b/web/c_cpp/cweb/ctangle.w
@@ -2,7 +2,7 @@
% This program by Silvio Levy and Donald E. Knuth
% is based on a program by Knuth.
% It is distributed WITHOUT ANY WARRANTY, express or implied.
-% Version 4.8 --- June 2022
+% Version 4.10 --- August 2023
% Copyright (C) 1987,1990,1993,2000 Silvio Levy and Donald E. Knuth
@@ -27,11 +27,11 @@
\mathchardef\RA="3221 % right arrow
\mathchardef\BA="3224 % double arrow
-\def\title{CTANGLE (Version 4.8)}
+\def\title{CTANGLE (Version 4.10)}
\def\topofcontents{\null\vfill
\centerline{\titlefont The {\ttitlefont CTANGLE} processor}
\vskip 15pt
- \centerline{(Version 4.8)}
+ \centerline{(Version 4.10)}
\vfill}
\def\botofcontents{\vfill
\noindent
@@ -61,7 +61,7 @@ Joachim Schrod, Lee Wittenberg, and others who have contributed improvements.
The ``banner line'' defined here should be changed whenever \.{CTANGLE}
is modified.
-@d banner "This is CTANGLE (Version 4.8)"
+@d banner "This is CTANGLE (Version 4.10)"
@c
@<Include files@>@/
@@ -162,10 +162,8 @@ eight_bits t) /* not used by \.{CTANGLE} */
return length(p)==l && strncmp(first,p->byte_start,l)==0;
}
-@ The common lookup routine refers to separate routines |init_node| and
-|init_p| when the data structure grows. Actually |init_p| is called only by
-\.{CWEAVE}, but we need to declare a dummy version so that
-the loader won't complain of its absence.
+@ The common lookup routine |id_lookup| refers to a separate routine
+|init_node| when the data structure grows.
@c
void
@@ -174,8 +172,6 @@ name_pointer node)
{
node->equiv=(void *)text_info;
}
-void
-init_p(name_pointer p,eight_bits t) {@+(void)p;@+(void)t;@+}
@* Tokens.
Replacement texts, which represent \CEE/ code in a compressed format,
@@ -247,13 +243,10 @@ sixteen_bits x)
@** Stacks for output. The output process uses a stack to keep track
of what is going on at different ``levels'' as the sections are being
-written out. Entries on this stack have five parts:
-
-\yskip\hang |end_field| is the |tok_mem| location where the replacement
-text of a particular level will end;
+written out. Entries on this stack have four parts:
-\hang |byte_field| is the |tok_mem| location from which the next token
-on a particular level will be read;
+\yskip\hang |byte_field| is the |tok_mem| location from which the next
+token on a particular level will be read;
\hang |name_field| points to the name corresponding to a particular level;
@@ -262,10 +255,10 @@ at a particular level;
\hang |section_field| is the section number, or zero if this is a macro.
-\yskip\noindent The current values of these five quantities are referred to
-quite frequently, so they are stored in a separate place instead of in
-the |stack| array. We call the current values |cur_end|, |cur_byte|,
-|cur_name|, |cur_repl|, and |cur_section|.
+\yskip\noindent The current values of these four quantities are referred to
+quite frequently, so they are stored in an extra slot at the very end of the
+|stack| array. We call the current values |cur_byte|, |cur_name|, |cur_repl|,
+and |cur_section|.
The global variable |stack_ptr| tells how many levels of output are
currently in progress. The end of all output occurs when the stack is
@@ -273,7 +266,6 @@ empty, i.e., when |stack_ptr==stack|.
@<Typed...@>=
typedef struct {
- eight_bits *end_field; /* ending location of replacement text */
eight_bits *byte_field; /* present location within replacement text */
name_pointer name_field; /* |byte_start| index for text being output */
text_pointer repl_field; /* |tok_start| index for text being output */
@@ -282,16 +274,16 @@ typedef struct {
typedef output_state *stack_pointer;
@ @d stack_size 50 /* number of simultaneous levels of macro expansion */
-@d cur_end cur_state.end_field /* current ending location in |tok_mem| */
+@d cur_state stack[stack_size+1] /* |cur_byte|, |cur_name|, |cur_repl|,
+ and |cur_section| */
@d cur_byte cur_state.byte_field /* location of next output byte in |tok_mem|*/
@d cur_name cur_state.name_field /* pointer to current name being expanded */
@d cur_repl cur_state.repl_field /* pointer to current replacement text */
@d cur_section cur_state.section_field /* current section number being expanded */
+@d cur_end (cur_repl+1)->tok_start /* current ending location in |tok_mem| */
@<Private...@>=
-static output_state cur_state; /* |cur_end|, |cur_byte|, |cur_name|, |cur_repl|,
- and |cur_section| */
-static output_state stack[stack_size+1]; /* info for non-current levels */
+static output_state stack[stack_size+2]; /* info for non-current levels */
static stack_pointer stack_end=stack+stack_size; /* end of |stack| */
static stack_pointer stack_ptr; /* first unused location in the output state stack */
@@ -303,7 +295,7 @@ error message will have been generated before we do any of the initialization.
@<Initialize the output stacks@>=
stack_ptr=stack+1; cur_name=name_dir; cur_repl=text_info->text_link+text_info;
-cur_byte=cur_repl->tok_start; cur_end=(cur_repl+1)->tok_start; cur_section=0;
+cur_byte=cur_repl->tok_start; cur_section=0;
@ When the replacement text for name |p| is to be inserted into the output,
the following subroutine is called to save the old level of output and get
@@ -322,8 +314,7 @@ name_pointer p)
stack_ptr++;
if (p!=NULL) { /* |p==NULL| means we are in |output_defs| */
cur_name=p; cur_repl=(text_pointer)p->equiv;
- cur_byte=cur_repl->tok_start; cur_end=(cur_repl+1)->tok_start;
- cur_section=0;
+ cur_byte=cur_repl->tok_start; cur_section=0;
}
}
@@ -342,11 +333,10 @@ boolean flag) /* |flag==false| means we are in |output_defs| */
{
if (flag && cur_repl->text_link<section_flag) { /* link to a continuation */
cur_repl=cur_repl->text_link+text_info; /* stay on the same level */
- cur_byte=cur_repl->tok_start; cur_end=(cur_repl+1)->tok_start;
- return;
+ cur_byte=cur_repl->tok_start; return;
}
stack_ptr--; /* go down to the previous level */
- if (stack_ptr>stack) cur_state=*stack_ptr;
+ if (stack_ptr>stack) cur_state=*stack_ptr;@^system dependencies@>
}
@ The heart of the output procedure is the function |get_output|,
@@ -472,7 +462,7 @@ flush_buffer(void) /* writes one line to output file */
if (cur_line % 100 == 0 && show_progress) {
putchar('.');
if (cur_line % 500 == 0) printf("%d",cur_line);
- update_terminal; /* progress report */
+ update_terminal(); /* progress report */
}
cur_line++;
}
@@ -525,30 +515,24 @@ phase_two (void) {
@<Initialize the output stacks@>@;
@<Output macro definitions if appropriate@>@;
if (text_info->text_link==macro && cur_out_file==end_output_files) {
- fputs("\n! No program text was specified.",stdout); mark_harmless;
+ fputs("\n! No program text was specified.",stdout); mark_harmless();
@.No program text...@>
}
else {
- if (cur_out_file==end_output_files) {
- if (show_progress) {
- printf("\nWriting the output file (%s):",C_file_name);
- update_terminal;
- }
- }
- else {
- if (show_progress) {
- fputs("\nWriting the output files:",stdout);
+ if (show_progress) {
+ printf(cur_out_file==end_output_files ? @|
+ "\nWriting the output file (%s):" : @|
+ "\nWriting the output files: (%s)",C_file_name);
@.Writing the output...@>
- printf(" (%s)",C_file_name);
- update_terminal;
- }
- if (text_info->text_link==macro) goto writeloop;
+ update_terminal();
}
- while (stack_ptr>stack) get_output();
- flush_buffer();
-writeloop: @<Write all the named output files@>@;
+ if (text_info->text_link!=macro) {
+ while (stack_ptr>stack) get_output();
+ flush_buffer();
+ }
+ @<Write all the named output files@>@;
if (show_happiness) {
- if (show_progress) new_line;
+ if (show_progress) new_line();
fputs("Done.",stdout);
}
}
@@ -568,13 +552,12 @@ for (an_output_file=end_output_files; an_output_file>cur_out_file;) {
if ((C_file=fopen(output_file_name,"wb"))==NULL)
fatal("! Cannot open output file ",output_file_name);
@.Cannot open output file@>
- if (show_progress) { printf("\n(%s)",output_file_name); update_terminal; }
+ if (show_progress) { printf("\n(%s)",output_file_name); update_terminal(); }
cur_line=1;
stack_ptr=stack+1;
cur_name=*an_output_file;
cur_repl=(text_pointer)cur_name->equiv;
cur_byte=cur_repl->tok_start;
- cur_end=(cur_repl+1)->tok_start;
while (stack_ptr > stack) get_output();
flush_buffer();
}
@@ -594,8 +577,10 @@ static boolean output_defs_seen=false;
static void output_defs(void);@/
static void out_char(eight_bits);
-@ @d C_printf(c,a) fprintf(C_file,c,a)
-@d C_putc(c) putc((int)(c),C_file) /* isn't \CEE/ wonderfully consistent? */
+@ @d macro_end (cur_text+1)->tok_start /* end of |macro| replacement text */
+@#
+@d C_printf(c,a) fprintf(C_file,c,a)
+@d C_putc(c) fputc((int)(c),C_file) /* isn't \CEE/ wonderfully consistent? */
@c
static void
@@ -606,13 +591,12 @@ output_defs(void)
for (cur_text=text_info+1; cur_text<text_ptr; cur_text++)
if (cur_text->text_link==macro) { /* |cur_text| is the text for a |macro| */
cur_byte=cur_text->tok_start;
- cur_end=(cur_text+1)->tok_start;
C_printf("%s","#define ");
out_state=normal;
protect=true; /* newlines should be preceded by |'\\'| */
- while (cur_byte<cur_end) {
+ while (cur_byte<macro_end) {
a=*cur_byte++;
- if (cur_byte==cur_end && a=='\n') break; /* disregard a final newline */
+ if (cur_byte==macro_end && a=='\n') break; /* disregard a final newline */
if (out_state==verbatim && a!=string && a!=constant && a!='\n')
C_putc(a); /* a high-bit character can occur in a string */
@^high-bit character handling@>
@@ -646,7 +630,7 @@ static void
out_char(
eight_bits cur_char)
{
- char *j, *k; /* pointer into |byte_mem| */
+ char *j; /* pointer into |byte_mem| */
restart:
switch (cur_char) {
case '\n': if (protect && out_state!=verbatim) C_putc(' ');
@@ -690,8 +674,8 @@ case period_ast: C_putc('.');@+C_putc('*'); out_state=normal; break;
case minus_gt_ast: C_putc('-');@+C_putc('>');@+C_putc('*'); out_state=normal;
break;
-@ When an identifier is output to the \CEE/ file, characters in the
-range 128--255 must be changed into something else, so the \CEE/
+@ When an identifier is output to the \CEE/ file, characters in the range
+128--255 (|0200|--|0377|) must be changed into something else, so the \CEE/
compiler won't complain. By default, \.{CTANGLE} converts the
character with code $16 x+y$ to the three characters `\.X$xy$', but
a different transliteration table can be specified. Thus a German
@@ -701,19 +685,19 @@ This makes debugging a lot less confusing.
@d translit_length 10
@<Private...@>=
-static char translit[128][translit_length];
+static char translit[0200][translit_length];
@ @<Set init...@>=
-{
- int i;
- for (i=0;i<128;i++) sprintf(translit[i],"X%02X",(unsigned int)(128+i));
+{ int i;
+ for (i=0;i<0200;i++)
+ snprintf(translit[i],translit_length,"X%02X",(unsigned int)(0200+i));
}
@ @<Case of an identifier@>=@t\1\quad@>
case identifier:
if (out_state==num_or_id) C_putc(' ');
- for (j=(cur_val+name_dir)->byte_start, k=(cur_val+name_dir+1)->byte_start;
- j<k; j++)
+ for (j=(cur_val+name_dir)->byte_start;
+ j<(cur_val+name_dir+1)->byte_start; j++)
if ((eight_bits)(*j)<0200) C_putc(*j);
@^high-bit character handling@>
else C_printf("%s",translit[(eight_bits)(*j)-0200]);
@@ -735,8 +719,8 @@ case section_number:
@:line}{\.{\#line}@>
cur_val=(int)(*cur_byte++-0200)*0400;
cur_val+=*cur_byte++; /* points to the file name */
- for (j=(cur_val+name_dir)->byte_start, k=(cur_val+name_dir+1)->byte_start;
- j<k; j++) {
+ for (j=(cur_val+name_dir)->byte_start;
+ j<(cur_val+name_dir+1)->byte_start; j++) {
if (*j=='\\' || *j=='"') C_putc('\\');
C_putc(*j);
}
@@ -1132,7 +1116,7 @@ if (k>=section_text_end) {
fputs("\n! Section name too long: ",stdout);
@.Section name too long@>
term_write(section_text+1,25);
- printf("..."); mark_harmless;
+ printf("..."); mark_harmless();
}
if (*k==' ' && k>section_text) k--;
@@ -1384,7 +1368,7 @@ scan_section(void)
sixteen_bits a; /* token for left-hand side of definition */
section_count++; @+ no_where=true;
if (*(loc-1)=='*' && show_progress) { /* starred section */
- printf("*%d",(int)section_count); update_terminal;
+ printf("*%d",(int)section_count); update_terminal();
}
next_control=ignore;
while (true) {
@@ -1533,7 +1517,7 @@ skip_limbo(void)
sscanf(loc-3,"%x",&i);
while(xisspace(*loc)&&loc<limit) loc++;
beg=loc;
- while(loc<limit&&(xisalpha(*loc)||xisdigit(*loc)||*loc=='_')) loc++;
+ while(loc<limit&&(xisalpha(*loc)||xisdigit(*loc)||isxalpha(*loc))) loc++;
if (loc-beg>=translit_length)
err_print("! Replacement string in @@l too long");
@.Replacement string in @@l...@>
@@ -1550,7 +1534,7 @@ but not an |int|, we use \.{\%td} to print these quantities.
void
print_stats(void) {
puts("\nMemory usage statistics:");
- printf("%td names (out of %ld)\n",
+ printf("%td names (out of %ld)\n",@^system dependencies@>
(ptrdiff_t)(name_ptr-name_dir),(long)max_names);
printf("%td replacement texts (out of %ld)\n",
(ptrdiff_t)(text_ptr-text_info),(long)max_texts);
diff --git a/web/c_cpp/cweb/cweav-bs.ch b/web/c_cpp/cweb/cweav-bs.ch
index 5a53a8ad0a..1d541d536b 100644
--- a/web/c_cpp/cweb/cweav-bs.ch
+++ b/web/c_cpp/cweb/cweav-bs.ch
@@ -20,17 +20,17 @@ This file contributed by Barry Schwartz, trashman@crud.mn.org, 28 Jun 94.
The ``banner line'' defined here should be changed whenever \.{CWEAVE}
is modified.
-@d banner "This is CWEAVE (Version 4.8)"
+@d banner "This is CWEAVE (Version 4.10)"
@y
The ``banner line'' defined here should be changed whenever \.{CWEAVE}
is modified.
-@d banner "This is CWEAVE (Version 4.8pc/big)"
+@d banner "This is CWEAVE (Version 4.10pc/big)"
@z
-@x Section 10.
- for section names */
+@x Section 11.
+@d ilk dummy.Ilk /* used by \.{CWEAVE} only */
@<Common code...@>=
typedef struct name_info {
@@ -39,7 +39,7 @@ typedef struct name_info {
union {
struct name_info *Rlink; /* right link in binary search tree for section
names */
- char Ilk; /* used by identifiers in \.{CWEAVE} only */
+ eight_bits Ilk; /* used by identifiers in \.{CWEAVE} only */
} dummy;
void *equiv_or_xref; /* info corresponding to names */
} name_info; /* contains information about an identifier or section name */
@@ -55,7 +55,7 @@ extern name_pointer hash[]; /* heads of hash lists */
extern hash_pointer hash_end; /* end of |hash| */
extern hash_pointer h; /* index into hash-head array */
@y
- for section names */
+@d ilk dummy.Ilk /* used by \.{CWEAVE} only */
@f huge extern
@@ -66,7 +66,7 @@ typedef struct name_info {
union {
struct name_info *Rlink; /* right link in binary search tree for section
names */
- char Ilk; /* used by identifiers in \.{CWEAVE} only */
+ eight_bits Ilk; /* used by identifiers in \.{CWEAVE} only */
} dummy;
union {
char *equiv_member;
@@ -146,6 +146,7 @@ static text_pointer tok_start_end; /* end of |tok_start| */
static text_pointer text_ptr; /* first unused position in |tok_start| */
@z
+
@x Section 31. (goes with the previous change)
tok_ptr=max_tok_ptr=tok_mem+1;@/
tok_start[0]=tok_start[1]=tok_mem+1;@/
@@ -187,39 +188,35 @@ max_tok_ptr=tok_mem+1; max_text_ptr=tok_start+1;
@x Section 97.
- char *k, *k_end=(p+1)->byte_start; /* pointers into |byte_mem| */
- out('{');
- for (k=p->byte_start; k<k_end; k++) {
+ char *k; /* pointer into |byte_mem| */
@y
- char huge* k, huge* k_end=(p+1)->byte_start; /* pointers into |byte_mem| */
- out('{');
- for (k=p->byte_start; k<k_end; k++) {
+ char huge* *k; /* pointer into |byte_mem| */
@z
-@x Section 218.
+@x Section 217.
char *p; /* index into |byte_mem| */
@y
char huge *p; /* index into |byte_mem| */
@z
-@x Section 253.
+@x Section 252.
if (cur_name->xref!=(void *)xmem) {
@y
if (cur_name->xref!=(void huge*)xmem) {
@z
-@x Section 255.
+@x Section 254.
static char *cur_byte; /* index into |byte_mem| */
@y
static char huge* cur_byte; /* index into |byte_mem| */
@z
-@x Section 264.
-switch (cur_name->ilk) {@+char *j;@+@t}\6{\4@>
+@x Section 263.
+switch (cur_name->ilk) {@+char *p; /* index into |byte_mem| */@+@t}\6{\4@>
@y
-switch (cur_name->ilk) {@+char huge* j;@+@t}\6{\4@>
+switch (cur_name->ilk) {@+char huge* p; /* index into |byte_mem| */@+@t}\6{\4@>
@z
diff --git a/web/c_cpp/cweb/cweav-pc.ch b/web/c_cpp/cweb/cweav-pc.ch
index eb2e394265..76173410af 100644
--- a/web/c_cpp/cweb/cweav-pc.ch
+++ b/web/c_cpp/cweb/cweav-pc.ch
@@ -11,9 +11,9 @@ that allows >64K arrays. (If you need lots more bytes, try the alternate
change files that have -bs in their name instead of -pc.)
@x section 1
-@d banner "This is CWEAVE (Version 4.8)"
+@d banner "This is CWEAVE (Version 4.10)"
@y
-@d banner "This is CWEAVE (Version 4.8pc)"
+@d banner "This is CWEAVE (Version 4.10pc)"
@z
@x section 17
@@ -21,8 +21,9 @@ change files that have -bs in their name instead of -pc.)
@y
@d max_bytes (unsigned)60000 /* the number of bytes in identifiers,
@z
-@x
-@d max_refs 30000 /* number of cross-references; must be less than 65536 */
+
+@x section 23
+@ @d max_refs 30000 /* number of cross-references; must be less than 65536 */
@y
-@d max_refs 10000 /* number of cross-references; must be less than 65536 */
+@ @d max_refs 10000 /* number of cross-references; must be less than 65536 */
@z
diff --git a/web/c_cpp/cweb/cweav-ql.ch b/web/c_cpp/cweb/cweav-ql.ch
index 94e1f54304..8f40a9dca6 100644
--- a/web/c_cpp/cweb/cweav-ql.ch
+++ b/web/c_cpp/cweb/cweav-ql.ch
@@ -7,15 +7,15 @@ ex <dev_>cc;"-v -h -c =500000 cweave_c"
@x
-\def\title{CWEAVE (Version 4.8)}
+\def\title{CWEAVE (Version 4.10)}
@y
-\def\title{CWEAVE (QL Version 4.8)}
+\def\title{CWEAVE (QL Version 4.10)}
@z
@x section 1
-@d banner "This is CWEAVE (Version 4.8)"
+@d banner "This is CWEAVE (Version 4.10)"
@y
-@d banner "This is CWEAVE (QL Version 4.8)"
+@d banner "This is CWEAVE (QL Version 4.10)"
@z
@x
diff --git a/web/c_cpp/cweb/cweav-vms.ch b/web/c_cpp/cweb/cweav-vms.ch
index 5debd4bd92..d2cef52379 100644
--- a/web/c_cpp/cweb/cweav-vms.ch
+++ b/web/c_cpp/cweb/cweav-vms.ch
@@ -13,12 +13,12 @@ modified:
(also modified by Don Knuth to keep version numbers uptodate)
@x section 1 (01-FEB-1992 ST)
-@d banner "This is CWEAVE (Version 4.8)"
+@d banner "This is CWEAVE (Version 4.10)"
@y
-@d banner "This is CWEAVE (VAX/VMS Version 4.8)"
+@d banner "This is CWEAVE (VAX/VMS Version 4.10)"
@z
-@x section 4 (01-FEB-1992 ST)
+@x section 5 (01-FEB-1992 ST)
#include <ctype.h> /* definition of |@!isalpha|, |@!isdigit| and so on */
#include <stdbool.h> /* definition of |@!bool|, |@!true| and |@!false| */
#include <stddef.h> /* definition of |@!ptrdiff_t| */
diff --git a/web/c_cpp/cweb/cweav-w32.ch b/web/c_cpp/cweb/cweav-w32.ch
index f40d6e3195..94f4c39aa6 100644
--- a/web/c_cpp/cweb/cweav-w32.ch
+++ b/web/c_cpp/cweb/cweav-w32.ch
@@ -2,12 +2,12 @@ This is the change file for CWEB's CWEAVE under Win32
(Contributed by Fabrice Popineau, February 2002)
@x section 1
-@d banner "This is CWEAVE (Version 4.8)"
+@d banner "This is CWEAVE (Version 4.10)"
@y
-@d banner "This is CWEAVE (Version 4.8win32)"
+@d banner "This is CWEAVE (Version 4.10win32)"
@z
-@x
+@x section 32
boolean names_match(
name_pointer p, /* points to the proposed match */
const char *first, /* position of first character of string */
@@ -20,15 +20,3 @@ const char *first, /* position of first character of string */
size_t l, /* length of identifier */
eight_bits t) /* desired |ilk| */
@z
-
-@x
-void
-init_p(
-name_pointer p,
-eight_bits t)
-@y
-void __cdecl
-init_p(
-name_pointer p,
-eight_bits t)
-@z
diff --git a/web/c_cpp/cweb/cweave.w b/web/c_cpp/cweb/cweave.w
index 7de3b4d1d9..70654828c1 100644
--- a/web/c_cpp/cweb/cweave.w
+++ b/web/c_cpp/cweb/cweave.w
@@ -2,7 +2,7 @@
% This program by Silvio Levy and Donald E. Knuth
% is based on a program by Knuth.
% It is distributed WITHOUT ANY WARRANTY, express or implied.
-% Version 4.8 --- June 2022
+% Version 4.10 --- August 2023
% Copyright (C) 1987,1990,1993,2000 Silvio Levy and Donald E. Knuth
@@ -32,11 +32,11 @@
\def\skipxTeX{\\{skip\_\TEX/}}
\def\copyxTeX{\\{copy\_\TEX/}}
-\def\title{CWEAVE (Version 4.8)}
+\def\title{CWEAVE (Version 4.10)}
\def\topofcontents{\null\vfill
\centerline{\titlefont The {\ttitlefont CWEAVE} processor}
\vskip 15pt
- \centerline{(Version 4.8)}
+ \centerline{(Version 4.10)}
\vfill}
\def\botofcontents{\vfill
\noindent
@@ -67,7 +67,7 @@ Crusius, and others who have contributed improvements.
The ``banner line'' defined here should be changed whenever \.{CWEAVE}
is modified.
-@d banner "This is CWEAVE (Version 4.8)"
+@d banner "This is CWEAVE (Version 4.10)"
@c
@<Include files@>@/
@@ -100,7 +100,7 @@ char **av) /* argument values */
phase_one(); /* read all the user's text and store the cross-references */
phase_two(); /* read all the text again and translate it to \TEX/ form */
phase_three(); /* output the cross-reference index */
- if (tracing==fully && !show_progress) new_line;
+ if (tracing==fully && !show_progress) new_line();
return wrap_up(); /* and exit gracefully */
}
@@ -111,13 +111,11 @@ possible changes from this \.{COMMON} interface consistently.
@i common.h
-@ The following parameters are sufficient to handle \TEX/ (converted to
-\.{CWEB}), so they should be sufficient for most applications of \.{CWEAVE}.
+@ \.{CWEAVE} will use the |INT_MAX| limit in section
+|@<Output the code for the beginning...@>| below.
-@d line_length 80 /* lines of \TEX/ output have at most this many characters;
- should be less than 256 */
-@d max_refs 30000 /* number of cross-references; must be less than 65536 */
-@d max_scraps 5000 /* number of tokens in \CEE/ texts being parsed */
+@<Incl...@>=
+#include <limits.h>
@* Data structures exclusive to {\tt CWEAVE}.
As explained in \.{common.w}, the field of a |name_info| structure
@@ -147,7 +145,6 @@ identifiers are \CEE/ or \CPLUSPLUS/ reserved words whose |ilk|
explains how they are to be treated when \CEE/ code is being
formatted.
-@d ilk dummy.Ilk
@d normal 0 /* ordinary identifiers have |normal| ilk */
@d roman 1 /* normal index entries have |roman| ilk */
@d wildcard 2 /* user-formatted index entries have |wildcard| ilk */
@@ -217,7 +214,9 @@ typedef struct xref_info {
} xref_info;
typedef xref_info *xref_pointer;
-@ @<Private...@>=
+@ @d max_refs 30000 /* number of cross-references; must be less than 65536 */
+
+@<Private...@>=
static xref_info xmem[max_refs]; /* contains cross-reference information */
static xref_pointer xmem_end = xmem+max_refs-1;
static xref_pointer xref_ptr; /* the largest occupied position in |xmem| */
@@ -242,7 +241,7 @@ to one-letter identifiers or \CEE/'s reserved words.
If the user has sent the |no_xref| flag (the \.{-x} option of the command line),
it is unnecessary to keep track of cross-references for identifiers.
If one were careful, one could probably make more changes around section
-115 to avoid a lot of identifier looking up.
+|@<Match a prod...@>| to avoid a lot of identifier looking up.
@d append_xref(c) if (xref_ptr==xmem_end) overflow("cross-reference");
else (++xref_ptr)->num=c
@@ -355,7 +354,7 @@ tok_ptr=max_tok_ptr=tok_mem+1;@/
tok_start[0]=tok_start[1]=tok_mem+1;@/
text_ptr=max_text_ptr=tok_start+1;
-@ Here are the three procedures needed to complete |id_lookup|:
+@ Here are the two procedures needed to complete |id_lookup|:
@c
boolean names_match(
name_pointer p, /* points to the proposed match */
@@ -369,14 +368,6 @@ eight_bits t) /* desired |ilk| */
}
void
-init_p(
-name_pointer p,
-eight_bits t)
-{
- p->ilk=t; init_node(p);
-}
-
-void
init_node(
name_pointer p)
{
@@ -923,7 +914,7 @@ convention, but do not allow the string to be longer than |longest_name|.
fputs("\n! String too long: ",stdout);
@.String too long@>
term_write(section_text+1,25);
- printf("..."); mark_error;
+ printf("..."); mark_error();
}
id_loc++;
return string;
@@ -993,7 +984,7 @@ if (k>=section_text_end) {
fputs("\n! Section name too long: ",stdout);
@.Section name too long@>
term_write(section_text+1,25);
- printf("..."); mark_harmless;
+ printf("..."); mark_harmless();
}
if (*k==' ' && k>section_text) k--;
@@ -1087,7 +1078,7 @@ phase_one(void) {
/* it will become |true| if any line changes */
if (*(loc-1)=='*' && show_progress) {
printf("*%d",(int)section_count);
- update_terminal; /* print a progress report */
+ update_terminal(); /* print a progress report */
}
@<Store cross-references in the \TEX/ part of a section@>@;
@<Store cross-references in the definition part of a section@>@;
@@ -1312,13 +1303,13 @@ name_pointer p) /* print anomalies in subtree |p| */
if ((an_output=(cur_xref->num==file_flag))==true) cur_xref=cur_xref->xlink;
if (cur_xref->num <def_flag) {
fputs("\n! Never defined: <",stdout);
- print_section_name(p); putchar('>'); mark_harmless;
+ print_section_name(p); putchar('>'); mark_harmless();
@.Never defined: <section name>@>
}
while (cur_xref->num >=cite_flag) cur_xref=cur_xref->xlink;
if (cur_xref==xmem && !an_output) {
fputs("\n! Never used: <",stdout);
- print_section_name(p); putchar('>'); mark_harmless;
+ print_section_name(p); putchar('>'); mark_harmless();
@.Never used: <section name>@>
}
section_check(p->rlink);
@@ -1335,6 +1326,9 @@ characters long, so we place it into an output buffer. During the output
process, |out_line| will hold the current line number of the line about to
be output.
+@d line_length 80 /* lines of \TEX/ output have at most this many characters;
+ should be less than 256 */
+
@<Private...@>=
static char out_buf[line_length+1]; /* assembled characters */
static char *out_buf_end = out_buf+line_length; /* end of |out_buf| */
@@ -1353,9 +1347,8 @@ carried over to the next line (so that \TEX/ will ignore the completion
of commented-out text).
@d c_line_write(c) fflush(active_file),fwrite(out_buf+1,sizeof(char),c,active_file)
-@d tex_putc(c) putc(c,active_file)
-@d tex_new_line putc('\n',active_file)
@d tex_printf(c) fprintf(active_file,"%s",c)
+@d tex_putc(c) fputc(c,active_file)
@d tex_puts(c) fputs(c,active_file)
@<Predecl...@>=
@@ -1373,7 +1366,7 @@ boolean per_cent,boolean carryover)
while (j>out_buf && *j==' ') j--;
c_line_write(j-out_buf);
if (per_cent) tex_putc('%');
- tex_new_line; out_line++;
+ tex_putc('\n'); out_line++;
if (carryover)
while (j>out_buf)
if (*j--=='%' && (j==out_buf || *j!='\\')) {
@@ -1443,8 +1436,8 @@ to overflow. To make this routine a little faster, we initialize position
out_buf[0]='\\';
@ A long line is broken at a blank space or just before a backslash that isn't
-preceded by another backslash. In the latter case, a |'%'| is output at
-the break.
+preceded by another backslash or a \TeX\ comment marker. In the latter case, a
+|'%'| is output at the break.
@c
static void
@@ -1456,7 +1449,7 @@ break_out(void) /* finds a way to break the output line */
if (*k==' ') {
flush_buffer(k,false,true); return;
}
- if (*(k--)=='\\' && *k!='\\') { /* we've decreased |k| */
+ if (*(k--)=='\\' && *k!='\\' && *k!='%') { /* we've decreased |k| */
flush_buffer(k,true,true); return;
}
}
@@ -1472,7 +1465,7 @@ line by putting a |'%'| just before the last character.
printf("\n! Line had to be broken (output l. %d):\n",out_line);
@.Line had to be broken@>
term_write(out_buf+1, out_ptr-out_buf-1);
- new_line; mark_harmless;
+ new_line(); mark_harmless();
flush_buffer(out_ptr-1,true,true); return;
}
@@ -1491,7 +1484,7 @@ out_section(
sixteen_bits n)
{
char s[6];
- sprintf(s,"%d",(int)n); out_str(s);
+ snprintf(s,6,"%d",(int)n); out_str(s);
if (changed_section[n]) out_str("\\*");
@.\\*@>
}
@@ -1505,9 +1498,9 @@ out_name(
name_pointer p,
boolean quote_xalpha)
{
- char *k, *k_end=(p+1)->byte_start; /* pointers into |byte_mem| */
+ char *k; /* pointer into |byte_mem| */
out('{');
- for (k=p->byte_start; k<k_end; k++) {
+ for (k=p->byte_start; k<(p+1)->byte_start; k++) {
if (isxalpha(*k) && quote_xalpha) out('\\');
@.\\\$@>
@.\\\_@>
@@ -2124,7 +2117,8 @@ identifier&|exp|: \.{\\\\\{}identifier with underlines and
\.{\\X}$n$\.:translated section name\.{\\X}&maybe\cr
\.{@@(@q)@>}\thinspace section name\thinspace\.{@@>}&|section_scrap|:
\.{\\X}$n$\.{:\\.\{}section name with special characters
- quoted\.{\ \}\\X}&maybe\cr
+ quoted\.{\\,\}\\X}\footnote*{The \.{\\,} (thin space) is omitted
+ in ``|inner| \TeX\ mode.''}&maybe\cr
\.{/*}\thinspace comment\thinspace\.{*/}&|insert|: |cancel|
\.{\\C\{}translated comment\.\} |force|&no\cr
\.{//}\thinspace comment&|insert|: |cancel|
@@ -2169,6 +2163,8 @@ blanks that will not match in any productions. Parsing stops when
Since the |scrap| structure will later be used for other purposes, we
declare its second element as a union.
+@d trans trans_plus.Trans /* translation texts of scraps */
+
@<Type...@>=
typedef struct {
eight_bits cat;
@@ -2180,7 +2176,7 @@ typedef struct {
} scrap;
typedef scrap *scrap_pointer;
-@ @d trans trans_plus.Trans /* translation texts of scraps */
+@ @d max_scraps 5000 /* number of tokens in \CEE/ texts being parsed */
@<Private...@>=
static scrap scrap_info[max_scraps]; /* memory array for scraps */
@@ -2219,9 +2215,18 @@ translated without line-break controls.
@d tok_flag (4*id_flag) /* signifies a token list */
@d inner_tok_flag (5*id_flag) /* signifies a token list in `\pb' */
+@<Predecl...@>=
+#ifdef DEBUG
+static void print_text(text_pointer p);
+#endif
+
+@ This function prints a token list for debugging;
+it is not used in |main| at this time.
+
@c
+#ifdef DEBUG
static void
-print_text( /* prints a token list for debugging; not used in |main| */
+print_text(
text_pointer p)
{
token_pointer j; /* index into |tok_mem| */
@@ -2244,10 +2249,9 @@ text_pointer p)
default: @<Print token |r| in symbolic form@>@;
}
}
- update_terminal;
+ update_terminal();
}
-
-@ @<Predecl...@>=@+static void print_text(text_pointer p);
+#endif /* |DEBUG| */
@ @<Print token |r|...@>=
switch (r) {
@@ -2360,9 +2364,9 @@ static int cur_mathness, init_mathness;
understanding the format by comparing the code with the symbolic
productions as they were listed earlier.
-@d begin_math if (cur_mathness==maybe_math) init_mathness=yes_math;
+@d begin_math() if (cur_mathness==maybe_math) init_mathness=yes_math;
else if (cur_mathness==no_math) app_str("${}")
-@d end_math if (cur_mathness==maybe_math) init_mathness=no_math;
+@d end_math() if (cur_mathness==maybe_math) init_mathness=no_math;
else if (cur_mathness==yes_math) app_str("{}$")
@c
@@ -2379,10 +2383,10 @@ token a)
{
if (a==' ' || (a>=big_cancel && a<=big_force) || a==dindent)
/* non-math token */ {
- end_math;
+ end_math();
cur_mathness=no_math;
} else {
- begin_math;
+ begin_math();
cur_mathness=yes_math;
}
app(a);
@@ -2394,11 +2398,11 @@ scrap_pointer a)
{
switch (a->mathness % 4) { /* left boundary */
case (no_math):
- end_math;
+ end_math();
cur_mathness=a->mathness / 4; /* right boundary */
break;
case (yes_math):
- begin_math;
+ begin_math();
cur_mathness=a->mathness / 4; /* right boundary */
break;
case (maybe_math): /* no changes */ break;
@@ -3184,7 +3188,7 @@ current token list is empty and ready to be appended~to.
Note that |freeze_text| does not check to see that |text_ptr| hasn't gotten
too large, since it is assumed that this test was done beforehand.
-@d freeze_text *(++text_ptr)=tok_ptr
+@d freeze_text() *(++text_ptr)=tok_ptr
@<Predecl...@>=
static void reduce(scrap_pointer,short,eight_bits,short,short);@/
@@ -3205,7 +3209,7 @@ short d, short n)
if (k>0) {
j->trans=text_ptr;
j->mathness=4*cur_mathness+init_mathness;
- freeze_text;
+ freeze_text();
}
if (k>1) {
for (i=j+k, i1=j+1; i<=lo_ptr; i++, i1++) {
@@ -3348,13 +3352,13 @@ for (j=scrap_base; j<=lo_ptr; j++) {
if (j->mathness / 4 == yes_math) app('$');
if (tok_ptr+6>tok_mem_end) overflow("token");
}
-freeze_text; return text_ptr-1;
+freeze_text(); return text_ptr-1;
@ @<If semi-tracing, show the irreducible scraps@>=
if (lo_ptr>scrap_base && tracing==partly) {
printf("\nIrreducible scrap sequence in section %d:",(int)section_count);
@.Irreducible scrap sequence...@>
- mark_harmless;
+ mark_harmless();
for (j=scrap_base; j<=lo_ptr; j++) {
putchar(' '); print_cat(j->cat);
}
@@ -3362,7 +3366,7 @@ if (lo_ptr>scrap_base && tracing==partly) {
@ @<If tracing,...@>=
if (tracing==fully) {
- printf("\nTracing after l. %d:\n",cur_line); mark_harmless;
+ printf("\nTracing after l. %d:\n",cur_line); mark_harmless();
@.Tracing after...@>
if (loc>buffer+50) {
printf("...");
@@ -3407,7 +3411,7 @@ been appended:
@d app_scrap(c,b) {
(++scrap_ptr)->cat=(c); scrap_ptr->trans=text_ptr;
scrap_ptr->mathness=5*(b); /* no no, yes yes, or maybe maybe */
- freeze_text;
+ freeze_text();
}
@ @<Append the scr...@>=
@@ -3705,7 +3709,7 @@ outer_parse(void) /* makes scraps from \CEE/ tokens and comments */
@.\\SHC@>
bal=copy_comment(is_long_comment,1); next_control=ignore;
while (bal>0) {
- p=text_ptr; freeze_text; q=C_translate();
+ p=text_ptr; freeze_text(); q=C_translate();
/* at this point we have |tok_ptr+6<=max_toks| */
app(tok_flag+(int)(p-tok_start));
if (make_pb) app_str("\\PB{");
@@ -3753,8 +3757,8 @@ on a particular level will be read;
\yskip\hang |mode_field| is the current mode, either |inner| or |outer|.
\yskip\noindent The current values of these quantities are referred to
-quite frequently, so they are stored in a separate place instead of in the
-|stack| array. We call the current values |cur_end|, |cur_tok|, and
+quite frequently, so they are stored in an extra slot at the very end of
+the |stack| array. We call the current values |cur_end|, |cur_tok|, and
|cur_mode|.
The global variable |stack_ptr| tells how many levels of output are
@@ -3762,26 +3766,28 @@ currently in progress. The end of output occurs when an |end_translation|
token is found, so the stack is never empty except when we first begin the
output process.
-@d inner false /* value of |mode| for \CEE/ texts within \TEX/ texts */
-@d outer true /* value of |mode| for \CEE/ texts in sections */
-
-@<Typed...@>= typedef int mode;
+@s mode int
+@<Typed...@>=
+typedef enum {
+ @!inner, /* value of |mode| for \CEE/ texts within \TEX/ texts */
+ @!outer /* value of |mode| for \CEE/ texts in sections */
+} mode;
typedef struct {
token_pointer end_field; /* ending location of token list */
token_pointer tok_field; /* present location within token list */
- boolean mode_field; /* interpretation of control tokens */
+ mode mode_field; /* interpretation of control tokens */
} output_state;
typedef output_state *stack_pointer;
@ @d stack_size 2000 /* number of simultaneous output levels */
+@d cur_state stack[stack_size] /* |cur_end|, |cur_tok|, |cur_mode| */
@d cur_end cur_state.end_field /* current ending location in |tok_mem| */
@d cur_tok cur_state.tok_field /* location of next output token in |tok_mem| */
@d cur_mode cur_state.mode_field /* current mode of interpretation */
-@d init_stack stack_ptr=stack;cur_mode=outer /* initialize the stack */
+@d init_stack() stack_ptr=stack;cur_mode=outer /* initialize the stack */
@<Private...@>=
-static output_state cur_state; /* |cur_end|, |cur_tok|, |cur_mode| */
-static output_state stack[stack_size]; /* info for non-current levels */
+static output_state stack[stack_size+1]; /* info for non-current levels */
static stack_pointer stack_end=stack+stack_size-1; /* end of |stack| */
static stack_pointer stack_ptr; /* first unused location in the output state stack */
static stack_pointer max_stack_ptr; /* largest value assumed by |stack_ptr| */
@@ -3789,25 +3795,21 @@ static stack_pointer max_stack_ptr; /* largest value assumed by |stack_ptr| */
@ @<Set init...@>=
max_stack_ptr=stack;
+@ @<Predecl...@>=
+static void push_level(text_pointer);
+
@ To insert token-list |p| into the output, the |push_level| subroutine
is called; it saves the old level of output and gets a new one going.
The value of |cur_mode| is not changed.
-@<Predecl...@>=
-static void push_level(text_pointer);@/
-static void pop_level(void);
-
-@ @c
+@c
static void
push_level( /* suspends the current level */
text_pointer p)
{
if (stack_ptr==stack_end) overflow("stack");
- if (stack_ptr>stack) { /* save current state */
- stack_ptr->end_field=cur_end;
- stack_ptr->tok_field=cur_tok;
- stack_ptr->mode_field=cur_mode;
- }
+ if (stack_ptr>stack) /* save current state */
+ *stack_ptr = cur_state;@^system dependencies@>
stack_ptr++;
if (stack_ptr>max_stack_ptr) max_stack_ptr=stack_ptr;
cur_tok=*p; cur_end=*(p+1);
@@ -3815,15 +3817,9 @@ text_pointer p)
@ Conversely, the |pop_level| routine restores the conditions that were in
force when the current level was begun. This subroutine will never be
-called when |stack_ptr==1|.
+called when |stack_ptr==1|. It is so simple, we declare it as a macro:
-@c
-static void
-pop_level(void)
-{
- cur_end=(--stack_ptr)->end_field;
- cur_tok=stack_ptr->tok_field; cur_mode=stack_ptr->mode_field;
-}
+@d pop_level() cur_state = *(--stack_ptr)@^system dependencies@>
@ The |get_output| function returns the next byte of output that is not a
reference to a token list. It returns the values |identifier| or |res_word|
@@ -3891,10 +3887,10 @@ output_C(void) /* outputs the current token list */
text_pointer p; /* translation of the \CEE/ text */
next_control=ignore; p=C_translate();
app(inner_tok_flag+(int)(p-tok_start));
- if (make_pb) {
- out_str("\\PB{"); make_output(); out('}');
+ if (make_pb) out_str("\\PB{");
@.\\PB@>
- }@+else make_output(); /* output the list */
+ make_output(); /* output the list */
+ if (make_pb) out('}');
if (text_ptr>max_text_ptr) max_text_ptr=text_ptr;
if (tok_ptr>max_tok_ptr) max_tok_ptr=tok_ptr;
text_ptr=save_text_ptr; tok_ptr=save_tok_ptr; /* forget the tokens */
@@ -3920,7 +3916,7 @@ make_output(void) /* outputs the equivalents of tokens */
boolean save_mode; /* value of |cur_mode| before a sequence of breaks */
boolean dindent_pending=false; /* should a |dindent| be output? */
app(end_translation); /* append a sentinel */
- freeze_text; push_level(text_ptr-1);
+ freeze_text(); push_level(text_ptr-1);
while (true) {
a=get_output();
reswitch: switch(a) {
@@ -4093,7 +4089,7 @@ out(':');
if (an_output) out_str("\\.{"@q}@>);
@.\\.@>
@<Output the text of the section name@>@;
-if (an_output) out_str(@q{@>" }");
+if (an_output) cur_mode==inner?out_str(@q{@>"}"):out_str(@q{@>"\\,}");
out_str("\\X");
@ @<Output the text...@>=
@@ -4136,7 +4132,7 @@ while (k<k_limit) {
if (*k++!='@@') {
fputs("\n! Illegal control code in section name: <",stdout);
@.Illegal control code...@>
- print_section_name(cur_section_name); printf("> "); mark_error;
+ print_section_name(cur_section_name); printf("> "); mark_error();
}
@ The \CEE/ text enclosed in \pb\ should not contain `\.{\v}' characters,
@@ -4151,7 +4147,7 @@ while (true) {
if (k>=k_limit) {
fputs("\n! C text in section name didn't end: <",stdout);
@.C text...didn't end@>
- print_section_name(cur_section_name); printf("> "); mark_error; break;
+ print_section_name(cur_section_name); printf("> "); mark_error(); break;
}
b=*(k++);
if (b=='@@' || (b=='\\' && delim!=0))
@@ -4202,8 +4198,8 @@ within a single section. The variables |out_line| or |out_ptr| will
change if a section is non-null, so the following macros `|save_position|'
and `|emit_space_if_needed|' are able to handle the situation:
-@d save_position save_line=out_line; save_place=out_ptr
-@d emit_space_if_needed if (save_line!=out_line || save_place!=out_ptr)
+@d save_position() save_line=out_line; save_place=out_ptr
+@d emit_space_if_needed() if (save_line!=out_line || save_place!=out_ptr)
out_str("\\Y");
space_checked=true;
@.\\Y@>
@@ -4220,7 +4216,7 @@ static boolean group_found=false; /* has a starred section occurred? */
@ @<Translate the current section@>= {
section_count++;
@<Output the code for the beginning of a new section@>@;
- save_position;
+ save_position();
@<Translate the \TEX/ part of the current section@>@;
@<Translate the definition part of the current section@>@;
@<Translate the \CEE/ part of the current section@>@;
@@ -4245,16 +4241,16 @@ else {
loc++;
}
else {
- for (sec_depth=0; xisdigit(*loc);loc++)
- sec_depth = sec_depth*10 + (*loc) -'0';
+ for (sec_depth=0; xisdigit(*loc);loc++)@^system dependencies@>
+ if (sec_depth < INT_MAX / 10) sec_depth = sec_depth*10 + (*loc) -'0';
}
while (*loc == ' ') loc++; /* remove spaces before group title */
group_found=true;
out_str("\\N");
@.\\N@>
- {@+ char s[32];@+sprintf(s,"{%d}",sec_depth+1);@+out_str(s);@+}
+ {@+ char s[32];@+snprintf(s,32,"{%d}",sec_depth+1);@+out_str(s);@+}
if (show_progress)
- printf("*%d",(int)section_count); update_terminal; /* print a progress report */
+ printf("*%d",(int)section_count); update_terminal(); /* print a progress report */
}
out('{'); out_section(section_count); out('}');
@@ -4263,7 +4259,7 @@ index entries are not copied and \CEE/ text within \pb\ is translated.
@<Translate the \T...@>= do
switch (next_control=copy_TeX()) {
- case '|': init_stack; output_C(); break;
+ case '|': init_stack(); output_C(); break;
case '@@': out('@@'); break;
case TeX_string: case noop:
case xref_roman: case xref_wildcard: case xref_typewriter:
@@ -4286,7 +4282,7 @@ the token memory is in its initial empty state.
@<Translate the d...@>=
space_checked=false;
while (next_control<=definition) { /* |format_code| or |definition| */
- init_stack;
+ init_stack();
if (next_control==definition) @<Start a macro definition@>@;
else @<Start a format definition@>@;
outer_parse(); finish_C(format_visible); format_visible=true;
@@ -4343,16 +4339,15 @@ it starts after we scan the matching `\.)'.
@<Start a macro...@>= {
if (save_line!=out_line || save_place!=out_ptr || space_checked) app(backup);
- if(!space_checked){emit_space_if_needed;save_position;}
+ if(!space_checked){emit_space_if_needed();save_position();}
app_str("\\D"); /* this will produce `\#\&{define }' */
@.\\D@>
if ((next_control=get_next())!=identifier)
err_print("! Improper macro definition");
@.Improper macro definition@>
else {
- app_cur_id(false);
+ app('$'); app_cur_id(false);
if (*loc=='(') {
- app('$');
reswitch: switch (next_control=get_next()) {
case '(': case ',': app(next_control); goto reswitch;
case identifier: app_cur_id(false); goto reswitch;
@@ -4364,10 +4359,9 @@ it starts after we scan the matching `\.)'.
} @=/* otherwise fall through */@>@;
default: err_print("! Improper macro definition"); break;
}
- app('$');
}
else next_control=get_next();
- app(break_space);
+ app_str("$ "); app(break_space);
app_scrap(dead,no_math); /* scrap won't take part in the parsing */
}
}
@@ -4375,7 +4369,7 @@ it starts after we scan the matching `\.)'.
@ @<Start a format...@>= {
doing_format=true;
if(*(loc-1)=='s' || *(loc-1)=='S') format_visible=false;
- if(!space_checked){emit_space_if_needed;save_position;}
+ if(!space_checked){emit_space_if_needed();save_position();}
app_str("\\F"); /* this will produce `\&{format }' */
@.\\F@>
next_control=get_next();
@@ -4403,7 +4397,7 @@ static name_pointer this_section; /* the current section name, or zero */
@ @<Translate the \CEE/...@>=
this_section=name_dir;
if (next_control<=section_name) {
- emit_space_if_needed; init_stack;
+ emit_space_if_needed(); init_stack();
if (next_control==begin_C) next_control=get_next();
else {
this_section=cur_section;
@@ -4531,46 +4525,50 @@ contents.
@c
static void
phase_three(void) {
-if (no_xref) {
- finish_line();
+phase=3;
+finish_line(); /* the bulk of |tex_file| has been written */
+if (no_xref)
out_str("\\end");
@.\\end@>
- finish_line();
-}
else {
- phase=3; if (show_progress) fputs("\nWriting the index...",stdout);
+ if (show_progress) fputs("\nWriting the index...",stdout);
@.Writing the index...@>
- finish_line();
- if ((idx_file=fopen(idx_file_name,"wb"))==NULL)
- fatal("! Cannot open index file ",idx_file_name);
-@.Cannot open index file@>
if (change_exists) {
- @<Tell about changed sections@>@; finish_line(); finish_line();
+ @<Tell about changed sections@>@;
+ finish_line(); flush_buffer(out_buf,false,false);
+ /* insert a blank line, it looks nice */
}
out_str("\\inx"); finish_line();
@.\\inx@>
+@#
+ if ((idx_file=fopen(idx_file_name,"wb"))==NULL)
+ fatal("! Cannot open index file ",idx_file_name);
+@.Cannot open index file@>
active_file=idx_file; /* change active file to the index file */
@<Do the first pass of sorting@>@;
@<Sort and output the index@>@;
finish_line(); fclose(active_file); /* finished with |idx_file| */
+@#
active_file=tex_file; /* switch back to |tex_file| for a tic */
out_str("\\fin"); finish_line();
@.\\fin@>
+@#
if ((scn_file=fopen(scn_file_name,"wb"))==NULL)
fatal("! Cannot open section file ",scn_file_name);
@.Cannot open section file@>
active_file=scn_file; /* change active file to section listing file */
@<Output all the section names@>@;
finish_line(); fclose(active_file); /* finished with |scn_file| */
- active_file=tex_file;
+@#
+ active_file=tex_file; /* switch back to |tex_file| for the last time */
if (group_found) out_str("\\con");@+else out_str("\\end");
@.\\con@>
@.\\end@>
- finish_line();
- fclose(active_file);
}
+finish_line();
+fclose(active_file);
if (show_happiness) {
- if (show_progress) new_line;
+ if (show_progress) new_line();
fputs("Done.",stdout);
}
check_complete(); /* was all of the change file used? */
@@ -4671,7 +4669,7 @@ needs to be changed if ASCII code is not being used.
@^high-bit character handling@>
We initialize |collate| by copying a few characters at a time, because
-some \CEE/ compilers choke on long strings.
+some \CEE/ compilers choke on long strings.@^system dependencies@>
@<Set init...@>=
collate[0]=0;
@@ -4778,14 +4776,15 @@ while (sort_ptr>scrap_info) {
}
@ @<Output the name...@>=
-switch (cur_name->ilk) {@+char *j;@+@t}\6{\4@>
+switch (cur_name->ilk) {@+char *p; /* index into |byte_mem| */@+@t}\6{\4@>
case normal: case func_template:
if (is_tiny(cur_name)) out_str("\\|");
- else {
- for (j=cur_name->byte_start;j<(cur_name+1)->byte_start;j++)
- if (xislower(*j)) goto lowcase;
- out_str("\\."); break;
-lowcase: out_str("\\\\");
+ else {@+boolean all_caps=true;@+@t}\6{@>
+ for (p=cur_name->byte_start;p<(cur_name+1)->byte_start;p++)
+ if (xislower(*p)) { /* not entirely uppercase */
+ all_caps=false; break;
+ }
+ out_str(all_caps ? "\\." : "\\\\");
}
break;
@.\\|@>
@@ -4793,14 +4792,13 @@ lowcase: out_str("\\\\");
@.\\\\@>
case wildcard: out_str("\\9");@+ goto not_an_identifier;
@.\\9@>
- case typewriter: out_str("\\.");
- @=/* fall through */@>@;
+ case typewriter: out_str("\\.");@+ goto not_an_identifier;
@.\\.@>
case roman: not_an_identifier: out_name(cur_name,false); goto name_done;
case custom:
out_str("$\\");
- for (j=cur_name->byte_start;j<(cur_name+1)->byte_start;j++)
- out(*j=='_'? 'x': *j=='$'? 'X': *j);
+ for (p=cur_name->byte_start;p<(cur_name+1)->byte_start;p++)
+ out(*p=='_'? 'x': *p=='$'? 'X': *p);
out('$');
goto name_done;
default: out_str("\\&");
@@ -4850,7 +4848,7 @@ name_pointer p)
if (p) {
section_print(p->llink); out_str("\\I");
@.\\I@>
- tok_ptr=tok_mem+1; text_ptr=tok_start+1; scrap_ptr=scrap_info; init_stack;
+ tok_ptr=tok_mem+1; text_ptr=tok_start+1; scrap_ptr=scrap_info; init_stack();
app(section_flag+(int)(p-name_dir)); make_output();
footnote(cite_flag);
footnote(0); /* |cur_xref| was set by |make_output| */
@@ -4871,7 +4869,7 @@ void
print_stats(void) {
puts("\nMemory usage statistics:");
@.Memory usage statistics:@>
- printf("%td names (out of %ld)\n",
+ printf("%td names (out of %ld)\n",@^system dependencies@>
(ptrdiff_t)(name_ptr-name_dir),(long)max_names);
printf("%td cross-references (out of %ld)\n",
(ptrdiff_t)(xref_ptr-xmem),(long)max_refs);
diff --git a/web/c_cpp/cweb/cwebmac.tex b/web/c_cpp/cweb/cwebmac.tex
index e2d2ecb3a2..382400a3f7 100644
--- a/web/c_cpp/cweb/cwebmac.tex
+++ b/web/c_cpp/cweb/cwebmac.tex
@@ -1,24 +1,19 @@
% standard macros for CWEB listings (in addition to plain.tex)
-% Version 4.8--- June 2022
+% Version 4.10 --- August 2023
\ifx\renewenvironment\undefined\else\endinput\fi % LaTeX will use other macros
-\xdef\fmtversion{\fmtversion+CWEB4.8}
-\chardef\cwebversion=4 \chardef\cwebrevision=7
-\newif\ifpdf
-\ifx\pdf+\pdftrue\fi
+\xdef\fmtversion{\fmtversion+CWEB4.10}
+\chardef\cwebversion=4 \chardef\cwebrevision=10
+\input iftex.sty % TeX engine tests
+\ifx\pdf+\pdftrue\fi % for plain TeX in combination with dvipdfm
% Uncomment the following line if you want PDF goodies to be the default
%\ifx\pdf-\else\pdftrue\fi
\def\pdflinkcolor{0 0 1} % the RGB values for hyperlink color
-\ifx\undefined\XeTeXrevision\else\pdftrue\fi % XeTeX produces PDF output
-\newif\ifpdftex
-\ifx\pdfoutput\undefined \pdftexfalse \else\ifnum\pdfoutput=0 \pdftexfalse
-%\else \pdftextrue \pdfoutput=1 \input pdfcolor \let\setcolor\pdfsetcolor \fi\fi
-\else \pdftextrue \pdfoutput=1 % changed in 3.69
+\ifxetex\pdftrue\fi % XeTeX produces PDF output
+\ifpdftex % pdfTeX produces PDF output if \pdfoutput>0
\def\Black{\pdfliteral{0 g 0 G}} % use rgb colors for direct PDF output too
\def\Blue{\pdfliteral{\pdflinkcolor\space rg \pdflinkcolor\space RG}}
-\fi\fi
-\newif\ifhint
-\ifx\HINTversion\undefined \hintfalse \else \hinttrue \fi
-\newif\ifacro \ifpdf\acrotrue\fi \ifpdftex\acrotrue\fi
+\fi
+\let\ifacro=\ifpdf
\newif\ifacrohint \ifacro\acrohinttrue\fi \ifhint\acrohinttrue\fi
\let\:=\. % preserve a way to get the dot accent
@@ -135,7 +130,7 @@
\newtoks\toksA \newtoks\toksB \newtoks\toksC \newtoks\toksD
\newtoks\toksE \newtoks\toksF \newtoks\usersanitizer
\newcount\countA \countA=0 \newcount\countB \countB=0
-\newcount\countC \countC=0
+\newcount\countC \countC=0 \newcount\countD \countD=0
\newif\iftokprocessed \newif\ifTnum \newif\ifinstr
{\def\\{\global\let\spacechar= }\\ }
@@ -145,7 +140,7 @@
\def\thedepth{\the\dp\strutbox\space}
\ifpdftex
\ifx\pdfannotlink\undefined\let\pdfannotlink\pdfstartlink\fi% for pdfTeX 0.14
- \def\pdflink#1#2{\hbox{\pdfannotlink height\ht\strutbox depth\dp\strutbox
+ \def\pdflink#1#2{\hbox{\pdfannotlink height \theheight depth \thedepth
attr{/Border [0 0 0]} goto num #1 \Blue #1\Black\pdfendlink}} % changed 3.69
\else\def\pdflink#1#2{\setbox0=\hbox{\special{pdf: bc [ \pdflinkcolor ]}{#1}%
\special{pdf: ec}}\special{pdf: ann width \thewidth height \theheight
@@ -294,14 +289,14 @@
\def\maketoksdone{\edef\st{\global\noexpand\toksA={\the\toksB}}\st}
\fi % End of common macros
-\def\pdfURL#1#2{\ifpdftex\pdfannotlink height\ht\strutbox depth\dp\strutbox
- attr {/Border [0 0 0]} user { /Type /Action /Subtype /Link /A
+\def\pdfURL#1#2{\ifpdf \ifpdftex\pdfannotlink height \theheight depth \thedepth
+ attr {/Border [0 0 0]} user { /Type /Annot /Subtype /Link /A
<< /S /URI /URI (#2) >>}\Blue #1\Black \pdfendlink % changed in 3.69
- \else \ifpdf{\setbox0=\hbox{\special{pdf: bc [ \pdflinkcolor ]}{#1}%
- \special{pdf: ec}}\special{pdf: ann width \thewidth\space height \theheight
- \space depth \thedepth\space << /Border [0 0 0]
- /Type /Action /Subtype /Link /A << /S /URI /URI (#2) >> >>}\box0\relax}%
- \else #1 ({\tt#2})\fi\fi}
+ \else {\setbox0=\hbox{\special{pdf: bc [ \pdflinkcolor ]}{#1}%
+ \special{pdf: ec}}\special{pdf: ann width \thewidth height \theheight
+ depth \thedepth << /Border [0 0 0] /Type /Annot /Subtype /Link /A
+ << /S /URI /URI (#2) >> >>}\box0\relax}\fi
+ \else #1 ({\tt#2})\fi}
{\catcode`\~=12 \gdef\TILDE/{~}} % ~ in a URL
{\catcode`\_=12 \gdef\UNDER/{_}} % _ in a URL
@@ -352,11 +347,11 @@
\edef\gtitletoks{\expandafter\stripprefix\meaning\gtitletoks}%
\edef\next{\write\cont{\ZZ{\gtitletoks}{#1}{\secno}% write to contents file
{\noexpand\the\pageno}{\the\toksE}}}\next % \ZZ{title}{depth}{sec}{page}{ss}
- \ifpdftex\expandafter\xdef\csname curr#1\endcsname{\secno}
+ \ifpdf \ifpdftex\expandafter\xdef\csname curr#1\endcsname{\secno}
\ifnum#1>0\countB=#1 \advance\countB by-1
- \advancenumber{chunk\the\countB.\expnumber{curr\the\countB}}\fi\fi
- \ifpdf\special{pdf: outline #1 << /Title (\the\toksE) /Dest
- [ @thispage /FitH @ypos ] >>}\fi
+ \advancenumber{chunk\the\countB.\expnumber{curr\the\countB}}\fi
+ \else \special{pdf: outline #1 << /Title (\the\toksE)
+ /Dest [ @thispage /FitH @ypos ] >>}\fi \fi
\ifon\startsection{\bf#3.\quad}\ignorespaces}
\def\MN#1{\par % common code for \M, \N
{\xdef\secstar{#1}\let\*=\empty\xdef\secno{#1}}% remove \* from section name
@@ -428,13 +423,13 @@
\vfill#1}} % parameter #1 is the page itself
\global\advance\pageno by1}
-\gtitle={\.{CWEB} output} % this running head is reset by starred sections
+\gtitle={{\tentex CWEB} output} % this running head is reset by starred sections
\mark{\noexpand\nullsec0{\the\gtitle}}
\def\title{\expandafter\uppercase\expandafter{\jobname}}
\def\topofcontents{\centerline{\titlefont\title}\vskip.7in
\vfill} % this material will start the table of contents page
-\def\startpdf{\ifpdftex\pdfcatalog{/PageMode /UseOutlines}\else
- \ifpdf{\special{pdf: docview << /PageMode /UseOutlines >>}}\fi\fi}
+\def\startpdf{\ifpdf \ifpdftex\pdfcatalog{/PageMode /UseOutlines}
+ \else {\special{pdf: docview << /PageMode /UseOutlines >>}}\fi\fi}
\def\botofcontents{\vfill
\centerline{\covernote}} % this material will end the table of contents page
\def\covernote{}
@@ -495,7 +490,8 @@
\def\fin{\par\vfill\eject % this is done when we are ending the index
\ifpagesaved\null\vfill\eject\fi % output a null index column
\if L\lr\else\null\vfill\eject\fi % finish the current page
- \ifpdftex \makebookmarks \fi % added in Version 3.68
+ \ifpdf \ifpdftex \makebookmarks % added in Version 3.68
+ \countsections \fi\fi % and in Version 4.9
\parfillskip 0pt plus 1fil
\def\grouptitle{NAMES OF THE SECTIONS}
\let\topsecno=\nullsec
@@ -511,7 +507,7 @@
\ifacro \def\outsecname{Names of the sections} \let\Xpdf\X
% \ifpdftex \makebookmarks \pdfdest name {NOS} fitb % in versions < 3.68
\ifpdftex \pdfdest name {NOS} fith % changed in version 3.69
- \pdfoutline goto name {NOS} count -\secno {\outsecname}
+ \pdfoutline goto name {NOS} count -\the\countD {\outsecname}
\def\X##1:##2\X{\Xpdf##1:##2\X \firstsecno##1.%
{\toksF={}\makeoutlinetoks##2\outlinedone\outlinedone}%
\pdfoutline goto num \the\toksA \expandafter{\the\toksE}}
@@ -524,6 +520,10 @@
\fi\fi
\readsections}
\def\makebookmarks{\let\ZZ=\writebookmarkline \readcontents\relax}
+\def\countsections{\message{Number of named sections:}
+ {\def\I{\global\advance\countD by 1}\def\X##1\X{\relax}
+ \def\Q##1.{\relax}\def\Qs##1.{\relax}\def\U##1.{\relax}\def\Us##1.{\relax}
+ \readsections\relax}\message{\the\countD}}
\def\expnumber#1{\expandafter\ifx\csname#1\endcsname\relax 0%
\else \csname#1\endcsname \fi} % Petr Olsak's macros from texinfo.tex
\def\advancenumber#1{\countA=\expnumber{#1}\relax \advance\countA by1
diff --git a/web/c_cpp/cweb/cwebman.pdf b/web/c_cpp/cweb/cwebman.pdf
index bed70a685f..8cfef0ea10 100644
--- a/web/c_cpp/cweb/cwebman.pdf
+++ b/web/c_cpp/cweb/cwebman.pdf
Binary files differ
diff --git a/web/c_cpp/cweb/cwebman.tex b/web/c_cpp/cweb/cwebman.tex
index 87523dbced..108bd32f88 100644
--- a/web/c_cpp/cweb/cwebman.tex
+++ b/web/c_cpp/cweb/cwebman.tex
@@ -2,7 +2,7 @@
\def\tangref{3} % where the main explanation of CTANGLing is given
\input cwebmac
-\acrofalse\pdffalse\pdftexfalse\hintfalse\acrohintfalse
+\pdffalse\acrohintfalse
\def\page{\box255 } \normalbottom
\parskip 0pt plus 1pt
\def\RA{\char'31 } % right arrow
@@ -35,7 +35,7 @@
\def\lheader{\mainfont\the\pageno\hfill\sc\runninghead\hfill}
\def\rheader{\hfill\sc\runninghead\hfill\mainfont\the\pageno}
-\def\runninghead{{\tentt CWEB} USER MANUAL (VERSION 4.8)}
+\def\runninghead{{\tentt CWEB} USER MANUAL (VERSION 4.10)}
% This verbatim mode assumes that ! marks are !! in the text being copied.
\def\verbatim{\begingroup
@@ -49,7 +49,7 @@
\null\vfill
\centerline{\titlefont The {\ttitlefont CWEB} System of
Structured Documentation}
-\vskip 18pt\centerline{(Version 4.8 --- June 2022)}
+\vskip 18pt\centerline{(Version 4.10 --- August 2023)}
\vskip 24pt
\centerline{\authorfont Donald E. Knuth and Silvio Levy}
\vfill
@@ -1345,7 +1345,7 @@ strncpy(change_buffer,buffer,(size_t)(limit-buffer+1));
\def\runninghead{APPENDIX A --- TRANSLATION BY {\tentt CWEAVE}}
Here is the corresponding excerpt from \.{common.tex}.
-(Code for section 31 is omitted for space reasons.)
+\ifhint\relax\else(Code for section 31 is omitted for space reasons.)\fi
\vskip6pt
\begingroup \def\tt{\eighttt} \baselineskip9pt
@@ -1370,7 +1370,7 @@ change file ends }\6
\4${}\}{}$\2\par
\fi
-\M{28}\B\X7:Predeclaration of procedures\X${}\mathrel+\E{}$\5
+\M{28}\B\X3:Predeclaration of procedures\X${}\mathrel+\E{}$\5
\&{static} \&{void} \\{prime\_the\_change\_buffer}(\&{void});\par
\fi
@@ -1418,6 +1418,15 @@ ${}\{{}$\1\6
\4${}\}{}$\2\5
\&{while} ${}(\\{limit}\E\\{buffer}){}$;\par
\U27.\fi
+!ifhint
+\M{31}\B\X31:Move \PB{\\{buffer}} and \PB{\\{limit}} to \PB{\\{change\_buffer}}
+and \PB{\\{change\_limit}}\X${}\E{}$\6
+$\\{change\_limit}\K\\{change\_buffer}+(\&{ptrdiff\_t})(\\{limit}-%
+\\{buffer});{}$\6
+${}\\{strncpy}(\\{change\_buffer},\39\\{buffer},\39(\&{size\_t})(\\{limit}-%
+\\{buffer}+\T{1})){}$;\par
+\Us27\ET32.\fi
+!fi
!endgroup
\endgroup
\vfil\eject
@@ -1448,7 +1457,7 @@ change file ends }\6
\4${}\}{}$\2\par
\fi
-\M{28}\B\X7:Predeclaration of procedures\X${}\mathrel+\E{}$\5
+\M{28}\B\X3:Predeclaration of procedures\X${}\mathrel+\E{}$\5
\&{static} \&{void} \\{prime\_the\_change\_buffer}(\&{void});\par
\fi
@@ -1598,7 +1607,7 @@ $$\lpile{\.{\\def\\topofcontents\{\\null\\vfill}\cr
\.{ { }\\titlefalse \% include headline on the contents page}\cr
\.{ { }\\def\\rheader\{\\mainfont The \{\\tt CWEAVE\}{ }processor\\hfil\}}\cr
\.{ { }\\centerline\{\\titlefont The \{\\ttitlefont CWEAVE\}{ }processor\}}\cr
- \.{ { }\\vskip 15pt \\centerline\{(Version 4.8)\}{ }\\vfill\}}\cr}$$
+ \.{ { }\\vskip 15pt \\centerline\{(Version 4.10)\}{ }\\vfill\}}\cr}$$
Redefining \.{\\rheader}, which is the headline for right-hand pages,
suffices in this case to put the desired information at the top of the
contents page.
diff --git a/web/c_cpp/cweb/examples/wordtest.w b/web/c_cpp/cweb/examples/wordtest.w
index 98de5aedc6..000166815d 100644
--- a/web/c_cpp/cweb/examples/wordtest.w
+++ b/web/c_cpp/cweb/examples/wordtest.w
@@ -166,7 +166,7 @@ default: print_usage: fprintf(stderr,
@*Treaps. The most interesting part of this program is its sorting algorithm,
which is based on the ``treap'' data structure of Aragon and Seidel
[{\sl 30th IEEE Symposium on Foundations of Computer Science\/} (1989),
-540--546].
+540--545].
@^Aragon, Cecilia Rodriguez@>@^Seidel, Raimund@>
A treap is a binary tree whose nodes have two key fields. The primary
key, which in our application is a word from the input, obeys
diff --git a/web/c_cpp/cweb/prod.w b/web/c_cpp/cweb/prod.w
index 1e6cb6194c..c7254cc4ee 100644
--- a/web/c_cpp/cweb/prod.w
+++ b/web/c_cpp/cweb/prod.w
@@ -2,7 +2,7 @@
% This program by Silvio Levy and Donald E. Knuth
% is based on a program by Knuth.
% It is distributed WITHOUT ANY WARRANTY, express or implied.
-% Version 4.8 --- June 2022
+% Version 4.10 --- August 2023
%
@ Here is a table of all the productions. Each production that
combines two or more consecutive scraps implicitly inserts a {\tt \$}