如何指示PyDoc生成文档到用户定义的目录
PyDoc 是一个工具,它会在当前目录下生成模块的 HTML 文档。可是我想指定一个不同的目录来存放生成的文档,而不是使用我运行 PyDoc 的那个目录。
我现在是用 python -m pydoc -w <MODULES_DIR>
这个命令来生成文档的。
请问这有可能吗?如果可以的话,应该怎么做呢?
2 个回答
3
pydoc -w ...
这个命令可以把一个模块的HTML文档写到当前目录下的一个文件里。如果你输入的内容里有一个'/',那么它就会把这个内容当作文件名来处理;如果你输入的是一个文件夹的名字,它就会把这个文件夹里所有的内容的文档都写出来。
6
我之前也遇到过同样的问题,后来在寻找解决办法时看到了这个问题。我也搞不清楚该怎么做,所以这是我的解决方案。我没有尝试让pydoc输出到特定的位置,而是直接在当前目录生成文档,然后把文件移动到我想要的位置。
在我的情况下,目标文件夹叫做'doc',而源文件则在'semlm'目录下。
mkdir -p doc
pydoc -w `find semlm -name '*.py'`
mv *.html doc
(你可以根据自己的需要自定义pydoc命令,但这个方法对我有效)。
我不想每次都手动输入这些命令,所以我把它放在了一个Makefile里。以下是其中的一部分:
.PHONY: doc
doc:
mkdir -p doc
pydoc -w `find semlm -name '*.py'`
mv *.html doc
.PHONY: doc
这一行是必须的,因为Makefile的目标和顶层目录中的一个文件夹(也就是'doc')同名。现在我可以通过运行以下命令来生成文档到doc文件夹里:
make doc
也许还有更优雅的方法,但这是我目前找到的最好办法。