[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] trunk r114561: * lisp/emacs-lisp/smie.el (smie-next-sexp):
From: |
Stefan Monnier |
Subject: |
[Emacs-diffs] trunk r114561: * lisp/emacs-lisp/smie.el (smie-next-sexp): Refine last fix. |
Date: |
Mon, 07 Oct 2013 16:56:57 +0000 |
User-agent: |
Bazaar (2.6b2) |
------------------------------------------------------------
revno: 114561
revision-id: address@hidden
parent: address@hidden
committer: Stefan Monnier <address@hidden>
branch nick: trunk
timestamp: Mon 2013-10-07 12:56:51 -0400
message:
* lisp/emacs-lisp/smie.el (smie-next-sexp): Refine last fix.
* lisp/progmodes/ruby-mode.el (ruby-smie-rules): Tweak handling of
open braces.
modified:
lisp/ChangeLog changelog-20091113204419-o5vbwnq5f7feedwu-1432
lisp/emacs-lisp/smie.el smie.el-20100517192034-xap3ihmey43772vj-1
lisp/progmodes/ruby-mode.el
rubymode.el-20091113204419-o5vbwnq5f7feedwu-8804
=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog 2013-10-07 15:40:24 +0000
+++ b/lisp/ChangeLog 2013-10-07 16:56:51 +0000
@@ -1,5 +1,10 @@
2013-10-07 Stefan Monnier <address@hidden>
+ * progmodes/ruby-mode.el (ruby-smie-rules): Tweak handling of
+ open braces.
+
+ * emacs-lisp/smie.el (smie-next-sexp): Refine last fix.
+
* textmodes/css-mode.el (css-smie-rules): Fix indentation (bug#15467).
(css-mode): Use electric-indent-chars.
=== modified file 'lisp/emacs-lisp/smie.el'
--- a/lisp/emacs-lisp/smie.el 2013-10-05 18:37:08 +0000
+++ b/lisp/emacs-lisp/smie.el 2013-10-07 16:56:51 +0000
@@ -709,11 +709,13 @@
(condition-case err
(progn (funcall next-sexp 1) nil)
(scan-error
- (let ((pos (nth 2 err)))
+ (let ((epos (nth 2 err)))
+ (goto-char pos)
(throw 'return
- (list t pos
+ (list t epos
(buffer-substring-no-properties
- pos (+ pos (if (< (point) pos) -1 1))))))))
+ epos
+ (+ epos (if (< (point) epos) -1 1))))))))
(if (eq pos (point))
;; We did not move, so let's abort the loop.
(throw 'return (list t (point))))))
=== modified file 'lisp/progmodes/ruby-mode.el'
--- a/lisp/progmodes/ruby-mode.el 2013-10-07 03:38:26 +0000
+++ b/lisp/progmodes/ruby-mode.el 2013-10-07 16:56:51 +0000
@@ -414,7 +414,8 @@
(`(:before . ,(or `"(" `"[" `"{"))
;; Treat purely syntactic block-constructs as being part of their parent,
;; when the opening statement is hanging.
- (if (smie-rule-hanging-p) (smie-rule-parent)))
+ (when (smie-rule-hanging-p)
+ (smie-backward-sexp 'halfsexp) (smie-indent-virtual)))
(`(:after . "=") 2)
(`(:before . "do")
(when (or (smie-rule-hanging-p)
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] trunk r114561: * lisp/emacs-lisp/smie.el (smie-next-sexp): Refine last fix.,
Stefan Monnier <=