2016-09-24 2 views
1

私はSphinxドキュメントのPythonプロジェクトを持っており、コードリポジトリを小さく保つために、ドキュメントに含めるイメージやファイルのいくつかは別のリポジトリにあります。Python Sphinxイメージディレクティブで環境変数を使用

Sphinx docsビルドでは、他のリポジトリを指すようにシェル環境変数を設定しています。私はこのようなimage directiveからそれを使用してみました:

.. image:: $OTHER_REPO/docs_images/image.png 

が、それは動作しません。

今のところ、私はdocsソースツリーに必要なファイルをコピーして、それが動作するようなコードをdocs/conf.pyに入れました。しかし、これはハックのように感じる、これを行う適切な/より良い方法が必要ですか?

答えて

0

conf.pyでは、rst_epilogという変数を設定できます。 replacement directiveを使用すると、実行できる可能性があります。 conf.py

rst_epilog = """ 
.. |other_repo| """ + os.environ['OTHER_REPO'] + """ 
""" 

実際の文書で:私はそれをテストしていませんが、出発点であるかもしれない

.. image:: |other_repo|/docs_images/image.png 

+0

'rst_epilog'の構文が正しくありません。これはうまくいきます: 'rst_epilog =" "" .. | other_repo | replace ::%s "" "%os.environ ['OTHER_REPO']'。しかし、 '| other_repo |'はイメージパスに代入されていないので、助けにはなりません。 – mzjn

関連する問題