# HG changeset patch # User Chong Yidong # Date 1245251777 0 # Node ID 3c0923fbcb01e989f678864dbec7a44415a115c1 # Parent 145036a4bf0dace4f486c62862628816a466da95 * progmodes/ruby-mode.el (ruby-parse-partial, ruby-font-lock-keywords): Support overloadable negative operators (Bug#3587). diff -r 145036a4bf0d -r 3c0923fbcb01 lisp/ChangeLog --- a/lisp/ChangeLog Wed Jun 17 15:06:25 2009 +0000 +++ b/lisp/ChangeLog Wed Jun 17 15:16:17 2009 +0000 @@ -1,3 +1,9 @@ +2009-06-17 Akinori MUSHA (tiny change) + + * progmodes/ruby-mode.el (ruby-parse-partial) + (ruby-font-lock-keywords): Support overloadable negative + operators (Bug#3587). + 2009-06-17 Tiago Saboga (tiny change) * files.el (save-some-buffers-action-alist): Fix last diff -r 145036a4bf0d -r 3c0923fbcb01 lisp/progmodes/ruby-mode.el --- a/lisp/progmodes/ruby-mode.el Wed Jun 17 15:06:25 2009 +0000 +++ b/lisp/progmodes/ruby-mode.el Wed Jun 17 15:16:17 2009 +0000 @@ -613,7 +613,7 @@ ((looking-at ":\\(['\"]\\)") (goto-char (match-beginning 1)) (ruby-forward-string (buffer-substring (match-beginning 1) (match-end 1)) end)) - ((looking-at ":\\([-,.+*/%&|^~<>]=?\\|===?\\|<=>\\)") + ((looking-at ":\\([-,.+*/%&|^~<>]=?\\|===?\\|<=>\\|![~=]?\\)") (goto-char (match-end 0))) ((looking-at ":\\([a-zA-Z_][a-zA-Z_0-9]*[!?=]?\\)?") (goto-char (match-end 0))) @@ -1362,7 +1362,7 @@ '("\\(^\\|[^_]\\)\\b\\([A-Z]+\\(\\w\\|_\\)*\\)" 2 font-lock-type-face) ;; symbols - '("\\(^\\|[^:]\\)\\(:\\([-+~]@?\\|[/%&|^`]\\|\\*\\*?\\|<\\(<\\|=>?\\)?\\|>[>=]?\\|===?\\|=~\\|\\[\\]=?\\|\\(\\w\\|_\\)+\\([!?=]\\|\\b_*\\)\\|#{[^}\n\\\\]*\\(\\\\.[^}\n\\\\]*\\)*}\\)\\)" + '("\\(^\\|[^:]\\)\\(:\\([-+~]@?\\|[/%&|^`]\\|\\*\\*?\\|<\\(<\\|=>?\\)?\\|>[>=]?\\|===?\\|=~\\|![~=]?\\|\\[\\]=?\\|\\(\\w\\|_\\)+\\([!?=]\\|\\b_*\\)\\|#{[^}\n\\\\]*\\(\\\\.[^}\n\\\\]*\\)*}\\)\\)" 2 font-lock-reference-face) ;; expression expansion '("#\\({[^}\n\\\\]*\\(\\\\.[^}\n\\\\]*\\)*}\\|\\(\\$\\|@\\|@@\\)\\(\\w\\|_\\)+\\)"