Index: slime.el =================================================================== RCS file: /project/slime/cvsroot/slime/slime.el,v retrieving revision 1.875 diff -u -u -r1.875 slime.el --- slime.el 27 Sep 2007 12:56:40 -0000 1.875 +++ slime.el 3 Oct 2007 22:43:26 -0000 @@ -7454,11 +7454,15 @@ (defvar slime-inspector-mark-stack '()) (defvar slime-saved-window-config) +(defvar slime-inspect-function 'slime-basic-inspect) + +(defun slime-basic-inspect () + (list (slime-read-from-minibuffer "Inspect value (evaluated): " + (slime-sexp-at-point)))) + (defun slime-inspect (string) "Eval an expression and inspect the result." - (interactive - (list (slime-read-from-minibuffer "Inspect value (evaluated): " - (slime-sexp-at-point)))) + (interactive (funcall slime-inspect-function)) (slime-eval-async `(swank:init-inspector ,string) 'slime-open-inspector)) (define-derived-mode slime-inspector-mode fundamental-mode "Slime-Inspector" Index: contrib/slime-presentations.el =================================================================== RCS file: /project/slime/cvsroot/slime/contrib/slime-presentations.el,v retrieving revision 1.8 diff -u -u -r1.8 slime-presentations.el --- contrib/slime-presentations.el 20 Sep 2007 14:55:53 -0000 1.8 +++ contrib/slime-presentations.el 3 Oct 2007 22:43:28 -0000 @@ -44,6 +44,14 @@ (make-variable-buffer-local (defvar slime-presentation-start-to-point (make-hash-table))) +(defun slime-presentation-inspect () + (multiple-value-bind (presentation start end) + (slime-presentation-around-point (point)) + (when presentation + ;; Point is within a presentation, so don't prompt, just + ;; inspect the presented object; don't play DWIM. + (slime-presentation-expression presentation)))) + (defun slime-mark-presentation-start (id &optional target) "Mark the beginning of a presentation with the given ID. TARGET can be nil (regular process output) or :repl-result."