Sau nhiều hackery, tôi đã đến giải pháp sau đây, nhưng trước tiên tôi phải nói rằng mục tiêu của tôi là:
- có tiêu đề KHÔNG xuất hiện trong cơ thể nội dung
- có tiêu đề xuất hiện trong TOC
Vì vậy, về cơ bản, liên kết từ TOC đến phần tùy ý nhưng vô hình của tài liệu.
Tôi cần điều này để có thể liên kết đến các phương pháp trong một số tài liệu mã nguồn được hiển thị bằng Sphinxcontrib PHPDomain - các phương pháp này tạo liên kết phần của riêng chúng, nhưng không được thêm vào TOC theo mặc định.
Bước 1:
Ở phía trên cùng của tập tin RST của bạn mà cần chức năng liên kết này, thêm một vai trò mới như vậy:
.. role:: hidden
:class: hidden
Bước 2:
Một nơi nào đó trong nội dung, sử dụng vai trò này như vậy:
:hidden:`My Arbitrary Location`
"""""""""""""""""""""""""""""""
Bước 3:
Thêm CSS mới cho dự án (thường được thực hiện bằng cách thêm một file CSS vào _static
, hoặc xác định một style sheet hoặc một cái gì đó như thế - xem this):
.rst-content .hidden {
display: none;
}
nav .hidden {
display: unset;
}
Điều này buộc tiêu đề được ẩn trong nội dung, nhưng được hiển thị trong TOC.
Sau đó, sử dụng lại vai trò khi cần thiết trong các tài liệu khác.
Lưu ý rằng nếu mục tiêu của bạn là để liên kết đến các địa điểm tùy ý trong tài liệu và vẫn có những tiêu đề xuất hiện trong nội dung, chỉ cần thay đổi CSS để định dạng các tiêu đề theo ý thích của bạn chứ không phải là ẩn chúng.
@ duncan-macleod Tôi biết nó đã được một thời gian, nhưng xem xét xem xét? – Swader