獅身人面像通常會增量生成文檔,這意味着只有已更改的文件纔會重新生成。我想知道是否有辦法告訴獅身人面像總是重新生成某些文件,這些文件可能並未直接更改,但會受到其他文件更改的影響。更具體一點:有沒有辦法告訴Sphinx總是重新生成包含某個指令的文件?我正在處理的文檔依賴於通過指令相當頻繁地從其他頁面收集和重新格式化信息的可能性。乾淨(make clean && make [html]
)和/或完整(sphinx-build -a
)構建比增量構建花費的時間要長得多。此外,手動跟蹤包含該指令的文件可能會很複雜。該文檔由10多位撰寫Sphinx文檔的經驗不足的作者撰寫。始終重新生成包含特定指令的獅身人面像文件
但即使是在不太複雜的情況下,您可能會面對這個「問題」: 例如sphinx.ext.todo含有一種叫todolist
指令,它收集待辦事項從整個文檔。如果我從我的文檔(基本上只包含todolist
指令的空文檔)創建一個包含所有待辦事項的文件,則在我進行清理構建或更改文件之前,列表不會更新。
如果你想測試它自己:與sphinx-quickstart
創建一個文檔,並堅持爲默認值,除了
'> todo: write "todo" entries that can be shown or hidden on build (y/n) [n]: y'
在source
稱爲todos.rst
從index.rst
添加文件和參考文件。在index.rst
的
內容:中todos.rst
Welcome to sphinx-todo's documentation!
=======================================
.. toctree::
:maxdepth: 2
todos
.. todo::
I have to do this
Indices and tables
==================
* :ref:`genindex`
* :ref:`modindex`
* :ref:`search`
內容:
.. _`todos`:
List of ToDos
=============
.. todolist::
假設你使用html
輸出,你會發現,當你添加待辦事項到index.html
todos.html
不會改變。
TL;博士:如何 - 如果可能的話 - 我包括含有特定指令(例如todolist
)爲增量構建獅身人面像,而無需手動跟蹤他們的文件?
謝謝你的回答。您的回答支持我目前的印象,即您必須創建所有內容或直接指定要重建的文件。我希望爲指令/文件或一些最佳實踐預處理(例如before-build-hook)提供一個整潔的隱藏的「白名單」關鍵字,但似乎並不存在。 – aleneum