[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
master fe8af4eb30b 6/7: Eglot: don't send invisible text to Eldoc
From: |
João Távora |
Subject: |
master fe8af4eb30b 6/7: Eglot: don't send invisible text to Eldoc |
Date: |
Thu, 23 Mar 2023 17:17:42 -0400 (EDT) |
branch: master
commit fe8af4eb30b81d34bea3f3d982a9167acc8e19e1
Author: João Távora <joaotavora@gmail.com>
Commit: João Távora <joaotavora@gmail.com>
Eglot: don't send invisible text to Eldoc
Eglot's rendering of Markdown is imperfect and based on gfm-view-mode.
To make it slightly better, don't send invisible text in
eglot-hover-eldoc-function.
* lisp/progmodes/eglot.el (eglot--format-markup): Hide invisible text.
---
lisp/progmodes/eglot.el | 13 +++++++++----
1 file changed, 9 insertions(+), 4 deletions(-)
diff --git a/lisp/progmodes/eglot.el b/lisp/progmodes/eglot.el
index 919f44a2d9a..fae1c8db8b7 100644
--- a/lisp/progmodes/eglot.el
+++ b/lisp/progmodes/eglot.el
@@ -1653,10 +1653,15 @@ Doubles as an indicator of snippet support."
(setq-local markdown-fontify-code-blocks-natively t)
(insert string)
(let ((inhibit-message t)
- (message-log-max nil))
- (ignore-errors (delay-mode-hooks (funcall mode))))
- (font-lock-ensure)
- (string-trim (buffer-string)))))
+ (message-log-max nil)
+ match)
+ (ignore-errors (delay-mode-hooks (funcall mode)))
+ (font-lock-ensure)
+ (goto-char (point-min))
+ (while (setq match (text-property-search-forward 'invisible))
+ (delete-region (prop-match-beginning match)
+ (prop-match-end match)))
+ (string-trim (buffer-string))))))
(define-obsolete-variable-alias 'eglot-ignored-server-capabilites
'eglot-ignored-server-capabilities "1.8")
- master updated (b19d040a4fe -> 4566a0c6b82), João Távora, 2023/03/23
- master 9b18407c7fd 3/7: ElDoc: remember origin backend in doc snippets (bug#62029), João Távora, 2023/03/23
- master e19994fe8c0 4/7: ElDoc: rework rendering of echo area (bug#62029), João Távora, 2023/03/23
- master 0effdb29d6d 2/7: Eglot: rework progress indicators, João Távora, 2023/03/23
- master f20fe3e11a9 1/7: Eglot: more leniently handle 'window/showMessageRequest', João Távora, 2023/03/23
- master 67c1e6e89ce 5/7: Eglot: inform ElDoc about overly long 'hover' docs, João Távora, 2023/03/23
- master fe8af4eb30b 6/7: Eglot: don't send invisible text to Eldoc,
João Távora <=
- master 4566a0c6b82 7/7: Eglot: let user opt-in to plaintext LSP docs (bug#61373), João Távora, 2023/03/23