From 96d5d6a7454f4e35860dc3d93cb3a447263859d7 Mon Sep 17 00:00:00 2001 From: Craig Jennings Date: Mon, 11 May 2026 17:17:53 -0500 Subject: refactor(prog-lsp): replace obsolete lsp-eldoc-hook lsp-mode 9.0.0 made `lsp-eldoc-hook' an obsolete alias for Emacs's `eldoc-documentation-functions', and `lsp-managed-mode' already adds `lsp-eldoc-function' to that buffer-local hook. Dropped the obsolete `(setq lsp-eldoc-hook nil)'. `cj/lsp--disable-eldoc-hover' now removes `lsp-eldoc-function' from the buffer-local `eldoc-documentation-functions' via `lsp-managed-mode-hook', which clears the obsolete-variable byte-compile warning. Tests cover the hook removal, leaving the default `eldoc-documentation-functions' value alone, and the module no longer naming `lsp-eldoc-hook'. --- modules/prog-lsp.el | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'modules/prog-lsp.el') diff --git a/modules/prog-lsp.el b/modules/prog-lsp.el index a6037db8..8e889678 100644 --- a/modules/prog-lsp.el +++ b/modules/prog-lsp.el @@ -10,9 +10,12 @@ ;; Forward declarations for byte-compile and let-binding under lexical scope. ;; Real definitions are lsp-mode's defcustoms. +(defvar eldoc-documentation-functions) (defvar lsp-file-watch-ignored-directories) (defvar lsp-enable-remote) +(declare-function lsp-eldoc-function "lsp-mode") + ;;;;; --------------------- File-Watch Ignore Patterns --------------------- ;; lsp-mode prompts when a workspace exceeds `lsp-file-watch-threshold' (1000) ;; directories. Real source repos cross that line easily once node_modules, @@ -45,6 +48,10 @@ Idempotent — `add-to-list' skips patterns already present." (dolist (pattern cj/lsp-file-watch-ignored-extras) (add-to-list 'lsp-file-watch-ignored-directories pattern))) +(defun cj/lsp--disable-eldoc-hover () + "Remove lsp-mode's Eldoc hover provider in the current buffer." + (remove-hook 'eldoc-documentation-functions #'lsp-eldoc-function t)) + ;;;;; ---------------------------- LSP Mode --------------------------- (use-package lsp-mode @@ -65,7 +72,7 @@ Idempotent — `add-to-list' skips patterns already present." (setq lsp-enable-on-type-formatting nil) (setq lsp-signature-auto-activate nil) (setq lsp-signature-render-documentation nil) - (setq lsp-eldoc-hook nil) + (add-hook 'lsp-managed-mode-hook #'cj/lsp--disable-eldoc-hover) (setq lsp-modeline-code-actions-enable nil) (setq lsp-modeline-diagnostics-enable nil) (setq lsp-headerline-breadcrumb-enable nil) -- cgit v1.2.3