2013-01-23 10 views
33

Tôi đã tự hỏi liệu có cách nào để mở rộng tất cả các phần phụ trong tiêu đề được bao gồm trong tệp index.rst không?Cách mở rộng tất cả các phần phụ trên thanh bên toctree trong Sphinx

Như một ví dụ, đây là cách nó là:

Section 1 
Section 2 
Section 3 

Và đây là cách tôi muốn nó là:

Section 1 
    Subsection 1.1 
    Subsection 1.2 
    Subsection 1.3 
Section 2 
    Subsection 2.1 
    Subsection 2.2 
    Subsection 2.3 
Section 3 
    Subsection 3.1 
    Subsection 3.2 
    Subsection 3.3 

Nếu tôi bấm vào mục 1, nó cho thấy những gì là dưới điều đó, nhưng nếu tôi nhấp vào Phần 2, nội dung của phần 1 bị ẩn và chỉ có 2 được hiển thị. Tôi muốn tất cả 2 phần được mở rộng mỗi khi tôi ở trên trang chỉ mục. Tôi đã thử thêm toctreemaxdepth, không có gì hoạt động.

+5

Bạn có thể thêm các nội dung của file 'index.rst' bạn cho câu hỏi? – ddbeck

+0

Nếu bạn đang sử dụng chủ đề ReadTheDocs, bạn có thể muốn xem https://stackoverflow.com/questions/27669376/show-entire-toctree-in-read-the-docs-sidebar – erb

Trả lời

5

Vâng, tôi mất khoảng 3,4 triệu tế bào thần kinh cố gắng đọc mã nguồn nhân sư (là nó được viết bởi một loạt các raccoid raccoless raccoons?! Rất nhiều mức độ trừu tượng).

Vì vậy:

  • làm theme nhân sư riêng của bạn (sử dụng một chủ đề bên thứ 3 làm căn cứ, rất dễ dàng tôi sử dụng chủ đề 'đọc' cho điều đó.)
  • trong thư mục nơi bạn có chủ đề. conf, thêm một "fulltoc.html" mẫu, chứa một dòng:

fulltoc.html:

{{ toctree(collapse=False) }} 

(Heh, chú ý đến đối số 'sụp đổ'?)

  • trong sphinx conf.py, sửa đổi tùy chọn html_sidebars để thêm mẫu của bạn; và tuyên bố chủ đề của bạn

conf.py:

html_theme_path = [customized_readable_theme.get_html_theme_path()] 
html_theme = 'customized_readable' 
html_sidebars = {'**': ['fulltoc.html', 'relations.html', 'sourcelink.html', 'searchbox.html']} 
  • xây dựng lại tài liệu
+0

Tôi đã cung cấp cho bạn một trăm +1 nếu tôi có thể. Cảm ơn. – EugZol