Improve how change-log-mode fills all-file-name lines

* lisp/vc/add-log.el (change-log-fill-file-list): New function to
improve how we fill all-file-name ChangeLog lines (bug#19341).
(change-log-indent): Use it.
This commit is contained in:
Lars Ingebrigtsen 2022-01-25 14:55:26 +01:00
parent 2362eb0980
commit fb16a6c124

View file

@ -1068,8 +1068,23 @@ the change log file in another window."
(insert-before-markers "("))
(error nil)))))
;; If we're filling a line that has a whole bunch of file names, and
;; we're still in the file names, then transform this so that it'll
;; still font-lock properly.
(defun change-log-fill-file-list ()
(save-excursion
(unless (bobp)
(forward-line -1)
(when (looking-at change-log-file-names-re)
(goto-char (match-end 0))
(while (looking-at "\\=, \\([^ ,:([\n]+\\)")
(goto-char (match-end 0)))
(when (looking-at ", *\n")
(replace-match ":\n *" t t))))))
(defun change-log-indent ()
(change-log-fill-parenthesized-list)
(change-log-fill-file-list)
(let* ((indent
(save-excursion
(beginning-of-line)