मैं फ़ाइल एक्सटेंशन के एक विशिष्ट सेट के लिए स्वचालित रूप से एक मोड कैसे लोड कर सकता हूं?


19

मैं yaml-modeकिसी भी फाइल के नाम *.ymlया के लिए लोड करना चाहूंगा *.yaml


7
Elisp मैन्युअल, नोडAuto Major Mode पढ़ें , और आप अपने स्वयं के प्रश्न का उत्तर देने में सक्षम होंगे auto-mode-alist:। ओह, मैंने देखा कि आपने प्रश्न पोस्ट करने के 10 सेकंड बाद किया था। शायद इस तरह मैनुअल से क्यू एंड ए पंप करने के लिए एक अच्छा विचार नहीं है। लेकिन मुझे लगता है कि यह एक ऐसा सवाल है जो लोगों को होगा, और इसका जवाब उनकी मदद करेगा। बहुत बुरा वे इसे इस तरह से सीखेंगे, बजाय इसे एमाक्स से सीखने के। लोगों को सिखाने के लिए बेहतर है कि इस तरह के जवाब कैसे पाएं, आई.एम.ओ.
ड्रू

1
इसे उत्तर के रूप में जोड़ने के लिए स्वतंत्र महसूस करें। मैंने यह सवाल इसलिए पूछा क्योंकि यह मैं अतीत में हल किया गया था, और यह एरिया51 सूची में एक प्रस्तावित प्रश्न के समान था।
b4hand

1
कोई दिक्कत नहीं है। क्षमा करें यदि मैंने नकारात्मक ध्वनि की है। जैसा कि मैंने कहा, सवाल और जवाब लोगों की मदद करेंगे
आकर्षित किया '

इसके लायक क्या है, यह एक प्रश्न के समान है जो एरिया 51 पर प्रस्ताव चरण के दौरान पूछा गया था: area51.stackexchange.com/proposals/76571/emacs/76640#76640
b4hand

ऐसा प्रश्न पूछने में कुछ भी गलत नहीं है। मेरी टिप्पणी मूल रूप से सिर्फ पहला वाक्य था। IMO, लोगों के लिए यह अच्छा है कि वे पहले Emacs पूछने की आदत डालें, और SE सेकंड पूछें। Emacs इस तरह से उपयोगकर्ताओं की मदद करने में थोड़ा विशेष है - यह आपका औसत SE विषय नहीं है। लेकिन उपयोगकर्ताओं को अक्सर यह जानने में मदद की आवश्यकता होती है कि Emacs कैसे पूछें
ड्रू

जवाबों:


16

इन पंक्तियों को अपनी .emacsफ़ाइल में जोड़ें :

(require 'yaml-mode)
(add-to-list 'auto-mode-alist '("\\.ya?ml\\'" . yaml-mode))

auto-mode-alistएक चर जो सलाह भी लेता है emacs जब भी कोई नया फ़ाइल को खोला जाता है। आप फ़ाइल नाम पैटर्न और प्रमुख-मोड के बीच मैपिंग जोड़ सकते हैं।

आप इस बारे में अधिक जानकारी प्राप्त कर सकते हैं कि Emacs किसी दिए गए बफर के लिए Emacs मैनुअल से लोड करने के लिए कौन से मोड निर्धारित करता है ।


4
"\\। ya? ml \\ '" पसंदीदा रूप है, क्योंकि यह वास्तव में स्ट्रिंग का अंत है, न कि एक नई रेखा। यह वास्तव में फ़ाइल के लिए एक अंतर बनाता है जिनके नाम में एक नई लाइन है ... 'foo.yaml \ nc' वास्तव में एक सी फ़ाइल होनी चाहिए, यमल फ़ाइल नहीं (हाँ, यह बहुत संभावना नहीं है कि यह कभी भी होगा, लेकिन अभी भी)
सिग्मा

2
यह उपयोगी होगा यदि आप भी emacs मैनुअल से जुड़े हैं जहाँ यह जानकारी दी गई है।
ट्रेवोके

यह भी (require 'yaml-mode)अनावश्यक है अगर मोड ऑटोलॉजेड है (जो लगभग हमेशा मामला है)। जब आप सही फ़ाइल एक्सटेंशन वाली फ़ाइल खोलते हैं तो लाइब्रेरी अपने आप लोड हो जाएगी।

चूंकि yaml-modeएक पैकेज के रूप में स्थापित किया गया था, मुझे निश्चित रूप से (require 'yaml-mode)लाइन की आवश्यकता थी; अन्यथा, मुझे निम्न त्रुटि दिखाई देगी File mode specification error: (void-function yaml-mode):।
b4hand
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.