मैंने कई, कई घंटे बिताए हैं जो अब किसी भी प्रकार के SMIE इंडेंटेशन नियम / व्याकरण / काम करने की कोशिश कर रहे हैं।
वहाँ एक छोटे से, खिलौना या कंकाल SMIE- आधारित मोड के किसी भी उदाहरण के साथ प्रलेखन पर है कि यह वास्तव में कैसे काम करता है, या किसी भी चर्चा कहीं भी इसका उपयोग कैसे करें? कुछ ऐसा है, जो कहता है, एक अभिव्यक्ति को परिभाषित करता है जैसे कि अर्ध-बृहदान्त्र में समाप्त होने वाले टोकन की एक स्ट्रिंग और कोष्ठक के बीच कुछ अभिव्यक्तियों के रूप में एक ब्लॉक और कुछ नहीं। वास्तव में, वास्तव में सरल?
विशिष्ट प्रश्न: जब मुझे प्रतिक्रिया मिलती है तो 90% स्माइली-कॉन्फिग-शो-इंडेंट का उपयोग करते समय '': सूची-परिचय '' -> शून्य ''। अभिव्यक्ति की परिभाषा या अभिव्यक्ति की सूची पर आधारित सूची-परिचय क्या है? इसे शून्य क्यों कहते हैं और अभी भी निम्नलिखित पंक्तियों को इंगित करते हैं? मुझए इसे कैसे बदलना है?
दूसरी बात: क्या मेरे व्याकरण और मेरे स्माइली-नियमों के बीच कोई संबंध है? मेरा मानना है कि क्योंकि वे दोनों स्माइली-सेटअप में पास हो चुके हैं, लेकिन मुझे यह कहने का कोई तरीका नहीं मिल रहा है, "जब आप एक 'ब्लॉक' देखते हैं, तो सामग्री को इंडेंट करें", उदाहरण के लिए, एक व्याकरण के आधार पर जो एक ब्लॉक की पहचान करता है ।
तीसरा, SMIE के लिए बहुत सारे नियम "बेक्ड इन" लगते हैं। बस इसे बंद करने से उदाहरण के लिए कोष्ठक, ब्रेस और कोष्ठक की सामान्य हैंडलिंग मिलती है। क्या इन नियमों को देखने या उन्हें संशोधित करने का कोई तरीका है? या यह है कि वाक्यविन्यास तालिका यह सब कर रही है और एसएमईई शाब्दिक रूप से कुछ भी नहीं कर रही है (जिसे मैं संदेह करना शुरू कर रहा हूं)।
अंत में, जब मैं SMIE को डीबग करने की कोशिश कर रहा हूं, तो "एडिट, इवैल मोड मोड बफर" करने का प्रयास करें, अन्य बफर में उदाहरण कोड पर जाएं, एमएक्स <माय मोड>, टेस्ट "चक्र" लेकिन ऐसा लगता है कि चारों ओर की प्रत्येक यात्रा नियमों को स्पष्ट नहीं करती है पिछला चक्र। मैं कैसे सुनिश्चित कर सकता हूं कि परिभाषित-व्युत्पन्न-मोड एक साफ शीट से शुरू होता है? मेरे पास (सभी-स्थानीय-वैरिएबल में) हैं, लेकिन यह पर्याप्त नहीं लगता है और मैं अंत में एमएसीएस को बंद कर देता हूं।
मैं जो भी मेरे पास है उसका कोई भी उदाहरण पोस्ट नहीं कर रहा हूं क्योंकि मेरे पास कुछ भी नहीं है जो अस्पष्ट रूप से भी काम करता है, एक तरफ हाइलाइटिंग से (फ़ॉन्ट-लॉक-डिफॉल्ट का उपयोग करके, इसलिए यह वास्तव में एसएमआईई भी नहीं है)। मुझे कुछ वास्तविक शिशु चरणों की आवश्यकता है।
lisp/progmodes/sh-script.el
पर उपयोग करना प्रतीत होता है smie.el
। वे इसका उपयोग करने के लिए दस्तावेज़ भी प्रतीत करते हैं ताकि शायद यह एक बेहतर उदाहरण हो सके?