2011-03-21 9 views
5

में स्वत: पूर्ण करने में सक्षम मैंने हाल ही में लिस्प सीखना शुरू कर दिया है, और मुख्य रूप से क्लिन और विम का उपयोग करके बिन है। मैं एसबीसीएल को भी कोशिश करना चाहता था, क्योंकि इसे अक्सर सर्वश्रेष्ठ, मुफ्त लिस्पी कंपाइलरों में से एक के रूप में अनुशंसित किया जाता है। एक बात है, हालांकि, जो मेरे लिए एसबीसीएल का उपयोग करना अधिक कठिन बनाता है: मैं आरईपीएल में स्वतः पूर्ण नहीं हो सकता, जो कि मेरे पास है। यही कारण है कि, जब मैं SBCL शुरू करने और (एक उदाहरण के रूप में) निम्न लिखें है,एसबीसीएल

* (requi<tab> 

जहां <tab> शाब्दिक टैब वर्ण है, मैं पूर्तियों की एक सूची प्राप्त नहीं है, बल्कि एक वर्बोज़ टैब वर्ण। क्लिस में, <tab> पिछली लाइन * (require पर पूरा करेगा।

जैसा कि मैं लापरवाही के लिए बिल्कुल नया हूं, क्लिस में स्वत: पूर्ण कार्यक्षमता वास्तव में आसान है, इसलिए अगर यह एसबीसीएल में इसे कैसे प्राप्त किया जाए तो यह वास्तव में बहुत सुविधाजनक होगा।

उत्तर

6

एसबीसीएल में स्वत: पूर्ण प्रतिलिपि प्राप्त करने का एक तरीका है http://common-lisp.net/project/linedit/ से, लिनडिट का उपयोग करना। एक दूसरा एक उपयुक्त समापन फ़ाइल के साथ, एक रेडलाइन रैपर, rlwrap का उपयोग करना है। (मुझे लगता है कि इनमें से कोई भी कहना उचित नहीं है कि इनमें से कोई भी आमतौर पर एमएक्स के रूप में उपयोग नहीं किया जाता है, जो निश्चित रूप से कई अन्य उपयोगी विशेषताओं के साथ एक पूर्ण आरईपीएल भी प्रदान करता है।)

+0

धन्यवाद! linedit बहुत अच्छी तरह से काम करता प्रतीत होता है! –

+0

rlwrap मेरे लिए काम करता है –

4

मुझे एसबीसीएल में एक ऑटो-पूर्णिंग आरईपीएल प्राप्त करने का कोई तरीका नहीं पता है, लेकिन मुझे लगता है कि एसआईएलएमई के भीतर से मेरे लिस्प पर्यावरण के साथ इंटरफेसिंग काफी आसान है और उस समय, आप ऑटो सी के लिए सीसी सीआई का उपयोग कर सकते हैं। समापन।

+1

मुझे इसके बारे में एसबीसीएल मैनुअल में कुछ भी नहीं मिला है, इसलिए मुझे लगता है कि कोई अंतर्निहित पूरा समर्थन नहीं है। मैं एसएलईएमई का उपयोग करने की सिफारिश केवल दूसरी कर सकता हूं, इसमें से चुनने के लिए कई पूर्णता प्रणालियों भी हैं। विशेष रूप से अस्पष्ट समापन महान है। और आप एसएलईएमई आरईपीएल में '' के साथ भी पूरा कर सकते हैं। (यह कम से कम मेरे लिए काम करता है, और मुझे इसे प्राप्त करने के लिए कुछ भी कॉन्फ़िगर करने की आवश्यकता नहीं थी।) संपादित करें: मैं बस देखता हूं कि सी-सी सी-आई अब गैर-प्रतिकृति एसएलईएमई बफर में बाध्यकारी है। यह मेरे लिए नया है, यह एम-सी-आई होता था। –

+0

खैर, एक समस्या यह है कि मैं विम का उपयोग करता हूं, emacs नहीं। मैंने स्वैप करने की कोशिश की है, लेकिन vipermode (या इसी तरह) के साथ emacs सेट करने के लिए थोड़ा सा काम है और इसे मेरे लिए काम करने के लिए इसे पसंद करने के लिए इसे ट्यून करने के लिए। इस प्रकार, कम से कम अभी के लिए, कीचड़ एक विकल्प नहीं है। मैं विम के लिए एक कीचड़-प्रेरित प्लगइन का उपयोग करता हूं, लेकिन यह लगभग उतना शक्तिशाली नहीं है। वैसे भी, यही कारण है कि मैं एसबीसीएल के मानक आरईपीएल के पूरा होने में रूचि रखता हूं। वैसे भी, उत्तर के लिए धन्यवाद। यह मुझे emacs पर एक नया प्रयास करने के लिए थोड़ा और प्रेरित करता है। –

0

यदि आप एसबीसीएल, एमएक्स और कीचड़ का उपयोग करना चाहते हैं, इस Modern Common Lisp on Linux ट्यूटोरियल का पालन करें। ट्यूटोरियल quicklisp और विशेष रूप से (ql:quickload "quicklisp-slime-helper") स्थापित करने का उल्लेख करता है, एक एलिस्क्रिप्ट जो स्वत: पूर्ण करने के लिए कीचड़ हो रही है और अधिक।

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