2012-10-07 11 views
10

स्फिंक्स के साथ दस्तावेज़ करते समय मैं किसी ऑनलाइन छवि को कैसे देख सकता हूं?स्फिंक्स (पुनर्गठित टेक्स्ट) प्रारूप में एक ऑनलाइन छवि निर्दिष्ट करना

यह काम नहीं करता:

.. 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

+0

आप बिल्कुल सही हैं! – stratosgear

उत्तर

3

यह काफी शर्मनाक है ...

delnan के रूप में ऊपर उल्लेख किया है उसकी टिप्पणी, मुझे केवल चेतावनी मिल रही है।

मेरी रक्षा में, मैं छवि निर्देश पर बसने से पहले कुछ जटिल कच्चे निर्देशों की कोशिश कर रहा था, और मैं केवल प्रस्तुत पृष्ठों पर स्फिंक्स के आउटपुट को देख रहा था। जब मैंने स्फिंक्स से लंबे आउटपुट को देखा तो मुझे लगता है कि मैंने फिर से एक और त्रुटि मारा।

फिर भी, मुझे दोष है ... छवि ठीक है।

5

मैं इस के लिए कच्चे एचटीएमएल कोड का उपयोग, जैसे:

.. raw:: html 

    <p style="height:22px"> 
    <a href="https://travis-ci.org/aio-libs/aiozmq" > 
     <img src="https://travis-ci.org/aio-libs/aiozmq.svg?branch=master"/> 
    </a> 
    </p> 
+0

यह प्रारूप बाहरी छवियों को चेतावनी के बिना अनुमति देता है, जो ट्रैविस/टोक्स जैसे निरंतर एकीकरण सूट में 'स्फिंक्स-बिल्ड -W' (त्रुटियों में चेतावनियां चालू) के उपयोग की अनुमति देता है। – jwhitlock

+0

हालांकि, गिटहब पर आरएसटी पार्सर 'कच्चे :: एचटीएमएल' को अनदेखा करता है :( – jwhitlock

+0

मैं अपने स्फिंक्स दस्तावेज़ों में README.rst शामिल नहीं करता हूं, और मेरी किसी भी डॉक्स निर्देशिका को देखने की उम्मीद नहीं करता - गिटहब खराब स्पिंक्स मार्कअप वैसे भी –

19

स्फिंक्स 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 

एक पहले का वर्शन इस उत्तर के एक पैच प्रदान किया गया जो नवीनतम स्फिंक्स 1.4 रिलीज [1] के साथ असंगत है।

suppress_warnings = ['image.nonlocal_uri'] 

यह 'nonlocal छवि यूआरआई मिला' कोई चेतावनी को बाहर निकाल देगा: इसके अलावा, स्फिंक्स की अगली फिल्म इस विन्यास विकल्प [2] का समर्थन करना चाहिए।

मैं यह आवश्यक पाया क्योंकि मैं sphinx-build -W को फेंकना "त्रुटियों के रूप में चेतावनी" अपने परीक्षण & निर्माण के बुनियादी ढांचे, के हिस्से के रूप सुनिश्चित करना है कि वहाँ दस्तावेज में कोई गलती कर रहे हैं चाहते हैं - मैं जानता हूँ कि बहुत अच्छी तरह से मुझे लगता है कि मैं nonlocal छवि यूआरआई का उपयोग कर रहा हूँ और मैं के साथ ठीक हूँ, लेकिन मैं अन्य चेतावनियों को अनदेखा नहीं करना चाहता।

[1] https://github.com/sphinx-doc/sphinx/issues/2429#issuecomment-210255983

[2] https://github.com/sphinx-doc/sphinx/issues/2466

+0

यह काम करता है, लेकिन स्फिंक्स> 1 को तोड़ता है।3 चेतावनियों में अपवाद का कारण बनता है (उदाहरण के लिए यदि एक लिंक किया गया रेफ मौजूद नहीं है)। Kwargs ** स्वीकार करने के लिए इसे थोड़ा संशोधित करने की आवश्यकता है। यहां अधिक जानकारी: https://github.com/sphinx-doc/sphinx/issues/2429 –

+0

यहां एक और बंदर पैच है http://www.dpetzel.info/tips/python/2013/09/24/sphinx -साथ-बाहरी छवि annoyance.html –

संबंधित मुद्दे