From: Stefan Monnier Date: Sun, 11 May 2014 03:48:15 +0000 (-0400) Subject: * lisp/emacs-lisp/lisp-mode.el (preceding-sexp): Exclude leading "," which X-Git-Tag: emacs-25.0.90~2640^2~124 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=4eb436826bd7912925634624beaf4173546dad49;p=emacs.git * lisp/emacs-lisp/lisp-mode.el (preceding-sexp): Exclude leading "," which are a hindrance for C-x C-e. --- diff --git a/lisp/ChangeLog b/lisp/ChangeLog index b7a0f49bded..a44ba6dc000 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,8 @@ +2014-05-11 Stefan Monnier + + * emacs-lisp/lisp-mode.el (preceding-sexp): Exclude leading "," which + are a hindrance for C-x C-e. + 2014-05-11 Leo Liu * net/rcirc.el (rcirc-sentinel): Fix last change. diff --git a/lisp/emacs-lisp/lisp-mode.el b/lisp/emacs-lisp/lisp-mode.el index 690aa3d7460..21529894fed 100644 --- a/lisp/emacs-lisp/lisp-mode.el +++ b/lisp/emacs-lisp/lisp-mode.el @@ -1017,26 +1017,20 @@ If CHAR is not a character, return nil." (forward-sexp -1)))) (save-restriction - ;; vladimir@cs.ualberta.ca 30-Jul-1997: skip ` in - ;; `variable' so that the value is returned, not the - ;; name - (if (and ignore-quotes - (eq (following-char) ?`)) + (if (and ignore-quotes (eq (following-char) ?`)) + ;; vladimir@cs.ualberta.ca 30-Jul-1997: Skip ` in `variable' so + ;; that the value is returned, not the name. (forward-char)) + (when (looking-at ",@?") (goto-char (match-end 0))) (narrow-to-region (point-min) opoint) (setq expr (read (current-buffer))) - ;; If it's an (interactive ...) form, it's more - ;; useful to show how an interactive call would - ;; use it. - (and (consp expr) - (eq (car expr) 'interactive) + ;; If it's an (interactive ...) form, it's more useful to show how an + ;; interactive call would use it. + ;; FIXME: Is it really the right place for this? + (when (eq (car-safe expr) 'interactive) (setq expr - (list 'call-interactively - (list 'quote - (list 'lambda - '(&rest args) - expr - 'args))))) + `(call-interactively + (lambda (&rest args) ,expr args)))) expr)))))