2011-04-04 13 views
18

क्या Emacs मोड चुनने के लिए आदेशों की एक सूची है? मुझे कैसे पता चलेगा कि मेरे मंच पर कौन से मोड उपलब्ध हैं? मेरा मतलब है कि M-x के बाद टाइप किए गए मोड नामों की सूची।Emacs स्टॉक प्रमुख मोड सूची

उत्तर

19

प्रकार M-x *-mode <Tab> और Emacs -modeमें समाप्त होने वाले सभी इंटरएक्टिव आज्ञाओं है कि वर्तमान में लोड किए गए हैं सूची जाएगा।

मुझे यकीन नहीं है कि आप require के बाद आसानी से देख सकते हैं कि आपके लोड पथ में सभी elisp फ़ाइलों को लोड किए बिना कौन से मोड उपलब्ध हैं।

+0

स्टॉक वाले सभी को स्वत: लोड परिभाषित करना चाहिए, इसलिए आपको इसके साथ ठीक होना चाहिए। Apropos ('सी-एच ए') शायद यहां भी अच्छा है। – msandiford

+0

@ स्पोंग, अगर आप _really_ चाहते थे जो लोड नहीं किए गए थे, तो शायद आप अपने लोड-पथ में सब कुछ लोड करने के लिए एक elisp फ़ंक्शन लिख सकते हैं और फिर ऐसा कर सकते हैं। यद्यपि यह एक अच्छा विचार हो सकता है या नहीं भी हो सकता है। – tobyodavies

+0

धन्यवाद !!!!!!!!!! – pic11

3

कुछ अनुमान-काम के साथ प्रमुख मोड लिस्टिंग कि मोड में खत्म हो नाबालिग-मोड और अन्य कार्यों की सूची से बचने के लिए के लिए एक समारोह:

(defun list-major-modes() 
    "Returns list of potential major mode names (without the final -mode). 
Note, that this is guess work." 
    (interactive) 
    (let (l) 
    (mapatoms #'(lambda (f) (and 
       (commandp f) 
       (string-match "-mode$" (symbol-name f)) 
       ;; auto-loaded 
       (or (and (autoloadp (symbol-function f)) 
         (let ((doc (documentation f))) 
        (when doc 
         (and 
         (let ((docSplit (help-split-fundoc doc f))) 
         (and docSplit ;; car is argument list 
          (null (cdr (read (car docSplit)))))) ;; major mode starters have no arguments 
         (if (string-match "[mM]inor" doc) ;; If the doc contains "minor"... 
          (string-match "[mM]ajor" doc) ;; it should also contain "major". 
         t) ;; else we cannot decide therefrom 
         )))) 
       (null (help-function-arglist f))) 
       (setq l (cons (substring (symbol-name f) 0 -5) l))))) 
    (when (called-interactively-p 'any) 
     (with-current-buffer (get-buffer-create "*Major Modes*") 
    (clear-buffer-delete) 
    (let ((standard-output (current-buffer))) 
     (display-completion-list l) 
     (display-buffer (current-buffer))))) 
    l)) 
1
C-h a mode 

सभी मोडों का सारांश प्रदर्शित करता है

+0

'सी-एच ए-एमओडी $ आरईटी 'बेहतर होगा। –

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