मैं काफी जटिल परियोजना पर काम कर रहा हूं और समय के बाद मुझे स्टैक निशान देखने में समस्याएं कम करनी पड़ती हैं। वे बहुत लंबे समय तक होते हैं और एक ही समय में "मेरा" कोड, मानक पुस्तकालय कोड और तृतीय पक्ष पुस्तकालय कोड शामिल करते हैं। अधिकांश समय वास्तविक समस्या "मेरे" कोड में होती है और इसे तुरंत एक स्टैक ट्रेस में ढूंढने से आंखों के लिए थोड़ा मुश्किल होता है। "मेरे" कोड के तहत मेरा मतलब है कि वर्तमान कार्य निर्देशिका के तहत कोड है।हाइलाइटिंग पायथन स्टैक निशान
तो मुझे एहसास हुआ कि मुझे ऐसा कुछ चाहिए जो स्टैक निशान और मेरी रेखाओं को हाइलाइट करेगी। original से highlighted की तुलना करें।
मुझे लगता है कि मैं इस तरह से इस्तेमाल कर सकते हैं एक अजगर स्क्रिप्ट लिख सकते हैं:
nosetests | colorize_stack_trace.py
लेकिन मेरा मानना है कि इस का उपयोग करते हुए लिनक्स टूलसेट करने के लिए एक तेज और अधिक सुरुचिपूर्ण तरीका है। कोई विचार?
युपीडी:
pyst() {
rc=/tmp/spcrc;
echo '#################### ### # # # ########################################' > $rc;
echo ' blk 0 r ^(.*)$' >> $rc;
echo ' mag b 0 r ^\s*File "'`pwd`'/(.*)"' >> $rc;
spc -c $rc;
}
अब मैं क्या कर सकते हैं:
डेनिस विलियमसन ने सुझाव दिया supercat का उपयोग करना, मध्यवर्ती परिणाम बैश समारोह पीछा कर रहा है
nosetests 2>&1 | pyst
नहीं
भी सुंदर, लेकिन कुछ डिग्री पर काम करता है। दो समस्याएं बाकी हैं:
- मुझे नोसेटेट पूर्ण होने से पहले कोई आउटपुट नहीं दिखाई दे रहा है। अर्थात। मुझे प्रगति दिखाई नहीं दे रही है।
- मुझे 2> & 1 बार बार लिखना है।
युपीडी 2:
इस सवाल मेरे मन में मुख्य रूप से nosetests
था पूछ। और मुझे अभी बहुत अच्छा समाधान मिला: rednose नाक प्लगइन। यह उन पथों को हाइलाइट करता है जो स्थानीय हैं और कई आसान पठनीयता चीजें करते हैं।
मूल प्रश्न पर लौटना: सुपरकैट के साथ मैंने जो समस्याएं देखी हैं, वे पूरी तरह से उससे संबंधित नहीं हैं लेकिन यह यूनिक्स शैल स्ट्रीमिंग, फ़्लशिंग, पाइपिंग, रीडायरेक्टिंग की समस्या है। तो प्रश्न के उत्तर के रूप में पूछा गया है कि मैं एक जवाब स्वीकार करता हूं जो सुपरकैट सुझाता है।
rednose अच्छा है। आप अपने '.noserc' –