在Python中是否有相当于Ruby的Yard?

时间:2012-04-25 20:06:50

标签: python ruby documentation-generation yard

我同时使用Python和Ruby,我真的很喜欢Ruby的Yard文档服务器:

http://yardoc.org/

我想知道Python世界中是否存在等价物? “pydoc -p”真的很旧,很丑,根本不习惯,看起来Sphinx和Epydoc都不支持服务器模式。

你知道吗?

谢谢

2 个答案:

答案 0 :(得分:3)

Python包实际上没有一个约定放置文档。包的主要文档可以使用一系列不同的工具构建,有时基于文档字符串,有时不基于文档字符串。您在pydoc -p中看到的只是包内容和文档字符串,而不是主文档。如果这就是你想要的,你也可以使用Sphinx来达到这个目的。这是sphinx-server,我编写的shell脚本:

#!/bin/sh
sphinx-apidoc -F -o "$2" "$1"
cd "$2"
make html
cd _build/html
python -mSimpleHTTPServer 2345

使用要获取信息的程序包的package目录作为第一个参数,将构建新文档的目录作为第二个参数调用。然后,将浏览器指向http://localhost:2345/

(注意:您可能希望从脚本中删除Web服务器调用。这更多是为了演示。这是假设Python 2.x。)

答案 1 :(得分:1)

似乎没有必要实现Web服务器只是为了提供一些HTML。我倾向于喜欢每个工具的* ix哲学做一件小事,好吧。并不是说Web服务器很小。

但你可以看一下http://docs.python.org/library/basehttpserver.html