NOWEB(7)
β¨ NOWEB(7) β¨
okay bestie so real talk β this one's the manual page for nowebfilters, which is literally filters and parsers for use with noweb. the manual name is NOWEB(7), in case you were wondering, and yes it's a Miscellaneous Information Manual situation π
πΈ SYNOPSIS πΈ
[noweave|notangle|noweb] [-filter filter|-markup parser] ...
π DESCRIPTION π
so this page is the lil directory of all the filters and parsers that ship with noweb(1). here's the vibe:
- a filter transforms the pipeline representation, and you use it with the
-filteroption. - a parser reads a source file and emits the pipeline representation, and you use it with the
-markupoption.
and no cap: not all filters and parsers are available at all installations. it's giving "depends on your setup", fr fr π
π FILTERS π
autodefs.*βnoweave's-autodefsand-showautodefsoptions use these filters, and they automatically find defined identifiers. the*stands for the name of a programming language. (Icon installation only.)btdefnβ thebtdefnfilter uses Dave Hanson's convention to mark definitions. in code chunks, each defining instance of an identifier should be preceded by a single backtick character (ASCII 140). thebtdefnfilter removes these backticks from the code and converts them to definitions, thus:definition. it, not@ %def, should be used with bothnotangle(1)andnoweave(1), at least for programs written in C-like languages. slay.disambiguateβ thedisambiguatefilter makes it possible to abbreviate chunk names using a trailing ellipsis (three periods), in the style of WEB andnuweb(1). iconic honestly.docs2comments optionsβ thedocs2commentsfilter converts documentation chunks to comments in code chunks. options include:-all, which converts all documentation chunks into comments-oneconverts only one documentation chunk preceding each code chunk-wkformats commentskcolumns wide.
other options control the language and style of the comment. languages available include -awk, -c, -c++, -f77, -f90, -icn, -icon, -lisp, -m3, -ml, -ocamlweb, -pascal, -scm, and -tex.
Norman recommends using notangle(1) with docstocomments instead of nountangle(1). (Icon installation only.)
elide patternsβ theelidefilter removes from the stream any code chunk matching any of the arguments. each argument is a pattern in which?matches any single character and*matches any sequence of characters. bye girl πemptydefnβ theemptydefnfilter makes an empty definition (<<>>=) an abbreviation for a continuation of the previous definition. lowkey genius.l2h [-show-unknowns] [-html-quotes]β thel2hfilter converts LaTeX to HTML in documentation chunks. if the-show-unknownsoptions is given, unrecognized LaTeX control sequences appear in bold in the output. if the-html-quotesoption is given,l2hconverts LaTeX double-quote ligatures into HTML 4 double-quote entities.l2huses the LaTeX-generated.tocand.bblfiles to help create table of contents and bibliography. (Icon installation only.)pipedocs commandβ thepipedocsfilter runs each documentation chunk through an invocation of command, which may be any Unix command. the Noweb library includes the commandh2a, which useslynx(1)to convert HTML to ASCII.xchunks filesβ thexchunksfilter pulls in code chunks from an external source. the files argument lists one or more noweb files, which are used only for their definitions of code chunks. empty chunk definitions in the main document are replaced with the external definitions of the same name. this filter makes it possible to include the same code chunks in multiple documents, or even the same code chunks multiple times in the same document. (Icon installation only.)
π¦ PARSERS π¦
a parser converts a source file to the noweb pipeline format, interpreting the ``markup'' in that file. by default, the tools use the standard noweb markup, but some installations may support nuweb markup as well. parsers include:
markupβ converts standardnoweb(1)markup to pipeline format.numarkupβ convertsnuweb(1)markup to noweb pipeline format. it is not part of the standard installation, but it can be found in noweb'scontrib/normandirectory.
π FILES π
all filters and parsers are stored in /usr/lib/noweb
π BUGS π
it is possible to tell l2h about new control sequences by putting special TeX comments in one's documentation chunks, but there's no documentation. use the source, Luke. π
numarkup loses information, e.g., about the proper treatment of tabs. it also doesn't compensate for notangle's newline-removal heuristic, which means results on nuweb files may differ subtly from those produced by nuweb.
many filters are not available in installations that use Awk instead of Icon. so if your fave filter is missing... that might be why bestie π«Ά
π SEE ALSO π
noweave(1),notangle(1),noweb(1)- The Noweb Hacker's Guide
π VERSION π
this man page is from noweb version 2.12.
π AUTHOR π
Norman Ramsey, Tufts University. Internet address Norman.Ramsey@tufts.edu. Noweb home page at http://www.cs.tufts.edu/~nr/noweb.
and that's the whole page, bestie β¨ this one came from the local crew dated 10/40/2008 β yes the date says 10/40, no I will not be explaining that, it's giving typo icon π
mwah, go write some literate programs π
π¦ where this page comes from
- debian bookworm: noweb 2.12-4 Β· noweb OR BSD-2-Clause
- debian trixie: noweb 2.13-2 Β· noweb OR BSD-2-Clause
- ubuntu jammy: noweb 2.12-1 Β· noweb OR BSD-2-Clause
- ubuntu noble: noweb 2.12-4 Β· noweb OR BSD-2-Clause
- ubuntu questing: noweb 2.13-2
- ubuntu resolute: noweb 2.13-2build1 Β· noweb OR BSD-2-Clause
- ubuntu stonking: noweb 2.13-2build1 Β· noweb OR BSD-2-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms