diff options
| author | Dmitry Gutov <dgutov@yandex.ru> | 2013-12-04 02:37:33 +0200 |
|---|---|---|
| committer | Dmitry Gutov <dgutov@yandex.ru> | 2013-12-04 02:37:33 +0200 |
| commit | dda619164336f0a4b18c785e28f2ab0d7c6e65d9 (patch) | |
| tree | a83ff3b7a4a2996b26edf85cfc1f6be4e61c54f5 /lisp/vc/log-edit.el | |
| parent | c085e5b909ea10f8e593f35f2d4a57df147c0591 (diff) | |
| download | emacs-dda619164336f0a4b18c785e28f2ab0d7c6e65d9.tar.gz | |
Remember log-edit comment when the buffer is killed
* lisp/vc/log-edit.el (log-edit-add-new-comment): Rename to
`log-edit-remember-comment', make argument optional. Adjust all
callers.
(log-edit-mode): Add `log-edit-remember-comment' to
`kill-buffer-hook' locally.
(log-edit-kill-buffer): Don't remember comment explicitly since
the buffer is killed anyway.
Diffstat (limited to 'lisp/vc/log-edit.el')
| -rw-r--r-- | lisp/vc/log-edit.el | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/lisp/vc/log-edit.el b/lisp/vc/log-edit.el index 7f66f73e9d9..91390fa1123 100644 --- a/lisp/vc/log-edit.el +++ b/lisp/vc/log-edit.el @@ -476,6 +476,7 @@ commands (under C-x v for VC, for example). (set (make-local-variable 'font-lock-defaults) '(log-edit-font-lock-keywords t)) (make-local-variable 'log-edit-comment-ring-index) + (add-hook 'kill-buffer-hook 'log-edit-remember-comment nil t) (hack-dir-local-variables-non-file-buffer)) (defun log-edit-hide-buf (&optional buf where) @@ -488,7 +489,8 @@ commands (under C-x v for VC, for example). (if win (ignore-errors (delete-window win)))) (bury-buffer buf)))) -(defun log-edit-add-new-comment (comment) +(defun log-edit-remember-comment (&optional comment) + (unless comment (setq comment (buffer-string))) (when (or (ring-empty-p log-edit-comment-ring) (not (equal comment (ring-ref log-edit-comment-ring 0)))) (ring-insert log-edit-comment-ring comment))) @@ -524,7 +526,7 @@ If you want to abort the commit, simply delete the buffer." (save-excursion (goto-char (point-max)) (insert ?\n))) - (log-edit-add-new-comment (buffer-string)) + (log-edit-remember-comment) (let ((win (get-buffer-window log-edit-files-buf))) (if (and log-edit-confirm (not (and (eq log-edit-confirm 'changed) @@ -545,7 +547,6 @@ If you want to abort the commit, simply delete the buffer." Also saves its contents in the comment history and hides `log-edit-files-buf'." (interactive) - (log-edit-add-new-comment (buffer-string)) (log-edit-hide-buf) (let ((buf (current-buffer))) (quit-windows-on buf) @@ -659,7 +660,7 @@ can thus take some time." (defun log-edit-add-to-changelog () "Insert this log message into the appropriate ChangeLog file." (interactive) - (log-edit-add-new-comment (buffer-string)) + (log-edit-remember-comment) (dolist (f (log-edit-files)) (let ((buffer-file-name (expand-file-name f))) (save-excursion |
