diff options
author | Dmitry Gutov <dgutov@yandex.ru> | 2023-01-06 15:38:00 +0200 |
---|---|---|
committer | Dmitry Gutov <dgutov@yandex.ru> | 2023-01-06 15:38:13 +0200 |
commit | 92e8c0c091cdb67b27fa271814614ba4cab478d6 (patch) | |
tree | 0d0f55e8b363376693dc16ca5992f333428dab3f /lisp | |
parent | 7420b6dcc379617ca9691049c16bfb2d158f9496 (diff) | |
download | emacs-92e8c0c091cdb67b27fa271814614ba4cab478d6.tar.gz emacs-92e8c0c091cdb67b27fa271814614ba4cab478d6.tar.bz2 emacs-92e8c0c091cdb67b27fa271814614ba4cab478d6.zip |
ruby-ts-mode: Highlight more kinds of parameters
* lisp/progmodes/ruby-ts-mode.el
(ruby-ts--font-lock-settings): Highlight destructured parameters,
lambda parameters, identifiers in pattern matching clauses
(array/hash) and exception variables.
Move the 'symbol' matchers lower to make 'hash_key_symbol' lower
priority than hash keys in match patterns.
Diffstat (limited to 'lisp')
-rw-r--r-- | lisp/progmodes/ruby-ts-mode.el | 28 |
1 files changed, 20 insertions, 8 deletions
diff --git a/lisp/progmodes/ruby-ts-mode.el b/lisp/progmodes/ruby-ts-mode.el index 349318e7579..87fd4ae535f 100644 --- a/lisp/progmodes/ruby-ts-mode.el +++ b/lisp/progmodes/ruby-ts-mode.el @@ -215,13 +215,6 @@ values of OVERRIDE" (false) @font-lock-doc-markup-face (nil) @font-lock-doc-markup-face) - :language language - :feature 'symbol - '((bare_symbol) @font-lock-constant-face - (delimited_symbol (string_content) @font-lock-constant-face) - (hash_key_symbol) @font-lock-constant-face - (simple_symbol) @font-lock-constant-face) - ;; Before 'operator so (unary) works. :language language :feature 'literal @@ -303,7 +296,19 @@ values of OVERRIDE" (hash_splat_parameter name: (identifier) @font-lock-variable-name-face) (block_parameter - name: (identifier) @font-lock-variable-name-face)) + name: (identifier) @font-lock-variable-name-face) + (destructured_parameter + (identifier) @font-lock-variable-name-face) + (lambda_parameters + (identifier) @font-lock-variable-name-face) + (exception_variable + (identifier) @font-lock-variable-name-face) + (array_pattern + (identifier) @font-lock-variable-name-face) + (keyword_pattern + key: (hash_key_symbol) @font-lock-variable-name-face) + (in_clause + pattern: (identifier) @font-lock-variable-name-face)) ;; Yuan recommends also putting method definitions into the ;; 'function' category (thus keeping it in both). I've opted to @@ -323,6 +328,13 @@ values of OVERRIDE" left: (identifier) @font-lock-variable-name-face)) :language language + :feature 'symbol + '((bare_symbol) @font-lock-constant-face + (delimited_symbol (string_content) @font-lock-constant-face) + (hash_key_symbol) @font-lock-constant-face + (simple_symbol) @font-lock-constant-face) + + :language language :feature 'error '((ERROR) @font-lock-warning-face) |