emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

emacs-29 400ef15bdc3: js-ts-mode: Fix font-lock rules conflict


From: Dmitry Gutov
Subject: emacs-29 400ef15bdc3: js-ts-mode: Fix font-lock rules conflict
Date: Tue, 12 Dec 2023 17:00:52 -0500 (EST)

branch: emacs-29
commit 400ef15bdc373b05e877cf0914f0fd5eda56cf1d
Author: Dmitry Gutov <dmitry@gutov.dev>
Commit: Dmitry Gutov <dmitry@gutov.dev>

    js-ts-mode: Fix font-lock rules conflict
    
    * lisp/progmodes/js.el (js--treesit-font-lock-settings): Move
    'property' to after 'jsx'.  Stop using predicate (bug#67684).
    (js--treesit-property-not-function-p): Delete.
---
 lisp/progmodes/js.el | 24 ++++++------------------
 1 file changed, 6 insertions(+), 18 deletions(-)

diff --git a/lisp/progmodes/js.el b/lisp/progmodes/js.el
index aaf5779699b..c8d507c784b 100644
--- a/lisp/progmodes/js.el
+++ b/lisp/progmodes/js.el
@@ -3580,16 +3580,6 @@ Check if a node type is available, then return the right 
indent rules."
      ;; full namespace import (* as alias)
      (import_clause (namespace_import (identifier) 
@font-lock-variable-name-face)))
 
-   :language 'javascript
-   :feature 'property
-   '(((property_identifier) @font-lock-property-use-face
-      (:pred js--treesit-property-not-function-p
-             @font-lock-property-use-face))
-
-     (pair value: (identifier) @font-lock-variable-use-face)
-
-     ((shorthand_property_identifier) @font-lock-property-use-face))
-
    :language 'javascript
    :feature 'assignment
    '((assignment_expression
@@ -3610,6 +3600,12 @@ Check if a node type is available, then return the right 
indent rules."
      (jsx_self_closing_element name: (_) @font-lock-function-call-face)
      (jsx_attribute (property_identifier) @font-lock-constant-face))
 
+   :language 'javascript
+   :feature 'property
+   '(((property_identifier) @font-lock-property-use-face)
+     (pair value: (identifier) @font-lock-variable-use-face)
+     ((shorthand_property_identifier) @font-lock-property-use-face))
+
    :language 'javascript
    :feature 'number
    '((number) @font-lock-number-face
@@ -3661,14 +3657,6 @@ OVERRIDE is the override flag described in
       (setq font-beg (treesit-node-end child)
             child (treesit-node-next-sibling child)))))
 
-(defun js--treesit-property-not-function-p (node)
-  "Check that NODE, a property_identifier, is not used as a function."
-  (not (equal (treesit-node-type
-               (treesit-node-parent ; Maybe call_expression.
-                (treesit-node-parent ; Maybe member_expression.
-                 node)))
-              "call_expression")))
-
 (defvar js--treesit-lhs-identifier-query
   (when (treesit-available-p)
     (treesit-query-compile 'javascript '((identifier) @id



reply via email to

[Prev in Thread] Current Thread [Next in Thread]