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