एमएसीएस 24.3 या उससे नीचे
इन पुरानी फ़ाइलों को लोड होने से रोकने का कोई अंतर्निहित तरीका नहीं है, लेकिन इनसे छुटकारा पाने के आसान तरीके हैं।
- आप कॉल करके पूरी एल्पा निर्देशिका को फिर से जोड़ सकते हैं
M-x byte-recompile-directory RET ~/.emacs.d/elpa/
:।
यह पुरानी फ़ाइलों से छुटकारा पाना चाहिए।
- आप ऑटो-संकलित पैकेज का उपयोग कर सकते हैं
और सक्रिय
auto-compile-on-load-mode
कर सकते हैं जो फ़ाइलों को लोड करने से पहले संकलित कर सकते हैं।
एमएसीएस 24.4
हां, और यह सरल नहीं बल्कि निकला। load-prefer-newer
चर ठीक इस उद्देश्य कार्य करता है।
(setq load-prefer-newer t)
दुर्भाग्य से, यह तब काम नहीं करेगा जब कुछ कोड विशेष रूप से .elc
फ़ाइल को लक्षित करते
हैं, जैसे कि (load "server.elc")
। लेकिन यह तब तक पर्याप्त होना चाहिए जब तक आप बिना प्रत्यय के उपयोग require
या कॉल कर रहे हों load
, जो आपको चाहिए।
डॉक्टर से:
लोड-पसंद-नया, lread.c में परिभाषित एक चर है।
इसका मूल्य शून्य है
प्रलेखन:
गैर-शून्य का मतलब है लोड एक फ़ाइल के नवीनतम संस्करण को पसंद करता है।
यह तब लागू होता है जब एक फ़ाइल नाम प्रत्यय स्पष्ट रूप से निर्दिष्ट नहीं होता है और लोड विभिन्न संभावित प्रत्ययों (लोड-प्रत्यय और लोड-फाइल-रिप-प्रत्यय देखें) की कोशिश कर रहा है। आम तौर पर, यह पहली फ़ाइल पर रुकता है जब तक आप स्पष्ट रूप से एक या दूसरे को निर्दिष्ट नहीं करते हैं। यदि यह विकल्प गैर-शून्य है, तो यह सभी प्रत्ययों की जांच करता है और जो भी फ़ाइल नवीनतम है उसका उपयोग करता है।
ध्यान दें कि यदि आप इसे अनुकूलित करते हैं, तो जाहिर है कि यह उन फ़ाइलों को प्रभावित नहीं करेगा जो आपके अनुकूलन से पहले भरी हुई हैं!
auto-compile
Emacs 24.4+ में उत्कृष्ट (उत्कृष्ट!) लाइब्रेरी का उपयोग करने का आग्रह करूंगा, साथ ही नीचे भी। यह एक वास्तविक कॉन्फ़िगर-एंड-भूल समाधान है।load-prefer-newer
केवल यह सुनिश्चित करता है कि आपके संकलित कोड के आउट होने के बाद आप धीमे अनलॉक्ड कोड चलाना जारी रखेंगे ।