Merge from origin/emacs-29

3d930b928f Eglot: fix relative position of coinciding inlay hint ove...
aad7d68164 ; * doc/lispref/display.texi (Display Tables): Remove ext...
This commit is contained in:
Michael Albinus
2023-06-22 10:50:46 +02:00
2 changed files with 7 additions and 5 deletions

View File

@@ -8527,7 +8527,7 @@ the effect of setting @code{ctl-arrow} to a non-@code{nil} value
(make-glyph-code (+ i 64) 'escape-glyph)))))
(aset disptab 127
(vector (make-glyph-code ?^ 'escape-glyph)
(make-glyph-code ?? 'escape-glyph)))))
(make-glyph-code ?? 'escape-glyph)))
@end example
@defun display-table-slot display-table slot

View File

@@ -3769,8 +3769,9 @@ If NOERROR, return predicate, else erroring function."
(if peg-after-p
(make-overlay (point) (1+ (point)) nil t)
(make-overlay (1- (point)) (point) nil nil nil)))
(do-it (label lpad rpad firstp)
(let* ((tweak-cursor-p (and firstp peg-after-p))
(do-it (label lpad rpad i)
(let* ((firstp (zerop i))
(tweak-cursor-p (and firstp peg-after-p))
(ov (make-ov))
(text (concat lpad label rpad)))
(when tweak-cursor-p (put-text-property 0 1 'cursor 1 text))
@@ -3781,17 +3782,18 @@ If NOERROR, return predicate, else erroring function."
(1 'eglot-type-hint-face)
(2 'eglot-parameter-hint-face)
(_ 'eglot-inlay-hint-face))))
(overlay-put ov 'priority i)
(overlay-put ov 'eglot--inlay-hint t)
(overlay-put ov 'evaporate t)
(overlay-put ov 'eglot--overlay t))))
(if (stringp label) (do-it label left-pad right-pad t)
(if (stringp label) (do-it label left-pad right-pad 0)
(cl-loop
for i from 0 for ldetail across label
do (eglot--dbind ((InlayHintLabelPart) value) ldetail
(do-it value
(and (zerop i) left-pad)
(and (= i (1- (length label))) right-pad)
(zerop i))))))))))
i)))))))))
(jsonrpc-async-request
(eglot--current-server-or-lose)
:textDocument/inlayHint