all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* bug#12851: Revert the change to ruby-move-to-block from 109576
@ 2012-11-10  3:15 Dmitry Gutov
  0 siblings, 0 replies; only message in thread
From: Dmitry Gutov @ 2012-11-10  3:15 UTC (permalink / raw)
  To: 12851

[-- Attachment #1: Type: text/plain, Size: 495 bytes --]

I want to commit this patch to emacs-24. Is that okay?

The change is not particularly useful by itself, it changes 
`ruby-beginning-of-block' and `ruby-backward-sexp' behavior (making 
things more complicated for third-party code), and, while fixing the 
round-trip problem (*) for "something do\nend", introduces it for "def 
foo\nend".

(*) When the point is at the end of block, we want (progn 
(ruby-beginning-of-block) (ruby-end-of-block)) to bring us back to where 
we were at the start.

[-- Attachment #2: ruby-move-to-block-revert.diff --]
[-- Type: text/plain, Size: 1918 bytes --]

=== modified file 'lisp/ChangeLog'
--- lisp/ChangeLog	2012-11-05 16:32:35 +0000
+++ lisp/ChangeLog	2012-11-10 03:00:13 +0000
@@ -1,3 +1,9 @@
+2012-11-10  Dmitry Gutov  <dgutov@yandex.ru>
+
+	* progmodes/ruby-mode.el (ruby-move-to-block): When moving
+	backward, always stop at indentation.  Reverts the change from
+	109576.
+
 2012-11-05  AgustГ­n MartГ­n Domingo  <agustin.martin@hispalinux.es>
 
 	* textmodes/ispell.el (ispell-program-name): Update

=== modified file 'lisp/progmodes/ruby-mode.el'
--- lisp/progmodes/ruby-mode.el	2012-09-24 11:39:33 +0000
+++ lisp/progmodes/ruby-mode.el	2012-11-10 02:51:09 +0000
@@ -898,17 +898,7 @@
             (back-to-indentation)
             (if (looking-at (concat "\\<\\(" ruby-block-mid-re "\\)\\>"))
                 (setq done nil)))))
-    (back-to-indentation)
-    (when (< n 0)
-      (let ((eol (point-at-eol)) state next)
-        (if (< orig eol) (setq eol orig))
-        (setq orig (point))
-        (while (and (setq next (apply 'ruby-parse-partial eol state))
-                    (< (point) eol))
-          (setq state next))
-        (when (cdaadr state)
-          (goto-char (cdaadr state)))
-        (backward-word)))))
+    (back-to-indentation)))
 
 (defun ruby-beginning-of-block (&optional arg)
   "Move backward to the beginning of the current block.

=== modified file 'test/automated/ruby-mode-tests.el'
--- test/automated/ruby-mode-tests.el	2012-09-18 22:10:19 +0000
+++ test/automated/ruby-mode-tests.el	2012-11-10 03:01:43 +0000
@@ -202,13 +202,13 @@
    |  end
    |"))
 
-(ert-deftest ruby-move-to-block-stops-at-opening ()
+(ert-deftest ruby-move-to-block-stops-at-indentation ()
   (with-temp-buffer
     (insert "def f\nend")
     (beginning-of-line)
     (ruby-mode)
     (ruby-move-to-block -1)
-    (should (looking-at "f$"))))
+    (should (looking-at "^def"))))
 
 (ert-deftest ruby-toggle-block-to-do-end ()
   (with-temp-buffer


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2012-11-10  3:15 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-11-10  3:15 bug#12851: Revert the change to ruby-move-to-block from 109576 Dmitry Gutov

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.