* lisp/progmodes/ruby-mode.el (ruby-end-of-defun)
authorDmitry Gutov <dgutov@yandex.ru>
Fri, 7 Sep 2012 04:36:20 +0000 (08:36 +0400)
committerDmitry Gutov <dgutov@yandex.ru>
Fri, 7 Sep 2012 04:36:20 +0000 (08:36 +0400)
(ruby-beginning-of-defun): Simplify, allow indentation before
block beginning and end keywords.  Also, fix accidental change in the former.

lisp/ChangeLog
lisp/progmodes/ruby-mode.el

index 2f7dac6..5f8a613 100644 (file)
@@ -1,3 +1,9 @@
+2012-09-07  Dmitry Gutov  <dgutov@yandex.ru>
+
+       * progmodes/ruby-mode.el (ruby-end-of-defun)
+       (ruby-beginning-of-defun): Simplify, allow indentation before
+       block beginning and end keywords.
+
 2012-09-06  Stefan Monnier  <monnier@iro.umontreal.ca>
 
        * emacs-lisp/cl-macs.el (cl--do-arglist): Understand _ on &key args
index bcebada..e8e6b3d 100644 (file)
@@ -839,8 +839,8 @@ and `\\' when preceded by `?'."
 With ARG, move backward multiple defuns.  Negative ARG means
 move forward."
   (interactive "p")
-  (and (re-search-backward (concat "^\\(" ruby-block-beg-re "\\)\\b")
-                           nil 'move (or arg 1))
+  (and (re-search-backward (concat "^\\s *\\(" ruby-block-beg-re "\\)\\_>")
+                           nil t (or arg 1))
        (beginning-of-line)))
 
 (defun ruby-end-of-defun (&optional arg)
@@ -848,7 +848,7 @@ move forward."
 With ARG, move forward multiple defuns.  Negative ARG means
 move backward."
   (interactive "p")
-  (and (re-search-forward ruby-indent-beg-re nil 'move (or arg 1))
+  (and (re-search-forward (concat "^\\s *" ruby-block-end-re) nil t (or arg 1))
        (beginning-of-line))
   (forward-line 1))