mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2024-12-24 10:38:38 +00:00
* lisp/progmodes/ruby-mode.el (ruby--electric-indent-p): Improve the
comments. Handle electric indent after typing `?' and `!'.
This commit is contained in:
parent
569c1c6ea1
commit
1f87a56cc7
@ -1,3 +1,8 @@
|
||||
2013-12-22 Dmitry Gutov <dgutov@yandex.ru>
|
||||
|
||||
* progmodes/ruby-mode.el (ruby--electric-indent-p): Improve the
|
||||
comments. Handle electric indent after typing `?' and `!'.
|
||||
|
||||
2013-12-22 Chong Yidong <cyd@gnu.org>
|
||||
|
||||
* faces.el (face-spec-recalc): If the theme specs are not
|
||||
|
@ -779,15 +779,15 @@ The style of the comment is controlled by `ruby-encoding-magic-comment-style'."
|
||||
(defun ruby--electric-indent-p (char)
|
||||
(cond
|
||||
((memq char ruby--electric-indent-chars)
|
||||
;; Outdent after typing a closing paren.
|
||||
;; Reindent after typing a char affecting indentation.
|
||||
(ruby--at-indentation-p (1- (point))))
|
||||
((memq (char-after) ruby--electric-indent-chars)
|
||||
;; Reindent after inserting something before a closing paren.
|
||||
;; Reindent after inserting something in front of the above.
|
||||
(ruby--at-indentation-p (1- (point))))
|
||||
((or (memq (char-syntax char) '(?w ?_)))
|
||||
((or (and (>= char ?a) (<= char ?z)) (memq char '(?_ ?? ?! ?:)))
|
||||
(let ((pt (point)))
|
||||
(save-excursion
|
||||
(skip-syntax-backward "w_")
|
||||
(skip-chars-backward "[:alpha:]:_?!")
|
||||
(and (ruby--at-indentation-p)
|
||||
(looking-at (regexp-opt (cons "end" ruby-block-mid-keywords)))
|
||||
;; Outdent after typing a keyword.
|
||||
|
Loading…
Reference in New Issue
Block a user