Turn on Eglot inlay hints by default

This is like any other server-provided feature, and may be turned off
client-side by setting eglot-ignored-server-capabilities like

   (add-to-list 'eglot-ignored-server-capabilities :inlayHintProvider)

* lisp/progmodes/eglot.el (eglot--maybe-activate-editing-mode):
Activate eglot-inlay-hints-mode.
(eglot-inlay-hints-mode): Instead of warning about missing
:inlayHintProvider, turn off eglot-inlay-hints-mode.
This commit is contained in:
João Távora 2023-03-04 15:05:15 +00:00
parent 246f5b541c
commit 6c66dbd02c

View file

@ -1923,6 +1923,7 @@ If it is activated, also signal textDocument/didOpen."
(eglot--signal-textDocument/didOpen)
;; Run user hook after 'textDocument/didOpen' so server knows
;; about the buffer.
(eglot-inlay-hints-mode 1)
(run-hooks 'eglot-managed-mode-hook))))
(add-hook 'after-change-major-mode-hook 'eglot--maybe-activate-editing-mode)
@ -3646,8 +3647,7 @@ If NOERROR, return predicate, else erroring function."
(cond (eglot-inlay-hints-mode
(if (eglot--server-capable :inlayHintProvider)
(jit-lock-register #'eglot--update-hints 'contextual)
(eglot--warn
"No :inlayHintProvider support. Inlay hints will not work.")))
(eglot-inlay-hints-mode -1)))
(t
(jit-lock-unregister #'eglot--update-hints)
(remove-overlays nil nil 'eglot--inlay-hint t))))