2013-01-02 6 views
9

Powiel możliwe:
Sphinx — combining automodule and autoclassPython: Sphinx: Jak automatycznie włączyć wszystkie klasy, metody i funkcje do dokumentacji sfinksa?

próbuję utworzyć dokumentacji HTML dla projektu zawierającego kilka tysięcy klas przy użyciu Sfinks i to plugin AutoDoc. Sphinx-apidoc tworzy wspaniałe pliki rst, ale brakuje automatycznego tworzenia autoclasses i autometods.

Czy istnieje sposób/polecenie/narzędzie w sfinksie do automatycznego uwzględniania w dokumencie wszystkich zmiennych, funkcji, klas i dekoratorów?

Niektóre przykładowy kod jednego RST-pliku:

tagger Package 
================= 

:mod:`tagger` Package 
------------------------ 
.. automodule:: project.tagger 
    :members: 


:mod:`client` Module 
-------------------- 
.. automodule:: project.analyzers.tagger.client 
    :members: 
+0

Czy sprawdziłeś już rozszerzenie '' autodoc' (http://sphinx-doc.org/ext/autodoc.html#module-sphinx.ext.autodoc)? –

+0

rozszerzenie autodoc jest dodawane w conf.py: extensions = ['sphinx.ext.autodoc', 'sphinx.ext.viewcode'] Sphinx wykrywa wszystkie moduły, ale nie wyświetla klas i metod. – Jon

+0

Zgodnie z powyższym rozszerzeniem autodoc "Członkowie bez docstrukcji zostaną pominięci, chyba że podasz opcję flagi niedziałających członków" – intotecho

Odpowiedz

1

Jest sfinks rozszerzenie, które pomogą Ci w tym. Przedłużenie to .

Jeśli chcesz dołączyć klasę potem trzeba napisać

.. autoclass:: <ClassName> 

Slly dla metody.

+7

Używam autodoc. Oznacza to, że będę musiał dodać ..autoclass ponad tysiąc razy lub utworzyć skrypt. Czy nie istnieje autodetekcja? – Jon

+2

Możesz użyć 'automodule' Jeśli chcesz automatycznie dokumentować członków, istnieje opcja członków. Sprawdź link. Istnieje wiele opcji rozszerzenia autodoc. – Nilesh