2012-08-10 33 views
18

मैं SICP पढ़ रहा हूं और मैं mit-schemehomebrew के माध्यम से अपने ओएस एक्स 10.8 लैपटॉप पर स्थापित कर रहा हूं।कमांड लाइन इतिहास और टैब पूर्णता के साथ एमआईटी-योजना आरईपीएल

सब कुछ विज्ञापित के रूप में काम करता है, हालांकि मैं आसानी से खराब हो गया हूं जिसके साथ मुझे आरईपीएल में पाइथन और नोड.जे.एस. जैसे रनटाइम के लिए टैब पूर्णता और कमांड लाइन इतिहास मिलता है।

मैं कुछ भी हेवी ड्यूटी के लिए नहीं देख रहा हूँ, लेकिन इन सुविधाओं सुंदर आधुनिक आरईपीएल में से आने के लिए आसान कर रहे हैं (यह सिर्फ a simple startup file अजगर में है और a few lines in Node.js में कार्यान्वित किया जा सकता है)।

क्या एमआईटी-स्कीम आरईपीएल में भारी कर्तव्य आवेदन के बिना टैब को पूरा करने और कमांड इतिहास प्राप्त करने का कोई आसान तरीका है या ईमैक्स पर स्विच करना है (यानी xterm टर्मिनल में)?

उत्तर

40

स्थापित readline wrapper:

brew install rlwrap

एक बार स्थापित, rlwrap scheme आप लगातार इतिहास, कोष्ठक मिलान, और टैब पूरा होने दे देंगे। मैं आम तौर पर निम्नलिखित तर्कों के साथ rlwrap का उपयोग करता हूं:

-r पूरा होने वाले सभी शब्दों को पूरा करने और पूरा करने की सूची में आउटपुट पर रखें।

-c पूरा फ़ाइल नाम

-f शब्द टैब पूरा करने के लिए उपयोग करने के लिए की सूची निर्दिष्ट करें। मैं MIT Scheme Reference Manual से बाइंडिंग की एक संक्षिप्त सूची का उपयोग कर रहा हूं। यहां सूची को पुन: प्रकाशित करने के बजाय, आप इसे this gist में पा सकते हैं। मैं /scheme_completion.txt

rlwrap -r -c -f "$HOME"/scheme_completion.txt scheme

1 ]=> (flo:a <tab tab> 
flo:abs flo:acos flo:asin flo:atan flo:atan2 
1 ]=> (flo:abs -42.0) 

;Value: 42. 
+0

प्यार इस इस फ़ाइल "$ HOME" में जमा हो जाती है। यह अन्य कार्यक्रमों के लिए भी वास्तव में उपयोगी लगता है। –