* lisp/progmodes/ruby-mode.el (ruby-accurate-end-of-block): When
`ruby-use-smie' is t, use `smie-forward-sexp' instead of `ruby-parse-partial'. Fixes: debbugs:16078
This commit is contained in:
parent
d64643b40f
commit
ff8c976420
2 changed files with 14 additions and 3 deletions
|
@ -1,3 +1,9 @@
|
|||
2013-12-09 Dmitry Gutov <dgutov@yandex.ru>
|
||||
|
||||
* progmodes/ruby-mode.el (ruby-accurate-end-of-block): When
|
||||
`ruby-use-smie' is t, use `smie-forward-sexp' instead of
|
||||
`ruby-parse-partial' (Bug#16078).
|
||||
|
||||
2013-12-09 Leo Liu <sdl.web@gmail.com>
|
||||
|
||||
* subr.el (read-passwd): Disable show-paren-mode. (Bug#16091)
|
||||
|
|
|
@ -614,11 +614,16 @@ It is used when `ruby-encoding-magic-comment-style' is set to `custom'."
|
|||
(nreverse (ruby-imenu-create-index-in-block nil (point-min) nil)))
|
||||
|
||||
(defun ruby-accurate-end-of-block (&optional end)
|
||||
"TODO: document."
|
||||
"Jump to the end of the current block or END, whichever is closer."
|
||||
(let (state
|
||||
(end (or end (point-max))))
|
||||
(while (and (setq state (apply 'ruby-parse-partial end state))
|
||||
(>= (nth 2 state) 0) (< (point) end)))))
|
||||
(if ruby-use-smie
|
||||
(save-restriction
|
||||
(back-to-indentation)
|
||||
(narrow-to-region (point) end)
|
||||
(smie-forward-sexp))
|
||||
(while (and (setq state (apply 'ruby-parse-partial end state))
|
||||
(>= (nth 2 state) 0) (< (point) end))))))
|
||||
|
||||
(defun ruby-mode-variables ()
|
||||
"Set up initial buffer-local variables for Ruby mode."
|
||||
|
|
Loading…
Add table
Reference in a new issue