Function: log-edit-insert-changelog-entries
log-edit-insert-changelog-entries is a byte-compiled function defined
in log-edit.el.gz.
Signature
(log-edit-insert-changelog-entries FILES)
Documentation
Given a list of files FILES, insert the ChangeLog entries for them.
Source Code
;; Defined in /usr/src/emacs/lisp/vc/log-edit.el.gz
(defun log-edit-insert-changelog-entries (files)
"Given a list of files FILES, insert the ChangeLog entries for them."
(let ((log-entries nil)
(log-edit-author nil))
;; Note that any ChangeLog entry can apply to more than one file.
;; Here we construct a log-entries list with elements of the form
;; ((LOGBUFFER ENTRYSTART ENTRYEND) FILE1 FILE2...)
(dolist (file files)
(let* ((entries (log-edit-changelog-entries file))
(buf (car entries))
key entry)
(dolist (region (cdr entries))
(setq key (cons buf region))
(if (setq entry (assoc key log-entries))
(setcdr entry (append (cdr entry) (list file)))
(push (list key file) log-entries)))))
;; Now map over log-entries, and extract the strings.
(dolist (log-entry (nreverse log-entries))
(apply 'log-edit-changelog-insert-entries
(append (car log-entry) (cdr log-entry)))
(insert "\n"))
;; No newline after the last entry.
(when log-entries
(delete-char -1))
log-edit-author))