summaryrefslogtreecommitdiff
path: root/lisp
diff options
context:
space:
mode:
authorJostein Kjønigsen <jostein@kjonigsen.net>2022-12-08 15:45:00 +0100
committerYuan Fu <casouri@gmail.com>2022-12-09 16:46:00 -0800
commit1014bcc8e32c8ab7b25e148d13e7e3a82f9635b9 (patch)
tree196eb5abd51ae594a650fcdf4560ee68adde6972 /lisp
parent7141920c6afdd9ead4a94f2a3314a8c1097d1b6b (diff)
downloademacs-1014bcc8e32c8ab7b25e148d13e7e3a82f9635b9.tar.gz
emacs-1014bcc8e32c8ab7b25e148d13e7e3a82f9635b9.tar.bz2
emacs-1014bcc8e32c8ab7b25e148d13e7e3a82f9635b9.zip
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.
Diffstat (limited to 'lisp')
-rw-r--r--lisp/progmodes/js.el27
1 files changed, 15 insertions, 12 deletions
diff --git a/lisp/progmodes/js.el b/lisp/progmodes/js.el
index 45dfef372cd..f7318c481a2 100644
--- a/lisp/progmodes/js.el
+++ b/lisp/progmodes/js.el
@@ -3545,6 +3545,20 @@ This function is intended for use in `after-change-functions'."
: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
`((assignment_expression
left: [(identifier) @font-lock-function-name-face
@@ -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 _)