* misc/ruby-mode.el (ruby-special-char-p, ruby-parse-partial): handle

operator symbols.  [ruby-talk:120177]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7271 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
nobu 2004-11-15 02:51:10 +00:00
Родитель 7320e53be1
Коммит e77fc75802
2 изменённых файлов: 15 добавлений и 5 удалений

Просмотреть файл

@ -1,3 +1,8 @@
Mon Nov 15 11:50:32 2004 Nobuyoshi Nakada <nobu@ruby-lang.org>
* misc/ruby-mode.el (ruby-special-char-p, ruby-parse-partial): handle
operator symbols. [ruby-talk:120177]
Mon Nov 15 08:58:55 2004 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (Init_Proc): make proc as an alias to Proc.new.
@ -16,7 +21,7 @@ Mon Nov 15 00:33:40 2004 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (str_gsub): add paranoid check. [ruby-dev:24827]
* string.c (str_mod_check): check frozen status as well.
[ruby-dev:24801]
[ruby-dev:24801]
Sun Nov 14 18:59:03 2004 Tanaka Akira <akr@m17n.org>

Просмотреть файл

@ -293,10 +293,11 @@ The variable ruby-indent-level controls the amount of indentation.
(move-to-column (+ x shift))))))
(defun ruby-special-char-p (&optional pnt)
(let ((c (char-before (or pnt (point)))))
(setq pnt (or pnt (point)))
(let ((c (char-before pnt)) (b (and (< (point-min) pnt) (char-before (1- pnt)))))
(cond ((or (eq c ??) (eq c ?$)))
((eq c ?\\)
(eq (char-before (1- (or pnt (point)))) ??)))))
((and (eq c ?:) (or (not b) (eq (char-syntax b) ? ))))
((eq c ?\\) (eq b ??)))))
(defun ruby-expr-beg (&optional option)
(save-excursion
@ -503,7 +504,11 @@ The variable ruby-indent-level controls the amount of indentation.
(setq nest (cons (cons nil pnt) nest))
(setq depth (1+ depth)))
(goto-char pnt))
((looking-at ":\\([a-zA-Z_][a-zA-Z_0-9]*\\)?")
((looking-at ":\\(['\"]\\)\\(\\\\.\\|[^\\\\]\\)*\\1")
(goto-char (match-end 0)))
((looking-at ":\\([-,.+*/%&|^~<>]=?\\|===?\\|<=>\\)")
(goto-char (match-end 0)))
((looking-at ":\\([a-zA-Z_][a-zA-Z_0-9]*[!?=]?\\)?")
(goto-char (match-end 0)))
((or (looking-at "\\.\\.\\.?")
(looking-at "\\.[0-9]+")