2012-04-13 22 views
22

मैं उबंटू लिनक्स 11.04 (नैटी) मशीन पर वर्चुअलएन्व में पायथन 2.6 का उपयोग कर रहा हूं। आदेश अजगर डिबगर (pdb) शुरू करने केपायथन डीबगर (पीडीबी) ने तीर ऊपर/नीचे तीर बंद कर दिया, दिखाता है^[[ए

import pdb ; pdb.set_trace() 

: मैं अपने (Django) अजगर कोड में इस कोड है।

आज तक, यह ठीक काम करता है। लेकिन अब जब पीडीबी शुरू होता है, तो यह डिबगिंग और रनिंग और ब्रेकपॉइंट्स इत्यादि के लिए काम करता है, लेकिन जब मैं पिछले कमांड को दिखाने के लिए ऊपर तीर दबाता हूं तो यह ^[[A प्रिंट करता है, इसके बजाय कोई नहीं जाता है। जब मैं कुछ टाइप करता हूं और होम दबाता हूं, तो यह कर्सर को स्थानांतरित करने के बजाय ^[OH प्रिंट करता है।

मैं ऊपर/घर/आदि का उपयोग कर सकता हूं। बैश टर्मिनल में ठीक है जो मेरे पायथन django unittests लॉन्च करता है (जिसमें पीडीबी कॉल है)।

क्या चल रहा है? मैं अपने पीडीबी को कैसे ठीक करूं? मेरी रीडलाइन के साथ क्या गलत है?

+0

क्या यह pdb.set_trace() नहीं है? –

+0

@reos हाँ, वह एक टाइपो था। अभी तय यह '0 ... set_trace()' 'मेरे कोड में – Rory

+1

था क्या आपने अपना खोल रीसेट करने का प्रयास किया था? 'रीसेट' – dm03514

उत्तर

0

क्षमा करें ... लेकिन क्या आपने अपने पीडीबी सर्वर के कीबोर्ड पर रीकूट या कंट्रोल, कमांड, ऑप्शन (या इसी तरह की) कुंजियों की कोशिश की है?

11

ऐसा लगता है कि आप रीडलाइन पैकेज खो रहे हैं। बस इसे pip install readline टाइप करके इंस्टॉल करें और इसे अपेक्षा के अनुसार व्यवहार करना चाहिए। यदि आप venv में नहीं हैं तो इसे सुपरसियर के रूप में टाइप करना याद रखें।

+0

ऐसा लगता है कि [_readline_] (https://pypi.python.org/pypi/readline) पैकेज बहिष्कृत है। मानक पुस्तकालय मॉड्यूल के साथ नाम टकराव हल करने के लिए इसका नाम बदलकर [_gnureadline_] (https://pypi.python.org/pypi/gnureadline) कर दिया गया है। – Yoel