]> git.eshelyaron.com Git - emacs.git/commitdiff
Turn on Eglot inlay hints by default
authorJoão Távora <joaotavora@gmail.com>
Sat, 4 Mar 2023 15:05:15 +0000 (15:05 +0000)
committerJoão Távora <joaotavora@gmail.com>
Sat, 4 Mar 2023 19:15:48 +0000 (19:15 +0000)
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.

lisp/progmodes/eglot.el

index 1f213d4e254b9b380289f7a115047ccf4b286cb3..2491c86ea5b9474f4af2f057ac0ed583729d23c9 100644 (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))))