emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] trunk r115131: * lisp/progmodes/ruby-mode.el (ruby-toggle-


From: Dmitry Gutov
Subject: [Emacs-diffs] trunk r115131: * lisp/progmodes/ruby-mode.el (ruby-toggle-block): Don't stop at
Date: Sun, 17 Nov 2013 21:39:18 +0000
User-agent: Bazaar (2.6b2)

------------------------------------------------------------
revno: 115131
revision-id: address@hidden
parent: address@hidden
fixes bug: http://debbugs.gnu.org/15914
author: Adam Sokolnicki <address@hidden>
committer: Dmitry Gutov <address@hidden>
branch nick: trunk
timestamp: Sun 2013-11-17 23:39:13 +0200
message:
  * lisp/progmodes/ruby-mode.el (ruby-toggle-block): Don't stop at
  interpolation curlies.
modified:
  lisp/ChangeLog                 changelog-20091113204419-o5vbwnq5f7feedwu-1432
  lisp/progmodes/ruby-mode.el    
rubymode.el-20091113204419-o5vbwnq5f7feedwu-8804
  test/automated/ruby-mode-tests.el 
rubymodetests.el-20120720101201-mn39s4kfopdxj3ek-1
=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog    2013-11-17 04:22:24 +0000
+++ b/lisp/ChangeLog    2013-11-17 21:39:13 +0000
@@ -1,3 +1,8 @@
+2013-11-17  Adam Sokolnicki  <address@hidden>  (tiny change)
+
+       * progmodes/ruby-mode.el (ruby-toggle-block): Don't stop at
+       interpolation curlies (Bug#15914).
+
 2013-11-17  Jay Belanger  <address@hidden>
 
        * calc/calc.el (calc-context-sensitive-enter): New variable.

=== modified file 'lisp/progmodes/ruby-mode.el'
--- a/lisp/progmodes/ruby-mode.el       2013-11-15 18:09:10 +0000
+++ b/lisp/progmodes/ruby-mode.el       2013-11-17 21:39:13 +0000
@@ -1590,8 +1590,9 @@
   (let ((start (point)) beg end)
     (end-of-line)
     (unless
-        (if (and (re-search-backward "\\({\\)\\|\\_<do\\(\\s \\|$\\||\\)")
+        (if (and (re-search-backward "\\(?:[^#]\\)\\({\\)\\|\\(\\_<do\\_>\\)")
                  (progn
+                   (goto-char (or (match-beginning 1) (match-beginning 2)))
                    (setq beg (point))
                    (save-match-data (ruby-forward-sexp))
                    (setq end (point))

=== modified file 'test/automated/ruby-mode-tests.el'
--- a/test/automated/ruby-mode-tests.el 2013-11-04 10:50:47 +0000
+++ b/test/automated/ruby-mode-tests.el 2013-11-17 21:39:13 +0000
@@ -309,6 +309,12 @@
     (ruby-toggle-block)
     (should (string= "foo do |b|\n  b + 1\nend" (buffer-string)))))
 
+(ert-deftest ruby-toggle-block-with-interpolation ()
+  (ruby-with-temp-buffer "foo do\n  \"#{bar}\"\nend"
+    (beginning-of-line)
+    (ruby-toggle-block)
+    (should (string= "foo { \"#{bar}\" }" (buffer-string)))))
+
 (ert-deftest ruby-recognize-symbols-starting-with-at-character ()
   (ruby-assert-face ":@abc" 3 font-lock-constant-face))
 


reply via email to

[Prev in Thread] Current Thread [Next in Thread]