【发布时间】:2011-08-20 23:53:01
【问题描述】:
是否有用于 SLIME 宏步进器的 Elisp 类似物?具体来说,我正在寻找将代码扩展至新缓冲区中的下一个扩展步骤(或只是最终扩展)的东西。
天真
(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))))
不符合我的预期。
【问题讨论】:
-
出于好奇,这究竟是做什么的?在宏步进器上真的找不到任何东西
-
@Dualinity - 它采用 elisp 宏调用,并向您显示它在临时缓冲区中扩展的代码。如果这仍然没有意义,您可能需要阅读macros in Lisp。