Fix fontification of method-invocations in js-ts-mode (bug#59904)

* lisp/progmodes/js.el (js--treesit-font-lock-settings): Move rules
for property in front of function names, so function names override
property.
This commit is contained in:
Jostein Kjønigsen 2022-12-08 15:45:00 +01:00 committed by Yuan Fu
parent 7141920c6a
commit 1014bcc8e3
No known key found for this signature in database
GPG key ID: 56E19BC57664A442

View file

@ -3543,6 +3543,20 @@ This function is intended for use in `after-change-functions'."
(arrow_function
parameter: (identifier) @font-lock-variable-name-face))
:language 'javascript
:override t
:feature 'property
;; This needs to be before function-name feature, because methods
;; can be both property and function-name, and we want them in
;; function-name face.
`((property_identifier) @font-lock-property-face
(pair value: (identifier) @font-lock-variable-name-face)
((shorthand_property_identifier) @font-lock-property-face)
((shorthand_property_identifier_pattern) @font-lock-property-face))
:language 'javascript
:override t
:feature 'expression
@ -3611,18 +3625,7 @@ This function is intended for use in `after-change-functions'."
:language 'javascript
:feature 'escape-sequence
:override t
'((escape_sequence) @font-lock-escape-face)
:language 'javascript
:override t
:feature 'property
`((property_identifier) @font-lock-property-face
(pair value: (identifier) @font-lock-variable-name-face)
((shorthand_property_identifier) @font-lock-property-face)
((shorthand_property_identifier_pattern) @font-lock-property-face)))
'((escape_sequence) @font-lock-escape-face))
"Tree-sitter font-lock settings.")
(defun js--fontify-template-string (node override start end &rest _)