4

Donald Knuth在他的页面上有大量程序可供阅读。但它们大多采用“奇怪”的 CWEB 格式......

使它们在 Windows 中具有适当可读性的最佳方法是什么?

4

2 回答 2

5

不到五分钟的谷歌搜索就提出了这个问题:http ://www.literateprogramming.com/cweb_download.html

于 2009-06-15T16:18:36.607 回答
4

CWEB我发现阅读程序最方便的方法是在源文件上运行cweave( manpage ).w以生成.tex文件,然后运行pdfetex以获得漂亮的超链接PDF。图示:

     `.W SOURCE   ----(cweave)---->   .TEX   ----(pdfetex)---->   PDF`

如您所知,CWEB程序的结构本身就是一种超链接(部分引用其他部分)。拥有一个漂亮的、链接的 PDF 是一种阅读的乐趣,特别是如果程序是由 Don Knuth 自己编写的!

以下设置需要您付出一些努力(以及 MB 的下载量),但我希望您会喜欢最终结果:

  • 安装Cygwin(对于任何认真的 Windows 程序员,我认为安装 cygwin 是轻而易举的事)。确保安装了与排版相关的软件包(tex、pdfetex、amstex 等等)。如果 cygwin 为您提供了安装 CWEB 的选项,请也这样做。
  • 如果您没有使用 cygwin,请下载cweave代码并构建/安装它们。ctangle

安装完 cygwin 和 cweb 后,对.w您想学习的任何程序执行以下操作(我以 为例bdd12.w):

  • 像这样运行cweavecweave bdd12.w 这应该生成一个bdd12.tex文件。
  • 然后pdfetex像这样运行:pdfetex bdd12.tex 这应该会给你一个整洁的、交叉引用的 PDF。生成的 PDF 在末尾还有一个符号索引(以及一些更多的交叉引用数据),因此您可以快速跳转到它们的定义。
于 2009-06-15T16:49:33.280 回答