change implementation of creature/eglot-hover-eldoc-function

This commit is contained in:
zedhugh committed 2025-02-12 15:55:59 +08:00
1 parent 51586fbd77
commit f5bc2b137d
1 file changed
+12 -17
+12 -17
View File
@@ -11,23 +11,18 @@
(defun creature/eglot-hover-eldoc-function (cb) (defun creature/eglot-hover-eldoc-function (cb)
"Multiple line version of `eglot-hover-eldoc-function'." "Multiple line version of `eglot-hover-eldoc-function'."
(let ((eglot-server-capable-fn (when (eglot-server-capable :hoverProvider)
(if (fboundp 'eglot-server-capable) (let ((buf (current-buffer)))
'eglot-server-capable (jsonrpc-async-request
'eglot--server-capable))) (eglot--current-server-or-lose)
(when (funcall eglot-server-capable-fn :hoverProvider) :textDocument/hover (eglot--TextDocumentPositionParams)
(let ((buf (current-buffer))) :success-fn (eglot--lambda ((Hover) contents range)
(jsonrpc-async-request (eglot--when-buffer-window buf
(eglot--current-server-or-lose) (let ((info (unless (seq-empty-p contents)
:textDocument/hover (eglot--TextDocumentPositionParams) (eglot--hover-info contents range))))
:success-fn (eglot--lambda ((Hover) contents range) (funcall cb info :buffer t))))
(eglot--when-buffer-window buf :deferred :textDocument/hover))
(let ((info (unless (seq-empty-p contents) t))
(eglot--hover-info contents range))))
(funcall cb info :buffer t))))
:deferred :textDocument/hover))
(eglot--highlight-piggyback cb)
t)))
(defun creature/eglot-format () (defun creature/eglot-format ()
(interactive) (interactive)