Skip to content

Commit 80d2dcd

Browse files
committed
Cleanup mode function, add var to control treesit debugging tools
1 parent 859b0b1 commit 80d2dcd

File tree

1 file changed

+16
-13
lines changed

1 file changed

+16
-13
lines changed

clojure-ts-mode.el

+16-13
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,10 @@
6363
(lm-version (or load-file-name buffer-file-name)))
6464
"The current version of `clojure-ts-mode'.")
6565

66+
(defvar clojure-ts--debug nil
67+
"Enables debugging messages, shows current node in mode-line.
68+
Only intended for use at development time.")
69+
6670
(defconst clojure-ts--builtin-dynamic-var-regexp
6771
(eval-and-compile
6872
(concat "^"
@@ -519,23 +523,22 @@ Requires Emacs 29 and libtree-sitter-clojure.so available somewhere in
519523
(setq-local comment-start ";")
520524
(when (treesit-ready-p 'clojure)
521525
(treesit-parser-create 'clojure)
522-
(setq-local treesit-font-lock-settings clojure-ts--font-lock-settings)
523-
(setq-local treesit-defun-prefer-top-level t
526+
(setq-local treesit-font-lock-settings clojure-ts--font-lock-settings
527+
treesit-defun-prefer-top-level t
524528
treesit-defun-tactic 'top-level
525-
treesit-defun-type-regexp (rx (or "list_lit" "vec_lit" "map_lit")))
526-
(setq-local treesit-font-lock-feature-list
529+
treesit-defun-type-regexp (rx (or "list_lit" "vec_lit" "map_lit"))
530+
treesit-simple-indent-rules clojure-ts--fixed-indent-rules
531+
treesit-defun-name-function #'clojure-ts--standard-definition-node-name
532+
treesit-simple-imenu-settings clojure-ts--imenu-settings
533+
treesit-font-lock-feature-list
527534
'((comment string char number)
528535
(keyword constant symbol bracket builtin)
529536
(deref quote metadata definition variable type doc regex tagged-literals)))
530-
(setq-local treesit-simple-indent-rules clojure-ts--fixed-indent-rules)
531-
(setq-local treesit-defun-name-function #'clojure-ts--standard-definition-node-name)
532-
(setq-local treesit-simple-imenu-settings clojure-ts--imenu-settings)
533-
(setq treesit--indent-verbose t)
534-
(treesit-major-mode-setup)
535-
(treesit-inspect-mode)))
536-
;; (clojure-mode-variables)
537-
;; (add-hook 'paredit-mode-hook #'clojure-paredit-setup)
538-
;; (add-hook 'electric-indent-function #'clojure-mode--electric-indent-function)
537+
(when clojure-ts--debug
538+
(setq-local treesit--indent-verbose t
539+
treesit--font-lock-verbose t)
540+
(treesit-inspect-mode))
541+
(treesit-major-mode-setup)))
539542

540543
;; Redirect clojure-mode to clojure-ts-mode if clojure-mode is present
541544
(if (require 'clojure-mode nil 'noerror)

0 commit comments

Comments
 (0)