## Introduction

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. With the exception of `XeTeX`, all documents are in the `HINT` format and can be viewed with the `hintview` program, available from the HINT homepage.

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 numbering intact.

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 thing, i.e., the production of the executable `WEB` programs. (The `CWEB` 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 in any of these files, please feel free to report bugs in TeX and friends or contact the maintainer of this collection directly.

## Canonical Knuthian WEB programs

- `etc/` [ `VFtoVP`+`chg` `VPtoVF`+`chg` ]

- `mf/` [ `Metafont`+`chg` `TRAPMAN` ]

- `mfware/` [ `GFtype`+`chg` `GFtoPK`+`chg` `GFtoDVI`+`chg` `MFT`+`chg` ]

- `tex/` [ `GLUE` `TeX`+`chg` `TRIPMAN` ]

- `texware/` [ `POOLtype`+`chg` `TFtoPL`+`chg` `PLtoTF`+`chg` `DVItype`+`chg` ]

- `web/` [ `WEBMAN` `WEAVE`+`chg` `TANGLE`+`chg` `TWILL` 1 ]

## Complementary WEB programs by other authors

- `other/` [ `DVIcopy`+`chg` `PatGen`+`chg` `PKtoGF`+`chg` `PKtype`+`chg` ]

- `bibtex/` [ `BibTeX`+`chg` ]

- `pdftex/` [ `pdfTeX`+`chg` ]

- `xetex/` [ `XeTeX`+`chg` ]

## CWEB programs by Knuth et al.

- `cweb/` [ `CWEBMAN` `COMMON`+`chg` `CTANGLE`+`chg` `CWEAVE`+`chg`
  `CTWILL` 2 `REFSORT`+`chg` `TWINX`+`chg` ]

- `ctie/` [ `CTIE`+`chg` ]

- `tie/` [ `TIE`+`chg` ]

- `hitex/` [ `HiTeX` ]

- `mp/` [ `MP` `MPOST` ]3

## Errata for “Computers & Typesetting” by Donald E. Knuth

- `errata/`

  - The Errors of TeX

  - The TeXbook, 1st printing

  - The TeXbook, 2nd printing

  - Computers & Typesetting, 15 June 1987

  - Computers & Typesetting, 20 February 1989

  - Computers & Typesetting, 30 September 1989

  - Computers & Typesetting, 31 December 1990

  - Computers & Typesetting, 15 March 1992

  - Computers & Typesetting, pre-Millennium ed.

  - The TeXbook, September 1996

  - Computers & Typesetting, 1st Millennium ed.

  - Computers & Typesetting, 2nd Millennium ed.

  - Computers & Typesetting, early 2014

  - Computers & Typesetting, 31 January 2021

## Happy C/WEB Programming!

2024-08-11 Andreas Scherer

1. `TWILL` is presented here as a changed variant of `WEAVE`.↩︎

2. `CTWILL` is presented here in its own format with a “mini-index” for every single code section.↩︎

3. `MP` and `MPOST` have received quite a few changes “behind the scenes” in order to present them in this collection; see project `mplibdir` for details.↩︎