Was ist der beste Weg, um Code in CWEB Format in Windows zu lesen?
-
13-09-2019 - |
Frage
Donald Knuth hat eine große Anzahl von Programmen zu lesen auf seiner Seite. Aber sie sind meist in einem "fremden" CWEB Format ...
Was könnte der beste Weg sein, um sie in geeigneter Weise lesbar in Windows zu machen?
Lösung
Weniger als fünf Minuten von Googeln bringt auf den Punkt: http://www.literateprogramming.com/cweb_download .html
Andere Tipps
So wie ich am bequemsten finden ein CWEB
Programm zu lesen ist von cweave
läuft ( manpage ) auf der .w
Quelldatei eine .tex
Datei zu erzeugen, und dann pdfetex
läuft einen schönen Hyperlink verweist PDF zu erhalten. Bildlich:
`.W SOURCE ----(cweave)----> .TEX ----(pdfetex)----> PDF`
Wie Sie wissen würde, die Struktur eines CWEB
Programm ist selbst eine Art Hyperlinks (mit Abschnitten mit Bezug andere Abschnitte). einen schönen, verbunden PDF zu haben, ist ein reines Vergnügen, besonders zu lesen, wenn die Programme von Don Knuth selbst geschrieben haben!
Das folgende Setup einige Mühe auf Ihrer Seite (und MBs von Download) beinhalten würde, aber ich hoffe, dass Sie das Endergebnis mögen:
- Installieren Cygwin (für jeden ernsthaften Windows-Programmierer, ich denke, Cygwin Installation ist ein Kinderspiel). Stellen Sie sicher, installieren Sie die Satz- verwandte Pakete (tex, pdfetex, AMSTeX und das alles). Wenn Cygwin Sie eine Option gibt CWEB zu installieren, das auch tun.
- Wenn Sie nicht
cweave
undctangle
mit Cygwin erhalten, laden Sie die Quellen und bauen / installieren diese.
Sobald Cygwin und cweb installiert wurden, gehen Sie wie folgt einem .w
Programm, das Sie studieren wollen (ich nehme ein Beispiel bdd12.w
):
- Ausführen
cweave
etwa so:cweave bdd12.w
Dies sollte einebdd12.tex
Datei erzeugen. - Führen Sie dann
pdfetex
etwa so:pdfetex bdd12.tex
Dies sollten Ihnen einen sauberen, Querverweise PDF erhalten. Die erzeugte PDF auch einen Index von Symbolen am Ende (und einige mehr crossreferencing Daten), so schnell wie möglich ihre Definitionen springen kann.