मैं अपने emacs कॉन्फ़िगरेशन में निम्न संरचना का उपयोग करता हूं: प्रत्येक प्रोग्रामिंग मोड का उपयोग करने के लिए, मैं प्रोग्रामिंग-मोड-config.el नामक फ़ाइल में कॉन्फ़िगरेशन बनाए रखता हूं। (इसलिए पायथन कॉन्फ़िगरेशन पायथन-मोड-config.el आदि में जाएगा)।कस्टम कॉन्फ़िगरेशन को सही तरीके से लोड करने के लिए मैं ऑटोलोड का उपयोग कैसे करूं?
इससे पहले, मुझे इन फ़ाइलों में से प्रत्येक में myit.el में आवश्यकता होती थी। इस दृष्टिकोण की कमी यह थी कि मेरा स्टार्ट-अप समय बड़ा था। तो इस सप्ताहांत में, मैं बैठ गया और सभी जरूरतों को ऑटोलोड में परिवर्तित कर दिया। अब मेरी init फ़ाइल इस तरह दिखता है: जब तक मैं एक अजगर फ़ाइल को खोलने
(autoload 'python-mode "python-mode-config" "Load python config" t)
इस प्रकार अजगर config लोड नहीं किया जाएगा। इससे मेरा स्टार्ट-अप समय लगभग 1 सेकंड तक पहुंच गया, लेकिन यह सभी मामलों में ठीक से काम नहीं करता है। उदाहरण के लिए,
(autoload 'erc "erc-mode-config" "Load configuration for ERC" t)
मेरे एआरसी tweaks बिल्कुल लोड नहीं करता है। autoload प्रलेखन को देखते हुए, यह कहा गया है कि:
Define FUNCTION to autoload from FILE.
...
If FUNCTION is already defined other than as an autoload,
this does nothing and returns nil.
तो मेरा अनुमान है कि कि ईआरसी config लोड नहीं है क्योंकि ईआरसी आता है 'में निर्मित' जबकि अजगर मोड Emacs के साथ मैं का उपयोग एक प्लगइन है। क्या कोई तरीका है कि मैं अपने एआरसी कॉन्फ़िगरेशन को केवल लोड करने के लिए प्राप्त कर सकता हूं जब मैं वास्तव में ईआरसी का उपयोग करता हूं? एकमात्र अन्य विकल्प जो मैं देखता हूं वह eval-after-load का उपयोग कर रहा है, लेकिन मेरे अनुकूलन के प्रत्येक छोटे हिस्से को एक eval-after-load में डालने के बजाय दर्दनाक होगा।
मुझे डर है कि यह भी हो सकता है कि मैंने ऑटोलोड को ठीक से नहीं किया है। किसी भी सहायता की सराहना की जाएगी।
धन्यवाद, मुझे एक नाराज लग रहा था कि मेरे ऑटोलोड्स गलत थे :) – vedang
इसके अलावा, आप सही थे। मेरे पहले की कॉन्फ़िगरेशन (इसके बाद 'पायथन की आवश्यकता होती है) (इसके बाद' पायथन-मोड-कॉन्फ़िगरेशन की आवश्यकता होती है)। जब मैं इसे ऑटोलोड के रूप में पुनः लिखता हूं तो मैंने पाइथन-मोड-कॉन्फ़िगरेशन फ़ाइल में (आवश्यक 'पायथन) कमांड को स्थानांतरित किया। अब मेरे सभी ऑटोलोड और बैक-अप-लोड लोडिंग और फिक्सिंग। – vedang