Указание онлайн-изображения в формате Sphinx (реорганизованный текст)
Любые идеи о том, как я могу ссылаться на онлайн-образ при документировании с помощью Sphinx?
Это НЕ работает:
.. image:: http://www.mysite.com/images/someimage.png
Дает мне:
/home/user/proj/2010/11/08/the_forever_war.rst:11: WARNING: nonlocal image URI found: http://www.mysite.com/images/someimage.png
Спасибо...
Ответы
Ответ 1
Это довольно смущающее...
Как сказал delnan в своем комментарии, я получаю предупреждение.
В моей защите я пытался выполнить некоторые довольно сложные исходные директивы, прежде чем решился на директиву изображения, и я просто смотрел на вывод Sphinx, а не на отображаемые страницы. Когда я увидел длинный вывод из Sphinx, я предположил, что снова ударил еще одну ошибку.
Тем не менее, я виноват... Изображение загружается отлично.
Ответ 2
Как и в sphinx 1.4, вы можете "сфинкс обезьяны" из вашего файла docs/conf.py
следующим образом:
import sphinx.environment
from docutils.utils import get_source_line
def _warn_node(self, msg, node, **kwargs):
if not msg.startswith('nonlocal image URI found:'):
self._warnfunc(msg, '%s:%s' % get_source_line(node), **kwargs)
sphinx.environment.BuildEnvironment.warn_node = _warn_node
В предыдущей версии этого ответа был исправлен патч, который несовместим с последней версией sphinx 1.4 [1]. Кроме того, следующий выпуск sphinx должен поддерживать этот вариант конфигурации [2]:
suppress_warnings = ['image.nonlocal_uri']
Это исключает любые предупреждения об обнаружении URI нелокального изображения.
Я нашел это необходимым, потому что хочу, чтобы sphinx-build -W
испускать "предупреждения как ошибки" как часть моей тестовой и построенной инфраструктуры,
чтобы в документации не было ошибок - я
очень хорошо знаю, что я использую нелокальный URI изображения, и я в порядке с
это, но я не хочу игнорировать другие предупреждения.
[1] https://github.com/sphinx-doc/sphinx/issues/2429#issuecomment-210255983
[2] https://github.com/sphinx-doc/sphinx/issues/2466
Ответ 3
Я использую для этого raw html-код, например:
.. raw:: html
<p style="height:22px">
<a href="#" onclick="location.href='https://travis-ci.org/aio-libs/aiozmq'; return false;" >
<img src="https://travis-ci.org/aio-libs/aiozmq.svg?branch=master"/>
</a>
</p>