WEAVE(1)

πŸ“¦ version 2026.0, in alpine 3.24

πŸ’– WEAVE(1) β€” the weave girlie's guide πŸ’–

okay so bestie, welcome to weave, the manual page, manual name and all β€” she's the icon who translates a literate programming WEB into TeX ✨


🌸 NAME 🌸

weave β€” translate a literate programming WEB to TeX 🧚


πŸŽ€ SYNOPSIS πŸŽ€

weave [-p] [-x] webfile[.web] [{changefile[.ch]|-} [outfile[.tex]]]

✨ DESCRIPTION ✨

So like, the weave program creates a TeX file for viewing a literate program written in WEB. That's the whole assignment and she ate πŸ’…

She takes appropriate care of typographic details like page layout and the use of indentation, italics, boldface, etc., and she supplies extensive cross-index information that she gathers automatically. no cap, she just does all that 🫢

The output TeX file name is formed by adding .tex to the root of the WEB file name, or from the third argument. In this case you can specify - as an empty change file. These non-option command line arguments are handled in the same way as tangle(1). periodt.

There are several macros that probably should be redefined by the programmer at the beginning of the WEB file. It is a good idea to set \title to the name of the program. To output only those modules which are changed, one can say \let\maybe=\iffalse, usually as the first change in the change file. lowkey genius 🌈


πŸ‘‘ OPTIONS πŸ‘‘

See tex(1) for details of command-line parsing. (yes bestie, the parsing lore lives over there 🫑)

  • -p β€” says to \input pwebmac.tex, a variant on the default webmac.tex which is more suited for PDF output. very PDF-pilled of her πŸ¦‹
  • -x β€” says to omit the index, module name list, and table of contents pages. (A CONTENTS.tex file will still be written when the TeX file is processed, however, unless some macros in webmac.tex are redefined.) so like, the pages dip but the file stays πŸ‘€

The standard -help and -version options are also supported. we love a supportive queen πŸ’œ


🌼 ENVIRONMENT 🌼

The programs look for the input files using the environment variable WEBINPUTS. If it is not set, it uses the system default. See the Kpathsea manual at https://tug.org/kpathsea for the details of the searching. iykyk πŸŽ€


πŸ’€ BUGS πŸ’€

The table of contents appears at the end of the output.

not me putting the table of contents at the END 😭 it's giving "chaotic but we respect it"

πŸ“ FILES πŸ“

  • $TEXMFMAIN/tex/plain/knuth-lib/webmac.tex β€” TeX macros used by weave output. the default bestie πŸ’–
  • $TEXMFMAIN/tex/plain/pwebmac/pwebmac.tex β€” Alternative TeX macros used for PDF output. the PDF-era glow-up ✨
  • CONTENTS.tex β€” Temporary file created by weave for the table of contents. she's temporary but she's main character energy 🌟

πŸ¦‹ SEE ALSO πŸ¦‹

  • tangle(1) for references, authors, and other information. go read her sister's page fr fr 🫢
  • Public discussion list and bug reports: https://lists.tug.org/tex-k β€” come chat with the girlies πŸ”₯

okay that's the whole page, you're so welcome πŸ’… slay responsibly 🌈⭐

this cutie was brought to you by Web2C, dated 2 February 2026 β€” mwah, drink some water, and go weave something iconic πŸŽ€πŸ’œ

πŸ“¦ where this page comes from