2014-09-24 8 views
2

У меня есть проект на C++, который я документирую с помощью Sphinx. Чтобы исходный каталог был чистым, он использует сборку вне источника. У меня есть учебная программа, которая создается как часть проекта и генерирует изображение в каталоге сборки, а не в исходной директории проекта. Как я могу ссылаться на изображение в файлах документации в исходном каталоге, если у меня нет контроля над относительным расположением исходных и сборных каталогов проекта?Point sphinx to images in build directory

Я попытался с помощью rst_epilog в conf.py так:

rst_epilog = """ 
.. |builddir| replace:: %s 
""" % project_build_dir 

, а затем обратитесь к изображению, как так:

.. figure:: |builddir|/generated.png 

, но в конечном итоге с ошибками, как «ПРЕДУПРЕЖДЕНИЕ: файл изображения не читается: | builddir | /generated.png ».

ответ

1

На данный момент это отрицательно ответит на этот вопрос: reStructured Text (Sphinx) : substitution in a file name?. Замены не могут использоваться в директивах изображений для изменения имени файла, и альтернативы не предлагалось, кроме как написать новое расширение или вручную сгенерировать подстановку изображений для каждого изображения.