Mercurial > emacs
changeset 101956:6ad8cdf501c1
(end-of-defun): Don't skip to next line after
calling end-of-defun-function if it already moved to BOL.
author | Stefan Monnier <monnier@iro.umontreal.ca> |
---|---|
date | Thu, 12 Feb 2009 04:16:14 +0000 |
parents | 0273f3af7765 |
children | db03a07a8e3e |
files | lisp/ChangeLog lisp/emacs-lisp/lisp.el |
diffstat | 2 files changed, 14 insertions(+), 8 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/ChangeLog Thu Feb 12 04:01:11 2009 +0000 +++ b/lisp/ChangeLog Thu Feb 12 04:16:14 2009 +0000 @@ -1,3 +1,8 @@ +2009-02-12 Stefan Monnier <monnier@iro.umontreal.ca> + + * emacs-lisp/lisp.el (end-of-defun): Don't skip to next line after + calling end-of-defun-function if it already moved to BOL. + 2009-02-12 Richard M Stallman <rms@gnu.org> * mail/rmail.el (rmail-show-message-verbose-min): New option. @@ -106,8 +111,7 @@ 2009-02-09 Ulf Jasper <ulf.jasper@web.de> * net/newst-treeview.el (newsticker-treeview-save) - (newsticker--treeview-load): Kill groups buffer after - saving/loading. + (newsticker--treeview-load): Kill groups buffer after saving/loading. 2009-02-09 Tassilo Horn <tassilo@member.fsf.org>
--- a/lisp/emacs-lisp/lisp.el Thu Feb 12 04:01:11 2009 +0000 +++ b/lisp/emacs-lisp/lisp.el Thu Feb 12 04:16:14 2009 +0000 @@ -348,9 +348,10 @@ (beginning-of-defun-raw 1) (while (unless (eobp) (funcall end-of-defun-function) - (skip-chars-forward " \t") - (if (looking-at "\\s<\\|\n") - (forward-line 1)) + (unless (bolp) + (skip-chars-forward " \t") + (if (looking-at "\\s<\\|\n") + (forward-line 1))) ;; If we started after the end of the previous ;; function, try again with the next one. (unless (or (> (point) pos) @@ -370,9 +371,10 @@ (let ((beg (point)) retry-point) (funcall end-of-defun-function) - (skip-chars-forward " \t") - (if (looking-at "\\s<\\|\n") - (forward-line 1)) + (unless (bolp) + (skip-chars-forward " \t") + (if (looking-at "\\s<\\|\n") + (forward-line 1))) ;; If we started from within the function just found, ;; try again with the previous one. (unless (or (< (point) pos)