diff options
author | Norbert Preining <norbert@preining.info> | 2021-03-18 03:01:43 +0000 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2021-03-18 03:01:43 +0000 |
commit | ca17f652236af2ce3a16cb0125fb6e190d59cc17 (patch) | |
tree | 1664d8d4a3ba38eacabed5fe0e3d4ff7f2dd966c /web/pwebmac | |
parent | bb51b61cfc3fcb367f52d31948039a1468fbcf80 (diff) |
CTAN sync 202103180301
Diffstat (limited to 'web/pwebmac')
-rw-r--r-- | web/pwebmac/README.md | 2 | ||||
-rw-r--r-- | web/pwebmac/Xerrorlog.tex | 31 | ||||
-rw-r--r-- | web/pwebmac/index.md | 30 | ||||
-rwxr-xr-x | web/pwebmac/makeall | 11 |
4 files changed, 54 insertions, 20 deletions
diff --git a/web/pwebmac/README.md b/web/pwebmac/README.md index 8a49380a70..59d5e38f99 100644 --- a/web/pwebmac/README.md +++ b/web/pwebmac/README.md @@ -30,4 +30,4 @@ clickable links and bookmarks (depending on your PDF viewer). The `pwebmac` package is free software and may be used without constraints. -This is version “4.6.1” of the `pwebmac` package — 2021-03-09, AS. +This is version “4.6.2” of the `pwebmac` package — 2021-03-17, Andreas Scherer. diff --git a/web/pwebmac/Xerrorlog.tex b/web/pwebmac/Xerrorlog.tex new file mode 100644 index 0000000000..6a739a81b0 --- /dev/null +++ b/web/pwebmac/Xerrorlog.tex @@ -0,0 +1,31 @@ +\let\goodbye=\bye % we replace \bye with another command + +\def\endofpapermacros{% output some lines after the \bye in errorlog.tex + % 1. step: skip the motto by Turing; DRF=<initials> of the first name + \long\def\skipmotto##1DRF{% ##1: ignored text + \smallskip\line{\bf List of abbreviated names:\hss}% a title line + \simpleline DRF}% see step 2a) + % 2. step: two kind of input lines + % a) <initials> <first names> <surname> coded as \simpleline + % b) <initials> <first names> <surname> (<info>) coded as \parensline + % Note: step 1 starts with type a) and <initials>=DRF + % if <initials>=CET switch to b); last line has <initials>=MDS + \def\next{\simpleline}\def\withparens{CET}\def\lastline{MDS}% + \def\simpleline##1 ##2 ##3 {\processtext!##1!##2 ##3!}% the default for \next + \def\parensline##1 ##2 ##3 (##4) {\processtext!##1!##2 ##3!}% <info> isn't needed + % 3. step: output name, test for switch to 2b), and test for last line + \def\processtext!##1!##2!{% ##1: <initials>; ##2: <first names> <surname> + \line{\hbox to 50pt{\hss##1:}\quad##2\hss}% output + \def\nxt{##1}% store <initials> + \ifx\nxt\withparens % true: switch from 2a) to 2b) + \def\next{\parensline}% + \else\ifx\nxt\lastline % true: it's the last line + \def\next{\csname goodbye\endcsname}% \next=\bye + \fi\fi + \next}% + % 4. step: activate this chain of macros + \skipmotto} + +\let\bye=\endofpapermacros + +\input errorlog diff --git a/web/pwebmac/index.md b/web/pwebmac/index.md index 1631382506..1554700c7d 100644 --- a/web/pwebmac/index.md +++ b/web/pwebmac/index.md @@ -12,14 +12,16 @@ urlcolor: blue Welcome to “All Things `WEB`” in “\TeX\ Live.” Here you find the documented source code of all major `WEB` and `CWEB` programs -in readable format. The “named” entries represent the unmodified base sources, -the attached “`chg`” links point to “only the changed sections (or modules),” -so you may want to study these pairs in parallel. Care has been taken to keep -the section numbers for the main parts intact. +in readable format. The “named” entries represent the unmodified base sources +as written by their respective authors, the attached “`chg`” links point to +“only the changed sections (or modules)” as applied for release in the “\TeX\ +Live” distribution, so you may want to study these pairs in parallel. Care has +been taken to keep the section numbers for the main parts intact. -Although not all the programs here are written or maintained by Donald Knuth, -it is more convenient for everything to be collected in one place for reading -and searching. And they all stem from the system that Knuth created. +Although not all the programs presented here are written or maintained by +Donald Knuth, it is more convenient for everything to be collected in one place +for reading and searching. And they all stem from the system that Knuth +created. Note that all `WEB` programs are mogrified from Pascal code to C code before compilation, so further modifications and amendments will occur “for the real @@ -28,8 +30,10 @@ programs do not require these extra modifications, they get linked directly to the external runtime environment.) If you believe to have found anything that remains technically, historically, -typographically, or politically incorrect, please feel free to -[report bugs in \TeX\ and friends](https://tug.org/texmfbug/). +typographically, or politically incorrect in any of these files, please feel +free to [report bugs in \TeX\ and friends](https://tug.org/texmfbug/) or +[contact the maintainer of this library](mailto:andreas_github@freenet.de) +directly. ## Canonical Knuthian WEB programs @@ -58,7 +62,7 @@ typographically, or politically incorrect, please feel free to [`WEAVE`](web/weave.pdf)\ ~[`chg`](web/weave-changes.pdf)~ \| [`TANGLE`](web/tangle.pdf)\ ~[`chg`](web/tangle-changes.pdf)~ \] -## Complementary WEB programs +## Complementary WEB programs by other authors * `other/` \[ [`DVIcopy`](other/dvicopy.pdf)\ ~[`chg`](other/dvicopy-changes.pdf)~ \| @@ -69,7 +73,7 @@ typographically, or politically incorrect, please feel free to * `pdftex/` \[ [`pdfTeX`](pdftex/pdftex.pdf)\ ~[`chg`](pdftex/pdftex-changes.pdf)~ \] * `xetex/` \[ [`XeTeX`](xetex/xetex.pdf)\ ~[`chg`](xetex/xetex-changes.pdf)~ \] -## CWEB programs +## CWEB programs by Knuth _et\ al._ * `cweb/` \[ [`CWEBMAN`](cweb/cwebman.pdf) \| @@ -82,7 +86,7 @@ typographically, or politically incorrect, please feel free to * `ctie/` \[ [`CTIE`](ctie/ctie.pdf)\ ~[`chg`](ctie/ctie-changes.pdf)~ \] * `tie/` \[ [`TIE`](tie/tie.pdf)\ ~[`chg`](tie/tie-changes.pdf)~ \] -## Errata for “Computers & Typesetting” +## Errata for “Computers & Typesetting” by Donald E.\ Knuth * `errata/` * [The Errors of \TeX](errata/errorlog.pdf) @@ -101,3 +105,5 @@ typographically, or politically incorrect, please feel free to * [Computers & Typesetting, 31\ January\ 2021](errata/errata.pdf) ## Happy C/WEB Programming! + +2021-03-17 Andreas Scherer diff --git a/web/pwebmac/makeall b/web/pwebmac/makeall index 546c3984aa..5f817ea242 100755 --- a/web/pwebmac/makeall +++ b/web/pwebmac/makeall @@ -83,7 +83,7 @@ do esac done -CWEAVE="cweave -f" +CWEAVE="cweave -f +lX" CTWILL="ctwill -f +lpdf" PAX="pax -wvzf" SED_I="sed -i" # non-GNU-sed requires an extra '' argument for '-i' option. @@ -220,11 +220,6 @@ FI # FIX: purge obsolete macros from XeTeX. xetex ) $SED_I -e "/\\\\input xewebmac/d" $f.tex ;; - - # Use nicer format for C comments and assignment; sans ctwill - common | ctangle | cweave | refsort | twinx | ctie | tie ) - $SED_I -e "1 s/\(cwebmac\)/\1\n\\\\input Xcwebmac/" \ - $f.tex ;; esac # shift table-of-contents pages to the front in PDF @@ -328,11 +323,13 @@ then touch pages.tex # let 'manmac' produce output at all - for f in tripman trapman webman cwebman errorlog + for f in tripman trapman webman cwebman do $TEX $f done + $TEX -jobname=errorlog /opt/github/web/Xerrorlog.tex + for f in one two three four five six seven eight nine ten \ eleven twelve do |