@@ -993,27 +993,30 @@ See `clojure-ts--font-lock-settings' for usage of MARKDOWN-AVAILABLE."
993993 (add-to-list 'auto-mode-alist '(" \\ .cljd\\ '" . clojure-ts-clojuredart-mode))
994994 (add-to-list 'auto-mode-alist '(" \\ .jank\\ '" . clojure-ts-jank-mode)))
995995
996- ; ; Redirect clojure-mode to clojure-ts-mode if clojure-mode is present
997- (if (require 'clojure-mode nil 'noerror )
998- (progn
999- (add-to-list 'major-mode-remap-alist '(clojure-mode . clojure-ts-mode))
1000- (add-to-list 'major-mode-remap-alist '(clojurescript-mode . clojure-ts-clojurescript-mode))
1001- (add-to-list 'major-mode-remap-alist '(clojurec-mode . clojure-ts-clojurec-mode))
1002- (clojure-ts--register-novel-modes))
1003- ; ; Clojure-mode is not present, setup auto-modes ourselves
1004- ; ; Regular clojure/edn files
1005- ; ; I believe dtm is for datomic queries and datoms, which are just edn.
1006- (add-to-list 'auto-mode-alist
1007- '(" \\ .\\ (clj\\ |dtm\\ |edn\\ )\\ '" . clojure-ts-mode))
1008- (add-to-list 'auto-mode-alist '(" \\ .cljs\\ '" . clojure-ts-clojurescript-mode))
1009- (add-to-list 'auto-mode-alist '(" \\ .cljc\\ '" . clojure-ts-clojurec-mode))
1010- ; ; boot build scripts are Clojure source files
1011- (add-to-list 'auto-mode-alist '(" \\ (?:build\\ |profile\\ )\\ .boot\\ '" . clojure-ts-mode))
1012- ; ; babashka scripts are Clojure source files
1013- (add-to-list 'interpreter-mode-alist '(" bb" . clojure-ts-mode))
1014- ; ; nbb scripts are ClojureScript source files
1015- (add-to-list 'interpreter-mode-alist '(" nbb" . clojure-ts-clojurescript-mode))
1016- (clojure-ts--register-novel-modes))
996+ (if (treesit-available-p)
997+ ; ; Redirect clojure-mode to clojure-ts-mode if clojure-mode is present
998+ (if (require 'clojure-mode nil 'noerror )
999+ (progn
1000+ (add-to-list 'major-mode-remap-alist '(clojure-mode . clojure-ts-mode))
1001+ (add-to-list 'major-mode-remap-alist '(clojurescript-mode . clojure-ts-clojurescript-mode))
1002+ (add-to-list 'major-mode-remap-alist '(clojurec-mode . clojure-ts-clojurec-mode))
1003+ (clojure-ts--register-novel-modes))
1004+ ; ; When Clojure-mode is not present, setup auto-modes ourselves
1005+ (progn
1006+ ; ; Regular clojure/edn files
1007+ ; ; I believe dtm is for datomic queries and datoms, which are just edn.
1008+ (add-to-list 'auto-mode-alist
1009+ '(" \\ .\\ (clj\\ |dtm\\ |edn\\ )\\ '" . clojure-ts-mode))
1010+ (add-to-list 'auto-mode-alist '(" \\ .cljs\\ '" . clojure-ts-clojurescript-mode))
1011+ (add-to-list 'auto-mode-alist '(" \\ .cljc\\ '" . clojure-ts-clojurec-mode))
1012+ ; ; boot build scripts are Clojure source files
1013+ (add-to-list 'auto-mode-alist '(" \\ (?:build\\ |profile\\ )\\ .boot\\ '" . clojure-ts-mode))
1014+ ; ; babashka scripts are Clojure source files
1015+ (add-to-list 'interpreter-mode-alist '(" bb" . clojure-ts-mode))
1016+ ; ; nbb scripts are ClojureScript source files
1017+ (add-to-list 'interpreter-mode-alist '(" nbb" . clojure-ts-clojurescript-mode))
1018+ (clojure-ts--register-novel-modes)))
1019+ (message " Clojure TS Mode is not activated as tree-sitter support is missing. " ))
10171020
10181021(defvar clojure-ts--find-ns-query
10191022 (treesit-query-compile
0 commit comments