refactor!(tree-sitter): add +tree-sitter flag

BREAKING CHANGE: break the global nature of the tree sitter
module by adding a +tree-sitter flag to every applicable module

In the background this hooks turn-on-tree-sitter-mode
to the major-mode-hook of the language.
This may also solve the eager loading of tree sitter
This commit is contained in:
Jeetaditya Chatterjee 2021-10-19 01:54:17 +01:00
parent 400d8d4116
commit 06ed5ade3f
No known key found for this signature in database
GPG key ID: 09D54CECD2132B91
18 changed files with 93 additions and 12 deletions

View file

@ -38,3 +38,8 @@
"h" #'agda2-display-implicit-arguments "h" #'agda2-display-implicit-arguments
"q" #'agda2-quit "q" #'agda2-quit
"r" #'agda2-restart))) "r" #'agda2-restart)))
;; Tree Sitter
(eval-when! (featurep! +tree-sitter)
(add-hook! '(agda-mode
agda2-mode) #'turn-on-tree-sitter-mode))

View file

@ -304,3 +304,8 @@ If rtags or rdm aren't available, fail silently instead of throwing a breaking e
"-isystem/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include" "-isystem/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include"
"-isystem/usr/local/include"] "-isystem/usr/local/include"]
:resourceDir (cdr (doom-call-process "clang" "-print-resource-dir")))))))) :resourceDir (cdr (doom-call-process "clang" "-print-resource-dir"))))))))
;; Tree sitter
(eval-when! (featurep! +tree-sitter)
(add-hook! '(c-mode-hook
c++-mode-hook) #'turn-on-tree-sitter-mode))

View file

@ -72,3 +72,7 @@ or terminating simple string."
(use-package! sln-mode :mode "\\.sln\\'") (use-package! sln-mode :mode "\\.sln\\'")
;; Tree sitter
(eval-when! (featurep! +tree-sitter)
(add-hook! 'csharp-mode-hook #'turn-on-tree-sitter-mode))

View file

@ -21,3 +21,7 @@
:when (featurep! :checkers syntax) :when (featurep! :checkers syntax)
:after elm-mode :after elm-mode
:config (add-to-list 'flycheck-checkers 'elm)) :config (add-to-list 'flycheck-checkers 'elm))
;; Tree sitter
(eval-when! (featurep! +tree-sitter)
(add-hook! 'elm-mode-hook #'turn-on-tree-sitter-mode))

View file

@ -76,3 +76,7 @@
(use-package! flycheck-golangci-lint (use-package! flycheck-golangci-lint
:when (featurep! :checkers syntax) :when (featurep! :checkers syntax)
:hook (go-mode . flycheck-golangci-lint-setup)) :hook (go-mode . flycheck-golangci-lint-setup))
;; Tree sitter
(eval-when! (featurep! +tree-sitter)
(add-hook! 'go-mode-hook #'turn-on-tree-sitter-mode))

View file

@ -49,3 +49,7 @@ If the depth is 2, the first two directories are removed: net.lissner.game.")
(set-docsets! 'groovy-mode "Groovy" "Groovy_JDK") (set-docsets! 'groovy-mode "Groovy" "Groovy_JDK")
(set-eval-handler! 'groovy-mode "groovy") (set-eval-handler! 'groovy-mode "groovy")
(set-repl-handler! 'groovy-mode #'+java/open-groovy-repl)) (set-repl-handler! 'groovy-mode #'+java/open-groovy-repl))
;; Tree sitter
(eval-when! (featurep! +tree-sitter)
(add-hook! 'java-mode-hook #'turn-on-tree-sitter-mode))

View file

@ -311,3 +311,12 @@ to tide."
(def-project-mode! +javascript-gulp-mode (def-project-mode! +javascript-gulp-mode
:when (locate-dominating-file default-directory "gulpfile.js")) :when (locate-dominating-file default-directory "gulpfile.js"))
;; Tree sitter
(eval-when! (featurep! +tree-sitter)
(add-hook! '(javascript-mode-hook
js-mode-hook
js2-mode-hook
js3-mode-hook
typescript-mode-hook
rjsx-mode) #'turn-on-tree-sitter-mode))

View file

@ -29,3 +29,7 @@
:map json-mode-map :map json-mode-map
:localleader :localleader
"s" #'counsel-jq)) "s" #'counsel-jq))
(eval-when! (featurep! +tree-sitter)
(add-hook! '(json-mode
jsonc-mode) #'turn-on-tree-sitter-mode))

View file

@ -99,3 +99,7 @@
;; Prevent timeout while installing LanguageServer.jl ;; Prevent timeout while installing LanguageServer.jl
(setq-hook! 'julia-mode-hook eglot-connect-timeout (max eglot-connect-timeout 60)) (setq-hook! 'julia-mode-hook eglot-connect-timeout (max eglot-connect-timeout 60))
:config (eglot-jl-init)) :config (eglot-jl-init))
;; Tree sitter
(eval-when! (featurep! +tree-sitter)
(add-hook! 'julia-mode-hook #'turn-on-tree-sitter-mode))

View file

@ -118,3 +118,7 @@
((equal ext ".eliomi") ((equal ext ".eliomi")
(setq-local ocamlformat-file-kind 'interface))))) (setq-local ocamlformat-file-kind 'interface)))))
(setq +format-with 'ocamlformat)))) (setq +format-with 'ocamlformat))))
;; Tree sitter
(eval-when! (featurep! +tree-sitter)
(add-hook! 'tuareg-mode-hook #'turn-on-tree-sitter-mode))

View file

@ -176,3 +176,7 @@
:on-exit :on-exit
(setq phpunit-args nil (setq phpunit-args nil
phpunit-executable nil)) phpunit-executable nil))
;; Tree sitter
(eval-when! (featurep! +tree-sitter)
(add-hook! #'php-mode-hook #'turn-on-tree-sitter-mode))

View file

@ -345,3 +345,7 @@
(use-package! lsp-pyright (use-package! lsp-pyright
:when (featurep! +pyright) :when (featurep! +pyright)
:after lsp-mode)) :after lsp-mode))
;; Tree sitter
(eval-when! (featurep! +tree-sitter)
(add-hook! 'python-mode-hook #'turn-on-tree-sitter-mode))

View file

@ -195,3 +195,7 @@
(map! :localleader (map! :localleader
:map projectile-rails-mode-map :map projectile-rails-mode-map
"r" #'projectile-rails-command-map)) "r" #'projectile-rails-command-map))
;; Tree sitter
(eval-when! (featurep! +tree-sitter)
(add-hook! 'ruby-mode-hook #'turn-on-tree-sitter-mode))

View file

@ -81,3 +81,7 @@
(set-lookup-handlers! 'rustic-mode (set-lookup-handlers! 'rustic-mode
:definition '(racer-find-definition :async t) :definition '(racer-find-definition :async t)
:documentation '+rust-racer-lookup-documentation)) :documentation '+rust-racer-lookup-documentation))
;; Tree sitter
(eval-when! (featurep! +tree-sitter)
(add-hook! 'rustic-mode-hook #'turn-on-tree-sitter-mode))

View file

@ -50,3 +50,7 @@
(use-package! sbt-mode (use-package! sbt-mode
:after scala-mode :after scala-mode
:config (set-repl-handler! 'scala-mode #'+scala/open-repl :persist t)) :config (set-repl-handler! 'scala-mode #'+scala/open-repl :persist t))
;; Tree sitter
(eval-when! (featurep! +tree-sitter)
(add-hook! 'scala-mode-hook #'turn-on-tree-sitter-mode))

View file

@ -24,18 +24,18 @@
(set-repl-handler! 'sh-mode #'+sh/open-repl) (set-repl-handler! 'sh-mode #'+sh/open-repl)
(set-lookup-handlers! 'sh-mode :documentation #'+sh-lookup-documentation-handler) (set-lookup-handlers! 'sh-mode :documentation #'+sh-lookup-documentation-handler)
(set-ligatures! 'sh-mode (set-ligatures! 'sh-mode
;; Functional ;; Functional
:def "function" :def "function"
;; Types ;; Types
:true "true" :false "false" :true "true" :false "false"
;; Flow ;; Flow
:not "!" :not "!"
:and "&&" :or "||" :and "&&" :or "||"
:in "in" :in "in"
:for "for" :for "for"
:return "return" :return "return"
;; Other ;; Other
:dot "." :dot "source") :dot "." :dot "source")
(when (featurep! +lsp) (when (featurep! +lsp)
(add-hook 'sh-mode-local-vars-hook #'lsp! 'append)) (add-hook 'sh-mode-local-vars-hook #'lsp! 'append))
@ -93,3 +93,7 @@
:config :config
(when (featurep! +lsp) (when (featurep! +lsp)
(add-hook 'powershell-mode-local-vars-hook #'lsp! 'append))) (add-hook 'powershell-mode-local-vars-hook #'lsp! 'append)))
;; Tree sitter
(eval-when! (featurep! +tree-sitter)
(add-hook! 'sh-mode-hook #'turn-on-tree-sitter-mode))

View file

@ -31,3 +31,7 @@
"sourcekit" "sourcekit"
"/Library/Developer/Toolchains/swift-latest.xctoolchain/usr/bin/sourcekit-lsp" "/Library/Developer/Toolchains/swift-latest.xctoolchain/usr/bin/sourcekit-lsp"
"/Library/Developer/Toolchains/swift-latest.xctoolchain/usr/bin/sourcekit")))) "/Library/Developer/Toolchains/swift-latest.xctoolchain/usr/bin/sourcekit"))))
;; Tree sitter
(eval-when! (featurep! +tree-sitter)
(add-hook! 'swift-mode-hook #'turn-on-tree-sitter-mode))

View file

@ -55,3 +55,9 @@
(def-project-mode! +web-phaser-mode (def-project-mode! +web-phaser-mode
:modes '(+javascript-npm-mode) :modes '(+javascript-npm-mode)
:when (+javascript-npm-dep-p '(or phaser phaser-ce)))) :when (+javascript-npm-dep-p '(or phaser phaser-ce))))
;; Tree sitter
(eval-when! (featurep! +tree-sitter)
(add-hook! '(html-mode-hook
mhtml-mode-hook
css-mode-hook)) #'turn-on-tree-sitter-mode)