Emacs में डिफ़ॉल्ट फोल्डर बदलना


107

मैं Emacs के लिए काफी नया हूं और मैं यह पता लगाने की कोशिश कर रहा हूं कि C-x C-fस्टार्ट-अप के लिए डिफ़ॉल्ट फ़ोल्डर को कैसे बदला जाए। उदाहरण के लिए जब मैं पहली बार Emacs को लोड करता हूं और C-x C-fउसके डिफ़ॉल्ट फ़ोल्डर को हिट करता C:\emacs\emacs-21.3\binहूं, लेकिन मैं इसे डेस्कटॉप कहूंगा। मेरा मानना ​​है कि ऐसा करने के लिए .emacsफ़ाइल को अनुकूलित करने का कोई तरीका है , लेकिन मैं अभी भी अनिश्चित हूं कि यह क्या है।

अद्यतन: समस्या के तीन समाधान हैं जो मुझे काम करने के लिए मिले, हालांकि मेरा मानना ​​है कि समाधान 3 केवल विंडोज है।

  • समाधान 1: ऐड (cd "C:/Users/Name/Desktop")करने के लिए .emacsफ़ाइल

  • समाधान 2: ऐड (setq default-directory "C:/Documents and Settings/USER_NAME/Desktop/")करने के लिए .emacsफ़ाइल

  • समाधान 3: एमएसीएस शॉर्ट कट, हिट प्रॉपर्टीज पर राइट क्लिक करें और फील्ड को वांछित निर्देशिका में बदलें।

जवाबों:


84

आपने ऐसा नहीं कहा, लेकिन ऐसा लगता है कि आप विंडोज शॉर्टकट से Emacs शुरू कर रहे हैं।

वह निर्देशिका जिसे आप cx cf के साथ देखते हैं, वह cwd है, Emacs शब्दों में, default-directory(एक चर)।

जब आप MS Windows शॉर्टकट का उपयोग करके Emacs शुरू करते हैं, तो default-directoryशुरू में शॉर्टकट गुणों के "स्टार्ट इन" क्षेत्र में निर्दिष्ट फ़ोल्डर (निर्देशिका) होता है। शॉर्टकट को चुनें, चयन करें Propertiesऔर Start Inफ़ील्ड में अपने डेस्कटॉप पर पथ टाइप करें ।

यदि आप कमांड लाइन से Emacs का उपयोग कर रहे हैं, default-directory उस निर्देशिका के रूप में शुरू होता है जहाँ आपने Emacs (cwd) शुरू किया था।

यह तरीका आपकी .emacs फ़ाइल को संपादित करने से बेहतर है, क्योंकि यह आपको एक से अधिक शुरुआती निर्देशिकाओं के साथ एक से अधिक शॉर्टकट्स की अनुमति देगा, और यह आपको जरूरत पड़ने पर Emacs के सामान्य कमांड लाइन व्यवहार की सुविधा देता है।

CWD = वर्तमान कार्य निर्देशिका = PWD = वर्तमान कार्यशील निर्देशिका । यह GUI की तुलना में कमांड लाइन पर बहुत अधिक समझ में आता है।


हाँ, मैं खिड़कियों पर emacs का उपयोग कर रहा हूँ।
एंटोन

5
यह MacOS पर भी काम करता है। मैंने इसे अपने (setq default-directory (concat (getenv "HOME") "/"))
.emacs में

और यदि आप चाहते हैं कि Emacs उस निर्देशिका के Dired में शुरू करें, तो इसे Start Inफ़ील्ड में डालने के अलावा , इसे Targetएक या एक से अधिक रिक्त स्थान के बाद, इसे डबल-कोट्स ( ") के बीच संलग्न करते हुए जोड़ें । उदाहरण के लिए: "d:\path\to\the\folder"
ड्रयू

49

मुझे लगता है कि आपके द्वारा .emacs को जोड़ने के लिए आवश्यक पंक्ति है

(setq default-directory "C:/Documents and Settings/USER NAME/Desktop/" )

Emacs आपके डेस्कटॉप पर इस तरह से शुरू होगा, जब तक कि आपके पास कोई फ़ाइल न हो। यह आमतौर पर उसी निर्देशिका में शुरू होगा जो आपके वर्तमान बफर में फ़ाइल के रूप में अन्यथा।


26

आप 'cd' emacs कमांड टाइप कर सकते हैं। (एमएक्स सीडी) डिफ़ॉल्ट फ़ोल्डर को एक के रूप में बदलने के लिए।


24

मैंने लगाई है

(cd "c:/cvsroot/")

मेरे .emacs में और इसने काम किया


6

डिफ़ॉल्ट फ़ोल्डर वास्तव में बफर के लिए वर्तमान कार्यशील फ़ोल्डर के समान है, अर्थात यह आपके द्वारा काम करने वाली प्रत्येक फ़ाइल के लिए अलग हो सकता है। यह कहें कि आप जिस फ़ाइल के साथ काम कर रहे हैं वह स्थित है C:\dir_a, तो उस बफ़र के लिए कार्यशील निर्देशिका डिफ़ॉल्ट रूप से होगी C:\dir_a। आप इसे बदल सकते हैं M-x cdऔर आप जिस भी निर्देशिका में टाइप करना चाहते हैं, उसके बजाय डिफ़ॉल्ट हो सकते हैं (और डिफ़ॉल्ट रूप से मेरा मतलब है कि यह वही होगा जो आपको ऐसा करते समय दिखाएगाC-x C-f )।

यदि आप एक फ़ाइल को खोले बिना emacs शुरू करते हैं, तो आप *scratch*बफर ओपन के साथ समाप्त हो जाएंगे । यदि आपने विंडोज शॉर्टकट से इमेक शुरू किया है, तो वर्किंग डायरेक्टरी वही होगी जो शॉर्टकट प्रॉपर्टीज में निर्दिष्ट है। यदि आपने इसे कमांड लाइन से शुरू किया है, तो यह वह निर्देशिका होगी जहां से आपने इसे शुरू किया था। आप इस डिफ़ॉल्ट निर्देशिका M-x cdको *scratch*बफर से भी बदल सकते हैं ।

अंत में, आप वादिम सुझाव और पुट के अनुसार कर सकते हैं

(cd "c:/dir_a/")

आपकी .emacsफ़ाइल में, उस निर्देशिका को डिफ़ॉल्ट बनाने के लिए कोई फर्क नहीं पड़ता कि आप कैसे emacs शुरू करते हैं।


4

जैसा कि आप विंडोज पर हैं आप इसे शॉर्टकट से कर सकते हैं।

का शॉर्टकट बनाएं C:\emacs\emacs-21.3\bin\runemacs.exe। शॉर्टकट के गुणों को संपादित करें और Start In:अपने डिफ़ॉल्ट निर्देशिका के लिए जो कुछ भी आप चाहते हैं उसका मान बदलें ।


4

मैं Windows XP के तहत 22.2.1 emacs का उपयोग कर रहा हूं और ऊपर दिए गए उत्तरों से मदद मिली है कि मैं कमांड Cx Cf के लिए आवश्यक मिनीबफ़र में प्रतिक्रिया प्राप्त करना चाहता हूं। शुरू में मुझे एंटोन की तरह "फाइंड फाइल: सी: \ प्रोग्राम फाइल्स \ एमएसीएस \ बिन /" मिल रहा था। मेरे पास "C: \ Documents and settings \ USER NAME \ My Documents" सेट है। मिनीबफ़र में मैं चाहता हूं कि Cx Cf की प्रतिक्रिया "फ़ाइल खोजें: ~ /" है। अपनी .emacs फ़ाइल में (डिफ़ॉल्ट डिफ़ॉल्ट-निर्देशिका "C: / दस्तावेज़ और सेटिंग्स / USER NAME / मेरे दस्तावेज़") जोड़कर मैं प्रतिक्रिया प्राप्त करने में सक्षम था "फ़ाइल खोजें: C: \ दस्तावेज़ और सेटिंग्स \ USER NAD \ My दस्तावेज़। / "जो कार्यात्मक रूप से" फ़ाइल खोजें: ~ / "के समान है। हालाँकि, मैंने एक और बात पर ध्यान दिया। "विकल्प" के तहत "कस्टमाइज़ एमएसीएस" ने मुझे स्टार्टअप स्क्रीन को बाधित करने की अनुमति दी। अब जब मैं ईमैक्स खोलता हूं तो मैं तुरंत स्क्रैच बफर पर जाता हूं। जब मैं Cx Cf को स्क्रैच बफर में टाइप करता हूं तो मुझे सटीक प्रतिक्रिया मिलती है जो मुझे चाहिए।


स्टार्ट-अप स्क्रीन को बाधित करने के लिए +1। मैंने पाया कि यह मेरे विंडोज 10 सिस्टम पर महत्वपूर्ण है। मैंने अपना जवाब संबंधित प्रश्न stackoverflow.com/a/38435697/823636
Rob_before_edits

1

मैंने अपने शॉर्टकट (ग्नोम, लिनक्स में) में एक प्रामेटर जोड़ा है जो एक रिक्त डमी फ़ाइल नाम है, और मैं निर्देशिका निर्दिष्ट करता हूं। चूंकि मेरी भावनाएं "घर" को डिफॉल्ट करती हैं, इसलिए मैं सीधे कहता हूं:

/ डेस्कटॉप / blank_file

और जो "blank_file" नामक फ़ाइल खोलता है

यह डेस्कटॉप के लिए उस emacs सत्र के लिए वर्तमान कार्यशील निर्देशिका को भी स्थानांतरित करता है।

अगर मैं "blank_file" में सामान रखने के लिए होता हूं, तो इसे सहेजें, निश्चित रूप से, मुझे वह सामान सहेज लिया गया है। जो एक झुंझलाहट हो सकती है या यह एक अच्छी बात हो सकती है, निर्भर करता है!


1

डिफ़ॉल्ट निर्देशिका को डेस्‍कटॉप को डेयर में बदलने के लिए और शेल ने इसे आपके ~ / .emacs में डाल दिया

:; यह विंडोज एक्सपी के लिए काम करता है।
(सेटैक डिफॉल्ट-डायरेक्टरी ("C: \ Documents and Settings \ MY_ACCOUNT \ DESKTOP \")


0

विंडोज 8 में, यह डेस्कटॉप में एक शॉर्टकट बनाने और शॉर्टकट के लिए संपत्ति 'स्टार्ट इन:' को बदलने का काम करता है।

अब, मैंने कार्यक्रम emacs-23.3 \ bin \ addpm.exe को अनुशंसित के रूप में चलाया, और Windows-8 स्क्रीन (Microsoft से भयावह आविष्कार) यह Emacs के लिए एक आइकन-लिंक दिखाई दिया। लेकिन वहां आपको प्रॉपर्टी 'स्टार्ट इन' को फिर से बदलना होगा। (यह डेस्कटॉप में एक से अलग है)। बस राइट-क्लिक करें, नीचे बार में चुनें 'फ़ाइल स्थान खोलें' (या समान, मैंने इसे अपनी भाषा में किया था), और आपको एक नए शॉर्टकट के साथ फ़ोल्डर में ले जाया जाता है, जिसमें आप (अवश्य) भी बदल सकते हैं संपत्ति 'स्टार्ट इन:'।

थोड़ा सा शामिल है, लेकिन वास्तव में बहुत आसान है।


0

चूंकि सबसे अधिक कष्टप्रद बात यह है कि विंडोज़ Emacs आपको सिस्टम 32 में तब डंप करता है जब आप शॉर्टकट का उपयोग कर रहे होते हैं, लेकिन चाहते हैं कि हर दूसरे मामले में काम करें, बस थोड़ा सा उपयोग करें ...

(जब (स्ट्रिंग <"C: \ WINDOWS \ system32" डिफ़ॉल्ट-निर्देशिका) (सेट-डिफ़ॉल्ट-निर्देशिका "~ ~")

जब आप सिस्टम में समाप्त होते हैं तो यह केवल आपके होम डायरेक्टरी के लिए डिफॉल्ट होगा। केवल दोष यह है कि क्या आप वास्तव में सिस्टम 32 में emacs शुरू करना चाहते हैं ...

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.