[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] trunk r113271: * lisp/progmodes/ruby-mode.el (ruby-font-lo
From: |
Dmitry Gutov |
Subject: |
[Emacs-diffs] trunk r113271: * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords): Highlight more |
Date: |
Wed, 03 Jul 2013 15:46:40 +0000 |
User-agent: |
Bazaar (2.6b2) |
------------------------------------------------------------
revno: 113271
revision-id: address@hidden
parent: address@hidden
committer: Dmitry Gutov <address@hidden>
branch nick: trunk
timestamp: Wed 2013-07-03 19:46:45 +0400
message:
* lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords): Highlight more
keywords and built-ins.
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-03 03:20:04 +0000
+++ b/lisp/ChangeLog 2013-07-03 15:46:45 +0000
@@ -1,3 +1,8 @@
+2013-07-03 Dmitry Gutov <address@hidden>
+
+ * progmodes/ruby-mode.el (ruby-font-lock-keywords): Highlight more
+ keywords and built-ins.
+
2013-07-03 Glenn Morris <address@hidden>
* subr.el (y-or-n-p): Handle empty prompts. (Bug#14770)
=== modified file 'lisp/progmodes/ruby-mode.el'
--- a/lisp/progmodes/ruby-mode.el 2013-07-03 01:02:18 +0000
+++ b/lisp/progmodes/ruby-mode.el 2013-07-03 15:46:45 +0000
@@ -1762,31 +1762,67 @@
"yield")
'symbols)
"\\|"
- ;; keyword-like methods on Kernel and Module
(regexp-opt
- '("alias_method"
+ ;; built-in methods on Kernel
+ '("__callee__"
+ "__dir__"
+ "__method__"
+ "abort"
+ "at_exit"
+ "autoload"
+ "autoload?"
+ "binding"
+ "block_given?"
+ "caller"
+ "catch"
+ "eval"
+ "exec"
+ "exit"
+ "exit!"
+ "fail"
+ "fork"
+ "format"
+ "lambda"
+ "load"
+ "loop"
+ "open"
+ "p"
+ "print"
+ "printf"
+ "proc"
+ "putc"
+ "puts"
+ "raise"
+ "rand"
+ "readline"
+ "readlines"
+ "require"
+ "require_relative"
+ "sleep"
+ "spawn"
+ "sprintf"
+ "srand"
+ "syscall"
+ "system"
+ "throw"
+ "trap"
+ "warn"
+ ;; keyword-like private methods on Module
+ "alias_method"
"autoload"
"attr"
"attr_accessor"
"attr_reader"
"attr_writer"
- "catch"
"define_method"
"extend"
- "fail"
"include"
- "lambda"
- "loop"
"module_function"
+ "prepend"
"private"
- "proc"
"protected"
"public"
- "raise"
"refine"
- "require"
- "require_relative"
- "throw"
"using")
'symbols)
"\\)")
@@ -1794,12 +1830,16 @@
'(if (match-beginning 4)
font-lock-builtin-face
font-lock-keyword-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)
+ ;; keywords that evaluate to certain values
+ '("\\_<__\\(?:LINE\\|ENCODING\\|FILE\\)__\\_>" 0
font-lock-variable-name-face)
;; symbols
'("\\(^\\|[^:]\\)\\(:\\(address@hidden|[/%&|^`]\\|\\*\\*?\\|<\\(<\\|=>?\\)?\\|>[>=]?\\|===?\\|=~\\|![~=]?\\|\\[\\]=?\\|@?\\(\\w\\|_\\)+\\([!?=]\\|\\b_*\\)\\|#{[^}\n\\\\]*\\(\\\\.[^}\n\\\\]*\\)*}\\)\\)"
2 font-lock-constant-face)
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] trunk r113271: * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords): Highlight more,
Dmitry Gutov <=