स्नैकमेक एक पायथन की तरह प्रतिस्थापन है जो कि संकलन की तुलना में वर्कफ़्लो की दिशा में अधिक तैयार है। यह काफी अच्छा है, लेकिन यह भी काफी नया है, और मुझे Emacs में इसके लिए एक मोड नहीं मिल रहा है। मैं सिर्फ बहुत ही सरल कुछ चाहते हैं: मौलिक मोड से एक बहुत ही मामूली संशोधन, इसलिए Emacs मैनुअल ध्यानपूर्वक पढ़ने में मैं, मैं init.el में निम्नलिखित शुरू कर दिया:emacs मोड?
(define-derived-mode snake-mode fundamental-mode
...
)
मेकअप की तरह, snakemake इंडेंट के बारे में सख्त (वास्तविक है टैब "\ t" वर्ण, एक प्रकार के टैब पर डिफ़ॉल्ट रूप से emacs कैसे व्यवहार करता है)। जब मैं इसके बजाय "सी-क्यू टैब" टाइप करता हूं तो यह बफर में एक असली टैब कैरेक्टर रखता है: यह काम करता है, मैंने इसे मौलिक मोड में एक सांपफाइल के साथ करने की कोशिश की और यह पूरी तरह से चलता है। तो प्रत्येक बार जब मैं इस मोड में एक टैब चाहता हूं, तो "सी-क्यू टैब" टाइप करने से बचने के लिए, पहला जोड़ा मैं सांप-मोड में बनाना चाहता हूं, "सी-क्यू टैब" (या ऐसा कुछ) करने के लिए टैब कुंजी को पुन: स्थापित करना है। इसलिए मैं Emacs पुस्तिका अवलोकन और करने की कोशिश की:
(define-derived-mode snake-mode fundamental-mode
(global-set-key (kbd "\t") (kbd "C-q \t"))
...
)
लेकिन इस और अन्य विकल्प काम नहीं कर रहे ... शायद एक सिफारिश अभ्यास टैब कुंजी की तरह मानक कुंजी rebinding नहीं है?
साँप-मोड मैं चाहूँगा करने के लिए अन्य अलावा यह अजगर के अनुसार वाक्य रचना को उजागर करने के लिए (लेकिन नहीं किसी भी अजगर व्यवहार, जैसे, अजगर इंडेंट व्यवहार है)
निष्कर्ष निकाल लिए, बस इन 2 है "सांप-मोड" बनाने में मौलिक मोड में सरल संशोधन और स्नैप-मोड का आह्वान करने का एक तरीका यदि फ़ाइल नाम "सांपफाइल" था, तो मैं सब कुछ ढूंढ रहा था, लेकिन मैंने पहले से ही इमैक मैनुअल को समझने में कई घंटे बिताए हैं और कुछ googling कर रहा है, और ऐसा लगता है कि मैं भी करीब नहीं हूँ। यह इतना आसान है, और मुझे पूरा यकीन है कि यह संभव है; कोई सलाह?
धन्यवाद
मरे
इस "समाधान" में एक छोटा सा परिशिष्ट: "डालने-टैब" फ़ंक्शन पहले से ही emacs में परिभाषित किया गया है, इसलिए किसी को (सांप-टैब() को रोकना चाहिए ... या कोई अन्य नाम जो पहले से नहीं है नामस्थान – user2489449