2009-08-19 9 views
10

मैं अपने मैक ओएस एक्स टर्मिनल के कुछ व्यवहार और मेरे Django manage.py खोल और pdb द्वारा संदेह में हूँ।मैक ओएस एक्स टर्मिनल एप्लिकेशन में टाइप करते समय मानक इनपुट क्यों प्रदर्शित नहीं होता है?

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

इनपुट अभी भी कब्जा कर लिया जा रहा है के रूप में मैं मानक आउटपुट देख सकते हैं।

उदा। pdb.set_trace() में मैं प्रदर्शित करने के लिए 'एल' कर सकता हूं कि मैं कोड में कहां हूं। हालांकि, 'एल' प्रदर्शित नहीं किया जाएगा, बस एक खाली संकेत।

यह यह मुश्किल डिबग करने के लिए क्योंकि मैं निर्धारित नहीं कर सकता है कि मैं क्या कर रहा हूँ में टाइप बनाता है।

गलत क्या हो रहा हो सकता है और मैं इसे ठीक करने के लिए क्या कर सकते हैं?

+0

कृपया परिभाषित करें "हालांकि, अगर कोई त्रुटि है," क्या त्रुटि? कहा पे? क्या आप आईडीईएल में हैं? पायथन'>> 'प्रॉम्प्ट से चल रहा है? क्या - विशेष रूप से - चल रहा है? जाहिर है, एक प्रक्रिया ने आपके टर्मिनल को रीसेट कर दिया है। सवाल यह है कि कौन सा? –

+0

मैं पाइथन इंटरैक्टिव खोल चला रहा हूं: मेरा मानना ​​है कि यह त्रुटि है: त्रुटि: [एरनो 32] टूटा हुआ पाइप – BryanWheelock

+0

मेरा देव सर्वर थोड़ी देर के लिए चल रहा है, तो मुझे उबंटू खोल में एक ही समस्या थी। कुछ प्रकार का अधिकतम बफर हो सकता है जो आगे टाइप किए गए वर्णों को दिखने से रोकता है। बस एक नया टर्मिनल खोलें या स्पष्ट टाइप करें। –

उत्तर

-1

मैक ओएस एक्स पर ReadLine स्थापित करने की कोशिश:

$ sudo easy_install readline 

यह एक अंधे अनुमान है, लेकिन शायद यह आपकी समस्या नहीं सुलझती।

+0

मैं पहले से ही रीडलाइन 2.5.1 – BryanWheelock

+0

का उपयोग कर रहा हूं easy_install क्या है? – hhafez

+0

देखें http://en.wikipedia.org/wiki/Easy_install – reto

3

आप इससे बाहर निकलें pdb आप रीसेट और मानक इनपुट गूंज वापस आ जाएगी टाइप कर सकते हैं। मुझे यकीन नहीं है कि आप पीडीबी के भीतर कुछ ऐसा निष्पादित कर सकते हैं। हालांकि यह वर्तमान में प्रदर्शित किया गया है जो मिटा देगा।

19

हो सकता है कि इस वजह से उसमें कोई त्रुटि Django चलाते समय था। कभी-कभी ऐसा होता है कि std इनपुट गायब हो जाता है क्योंकि stty का उपयोग किया गया था। आप मैन्युअल रूप से टाइप करके अपने इनपुट छुपा सकते हैं:

$ stty -echo

अब आप नहीं देख सकेंगे जो आपने टाइप किया। इस बहाल करने और सिर्फ टाइप

$ stty echo

यह मदद कर सकता है आपकी समस्या का समाधान करने के लिए।

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