[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] trunk r113436: * lisp/progmodes/ruby-mode.el (ruby-block-b
From: |
Dmitry Gutov |
Subject: |
[Emacs-diffs] trunk r113436: * lisp/progmodes/ruby-mode.el (ruby-block-beg-keywords): Inline. |
Date: |
Tue, 16 Jul 2013 19:16:44 +0000 |
User-agent: |
Bazaar (2.6b2) |
------------------------------------------------------------
revno: 113436
revision-id: address@hidden
parent: address@hidden
committer: Dmitry Gutov <address@hidden>
branch nick: trunk
timestamp: Tue 2013-07-16 23:16:51 +0400
message:
* lisp/progmodes/ruby-mode.el (ruby-block-beg-keywords): Inline.
(ruby-font-lock-keyword-beg-re): Extract from
`ruby-font-lock-keywords'.
modified:
lisp/ChangeLog changelog-20091113204419-o5vbwnq5f7feedwu-1432
lisp/progmodes/ruby-mode.el
rubymode.el-20091113204419-o5vbwnq5f7feedwu-8804
=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog 2013-07-16 14:47:23 +0000
+++ b/lisp/ChangeLog 2013-07-16 19:16:51 +0000
@@ -2,6 +2,9 @@
* progmodes/ruby-mode.el (ruby-font-lock-keywords): Do not
highlight question marks in the method names as strings.
+ (ruby-block-beg-keywords): Inline.
+ (ruby-font-lock-keyword-beg-re): Extract from
+ `ruby-font-lock-keywords'.
2013-07-16 Jan Djärv <address@hidden>
=== modified file 'lisp/progmodes/ruby-mode.el'
--- a/lisp/progmodes/ruby-mode.el 2013-07-16 14:47:23 +0000
+++ b/lisp/progmodes/ruby-mode.el 2013-07-16 19:16:51 +0000
@@ -46,11 +46,6 @@
:prefix "ruby-"
:group 'languages)
-(defconst ruby-keyword-end-re
- (if (string-match "\\_>" "ruby")
- "\\_>"
- "\\>"))
-
(defconst ruby-block-beg-keywords
'("class" "module" "def" "if" "unless" "case" "while" "until" "for" "begin"
"do")
"Keywords at the beginning of blocks.")
@@ -60,7 +55,7 @@
"Regexp to match the beginning of blocks.")
(defconst ruby-non-block-do-re
- (concat (regexp-opt '("while" "until" "for" "rescue") t) ruby-keyword-end-re)
+ (regexp-opt '("while" "until" "for" "rescue") 'symbols)
"Regexp to match keywords that nest without blocks.")
(defconst ruby-indent-beg-re
@@ -696,7 +691,7 @@
((looking-at (concat "\\_<\\(" ruby-block-beg-re "\\)\\_>"))
(and
(save-match-data
- (or (not (looking-at (concat "do" ruby-keyword-end-re)))
+ (or (not (looking-at "do\\_>"))
(save-excursion
(back-to-indentation)
(not (looking-at ruby-non-block-do-re)))))
@@ -1718,14 +1713,16 @@
"The syntax table to use for fontifying Ruby mode buffers.
See `font-lock-syntax-table'.")
+(defconst ruby-font-lock-keyword-beg-re "\\(?:^\\|address@hidden|\\.\\.\\)")
+
(defconst ruby-font-lock-keywords
(list
;; functions
'("^\\s *def\\s +\\(?:[^( \t\n.]*\\.\\)?\\([^( \t\n]+\\)"
1 font-lock-function-name-face)
+ ;; keywords
(list (concat
- "\\(^\\|address@hidden|\\.\\.\\)\\("
- ;; keywords
+ ruby-font-lock-keyword-beg-re
(regexp-opt
'("alias"
"and"
@@ -1760,11 +1757,14 @@
"when"
"while"
"yield")
- 'symbols)
- "\\|"
+ 'symbols))
+ 1 'font-lock-keyword-face)
+ ;; some core methods
+ (list (concat
+ ruby-font-lock-keyword-beg-re
(regexp-opt
- ;; built-in methods on Kernel
- '("__callee__"
+ '(;; built-in methods on Kernel
+ "__callee__"
"__dir__"
"__method__"
"abort"
@@ -1823,20 +1823,17 @@
"public"
"refine"
"using")
- 'symbols)
- "\\)")
- 2
- '(if (match-beginning 4)
- font-lock-builtin-face
- font-lock-keyword-face))
+ 'symbols))
+ 1 'font-lock-builtin-face)
;; Perl-ish keywords
"\\_<\\(?:BEGIN\\|END\\)\\_>\\|^__END__$"
;; here-doc beginnings
`(,ruby-here-doc-beg-re 0 (unless (ruby-singleton-class-p (match-beginning
0))
'font-lock-string-face))
;; variables
- '("\\(^\\|address@hidden|\\.\\.\\)\\_<\\(nil\\|self\\|true\\|false\\)\\>"
- 2 font-lock-variable-name-face)
+ `(,(concat ruby-font-lock-keyword-beg-re
+ "\\_<\\(nil\\|self\\|true\\|false\\)\\>")
+ 1 font-lock-variable-name-face)
;; keywords that evaluate to certain values
'("\\_<__\\(?:LINE\\|ENCODING\\|FILE\\)__\\_>" 0
font-lock-variable-name-face)
;; symbols
@@ -1852,7 +1849,7 @@
1 (unless (eq ?\( (char-after)) font-lock-type-face))
'("\\(^\\s *\\|[\[\{\(,]\\s *\\|\\sw\\s +\\)\\(\\(\\sw\\|_\\)+\\):[^:]" 2
font-lock-constant-face)
;; conversion methods on Kernel
- (list (concat "\\(?:^\\|address@hidden|\\.\\.\\)"
+ (list (concat ruby-font-lock-keyword-beg-re
(regexp-opt '("Array" "Complex" "Float" "Hash"
"Integer" "Rational" "String") 'symbols))
1 font-lock-builtin-face)
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] trunk r113436: * lisp/progmodes/ruby-mode.el (ruby-block-beg-keywords): Inline.,
Dmitry Gutov <=