Add +lsp-prompt-to-install-server option
If nil, LSP will quietly fail if no LSP server is available instead of pestering the user to install a server.
This commit is contained in:
parent
d0b6cef8a5
commit
95a603733a
1 changed files with 15 additions and 1 deletions
|
@ -4,6 +4,9 @@
|
||||||
"The backends to prepend to `company-backends' in `lsp-mode' buffers.
|
"The backends to prepend to `company-backends' in `lsp-mode' buffers.
|
||||||
Can be a list of backends; accepts any value `company-backends' accepts.")
|
Can be a list of backends; accepts any value `company-backends' accepts.")
|
||||||
|
|
||||||
|
(defvar +lsp-prompt-to-install-server t
|
||||||
|
"If non-nil, prompt to install a server if no server is present.")
|
||||||
|
|
||||||
|
|
||||||
;;
|
;;
|
||||||
;;; Packages
|
;;; Packages
|
||||||
|
@ -108,7 +111,18 @@ server getting expensively restarted when reverting buffers."
|
||||||
(let ((lsp-restart 'ignore))
|
(let ((lsp-restart 'ignore))
|
||||||
(funcall orig-fn))
|
(funcall orig-fn))
|
||||||
(+lsp-optimization-mode -1))))
|
(+lsp-optimization-mode -1))))
|
||||||
lsp--cur-workspace)))))
|
lsp--cur-workspace))))
|
||||||
|
|
||||||
|
(defadvice! +lsp-dont-prompt-to-install-servers-maybe-a (orig-fn &rest args)
|
||||||
|
:around #'lsp
|
||||||
|
(lsp--require-packages)
|
||||||
|
(when (buffer-file-name)
|
||||||
|
(if (or (lsp--filter-clients
|
||||||
|
(-andfn #'lsp--matching-clients?
|
||||||
|
#'lsp--server-binary-present?))
|
||||||
|
+lsp-prompt-to-install-server)
|
||||||
|
(apply orig-fn args)
|
||||||
|
(lsp--info "No language server available for %S" major-mode)))))
|
||||||
|
|
||||||
|
|
||||||
(use-package! lsp-ui
|
(use-package! lsp-ui
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue