Reconstruir documentos do sphinx quando um arquivo de origem é modificado

Ao escrever documentação usando o Sphinx, fica muito chato ter que executar manualmente make htmltoda vez que você faz uma alteração em um arquivo de origem para ver o resultado no arquivo HTML gerado.

Vamos usar um programa Python simples chamado rerunpara consertar isso.

Em primeiro lugar, vamos instalar o programa do pypi

pip install rerun

(Isso funciona com Python 2 e Python 3)

Agora vamos cdpara o docsdiretório que supomos conter os arquivos fonte

cd docs

E finalmente executamos o reruncomando neste diretório.

rerun -v -i=_build "make html"

O -vsinalizador instrui o comando a ser executado no modo detalhado.

O -isinalizador instrui o comando a ignorar o _builddiretório.

(Esta é a pasta onde os arquivos gerados são colocados, portanto, não estamos interessados ​​em mudanças nesse diretório.)

Finalmente, o comando entre aspas é o comando real que desejamos executar quando qualquer arquivo no diretório atual muda. Neste caso émake html

E é isso.

Agora, toda vez que um arquivo fonte no docsdiretório é editado, o make htmlcomando será executado automaticamente