2013-05-14 10 views
14

PEP 257 का कहना है:पीईपी 257 डॉकस्ट्रिंग ट्रिम?

Docstring प्रसंस्करण उपकरण docstring के दूसरे और आगे लाइनों, पहली पंक्ति के बाद सभी गैर-रिक्त लाइनों की न्यूनतम खरोज के बराबर से खरोज के एक समान राशि हटेगा। डॉकस्ट्रिंग की पहली पंक्ति में कोई इंडेंटेशन (यानी, पहली नई लाइन तक) महत्वहीन और हटा दिया गया है। डॉकस्ट्रिंग में बाद की रेखाओं के सापेक्ष इंडेंटेशन को बरकरार रखा जाता है। रिक्त रेखाओं को डॉकस्ट्रिंग की शुरुआत और अंत से हटा दिया जाना चाहिए।

एक फ़ंक्शन trim इस एल्गोरिदम को लागू करने के बाद पीईपी में दिखाया गया है।

मुझे ऐसे प्रश्न मिल सकते हैं जहां लोग डॉकस्ट्रिंग को प्रारूपित करने के लिए पूछते हैं और पीईपी 257 (उदा।, this) को संदर्भित किया जाता है। मुझे उन टूल्स के बारे में कुछ जानकारी भी मिलती हैं जो सुनिश्चित करते हैं कि आपके डॉकस्ट्रिंग पीईपी 257 का पालन करें (उदाहरण के लिए, this)। जो मुझे नहीं मिल रहा है वह कोई पाइथन लाइब्रेरी है जो वास्तव में एक "डॉकस्ट्रिंग प्रोसेसिंग टूल" है जो पीईपी 257 में परिभाषित तरीके से डॉकस्ट्रिंग को संभालती है --- या कम से कम, मुझे ऐसा टूल नहीं मिल रहा है जो इस डॉकस्ट्रिंग प्रोसेसिंग को बनाता है कार्यक्षमता सीधे उपलब्ध है।

क्या पीईपी 257 में दिखाया गया कार्य trim मानक पुस्तकालय में मौजूद है? जाहिर है, मैं फ़ंक्शन को स्वयं फ़ाइल में पेस्ट कर सकता हूं, लेकिन अगर मैं कुछ अन्य कंप्यूटर का उपयोग कर रहा हूं, तो मैं इसे मानक लाइब्रेरी से उपयोग करना पसंद करूंगा जहां मैं पीईपी से प्रतिलिपि बनाने और पेस्ट करने की बजाए यह कार्यक्षमता चाहता हूं। यह देखते हुए कि यह कार्य बीडीएफएल द्वारा लिखे गए पीईपी में है, मैंने सोचा होगा कि कुछ आधिकारिक या अर्ध-आधिकारिक पुस्तकालय होगा जो ऐसा करता है।

कारण मैं चाहता हूं कि यह एक सजावट लिखना है जो कुछ पायथन-कक्षाओं/कार्यों के दस्तावेज़ों के आंतरिक सुधार को करता है। मैं एचटीएमएल या कुछ और उत्पन्न नहीं करना चाहता; मैं सिर्फ वास्तविक वस्तुओं के वास्तविक दस्तावेज़ों को बदलना चाहता हूं। मैं पाइथन ऑब्जेक्ट की सादा-पाठ __doc__ विशेषता लेना चाहता हूं और इसे किसी ऐसे चीज़ में दोबारा सुधारना चाहता हूं जो पाइथन ऑब्जेक्ट की सादे-पाठ __doc__ विशेषता के रूप में कार्य करेगी।

+0

ठीक है, अनुमान में, 'sphinx',' pydoc', et al यह सब करने जा रहे हैं। –

+0

@ लैटवेयर: मैंने अपने प्रश्न को थोड़ा सा स्पष्ट किया। वे इसे कर सकते हैं, लेकिन जहां तक ​​मैं दस्तावेज़ों से देख सकता हूं, वे इसे अधिक हेवीवेट प्रोसेसिंग के हिस्से के रूप में करते हैं और डॉकस्ट्रिंग के सरल हेरफेर के लिए कोई इंटरफ़ेस प्रदान नहीं करते हैं। उनका उद्देश्य एचटीएमएल, आदि उत्पन्न करना है, और सादे टेक्स्ट डॉकस्ट्रिंग को सिर्फ मर्ज करने का सीधा तरीका नहीं लगता है। – BrenBarn

+0

मुझे अभी भी इसका अर्थ समझने में परेशानी हो रही है, लेकिन स्पिंक्स क्या करता है इसका एक अच्छा हिस्सा आपके पाठ को पुनर्गठित टेक्स्ट पार्सर (स्फिंक्स द्वारा प्रदान किए गए कुछ विशेष एक्सटेंशन के साथ) पास करता है, ताकि आप वास्तव में जो भी चाहें कर सकें मार्ग। –

उत्तर

21

संबंधित प्रश्न का उत्तर ढूंढने में, मुझे इसका जवाब मिल गया। trim एल्गोरिदम सभी स्थानों के inspect.cleandoc में कार्यान्वित किया गया है।

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