2012-04-25 101 views
3

我同時使用Python和Ruby,我真的很喜歡Ruby的院子文檔服務器:Python中是否有Ruby的Yard等價物?

http://yardoc.org/

我想知道如果在Python世界中的相同呢? 「pydoc -p」真的很舊,很醜並且根本不舒服,它看起來並不像Sphinx和Epydoc支持服務器模式。

你知道有什麼等價物嗎?

謝謝

+3

我不知道院子。你能解釋一下Yard做了什麼,特別是你可以從Python中得到什麼樣的功能? – 2012-04-25 20:13:27

+0

Yard是一個文檔服務器,它在安裝時會自動生成gems(等同於雞蛋)文檔,也可以用作獨立文檔生成器(如sphinx),它提供了一個非常好的現代Web界面,包括搜索,語法着色和類/模塊樹,你可以在這裏看到一個在線文檔的例子:http://rubydoc.info/docs/yard/frames/file/docs/WhatsNew.md – Kedare 2012-04-25 20:15:54

+0

我正在尋找的功能是文檔服務器這比pydoc -p更方便使用,這將允許我在文檔中進行搜索並且可以輕鬆導航到文檔中(例如Yard樹) – Kedare 2012-04-25 20:18:14

回答

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 

調用此方法,你想有作爲第一個參數信息包的包目錄和目錄在哪裏建立新的文件作爲第二個參數。然後,將瀏覽器指向http://localhost:2345/

(注:你可能想要刪除從腳本的Web服務器調用它更多的demonstrattion的目的,這是假設的Python 2.x版本。)

+0

我在一個隨機項目SQLAlchemy),我只有一個沒有任何文檔的模塊列表,這是正常的嗎? – Kedare 2012-04-25 21:01:15

+0

@Kedare:我也嘗試過一個隨機包(來自標準庫的'logging'),它對我很有用。應該以可以通過Python導入的方式安裝該軟件包,並且您應該將Sphinx指向可從其導入軟件包的目錄。獅身人面像只能自動構建它可以導入的模塊的文檔。 – 2012-04-25 21:03:56

+0

好的,這是一個案件的問題,我再次用包名稱上的好例子,它工作:) – Kedare 2012-04-25 21:09:34

相關問題