कैसे डिफ़ॉल्ट फ़ाइल प्रबंधक के रूप में emacs सेट करने के लिए?


19

फ़ायरफ़ॉक्स जैसे कुछ कार्यक्रमों में बटन होते हैं जो क्लिक करने पर फ़ाइलों को ब्राउज़ करने के लिए एक फ़ाइल प्रबंधक खोलते हैं। मैं डेबियन लिनक्स पर बिंदीदार मोड के साथ emacs में कैसे खोलूं?


9
आपका ऑपरेटिंग सिस्टम क्या है?
आकर्षित किया

1
मैं डेबियन जेसी का उपयोग कर रहा हूं।
गॉडबेल्फ़क

जवाबों:


17

आपके डेस्कटॉप वातावरण पर निर्भर डिफ़ॉल्ट अनुप्रयोग सेट करने की विधि भिन्न हो सकती है। उस ने कहा, कई डेस्कटॉप वातावरण में संघों का सम्मान करते हैं ~/.local/share/applications/mimeapps.list, जहां आप application/x-directoryऔर / या inode/directoryप्रकार के लिए एक संघ स्थापित कर सकते हैं।

mimeapps.listअब मेरा ऐसा दिखता है:

[Default Applications]
application/x-directory=emacs-dired.desktop
inode/directory=emacs-dired.desktop

उसी निर्देशिका में मेरे पास emacs-dired.desktopनिम्नलिखित सामग्रियों के साथ एक फाइल है :

[Desktop Entry]
Encoding=UTF-8
Version=1.0
Type=Application
NoDisplay=true
Exec=emacsclient --eval '(dired "%f")'
Name=Dired
Comment=Emacs Dired

जब एमएसीएस का मेरा लंबे समय तक रहने वाला उदाहरण एक सर्वर ( M-x server-start) चलता है और मैं कहता हूं, तो आइकॉन में डाउनलोड की सूची में फ़ोल्डर आइकन एक नया diredबफर खोला जाता है।

यह वास्तव में अब मेरे लिए काम करता है। प्रश्न पूछने के लिए धन्यवाद --- अन्यथा मैंने इसे स्थापित नहीं किया होता।


6

यह कैसे ubuntu में डिफ़ॉल्ट फ़ाइल प्रबंधक के रूप में emacs बनाने के लिए है।

पहले हमें एक स्क्रिप्ट लिखनी होगी जो हमारे फाइल मैनेजर की तरह काम करेगी।

#!/usr/bin/env python
import os
import sys


def main():
    if len(sys.argv) > 1:
        dirname =  sys.argv[1]
    else:
        dirname = '~'
    os.system('emacs --eval \'(dired "{}")\'%'.format(dirname))
    # you can use emacsclient if you are running emacs server

if __name__ == "__main__":
    main()

इस रूप emacsfmमें सहेजें /usr/bin/। अब टर्मिनल का उपयोग करने के बजाय nautilusया nautilus /foo/bar, हम उपयोग कर सकते हैं emacsfm या emacsfm /foo/bar

अब हमें इसे डिफ़ॉल्ट फ़ाइल प्रबंधक के रूप में सेट करने की आवश्यकता है। exo-utilsका उपयोग कर स्थापित करें

sudo apt-get install exo-utils

और इसे चलाएं

exo-preferred-applications

यह एक नई विंडो खोलता है। उपयोगिता पर जाएं -> फ़ाइल प्रबंधक -> अन्य और इसमें / usr / bin / emacsfm "% s" दर्ज करें।

आप गोटो क्रोम डाउनलोड कर सकते हैं और यदि क्लिक करें तो show in folderयह खुल जाएगा emacs dired :-)

अपडेट करें:

यहाँ छवि विवरण दर्ज करें संदर्भ: https://help.ubuntu.com/community/DefaultFileManager


आनंद, यह काम करता है .. लेकिन यह हर बार एक नई emacs विंडो खोलता है .. यह emacsclient का उपयोग करने के लिए अच्छा है जो पहले से खुले emacs सत्र में एक नया बफर खोलेगा ....
Madhavan

मुझे लगता है, पिछला उत्तर इस बिंदु को संबोधित करता है ...
माधवन

4

हालाँकि यह सवाल विशेष रूप से लिनक्स के लिए है, जो मैंने जाकर विंडोज के लिए तैयार किया (क्योंकि इसने मुझे यह पता लगाने के लिए प्रेरित किया कि मैं इसे अपने लिए कैसे करूं)।

दिलचस्प रूप से पर्याप्त है, आपको Dired को आमंत्रित करने की आवश्यकता नहीं है, बस फ़ाइल के रूप में एक फ़ोल्डर पास करें। यह विंडोज पर बहुत सारी परेशानी से बचाता है क्योंकि (उदाहरण के लिए) %1पास होगा c:\Usersऔर \Uयदि evalस्टेटमेंट में शामिल किया गया है, तो इसे तोड़ देगा , जबकि एक फाइल के रूप में इसे ठीक से पार्स करेगा।

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Drive\shell]
@="Dired"

[HKEY_CLASSES_ROOT\Drive\shell\Dired]
@="Open in Dired"

[HKEY_CLASSES_ROOT\Drive\shell\Dired\command]
@="\"%path/to/emacsclientw%\" %1"

[HKEY_CLASSES_ROOT\Directory\shell]
@="XYplorer"

[HKEY_CLASSES_ROOT\Directory\shell\Dired]
@="Open in XYplorer"

[HKEY_CLASSES_ROOT\Directory\shell\Dired\command]
@="\"%path/to/emacsclientw%\" %1"

संदर्भ: सात मंच - डिफ़ॉल्ट फ़ाइल प्रबंधक को कैसे बदलें


-4

आप रेंजर का उपयोग कर सकते हैं। हालाँकि, जब आप सत्र प्रारंभ करते हैं, तो आप विंडोज़ डिफ़ॉल्ट का उपयोग करने के लिए xmonad को कॉन्फ़िगर कर सकते हैं


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