]> git.eshelyaron.com Git - emacs.git/commitdiff
Remove tree-sitter setup from js-json-mode
authorYuan Fu <casouri@gmail.com>
Sun, 20 Nov 2022 02:45:45 +0000 (18:45 -0800)
committerYuan Fu <casouri@gmail.com>
Sun, 20 Nov 2022 02:47:15 +0000 (18:47 -0800)
* lisp/progmodes/js.el (js-json--treesit-font-lock-settings)
(js--json-treesit-indent-rules): Remove variables.
(js-json-mode): Remove tree-sitter setup.

lisp/progmodes/js.el

index 159c32ca2ae25087acc398a223a68bddcafeefbc..97e6c4f41079e65f43de30a226b590ce3e2d2a39 100644 (file)
@@ -3841,49 +3841,12 @@ Currently there are `js-mode' and `js-ts-mode'."
     (setq-local which-func-functions nil)
     (treesit-major-mode-setup)))
 
-(defvar js-json--treesit-font-lock-settings
-  (treesit-font-lock-rules
-   :language 'json
-   :feature 'minimal
-   :override t
-   `(
-     (pair
-      key: (_) @font-lock-string-face)
-
-     (string) @font-lock-string-face
-
-     (number) @font-lock-constant-face
-
-     [(null) (true) (false)] @font-lock-constant-face
-
-     (escape_sequence) @font-lock-constant-face
-
-     (comment) @font-lock-comment-face))
-  "Font-lock settings for JSON.")
-
-
-(defvar js--json-treesit-indent-rules
-  `((json
-     (no-node (js--treesit-backward-up-list) js-indent-level)
-     ((node-is "}") parent-bol 0)
-     ((node-is ")") parent-bol 0)
-     ((node-is "]") parent-bol 0)
-     ((parent-is "object") parent-bol js-indent-level)
-     )))
-
 ;;;###autoload
 (define-derived-mode js-json-mode js-mode "JSON"
   (setq-local js-enabled-frameworks nil)
   ;; Speed up `syntax-ppss': JSON files can be big but can't hold
   ;; regexp matchers nor #! thingies (and `js-enabled-frameworks' is nil).
-  (setq-local syntax-propertize-function #'ignore)
-
-  (cond
-   ;; Tree-sitter.
-   ((treesit-ready-p 'js-json-mode 'json)
-    (setq-local treesit-simple-indent-rules js--json-treesit-indent-rules)
-    (setq-local treesit-font-lock-settings js-json--treesit-font-lock-settings)
-    (treesit-major-mode-setup))))
+  (setq-local syntax-propertize-function #'ignore))
 
 ;; Since we made JSX support available and automatically-enabled in
 ;; the base `js-mode' (for ease of use), now `js-jsx-mode' simply