tweak(:lang,:tools): start eglot/lsp-mode later

To ensure lsp/eglot settings have precedence over local servers (e.g.
cider and lookup handlers).

Ref: clojure-emacs/cider#3170
This commit is contained in:
Henrik Lissner 2022-03-24 02:19:52 +01:00
parent dcae7187b4
commit d58d084774
No known key found for this signature in database
GPG key ID: B60957CA074D39A3
30 changed files with 34 additions and 33 deletions

View file

@ -15,7 +15,7 @@
(setq beancount-electric-currency t)
(when (featurep! +lsp)
(add-hook 'beancount-mode-local-vars-hook #'lsp!))
(add-hook 'beancount-mode-local-vars-hook #'lsp! 'append))
(map! :map beancount-mode-map
"TAB" (cmds! (and outline-minor-mode (outline-on-heading-p))

View file

@ -5,7 +5,7 @@
:definition #'crystal-def-jump
:references #'crystal-tool-imp)
(when (featurep! +lsp)
(add-hook 'crystal-mode-local-vars-hook #'lsp!))
(add-hook 'crystal-mode-local-vars-hook #'lsp! 'append))
(map! :localleader
:map crystal-mode-map
:prefix "t"

View file

@ -33,7 +33,7 @@
:post-handlers '(("| " "SPC")))
(when (featurep! +lsp)
(add-hook 'csharp-mode-local-vars-hook #'lsp!))
(add-hook 'csharp-mode-local-vars-hook #'lsp! 'append))
(defadvice! +csharp-disable-clear-string-fences-a (fn &rest args)
"This turns off `c-clear-string-fences' for `csharp-mode'. When

View file

@ -1,9 +1,10 @@
;;; lang/dart/config.el -*- lexical-binding: t; -*-
(use-package! dart-mode
:when (featurep! +lsp)
:hook (dart-mode-local-vars . lsp!)
:defer t
:config
(when (featurep! +lsp)
(add-hook 'dart-mode-local-vars-hook #'lsp! 'append))
(set-ligatures! '(dart-mode)
;; Functional
:def "Function"

View file

@ -37,7 +37,7 @@
(sp-local-pair "fn " " end" :unless '(sp-in-comment-p sp-in-string-p)))
(when (featurep! +lsp)
(add-hook 'elixir-mode-local-vars-hook #'lsp!)
(add-hook 'elixir-mode-local-vars-hook #'lsp! 'append)
(after! lsp-mode
(add-to-list 'lsp-file-watch-ignored-directories "[/\\\\]_build\\'")))

View file

@ -2,7 +2,7 @@
(after! elm-mode
(if (featurep! +lsp)
(add-hook 'elm-mode-local-vars-hook #'lsp!)
(add-hook 'elm-mode-local-vars-hook #'lsp! 'append)
(set-company-backend! 'elm-mode 'company-elm))
(set-repl-handler! 'elm-mode #'run-elm-interactive)

View file

@ -6,4 +6,4 @@
:mode ("/\\(?:app\\|sys\\)\\.config\\'" . erlang-mode)
:config
(when (featurep! +lsp)
(add-hook 'erlang-mode-local-vars-hook #'lsp!)))
(add-hook 'erlang-mode-local-vars-hook #'lsp! 'append)))

View file

@ -21,7 +21,7 @@
(set-docsets! 'ess-r-mode "R")
(when (featurep! +lsp)
(add-hook 'ess-r-mode-local-vars-hook #'lsp!))
(add-hook 'ess-r-mode-local-vars-hook #'lsp! 'append))
(set-repl-handler! 'ess-r-mode #'+ess/open-r-repl)
(set-repl-handler! 'ess-julia-mode #'+ess/open-julia-repl)

View file

@ -16,7 +16,7 @@
;; --- LSP Configuration --- ;;
(when (featurep! +lsp)
(setq lsp-clients-fortls-args '("--enable_code_actions" "--hover_signature"))
(add-hook 'f90-mode-local-vars-hook #'lsp!))
(add-hook 'f90-mode-local-vars-hook #'lsp! 'append))
;; --- Keybindings --- ;;
(map! :map f90-mode-map
@ -57,7 +57,7 @@
;; Strangely, the built-in flycheck support seems to give better hints than the LSP.
;; (when (featurep! +lsp)
;; (setq lsp-clients-fortls-args '("--enable_code_actions" "--hover_signature"))
;; (add-hook 'fortran-mode-local-vars-hook #'lsp!)))
;; (add-hook 'fortran-mode-local-vars-hook #'lsp! 'append)))
;; --- Keybindings --- ;;
(map! :map fortran-mode-map

View file

@ -6,7 +6,7 @@
(if (featurep! +lsp)
(progn
(setq fsharp-ac-intellisense-enabled nil)
(add-hook 'fsharp-mode-local-vars-hook #'lsp!))
(add-hook 'fsharp-mode-local-vars-hook #'lsp! 'append))
(setq fsharp-ac-use-popup nil) ; Use a buffer for docs rather than a pop-up
(set-lookup-handlers! 'fsharp-mode :async t :definition #'fsharp-ac/gotodefn-at-point)
(set-company-backend! 'fsharp-mode 'fsharp-ac/company-backend))

View file

@ -14,7 +14,7 @@
:documentation #'gdscript-docs-browse-symbol-at-point)
(when (featurep! +lsp)
(add-hook 'gdscript-mode-local-vars-hook #'lsp!))
(add-hook 'gdscript-mode-local-vars-hook #'lsp! 'append))
(map! :localleader
:map gdscript-mode-map

View file

@ -20,7 +20,7 @@
"goimports"))))
(if (featurep! +lsp)
(add-hook 'go-mode-local-vars-hook #'lsp!)
(add-hook 'go-mode-local-vars-hook #'lsp! 'append)
(add-hook 'go-mode-hook #'go-eldoc-setup))
(map! :map go-mode-map

View file

@ -46,7 +46,7 @@
(use-package! lsp-haskell
:when (featurep! +lsp)
:after lsp-mode
:preface (add-hook 'haskell-mode-local-vars-hook #'lsp!)
:preface (add-hook 'haskell-mode-local-vars-hook #'lsp! 'append)
:config
;; Does some strange indentation if it pastes in the snippet
(setq-hook! 'haskell-mode-hook yas-indent-line 'fixed))

View file

@ -5,7 +5,7 @@
:after lsp-mode
:preface
(setq lsp-java-workspace-dir (concat doom-etc-dir "java-workspace"))
(add-hook 'java-mode-local-vars-hook #'lsp!)
(add-hook 'java-mode-local-vars-hook #'lsp! 'append)
:config
(when (featurep! :tools debugger +lsp)
(setq lsp-jt-root (concat lsp-java-server-install-dir "java-test/server/")

View file

@ -4,7 +4,7 @@
:mode "\\.js\\(?:on\\|[hl]int\\(?:rc\\)?\\)\\'"
:init
(when (featurep! +lsp)
(add-hook 'json-mode-local-vars-hook #'lsp!))
(add-hook 'json-mode-local-vars-hook #'lsp! 'append))
:config
(set-electric! 'json-mode :chars '(?\n ?: ?{ ?}))

View file

@ -66,7 +66,7 @@
(when (featurep! +lsp)
(add-hook 'julia-mode-local-vars-hook #'lsp!))
(add-hook 'julia-mode-local-vars-hook #'lsp! 'append))
(use-package! lsp-julia

View file

@ -2,7 +2,7 @@
(after! kotlin-mode
(when (featurep! +lsp)
(add-hook 'kotlin-mode-local-vars-hook #'lsp!))
(add-hook 'kotlin-mode-local-vars-hook #'lsp! 'append))
(set-docsets! 'kotlin-mode "Kotlin")
(set-repl-handler! 'kotlin-mode #'kotlin-repl)

View file

@ -19,7 +19,7 @@
(set-company-backend! 'lua-mode '(company-lua company-yasnippet))
(when (featurep! +lsp)
(add-hook 'lua-mode-local-vars-hook #'lsp!)
(add-hook 'lua-mode-local-vars-hook #'lsp! 'append)
(when (featurep! :tools lsp +eglot)
(defvar +lua-lsp-dir (concat doom-etc-dir "lsp/lua-language-server/")

View file

@ -58,7 +58,7 @@
'company-dabbrev-code))
(when (executable-find "php-language-server.php")
(setq lsp-clients-php-server-command "php-language-server.php"))
(add-hook 'php-mode-local-vars-hook #'lsp!))
(add-hook 'php-mode-local-vars-hook #'lsp! 'append))
;; Use the smallest `sp-max-pair-length' for optimum `smartparens' performance
(setq-hook! 'php-mode-hook sp-max-pair-length 5)

View file

@ -2,7 +2,7 @@
(after! purescript-mode
(when (featurep! +lsp)
(add-hook 'purescript-mode-local-vars-hook #'lsp!))
(add-hook 'purescript-mode-local-vars-hook #'lsp! 'append))
(add-hook! 'purescript-mode-hook
#'purescript-indentation-mode

View file

@ -21,7 +21,7 @@
python-indent-guess-indent-offset-verbose nil)
(when (featurep! +lsp)
(add-hook 'python-mode-local-vars-hook #'lsp!)
(add-hook 'python-mode-local-vars-hook #'lsp! 'append)
;; Use "mspyls" in eglot if in PATH
(when (executable-find "Microsoft.Python.LanguageServer")
(set-eglot-client! 'python-mode '("Microsoft.Python.LanguageServer"))))

View file

@ -27,7 +27,7 @@
#'highlight-quoted-mode)
(when (featurep! +lsp)
(add-hook 'racket-mode-local-vars-hook #'lsp!))
(add-hook 'racket-mode-local-vars-hook #'lsp! 'append))
(when (featurep! +xp)
(add-hook 'racket-mode-local-vars-hook #'racket-xp-mode)

View file

@ -19,7 +19,7 @@
(set-repl-handler! 'ruby-mode #'inf-ruby)
(when (featurep! +lsp)
(add-hook 'ruby-mode-local-vars-hook #'lsp!))
(add-hook 'ruby-mode-local-vars-hook #'lsp! 'append))
(after! inf-ruby
(add-hook 'inf-ruby-mode-hook #'doom-mark-buffer-as-real-h)

View file

@ -17,7 +17,7 @@
(when (featurep! +lsp)
(setq-hook! 'scala-mode-hook lsp-enable-indentation nil)
(add-hook 'scala-mode-local-vars-hook #'lsp!))
(add-hook 'scala-mode-local-vars-hook #'lsp! 'append))
(set-ligatures! 'scala-mode
;; Functional

View file

@ -38,7 +38,7 @@
:dot "." :dot "source")
(when (featurep! +lsp)
(add-hook 'sh-mode-local-vars-hook #'lsp!))
(add-hook 'sh-mode-local-vars-hook #'lsp! 'append))
(setq sh-indent-after-continuation 'always)
@ -92,4 +92,4 @@
:defer t
:config
(when (featurep! +lsp)
(add-hook 'powershell-mode-local-vars-hook #'lsp!)))
(add-hook 'powershell-mode-local-vars-hook #'lsp! 'append)))

View file

@ -22,7 +22,7 @@
(use-package! lsp-sourcekit
:when (featurep! +lsp)
:after swift-mode
:init (add-hook 'swift-mode-local-vars-hook #'lsp!)
:init (add-hook 'swift-mode-local-vars-hook #'lsp! 'append)
:config
(setq lsp-sourcekit-executable
(cl-find-if #'executable-find

View file

@ -4,6 +4,6 @@
:mode "Procfile\\'"
:init
(when (featurep! +lsp)
(add-hook 'yaml-mode-local-vars-hook #'lsp!))
(add-hook 'yaml-mode-local-vars-hook #'lsp! 'append))
:config
(setq-hook! 'yaml-mode-hook tab-width yaml-indent-offset))

View file

@ -13,7 +13,7 @@
(setq zig-format-on-save nil) ; rely on :editor format instead
(when (featurep! +lsp)
(add-hook 'zig-mode-local-vars-hook #'lsp!))
(add-hook 'zig-mode-local-vars-hook #'lsp! 'append))
(when (featurep! :checkers syntax)
(flycheck-define-checker zig

View file

@ -4,4 +4,4 @@
(set-docsets! 'dockerfile-mode "Docker")
(when (featurep! +lsp)
(add-hook 'dockerfile-mode-local-vars-hook #'lsp!)))
(add-hook 'dockerfile-mode-local-vars-hook #'lsp! 'append)))

View file

@ -1,7 +1,7 @@
;;; tools/terraform/config.el -*- lexical-binding: t; -*-
(when (featurep! +lsp)
(add-hook 'terraform-mode-local-vars-hook #'lsp!))
(add-hook 'terraform-mode-local-vars-hook #'lsp! 'append))
(after! terraform-mode