ngắn phiên bản
- chạy
sphinx-apidoc -o . mymodule
- bỏ ghi chú và chỉnh sửa
conf.py
. Trong ví dụ này, sys.path.insert(0, os.path.abspath('mymodule'))
- tái chạy
make html
Long trả lời
tôi có thể tạo lại vấn đề với module mẫu này:
$cat mymodule/mymodule.py
def fn1():
'''First function'''
pass
def fn2():
'''Second function'''
pass
Chạy sphinx-quickstart
sản xuất cây sau:
$tree
.
├── Makefile
├── _build
├── _static
├── _templates
├── conf.py
├── index.rst
├── mymodule
└── mymodule.py
$cat index.rst
.. sphinx example documentation master file, created by
sphinx-quickstart on Mon Mar 30 15:28:37 2015.
You can adapt this file completely to your liking, but it should at least
contain the root `toctree` directive.
với mặc định index.rst
:
Welcome to sphinx example's documentation!
==========================================
Contents:
.. toctree::
:maxdepth: 2
Indices and tables
==================
* :ref:`genindex`
* :ref:`modindex`
* :ref:`search`
Chạy make html
vào thời điểm này sản xuất không có đầu ra trong _build/html/py-modindex.html
. Điều này là do sphinx
cần các tệp .rst mô tả mọi mô-đun. May mắn là nó dễ dàng để sản xuất bằng cách sử dụng sphinx-apidoc -o . mymodule
. Điều này cung cấp hai tệp mới, trong đó chỉ mymodule.rst
là cần thiết để khắc phục vấn đề về modindex trong câu hỏi.
$head *mod*rst
==> modules.rst <==
mymodule
========
.. toctree::
:maxdepth: 4
mymodule
==> mymodule.rst <==
mymodule module
===============
.. automodule:: mymodule
:members:
:undoc-members:
:show-inheritance:
Chạy make html
vào thời điểm này vẫn không hoạt động. Nhưng bỏ ghi chú và thay đổi dòng bắt đầu bằng sys.path.insert
trong conf.py
sửa chữa mọi thứ.
Mine là: sys.path.insert(0, os.path.abspath('mymodule'))
PS: để tránh một cảnh báo thêm, thêm modules
đến Contents:
toctree trong file index.rst
.
Bạn có "*: ref:' modindex' "trong tệp index.rst của mình không? Vui lòng cung cấp nội dung của tệp index.rst. – alecxe
Bạn đang sử dụng autodoc, hay bạn đang thêm mô-đun vào modindex theo cách thủ công? Nếu sử dụng autodoc thì bạn phải [include ''sphinx.ext.autodoc'' trong danh sách các phần mở rộng trong' conf.py'] (http://sphinx-doc.org/tutorial.html#autodoc). Nếu sử dụng, hãy sử dụng ['..py: module: 'chỉ thị cho mỗi mô-đun mà bạn muốn được liệt kê trong chỉ mục] (http://sphinx-doc.org/domains.html#directive-py:module). Kiểm tra xây dựng cho các lỗi lại: vai trò và chỉ thị, như modindex sẽ không xây dựng nếu có lỗi. Tôi đã có vấn đề tương tự này lúc đầu, nhưng kiểm tra các lỗi cố định nó. –
Tôi phải đối mặt với cùng một vấn đề như Karin, nơi thiết lập của autodoc theo các trạm kiểm soát từ Mark. Tuy nhiên, nó vẫn không được tạo ra từ monindex.html. Tôi có bỏ lỡ bất kỳ bước nào không? –