mirror of
https://github.com/doomemacs/doomemacs
synced 2025-08-01 12:17:25 -05:00
refactor(:lang): move tree-sitter init
Moved add-hook calls (for tree-sitter initialization) into their respective modes' config blocks, or nearby, to be consistent with how other, similar tools (like lsp!) are initialized, and does so at runtime, rather than at expansion/compile time, which eval-when! caused.
This commit is contained in:
@ -10,6 +10,12 @@
|
||||
(after! agda2-mode
|
||||
(set-lookup-handlers! 'agda2-mode
|
||||
:definition #'agda2-goto-definition-keyboard)
|
||||
|
||||
(when (featurep! +tree-sitter)
|
||||
(add-hook! '(agda-mode-local-vars-hook
|
||||
agda2-mode-local-vars-hook)
|
||||
:append #'tree-sitter!))
|
||||
|
||||
(map! :map agda2-mode-map
|
||||
:localleader
|
||||
"?" #'agda2-show-goals
|
||||
@ -38,9 +44,3 @@
|
||||
"h" #'agda2-display-implicit-arguments
|
||||
"q" #'agda2-quit
|
||||
"r" #'agda2-restart)))
|
||||
|
||||
;; Tree Sitter
|
||||
(eval-when! (featurep! +tree-sitter)
|
||||
(add-hook! '(agda-mode-local-vars-hook
|
||||
agda2-mode-local-vars-hook)
|
||||
#'tree-sitter!))
|
||||
|
@ -67,6 +67,11 @@ This is ignored by ccls.")
|
||||
:return "return"
|
||||
:yield "#require")
|
||||
|
||||
(when (featurep! +tree-sitter)
|
||||
(add-hook! '(c-mode-local-vars-hook
|
||||
c++-mode-local-vars-hook)
|
||||
:append #'tree-sitter!))
|
||||
|
||||
;; HACK Suppress 'Args out of range' error in when multiple modifications are
|
||||
;; performed at once in a `c++-mode' buffer, e.g. with `iedit' or
|
||||
;; multiple cursors.
|
||||
@ -304,9 +309,3 @@ 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/usr/local/include"]
|
||||
:resourceDir (cdr (doom-call-process "clang" "-print-resource-dir"))))))))
|
||||
|
||||
;; Tree sitter
|
||||
(eval-when! (featurep! +tree-sitter)
|
||||
(add-hook! '(c-mode-local-vars-hook
|
||||
c++-mode-local-vars-hook)
|
||||
#'tree-sitter!))
|
||||
|
@ -35,6 +35,9 @@
|
||||
(when (featurep! +lsp)
|
||||
(add-hook 'csharp-mode-local-vars-hook #'lsp! 'append))
|
||||
|
||||
(when (featurep! +tree-sitter)
|
||||
(add-hook 'csharp-mode-local-vars-hook #'tree-sitter! 'append))
|
||||
|
||||
(defadvice! +csharp-disable-clear-string-fences-a (fn &rest args)
|
||||
"This turns off `c-clear-string-fences' for `csharp-mode'. When
|
||||
on for `csharp-mode' font lock breaks after an interpolated string
|
||||
@ -72,7 +75,3 @@ or terminating simple string."
|
||||
|
||||
|
||||
(use-package! sln-mode :mode "\\.sln\\'")
|
||||
|
||||
;; Tree sitter
|
||||
(eval-when! (featurep! +tree-sitter)
|
||||
(add-hook! 'csharp-mode-local-vars-hook #'tree-sitter!))
|
||||
|
@ -41,6 +41,9 @@
|
||||
(after! lsp-mode
|
||||
(add-to-list 'lsp-file-watch-ignored-directories "[/\\\\]_build\\'")))
|
||||
|
||||
(when (featurep! +tree-sitter)
|
||||
(add-hook 'elixir-mode-local-vars-hook #'tree-sitter! 'append))
|
||||
|
||||
(after! highlight-numbers
|
||||
(puthash 'elixir-mode
|
||||
"\\_<-?[[:digit:]]+\\(?:_[[:digit:]]\\{3\\}\\)*\\_>"
|
||||
@ -99,6 +102,3 @@
|
||||
"T" #'exunit-toggle-file-and-test
|
||||
"t" #'exunit-toggle-file-and-test-other-window
|
||||
"s" #'exunit-verify-single))
|
||||
|
||||
(eval-when! (featurep! +tree-sitter)
|
||||
(add-hook! 'elixir-mode-local-vars-hook #'tree-sitter!))
|
||||
|
@ -4,6 +4,9 @@
|
||||
(if (featurep! +lsp)
|
||||
(add-hook 'elm-mode-local-vars-hook #'lsp! 'append)
|
||||
(set-company-backend! 'elm-mode 'company-elm))
|
||||
|
||||
(when (featurep! +tree-sitter)
|
||||
(add-hook 'elm-mode-local-vars-hook #'tree-sitter! 'append))
|
||||
|
||||
(set-repl-handler! 'elm-mode #'run-elm-interactive)
|
||||
(set-ligatures! 'elm-mode
|
||||
@ -21,7 +24,3 @@
|
||||
:when (featurep! :checkers syntax)
|
||||
:after elm-mode
|
||||
:config (add-to-list 'flycheck-checkers 'elm))
|
||||
|
||||
;; Tree sitter
|
||||
(eval-when! (featurep! +tree-sitter)
|
||||
(add-hook! 'elm-mode-local-vars-hook #'tree-sitter!))
|
||||
|
@ -23,6 +23,9 @@
|
||||
(add-hook 'go-mode-local-vars-hook #'lsp! 'append)
|
||||
(add-hook 'go-mode-hook #'go-eldoc-setup))
|
||||
|
||||
(when (featurep! +tree-sitter)
|
||||
(add-hook 'go-mode-local-vars-hook #'tree-sitter! 'append))
|
||||
|
||||
(map! :map go-mode-map
|
||||
:localleader
|
||||
"a" #'go-tag-add
|
||||
@ -76,7 +79,3 @@
|
||||
(use-package! flycheck-golangci-lint
|
||||
:when (featurep! :checkers syntax)
|
||||
:hook (go-mode . flycheck-golangci-lint-setup))
|
||||
|
||||
;; Tree sitter
|
||||
(eval-when! (featurep! +tree-sitter)
|
||||
(add-hook! 'go-mode-local-vars-hook #'tree-sitter!))
|
||||
|
@ -30,6 +30,9 @@ If the depth is 2, the first two directories are removed: net.lissner.game.")
|
||||
((featurep! :tools lsp +eglot))
|
||||
((featurep! +lsp) (load! "+lsp")))
|
||||
|
||||
(when (featurep! +tree-sitter)
|
||||
(add-hook 'java-mode-local-vars-hook #'tree-sitter! 'append))
|
||||
|
||||
|
||||
;;
|
||||
;;; Common packages
|
||||
@ -49,7 +52,3 @@ If the depth is 2, the first two directories are removed: net.lissner.game.")
|
||||
(set-docsets! 'groovy-mode "Groovy" "Groovy_JDK")
|
||||
(set-eval-handler! 'groovy-mode "groovy")
|
||||
(set-repl-handler! 'groovy-mode #'+java/open-groovy-repl))
|
||||
|
||||
;; Tree sitter
|
||||
(eval-when! (featurep! +tree-sitter)
|
||||
(add-hook! 'java-mode-local-vars-hook #'tree-sitter!))
|
||||
|
@ -166,6 +166,13 @@
|
||||
;;
|
||||
;;; Tools
|
||||
|
||||
(when (featurep! +tree-sitter)
|
||||
(add-hook! '(js2-mode-local-vars-hook
|
||||
typescript-mode-local-vars-hook
|
||||
typescript-tsx-mode-local-vars-hook
|
||||
rjsx-mode-local-vars-hook)
|
||||
:append #'tree-sitter!))
|
||||
|
||||
(add-hook! '(typescript-mode-local-vars-hook
|
||||
typescript-tsx-mode-local-vars-hook
|
||||
web-mode-local-vars-hook
|
||||
@ -320,12 +327,3 @@ to tide."
|
||||
|
||||
(def-project-mode! +javascript-gulp-mode
|
||||
:when (locate-dominating-file default-directory "gulpfile.js"))
|
||||
|
||||
;; Tree sitter
|
||||
(eval-when! (featurep! +tree-sitter)
|
||||
(add-hook! '(js-mode-local-vars-hook
|
||||
js2-mode-local-vars-hook
|
||||
typescript-mode-local-vars-hook
|
||||
typescript-tsx-mode-local-vars-hook
|
||||
rjsx-mode-local-vars-hook)
|
||||
#'tree-sitter!))
|
||||
|
@ -5,6 +5,10 @@
|
||||
:init
|
||||
(when (featurep! +lsp)
|
||||
(add-hook 'json-mode-local-vars-hook #'lsp! 'append))
|
||||
(when (featurep! +tree-sitter)
|
||||
(add-hook! '(json-mode-local-vars-hook
|
||||
jsonc-mode-local-vars-hook)
|
||||
:append #'tree-sitter!))
|
||||
:config
|
||||
(set-electric! 'json-mode :chars '(?\n ?: ?{ ?}))
|
||||
|
||||
@ -29,8 +33,3 @@
|
||||
:map json-mode-map
|
||||
:localleader
|
||||
"s" #'counsel-jq))
|
||||
|
||||
(eval-when! (featurep! +tree-sitter)
|
||||
(add-hook! '(json-mode-local-vars-hook
|
||||
jsonc-mode-local-vars-hook)
|
||||
#'tree-sitter!))
|
||||
|
@ -5,6 +5,12 @@
|
||||
:config
|
||||
(set-repl-handler! 'julia-mode #'+julia/open-repl)
|
||||
|
||||
(when (featurep! +lsp)
|
||||
(add-hook 'julia-mode-local-vars-hook #'lsp! 'append))
|
||||
|
||||
(when (featurep! +tree-sitter)
|
||||
(add-hook 'julia-mode-local-vars-hook #'tree-sitter! 'append))
|
||||
|
||||
;; Borrow matlab.el's fontification of math operators. From
|
||||
;; <https://web.archive.org/web/20170326183805/https://ogbe.net/emacsconfig.html>
|
||||
(dolist (mode '(julia-mode ess-julia-mode))
|
||||
@ -65,10 +71,6 @@
|
||||
(term-set-escape-char ?\C-c)))
|
||||
|
||||
|
||||
(when (featurep! +lsp)
|
||||
(add-hook 'julia-mode-local-vars-hook #'lsp! 'append))
|
||||
|
||||
|
||||
(use-package! lsp-julia
|
||||
:when (featurep! +lsp)
|
||||
:unless (featurep! :tools lsp +eglot)
|
||||
@ -94,7 +96,3 @@
|
||||
;; Prevent timeout while installing LanguageServer.jl
|
||||
(setq-hook! 'julia-mode-hook eglot-connect-timeout (max eglot-connect-timeout 60))
|
||||
:config (eglot-jl-init))
|
||||
|
||||
;; Tree sitter
|
||||
(eval-when! (featurep! +tree-sitter)
|
||||
(add-hook! 'julia-mode-local-vars-hook #'tree-sitter!))
|
||||
|
@ -31,6 +31,8 @@
|
||||
|
||||
(when (featurep! +lsp)
|
||||
(add-hook 'nix-mode-local-vars-hook #'lsp! 'append))
|
||||
(when (featurep! +tree-sitter)
|
||||
(add-hook 'nix-mode-local-vars-hook #'tree-sitter! 'append))
|
||||
|
||||
(map! :localleader
|
||||
:map nix-mode-map
|
||||
@ -42,15 +44,14 @@
|
||||
"u" #'nix-unpack
|
||||
"o" #'+nix/lookup-option))
|
||||
|
||||
|
||||
(use-package! nix-drv-mode
|
||||
:mode "\\.drv\\'")
|
||||
|
||||
|
||||
(use-package! nix-update
|
||||
:commands nix-update-fetch)
|
||||
|
||||
|
||||
(use-package! nix-repl
|
||||
:commands nix-repl-show)
|
||||
|
||||
;; Tree sitter
|
||||
(eval-when! (featurep! +tree-sitter)
|
||||
(add-hook! 'nix-mode-local-vars-hook #'tree-sitter!))
|
||||
|
@ -60,6 +60,9 @@
|
||||
(setq lsp-clients-php-server-command "php-language-server.php"))
|
||||
(add-hook 'php-mode-local-vars-hook #'lsp! 'append))
|
||||
|
||||
(when (featurep! +tree-sitter)
|
||||
(add-hook 'php-mode-local-vars-hook #'tree-sitter! 'append))
|
||||
|
||||
;; Use the smallest `sp-max-pair-length' for optimum `smartparens' performance
|
||||
(setq-hook! 'php-mode-hook sp-max-pair-length 5)
|
||||
|
||||
@ -176,7 +179,3 @@
|
||||
:on-exit
|
||||
(setq phpunit-args nil
|
||||
phpunit-executable nil))
|
||||
|
||||
;; Tree sitter
|
||||
(eval-when! (featurep! +tree-sitter)
|
||||
(add-hook! 'php-mode-local-vars-hook #'tree-sitter!))
|
||||
|
@ -25,6 +25,9 @@
|
||||
;; Use "mspyls" in eglot if in PATH
|
||||
(when (executable-find "Microsoft.Python.LanguageServer")
|
||||
(set-eglot-client! 'python-mode '("Microsoft.Python.LanguageServer"))))
|
||||
|
||||
(when (featurep! +tree-sitter)
|
||||
(add-hook 'python-mode-local-vars-hook #'tree-sitter! 'append))
|
||||
:config
|
||||
(set-repl-handler! 'python-mode #'+python/open-repl
|
||||
:persist t
|
||||
@ -428,7 +431,3 @@
|
||||
(use-package! lsp-pyright
|
||||
:when (featurep! +pyright)
|
||||
:after lsp-mode))
|
||||
|
||||
;; Tree sitter
|
||||
(eval-when! (featurep! +tree-sitter)
|
||||
(add-hook! 'python-mode-local-vars-hook #'tree-sitter!))
|
||||
|
@ -21,6 +21,9 @@
|
||||
(when (featurep! +lsp)
|
||||
(add-hook 'ruby-mode-local-vars-hook #'lsp! 'append))
|
||||
|
||||
(when (featurep! +tree-sitter)
|
||||
(add-hook 'ruby-mode-local-vars-hook #'tree-sitter! 'append))
|
||||
|
||||
(after! inf-ruby
|
||||
(add-hook 'inf-ruby-mode-hook #'doom-mark-buffer-as-real-h)
|
||||
;; switch to inf-ruby from compile if we detect a breakpoint has been hit
|
||||
@ -195,7 +198,3 @@
|
||||
(map! :localleader
|
||||
:map projectile-rails-mode-map
|
||||
"r" #'projectile-rails-command-map))
|
||||
|
||||
;; Tree sitter
|
||||
(eval-when! (featurep! +tree-sitter)
|
||||
(add-hook! 'ruby-mode-local-vars-hook #'tree-sitter!))
|
||||
|
@ -48,6 +48,9 @@
|
||||
'lsp-mode))
|
||||
(add-hook 'rustic-mode-local-vars-hook #'rustic-setup-lsp 'append))
|
||||
|
||||
(when (featurep! +tree-sitter)
|
||||
(add-hook 'rustic-mode-local-vars-hook #'tree-sitter! 'append))
|
||||
|
||||
;; HACK If lsp/eglot isn't available, it attempts to install lsp-mode via
|
||||
;; package.el. Doom manages its own dependencies through straight so disable
|
||||
;; this behavior to avoid package-not-initialized errors.
|
||||
@ -81,7 +84,3 @@
|
||||
(set-lookup-handlers! 'rustic-mode
|
||||
:definition '(racer-find-definition :async t)
|
||||
:documentation '+rust-racer-lookup-documentation))
|
||||
|
||||
;; Tree sitter
|
||||
(eval-when! (featurep! +tree-sitter)
|
||||
(add-hook! 'rustic-mode-local-vars-hook #'tree-sitter!))
|
||||
|
@ -19,6 +19,9 @@
|
||||
(setq-hook! 'scala-mode-hook lsp-enable-indentation nil)
|
||||
(add-hook 'scala-mode-local-vars-hook #'lsp! 'append))
|
||||
|
||||
(when (featurep! +tree-sitter)
|
||||
(add-hook 'scala-mode-local-vars-hook #'tree-sitter! 'append))
|
||||
|
||||
(set-ligatures! 'scala-mode
|
||||
;; Functional
|
||||
:def "def"
|
||||
@ -50,7 +53,3 @@
|
||||
(use-package! sbt-mode
|
||||
:after scala-mode
|
||||
:config (set-repl-handler! 'scala-mode #'+scala/open-repl :persist t))
|
||||
|
||||
;; Tree sitter
|
||||
(eval-when! (featurep! +tree-sitter)
|
||||
(add-hook! 'scala-mode-local-vars-hook #'tree-sitter!))
|
||||
|
@ -40,6 +40,9 @@
|
||||
(when (featurep! +lsp)
|
||||
(add-hook 'sh-mode-local-vars-hook #'lsp! 'append))
|
||||
|
||||
(when (featurep! +tree-sitter)
|
||||
(add-hook 'sh-mode-local-vars-hook #'tree-sitter! 'append))
|
||||
|
||||
(setq sh-indent-after-continuation 'always)
|
||||
|
||||
;; [pedantry intensifies]
|
||||
@ -93,7 +96,3 @@
|
||||
:config
|
||||
(when (featurep! +lsp)
|
||||
(add-hook 'powershell-mode-local-vars-hook #'lsp! 'append)))
|
||||
|
||||
;; Tree sitter
|
||||
(eval-when! (featurep! +tree-sitter)
|
||||
(add-hook! 'sh-mode-local-vars-hook #'tree-sitter!))
|
||||
|
@ -1,7 +1,10 @@
|
||||
;;; lang/swift/config.el -*- lexical-binding: t; -*-
|
||||
|
||||
(after! swift-mode
|
||||
(set-repl-handler! 'swift-mode #'run-swift))
|
||||
(set-repl-handler! 'swift-mode #'run-swift)
|
||||
|
||||
(when (featurep! +tree-sitter)
|
||||
(add-hook 'swift-mode-local-vars-hook #'tree-sitter! 'append)))
|
||||
|
||||
|
||||
(use-package! flycheck-swift
|
||||
@ -31,7 +34,3 @@
|
||||
"sourcekit"
|
||||
"/Library/Developer/Toolchains/swift-latest.xctoolchain/usr/bin/sourcekit-lsp"
|
||||
"/Library/Developer/Toolchains/swift-latest.xctoolchain/usr/bin/sourcekit"))))
|
||||
|
||||
;; Tree sitter
|
||||
(eval-when! (featurep! +tree-sitter)
|
||||
(add-hook! 'swift-mode-local-vars-hook #'tree-sitter!))
|
||||
|
@ -77,3 +77,6 @@ If set to `nil', disable all the above behaviors.")
|
||||
sass-mode-local-vars-hook
|
||||
less-css-mode-local-vars-hook)
|
||||
#'lsp!))
|
||||
|
||||
(when (featurep! +tree-sitter)
|
||||
(add-hook 'css-mode-local-vars-hook #'tree-sitter! 'append))
|
||||
|
@ -168,3 +168,8 @@
|
||||
web-mode-local-vars-hook
|
||||
nxml-mode-local-vars-hook)
|
||||
#'lsp!))
|
||||
|
||||
(when (featurep! +tree-sitter)
|
||||
(add-hook! '(html-mode-local-vars-hook
|
||||
mhtml-mode-local-vars-hook)
|
||||
:append #'tree-sitter!))
|
||||
|
@ -55,10 +55,3 @@
|
||||
(def-project-mode! +web-phaser-mode
|
||||
:modes '(+javascript-npm-mode)
|
||||
:when (+javascript-npm-dep-p '(or phaser phaser-ce))))
|
||||
|
||||
;; Tree sitter
|
||||
(eval-when! (featurep! +tree-sitter)
|
||||
(add-hook! '(html-mode-local-vars-hook
|
||||
mhtml-mode-local-vars-hook
|
||||
css-mode-local-vars-hook)
|
||||
#'tree-sitter!))
|
||||
|
@ -15,6 +15,9 @@
|
||||
(when (featurep! +lsp)
|
||||
(add-hook 'zig-mode-local-vars-hook #'lsp! 'append))
|
||||
|
||||
(when (featurep! +tree-sitter)
|
||||
(add-hook 'zig-mode-local-vars-hook #'tree-sitter! 'append))
|
||||
|
||||
(when (featurep! :checkers syntax)
|
||||
(flycheck-define-checker zig
|
||||
"A zig syntax checker using zig's `ast-check` command."
|
||||
@ -30,6 +33,3 @@
|
||||
"f" #'zig-format-buffer
|
||||
"r" #'zig-run
|
||||
"t" #'zig-test-buffer))
|
||||
|
||||
(eval-when! (featurep! +tree-sitter)
|
||||
(add-hook! 'zig-mode-local-vars-hook #'tree-sitter!))
|
||||
|
Reference in New Issue
Block a user