Function: change-log-mode
change-log-mode is an autoloaded, interactive and byte-compiled
function defined in add-log.el.gz.
Signature
(change-log-mode)
Documentation
Major mode for editing change logs; like Indented Text mode.
Prevents numeric backups and sets left-margin to 8 and fill-column to 74.
New log entries are usually made with M-x add-change-log-entry (add-change-log-entry) or C-x 4 a (add-change-log-entry-other-window).
Each entry behaves as a paragraph, and the entries for one day as a page.
Runs change-log-mode-hook.
C-c C-c change-log-goto-source
C-c C-f change-log-find-file
C-c C-n add-log-edit-next-comment
C-c C-p add-log-edit-prev-comment
Probably introduced at or before Emacs version 19.29.
Key Bindings
Source Code
;; Defined in /usr/src/emacs/lisp/vc/add-log.el.gz
;;;###autoload
(define-derived-mode change-log-mode text-mode "Change Log"
"Major mode for editing change logs; like Indented Text mode.
Prevents numeric backups and sets `left-margin' to 8 and `fill-column' to 74.
New log entries are usually made with \\[add-change-log-entry] or \\[add-change-log-entry-other-window].
Each entry behaves as a paragraph, and the entries for one day as a page.
Runs `change-log-mode-hook'.
\n\\{change-log-mode-map}"
(setq left-margin 8
fill-column 74
indent-tabs-mode t
tab-width 8
show-trailing-whitespace t)
(setq-local fill-forward-paragraph-function
'change-log-fill-forward-paragraph)
(setq-local comment-start nil)
;; Make sure we call `change-log-indent' when filling.
(setq-local fill-indent-according-to-mode t)
;; Avoid that filling leaves behind a single "*" on a line.
(add-hook 'fill-nobreak-predicate
(lambda ()
(looking-back "^\\s *\\*\\s *" (line-beginning-position)))
nil t)
(setq-local indent-line-function 'change-log-indent)
(setq-local tab-always-indent nil)
(setq-local copyright-at-end-flag t)
;; We really do want "^" in paragraph-start below: it is only the
;; lines that begin at column 0 (despite the left-margin of 8) that
;; we are looking for. Adding `* ' allows eliding the blank line
;; between entries for different files.
(setq-local paragraph-start "\\s *$\\|\f\\|^\\<")
(setq-local paragraph-separate paragraph-start)
;; Match null string on the date-line so that the date-line
;; is grouped with what follows.
(setq-local page-delimiter "^\\<\\|^\f")
(setq-local version-control 'never)
(setq-local smerge-resolve-function
'change-log-resolve-conflict)
(setq-local adaptive-fill-regexp "\\s *")
(setq-local font-lock-defaults
'(change-log-font-lock-keywords t nil nil backward-paragraph))
(setq-local multi-isearch-next-buffer-function
'change-log-next-buffer)
(setq-local beginning-of-defun-function
'change-log-beginning-of-defun)
(setq-local end-of-defun-function
'change-log-end-of-defun)
;; next-error function glue
(setq next-error-function 'change-log-next-error))