क्या कोई कमांड `डिस्क्रिप्शन-कमांड 'है, जो कमांड' डिस्क्रिप्शन-फंक्शन 'के समान है?


14

मैं C-h fभारी उपयोग करता हूं , लेकिन Emacs में यह सभी कार्य हैं। मैं अक्सर इंटरेक्टिव फ़ंक्शंस यानी कमांड्स में दिलचस्पी लेता हूं।

क्या आज्ञाओं के लिए एक समान है? आदर्श रूप में मैं भी इडो को पूरा करना चाहूंगा।


1
अगला सवाल, यह Emacs में क्यों नहीं है?
जोनाथन लीच-पेपिन

1
@ जोनाथनलॉच-पेपिन: प्रस्तावित, लेकिन एमाक्स देव द्वारा खारिज कर दिया गया।
ड्रू

जवाबों:


12

हाँ। लाइब्रेरी help-fns+.elकमांड को परिभाषित करती है describe-command

और यह फिर से परिभाषित describe-functionकरता है ताकि describe-commandयदि आप इसे एक उपसर्ग arg देते हैं तो यह होता है ।

पुस्तकालय बांधता describe-commandहै C-h c( describe-key-brieflyको स्थानांतरित कर दिया जाता है C-h C-c)।

एक ही पुस्तकालय जैसे अन्य मदद आदेशों, को परिभाषित करता है describe-file, describe-buffer, describe-keymap, और describe-option-of-type। यहाँ पुस्तकालय के बारे में अधिक जानकारी है


1
मुझे वास्तव में हेल्प-fns + पसंद है, लेकिन यह मेरे द्वारा देखे जाने वाले प्रत्येक फ़ंक्शन पर एक बड़ी जगह और एक सामान्य टिप्पणी जोड़ रहा है: imgur.com/NiDlkjS - कोई विचार?
विल्फ्रेड ह्यूजेस

@IlfredHughes: अब ठीक होना चाहिए । (24 घंटे के भीतर एमईएलपीए पर भी प्रतिबिंबित किया जाना चाहिए।)
आकर्षित किया

ड्रू की टिप्पणी @ 18:25 की कड़ी टूटी हुई है। emacswiki.org/emacs/download/help-fns%2b.el काम करता है।
Realraptor

1
@ रेलेल्टर: धन्यवाद। कुछ साल पहले EmacsWiki URL बदल गए।
आकर्षित किया

9

apropos-command पर्याप्त रूप से करीब हो सकता है।

यह describe-functionटैब के समापन की पेशकश नहीं करता है , लेकिन यह आपको केवल कमांड के माध्यम से खोज करने देता है, और यह आपको उनके डॉक्टर पृष्ठ पर ले जाता है।


8

यदि आपने smex इंस्टॉल किया है, तो बस smex को कॉल करें। टाइप करना शुरू करें, जब दाईं ओर आए, तो च f दबाएं।


7

मुझे यह बिल्ट-इन नहीं मिल रहा है। लगभग एक रैपर बनाना काफी आसान है describe-functionजो केवल अंतःक्रियात्मक रूप से कहे जाने पर कमांड नामों को पूरा करता है। नीचे दिए गए कार्यान्वयन में, मैंने इंटरेक्टिव फॉर्म को डुप्लिकेट किया describe-functionऔर fboundpपरीक्षण को बदल दिया commandp। एक अतिरिक्त बोनस के रूप में, यह फ़ंक्शन प्रीफ़िक्स तर्क के साथ कॉल करने पर सभी फ़ंक्शन नाम प्रदान करता है। सभी फ़ंक्शन को डिफ़ॉल्ट बनाने के लिए बनाने के if current-prefix-argलिए बदलें if (not current-prefix-arg)

(defun describe-command (function &optional all-functions)
  "Display the full documentation of FUNCTION (a symbol).
When called interactively with a prefix argument, prompt for all functions,
not just interactive commands, like `describe-function'."
  (interactive (if current-prefix-arg
                   (eval (car (cdr (interactive-form 'describe-function))))
                 (list (let ((fn (function-called-at-point))
                             (enable-recursive-minibuffers t)
                             val)
                         (setq val (completing-read (if (and fn (commandp fn))
                                                        (format "Describe command (default %s): " fn)
                                                      "Describe command: ")
                                                    obarray 'commandp t nil nil
                                                    (and fn (commandp fn)
                                                         (symbol-name fn))))
                         (if (equal val "") fn (intern val)))
                       current-prefix-arg)))
  (describe-function function))

मैंने इसे आईडीओ के साथ परीक्षण नहीं किया है लेकिन इसे सामान्य रूप से एकीकृत किया जाना चाहिए।


त्वरित परीक्षण से पता चलता है कि यह आईडीओ के साथ काम करता है। *scratch*मूल्यांकन किया , फिर मूल्यांकन किया गया M-x describe-command। कमांड एक ऊर्ध्वाधर सूची में दिखाया गया है जिसकी बदौलत ido-vertical
जोनाथन लीच-पेपिन

अंतिम पंक्ति नहीं होनी चाहिए (describe-function command)?
npostavs

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