[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
feature/eglot2emacs 5c6eb3caa9 074/120: Don't ignore flymake-no-changes-
From: |
João Távora |
Subject: |
feature/eglot2emacs 5c6eb3caa9 074/120: Don't ignore flymake-no-changes-timeout |
Date: |
Thu, 20 Oct 2022 07:16:58 -0400 (EDT) |
branch: feature/eglot2emacs
commit 5c6eb3caa903ad1479b3e901cee4b845bada1f1e
Author: João Távora <joaotavora@gmail.com>
Commit: João Távora <joaotavora@gmail.com>
Don't ignore flymake-no-changes-timeout
Also per https://github.com/joaotavora/eglot/issues/957.
Only actually and eagerly report LSP diagnotics if the user has
Flymake starting automatically on a timer (flymake-no-changes-timeout
is a number).
By contrast, if flymake-no-changes-timeout is nil, the user starts the
diagnostic collection process on-demand via 'M-x flymake-start'.
Since the control of such collection is impossible with LSP, we should
just hold on to whatever diagnostics we have (which are presumably
up-to-date) until the next invocation of 'eglot-flymake-backend'.
For now, this doesn't affect Flymake "list-only" diagnostics. Those
are reported via the 'flymake-list-only-diagonstics' variable and
are always communicated immediately to it.
* eglot.el: (eglot-handle-notification
textDocument/publishDiagnostics): Consult flymake-no-changes-timeout.
Suggested-by: Jim Davis <jim.jd.davis@gmail.com>
GitHub-reference: fix https://github.com/joaotavora/eglot/issues/508
---
lisp/progmodes/eglot.el | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/lisp/progmodes/eglot.el b/lisp/progmodes/eglot.el
index e8f060cd64..4e28de1875 100644
--- a/lisp/progmodes/eglot.el
+++ b/lisp/progmodes/eglot.el
@@ -1996,7 +1996,11 @@ COMMAND is a symbol naming the command."
collect it)))
`((face . ,faces))))))
into diags
- finally (cond (eglot--current-flymake-report-fn
+ finally (cond ((and
+ ;; only add to current report if Flymake
+ ;; starts on idle-timer (github#958)
+ (not (null flymake-no-changes-timeout))
+ eglot--current-flymake-report-fn)
(eglot--report-to-flymake diags))
(t
(setq eglot--diagnostics diags)))))
- feature/eglot2emacs eacc40e3bf 015/120: ; update copyright years, (continued)
- feature/eglot2emacs eacc40e3bf 015/120: ; update copyright years, João Távora, 2022/10/20
- feature/eglot2emacs 1616da4f26 030/120: * eglot.el (eglot-strict-mode): very minor docfix., João Távora, 2022/10/20
- feature/eglot2emacs 6a6f4c3d27 041/120: Don't use :exclusive no, João Távora, 2022/10/20
- feature/eglot2emacs 26bd153b90 028/120: Print server command to events buffer, João Távora, 2022/10/20
- feature/eglot2emacs abfb193201 032/120: Remove unnecessary compatibility code, João Távora, 2022/10/20
- feature/eglot2emacs 85ecf46a18 046/120: Have a couple of lsp faces inherit from basic "shadow", João Távora, 2022/10/20
- feature/eglot2emacs 6d815aaa98 057/120: Tweak on-type-formatting code, João Távora, 2022/10/20
- feature/eglot2emacs b59fa2548e 083/120: Cosmetic decisions guaranteed to tick off someone somewhere (tm), João Távora, 2022/10/20
- feature/eglot2emacs 6717589c57 086/120: Be more conservative with the lsp identifier guess, João Távora, 2022/10/20
- feature/eglot2emacs 3967d22b9c 005/120: ; fix typos, João Távora, 2022/10/20
- feature/eglot2emacs 5c6eb3caa9 074/120: Don't ignore flymake-no-changes-timeout,
João Távora <=
- feature/eglot2emacs 6ee995fe6b 094/120: Add marksman server for markdown, João Távora, 2022/10/20
- feature/eglot2emacs 0e8a8697ba 092/120: Merge commit '7738854e09' to fix fallout of force-push in gnu elpa, João Távora, 2022/10/20
- feature/eglot2emacs 51ae66b50c 099/120: Add eglot-show-configuration to debug workspace configurations, João Távora, 2022/10/20
- feature/eglot2emacs 14586fedcf 103/120: Don't exceed max-specdl-size in big go projects, João Távora, 2022/10/20
- feature/eglot2emacs a8b3b6a526 014/120: Add vim-language-server for vimrc-mode, João Távora, 2022/10/20
- feature/eglot2emacs b1c7aa1d17 003/120: Add yaml-language-server for yaml-mode, João Távora, 2022/10/20
- feature/eglot2emacs 51fc8fc3d2 002/120: Use `locate-user-emacs-file` instead of `concat`, João Távora, 2022/10/20
- feature/eglot2emacs 06f1cd6365 008/120: Add lua-lsp support for lua-mode, João Távora, 2022/10/20
- feature/eglot2emacs 7c712abf8f 009/120: Minor checkdoc fixes, João Távora, 2022/10/20
- feature/eglot2emacs 8a9959e054 039/120: Add clojure-lsp support for clojure, João Távora, 2022/10/20