Sphinx: принудительная перестройка html, включая autodoc

В настоящее время, когда я бегу sphinx-build, только когда есть изменения в исходных файлах, встроенные строки документации подобраны и использованы. Я пробовал звонить sphinx-build с -a переключатель, но это, кажется, не имеет никакого эффекта.

Как я могу принудительно перестроить вывод HTML и выполнить автодок?

2 ответа

Решение

Кажется, работает, если -E опция используется вместе с -a, Я добавил это к html цель в моем Makefile и теперь изменения в строках документации подобраны без обновления каких-либо .rst файлы.

Я использую clean подкомандование make чтобы заставить перестроить документацию (как @Henrik заявил в своем комментарии).

Вы можете выдать его отдельной командой:

make clean
make html

Или команды можно комбинировать:

make clean html

Я не использую sphinx-build, но с make html я всегда делаю touch *.rst в моих исходных файлах. Затем внесите изменения в html.

Для пользователей Windows, основываясь на этом ответе, чтобы использовать параметр -E -a, я обновил файл make.bat с новым параметром

> ./make.bat clean

make.bat

@ECHO OFF
pushd %~dp0
REM Command file for Sphinx documentation

if "%SPHINXBUILD%" == "" (
    set SPHINXBUILD=sphinx-build
)

set SOURCEDIR=source
set BUILDDIR=build
set SPHINXOPTS=
set TARGET=%1

if "%1" == "" goto help
if "%1" == "clean" goto clean
goto :run

:clean
echo.CLEAN BUILD with -E -a 
set %TARGET% = "html"
set %SPHINXOPTS% = "-E -a"

%SPHINXBUILD% >NUL 2>NUL
if errorlevel 9009 (
    echo.
    echo.The 'sphinx-build' command was not found! Make sure you have Sphinx
    echo.installed, then set the SPHINXBUILD environment variable to point
    echo.to the full path of the 'sphinx-build' executable. Alternatively you
    echo.may add the Sphinx directory to PATH.
    echo.
    echo.If you do not have Sphinx installed, grab it from
    echo.http://sphinx-doc.org/
    
    exit /b 1
)

:run
%SPHINXBUILD% -M %1 %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O%
goto end

:help
%SPHINXBUILD% -M help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O%
echo.   clean to make clean. 
:end
popd
Другие вопросы по тегам