हालांकि, यह उल्लेख किया जाना चाहिए कि ~/.emacs.d/init.elवैकल्पिक प्रति उपयोगकर्ता init फ़ाइल के रूप में केवल Emacs 22+ भार है । एक नए लेकिन नीचे-संगत सुविधा के रूप में यह प्राथमिकता देता है ~/.emacs। इसमें व्यवस्था की गई है lisp/startup.el।
स्टार्टअप के बाद user-init-fileवैरिएबल में init फ़ाइल प्रभारी, जैसे /home/me/.emacs.elcया C:\Users\Me\.emacs.d\init.elआदि का पूर्ण पथनाम होता है। इसके मान को देखने के लिए, उसके बाद *scratch*बफर प्रकार (insert user-init-file)में C-x C-e।
~/.emacs.d/निर्देशिका वास्तव में अतिरिक्त प्रति-उपयोगकर्ता फ़ाइलों के लिए एक मानक स्थान है। पथ Emacs चर द्वारा परिभाषित किया गया है user-emacs-directory। विंडोज के तहत यह पथ HOME(नहीं USERPROFILE) चर पर निर्भर करता है । उदाहरण के लिए, कब HOMEसेट किया C:\जाएगा C:\.emacs.d। जब Emacs चल रहा है तो मैं इस व्यवहार को एक बैच-फ़ाइल का उपयोग करके करता हूं, HOMEजो पेन ड्राइव पर एक डायरेक्टरी में सेट होता है।
इस निर्देशिका में केवल लिस्प फाइलें नहीं हैं! उदाहरण के लिए, डिफ़ॉल्ट रूप से किसी भी संपादित फ़ाइल को ~/.emacs.d/auto-save-list/( auto-save-list-file-prefixचर देखें ) ऑटो-सेव फीचर । इसने मुझे बैकअप-फाइलों को भी स्टोर करने के लिए प्रेरित किया:
(defvar --user-backup-directory (concat user-emacs-directory "backups"))
(if (not (file-exists-p --user-backup-directory))
(make-directory --user-backup-directory t))
(setq backup-directory-alist `(("." . ,--user-backup-directory)))
(setq make-backup-files t)
Emacs 22 से पहले ~/elispमेरे पास अपनी व्यक्तिगत लिस्प फाइलों के लिए एक निर्देशिका थी । अब मैं उपयोग करता हूं
(pushnew (expand-file-name "~/.emacs.d/elisp") load-path)
जैसा कि यहां बताया गया है ।
तो ~/.emacs.dवास्तव में काफी उपयोगी है, हालांकि मैं ~/.emacs.d/init.elसंदिग्ध का विचार खोजता हूं । ~/.emacs.d/निर्देशिका अतिरिक्त प्रति-उपयोगकर्ता फ़ाइलों के लिए एक मानक स्थान है। क्या यह अधिक समझ में नहीं आता जब Emacs ~/.emacs.d/init.elइसके अतिरिक्त पढ़ता है ~/.emacs.el?