aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog7
-rw-r--r--misc/ruby-mode.el10
2 files changed, 12 insertions, 5 deletions
diff --git a/ChangeLog b/ChangeLog
index d0b69d0286..49dec02c94 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+Tue Oct 8 04:28:25 2013 Akinori MUSHA <knu@iDaemons.org>
+
+ * misc/ruby-mode.el: Use preceding-char/following-char
+ (returning 0 at BOF/EOF) instead of char-before/char-after
+ (returning nil at BOF/EOF) to avoid error from char-syntax when
+ at BOF/EOF.
+
Tue Oct 8 04:12:45 2013 Akinori MUSHA <knu@iDaemons.org>
* misc/ruby-additional.el (ruby-mode-set-encoding): Add a missing
diff --git a/misc/ruby-mode.el b/misc/ruby-mode.el
index 4efa60a321..a6d0c4cec3 100644
--- a/misc/ruby-mode.el
+++ b/misc/ruby-mode.el
@@ -448,7 +448,7 @@ Emacs to Ruby."
((progn
(forward-char -1)
(and (looking-at "\\?")
- (or (eq (char-syntax (char-before (point))) ?w)
+ (or (eq (char-syntax (preceging-char)) ?w)
(ruby-special-char-p))))
nil)
((and (eq option 'heredoc) (< space 0))
@@ -1201,14 +1201,14 @@ balanced expression is found."
(let ((orig (point)) (end (progn (ruby-forward-sexp) (point))))
(when (eq (char-before) ?\})
(delete-char -1)
- (if (eq (char-syntax (char-before)) ?w)
+ (if (eq (char-syntax (preceding-char)) ?w)
(insert " "))
(insert "end")
- (if (eq (char-syntax (char-after)) ?w)
+ (if (eq (char-syntax (following-char)) ?w)
(insert " "))
(goto-char orig)
(delete-char 1)
- (if (eq (char-syntax (char-before)) ?w)
+ (if (eq (char-syntax (preceding-char)) ?w)
(insert " "))
(insert "do")
(when (looking-at "\\sw\\||")
@@ -1218,7 +1218,7 @@ balanced expression is found."
(defun ruby-do-end-to-brace ()
(when (and (or (bolp)
- (not (memq (char-syntax (char-before)) '(?w ?_))))
+ (not (memq (char-syntax (preceding-char)) '(?w ?_))))
(looking-at "\\<do\\(\\s \\|$\\)"))
(let ((orig (point)) (end (progn (ruby-forward-sexp) (point))))
(backward-char 3)