From fe116a69a79653041817c7de9306bbc5040c9652 Mon Sep 17 00:00:00 2001 From: Jim Porter Date: Sat, 17 Aug 2024 13:21:00 -0700 Subject: [PATCH] Be more careful about aligning prefix lines in 'visual-wrap-prefix-mode' * lisp/visual-wrap.el (visual-wrap--apply-to-line): Ensure we don't apply the 'min-width' property across multiple lines (bug#72681). --- lisp/visual-wrap.el | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/lisp/visual-wrap.el b/lisp/visual-wrap.el index cac3bc767b8..eb5daa89222 100644 --- a/lisp/visual-wrap.el +++ b/lisp/visual-wrap.el @@ -121,9 +121,15 @@ visual-wrap--apply-to-line (next-line-prefix (visual-wrap--content-prefix first-line-prefix position))) (when (numberp next-line-prefix) + ;; Set a minimum width for the prefix so it lines up correctly + ;; with subsequent lines. Make sure not to do this past the end + ;; of the line though! (`fill-match-adaptive-prefix' could + ;; potentially return a number larger the length of the current + ;; line in the buffer.) (put-text-property - position (+ position (length first-line-prefix)) 'display - `(min-width ((,next-line-prefix . width))))) + position (min (+ position (length first-line-prefix)) + (line-end-position)) + 'display `(min-width ((,next-line-prefix . width))))) (setq next-line-prefix (visual-wrap--adjust-prefix next-line-prefix)) (put-text-property position (line-end-position) 'wrap-prefix -- 2.25.1