2009-07-10 12 views
31

यदि मेरे पास एकाधिक फाइलें चिह्नित हैं, तो मैं उनमें से प्रत्येक पर dired-find-file चलाने के अलावा, emacs में उन सभी चिह्नित फ़ाइलों को कैसे ढूंढूं/देखूं?Emacs में डाले गए, एकाधिक फ़ाइलों को कैसे ढूंढें/देखें?

क्या कोई बिल्ड-इन कमांड है, या क्या मुझे कुछ अतिरिक्त लिस्प कोड चाहिए?

उत्तर

19

यदि आप इसे अपने .emacs में जोड़ते हैं, तो आप कीबाइंडिंग 'एफ' के माध्यम से फ़ाइलों को खोलने में सक्षम होंगे।

(eval-after-load "dired" 
    '(progn 
    (define-key dired-mode-map "F" 'my-dired-find-file) 
    (defun my-dired-find-file (&optional arg) 
     "Open each of the marked files, or the file under the point, or when prefix arg, the next N files " 
     (interactive "P") 
     (let* ((fn-list (dired-get-marked-files nil arg))) 
     (mapc 'find-file fn-list))))) 

स्पष्ट रूप से आप अंतर्निहित 'एफ' को ओवरराइड कर सकते हैं यदि आप चाहें।

+2

इसके लिए धन्यवाद! छोटे स्टाइलिस्ट प्वाइंट लेकिन आपको इस मामले में 'let *' का उपयोग करने की आवश्यकता नहीं है ('let' पर्याप्त है)। और वास्तव में हम संभवतः उस आखिरी रूप को '(mapc' find-file (dired-get-marked-files nil arg) को सरल बना सकते हैं) '। – camdez

6

आप dired+ को आजमा सकते हैं जो कई फ़ाइलों को चुनने और उन सभी को खोजने/देखने की क्षमता सहित कई एक्सटेंशन प्रदान करता है।

28

Emacs 23.2 और उच्चतम में, dired-x.el मॉड्यूल उपलब्ध है, और यह आपको एक आदेश तक पहुंच प्रदान करता है जो आप चाहते हैं कि वास्तव में करता है। इसे लोड करने के बाद (केवल (load "dired-x"), सामान्य रूप से), आप dired-do-find-marked-files फ़ंक्शन का आह्वान करने में सक्षम होंगे।

(dired-do-find-marked-files &optional NOSELECT) 

Find all marked files displaying all of them simultaneously. 
With optional NOSELECT just find files but do not select them. 

The current window is split across all files marked, as evenly as possible. 
Remaining lines go to bottom-most window. The number of files that can be 
displayed this way is restricted by the height of the current window and 
`window-min-height'. 

To keep dired buffer displayed, type C-x 2 first. 
To display just marked files, type C-x 1 first. 

तो बाद dired-x भरी हुई है, तो आप सिर्फ एमएक्सdired-do-find-marked-filesआरईटी उपयोग कर सकते हैं और आप वास्तव में क्या आपके प्रश्न पूछता के लिए मिल जाएगा: सभी चिह्नित फ़ाइलों के रूप में दौरा किया हो जाएगा यहाँ अपने में निर्मित प्रलेखन है हालांकि आप उन सभी पर dired-find-file चलाएंगे।

+0

मेरा डायर-मोड इस कमांड को नहीं पहचानता है, और मैं 23.4 – Malabarba

+1

@ ब्रूस कॉनर पर हूं: शायद आपके पास डायर-एक्स इंस्टॉल नहीं है। '(ऐड-हुक' डायर-लोड-हुक (फ़ंक्शन (लैम्ब्डा() (लोड "डायर-एक्स") जोड़ने के लिए प्रयास करें)) ''.emacs' में। – Adobe

+2

'एफ' कुंजी कम से कम Emacs 24.4 में, थका हुआ-खोजने-चिह्नित-फ़ाइलों के लिए कुंजीपटल शॉर्टकट है। – thdox

संबंधित मुद्दे