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). \(a lambda expression or a compiled-function object).
If OBJECT is not already compiled, we compile it, but do not If OBJECT is not already compiled, we compile it, but do not
redefine OBJECT if it is a symbol." redefine OBJECT if it is a symbol."
(interactive (list (intern (completing-read "Disassemble function: " (interactive
obarray 'fboundp t)) (let* ((fn (function-called-at-point))
nil 0 t)) (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))) (if (and (consp object) (not (functionp object)))
(setq object `(lambda () ,object))) (setq object `(lambda () ,object)))
(or indent (setq indent 0)) ;Default indent to zero (or indent (setq indent 0)) ;Default indent to zero