Teach M-x disassemble a default argument.

Adopts default argument in the same way as `describe-function'.
* lisp/emacs-lisp/disass.el (disassemble): Default to function at point,
if any.
This commit is contained in:
Mark Oteiza 2016-03-31 19:34:05 -04:00
parent e30c3e9a9c
commit a3daa34336

View file

@ -54,9 +54,13 @@ OBJECT can be a symbol defined as a function, or a function itself
\(a lambda expression or a compiled-function object).
If OBJECT is not already compiled, we compile it, but do not
redefine OBJECT if it is a symbol."
(interactive (list (intern (completing-read "Disassemble function: "
obarray 'fboundp t))
nil 0 t))
(interactive
(let* ((fn (function-called-at-point))
(prompt (if fn (format "Disassemble function (default %s): " fn)
"Disassemble function: "))
(def (and fn (symbol-name fn))))
(list (intern (completing-read prompt obarray 'fboundp t nil nil def))
nil 0 t)))
(if (and (consp object) (not (functionp object)))
(setq object `(lambda () ,object)))
(or indent (setq indent 0)) ;Default indent to zero