2015-01-10 7 views
7

मेरे पास पाइथन प्रोजेक्ट स्रोत कोड में एक शब्दकोश है जो डिफ़ॉल्ट कॉन्फ़िगरेशन मानों का वर्णन करता है। शब्दकोश काफी लंबा है। मैं "स्रोत देखें" के अलावा अन्य प्रारूप में स्फिंक्स दस्तावेज़ में शब्दकोश देखना चाहता हूं, ताकि लोग डिफ़ॉल्ट मानों की तुरंत जांच कर सकें।स्फिंक्स प्रलेखन में शब्दकोश डेटा प्रदर्शित करना

क्या स्फिंक्स स्पिनक्स ऑटोडोक के साथ उपयोग किए जाने पर मानव-पठनीय प्रारूप के लिए शब्दकोश-जैसी चर को प्रारूपित करने के विकल्प प्रदान करता है? मैं वर्तमान में पूरे मॉड्यूल को डंप करने के लिए .. automodule:: का उपयोग कर रहा हूं और मुझे मूल रूप से अपठनीय होने के कारण, दस्तावेज़ में एक लंबी स्ट्रिंग डंप के रूप में शब्दकोश मिलता है (कोई न्यूलाइन, सुंदर प्रिंटिंग, कुछ भी नहीं)।

  • करता स्फिंक्स उपकरण व्यक्तिगत स्रोत कोड चर

  • का मूल्य बाहर मुद्रित करने के लिए प्रदान करते हैं वहाँ किसी भी सुंदर मुद्रण उपलब्ध है?

+0

@MarianaB पर। - लिंक एक अनुमति की ओर इशारा करता है त्रुटि से इनकार कर दिया। क्या कोई सार्वजनिक विकल्प है? – Erve1879

+1

क्षमा करें, मुझे एक सार्वजनिक लिंक नहीं मिला है। मैंने भ्रम से बचने के लिए मेरी टिप्पणी हटा दी। –

उत्तर

5

यह सबसे सुरुचिपूर्ण समाधान नहीं हो सकता है (यह बहुत बेहतर होगा उत्पादन एक सुंदर मुद्रित शब्दकोश के लिए एक उचित निर्देश लिखने के लिए), लेकिन यह अभी के लिए काम करता है:

कस्टम कार्यकारी निर्देश जोड़े अपने स्फिंक्स .conf फ़ाइल के लिए here दिया है, तो, .rst फ़ाइल में आप शब्दकोश प्रिंट करना चाहते हैं, कुछ इस तरह करते हैं:

.. exec:: 
    import json 
    from some_module import some_dictionary 
    json_obj = json.dumps(some_dictionary, sort_keys=True, indent=4) 
    print '.. code-block:: JavaScript\n\n %s\n\n' % json_obj 

अपने दस्तावेज़ों में एक जावा स्क्रिप्ट कोड ब्लॉक में अपने शब्दकोश से बाहर प्रिंट होगा कि (जो मुझे डिक प्रस्तुत करने का सबसे अच्छा तरीका लगता है दस्तावेज़ों में tionaries)।

+0

मेरा अंतिम '{' ब्रैकेट कैरेक्टर कोड ब्लॉक से बाहर हो रहा है। कोई राय कि इसे कैसे ठीक किया जाए? – jsmedmar

+0

आप कोड ब्लॉक के अंदर अंतिम {चरित्र प्रस्तुत करने के लिए json_obj = json_obj [: - 1] + "}" जोड़ना चाहेंगे। – jsmedmar

3

शब्दकोश मूल्य का अभिकलन तो नहीं है और इस तरह मानव पठनीय FRUITS = { "Apple": "Red and Delicious", # note: eating too much orange make your hands orange "Orange": "A lot of vitamin C" } कहते हैं कि तुम लाइन # से 15

तो शुरू कर fruit.py में परिभाषित ऊपर dict है आप कर सकते हैं: .. literalinclude:: ../path-to-file/fruit.py :language: python :lines: 15- :linenos: और आप करेंगे मानव पठनीय मूल्य + टिप्पणियां आदि दाएं

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