From 3a1a220b02fa5627718380b2bd0a04800db098fb Mon Sep 17 00:00:00 2001 From: Dmitry Gutov Date: Sun, 15 Nov 2015 07:25:19 +0200 Subject: [PATCH] Improve Ruby 1.9-style keyword keys highlighting * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords): Handle required keyword arguments (bug#21367). And highlight the colon together with the name. --- lisp/progmodes/ruby-mode.el | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/lisp/progmodes/ruby-mode.el b/lisp/progmodes/ruby-mode.el index 09338860c75..754785168f2 100644 --- a/lisp/progmodes/ruby-mode.el +++ b/lisp/progmodes/ruby-mode.el @@ -2193,8 +2193,9 @@ See `font-lock-syntax-table'.") ;; Constants. ("\\(?:\\_<\\|::\\)\\([A-Z]+\\(\\w\\|_\\)*\\)" 1 (unless (eq ?\( (char-after)) font-lock-type-face)) - ("\\(^\\s *\\|[[{(,]\\s *\\|\\sw\\s +\\)\\(\\(\\sw\\|_\\)+\\):[^:]" - (2 font-lock-constant-face)) + ;; Ruby 1.9-style symbol hash keys. + ("\\(?:^\\s *\\|[[{(,]\\s *\\|\\sw\\s +\\)\\(\\(\\sw\\|_\\)+:\\)[^:]" + (1 (progn (forward-char -1) font-lock-constant-face))) ;; Conversion methods on Kernel. (,(concat ruby-font-lock-keyword-beg-re (regexp-opt '("Array" "Complex" "Float" "Hash" -- 2.39.5