क्या SLIME macrostepper के लिए कोई एलिज़ एनालॉग है? विशेष रूप से, मैं ऐसा कुछ ढूंढ रहा हूं जो एक नए बफर में अगले विस्तार चरण (या केवल अंतिम विस्तार) में बिंदु पर कोड फैलाता है।Emacs Lisp मैक्रो स्टेपर
अनुभवहीन
(defun macroexpand-point()
(interactive)
(let ((b (get-buffer-create "*el-macroexpansion*"))
(expansion (format "%s" (macroexpand (thing-at-point 'sexp)))))
(with-current-buffer b
(insert expansion)
(display-buffer b))))
मैं यहाँ क्या उम्मीद कर रहा हूँ नहीं करता है।
(defun macroexpand-sexp-at-point()
(macroexpand (sexp-at-point)))
पूरे समारोह अधिक succintly व्यक्त किया जा सकता है इस प्रकार
(defun macroexpand-point (sexp)
(interactive (list (sexp-at-point)))
(with-output-to-temp-buffer "*el-macroexpansion*"
(pp (macroexpand sexp)))
(with-current-buffer "*el-macroexpansion*" (emacs-lisp-mode)))
जिज्ञासा से, यह वास्तव में क्या करता है? मैक्रो-स्टेपर – PascalVKooten
@Dualinity पर वास्तव में कुछ भी नहीं मिल सकता है - यह बिंदु पर elisp मैक्रो कॉल लेता है और यह आपको एक टेम्प बफर में फैला हुआ कोड दिखाता है। यदि वह अभी भी समझ में नहीं आता है, तो आपको [लिस्प में मैक्रोज़] (http://www.apl.jhu.edu/~hall/Lisp-Notes/Macros.html) पर पढ़ने की आवश्यकता हो सकती है। – Inaimathi