summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Monnier <monnier@iro.umontreal.ca>2011-10-27 22:50:05 -0400
committerStefan Monnier <monnier@iro.umontreal.ca>2011-10-27 22:50:05 -0400
commit7a6c0941742d41702fb56cd492d4897e476ebc25 (patch)
tree66245e54412d2fa36a6956fde2c0361cef18079c
parentb0c4cdcf1072b604e8470c634a0b6c0c9a43c1ab (diff)
downloademacs-7a6c0941742d41702fb56cd492d4897e476ebc25.tar.gz
* lisp/vc/log-edit.el: Fill empty field rather than adding new one.
(log-edit-add-field): New function. (log-edit-insert-changelog): Use it.
-rw-r--r--lisp/ChangeLog6
-rw-r--r--lisp/vc/log-edit.el14
2 files changed, 15 insertions, 5 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index e6e8c2fdb2e..be55e8410bf 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,9 @@
+2011-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * vc/log-edit.el: Fill empty field rather than adding new one.
+ (log-edit-add-field): New function.
+ (log-edit-insert-changelog): Use it.
+
2011-10-28 Mark Lillibridge <mark.lillibridge@hp.com> (tiny change)
* mail/rmail.el (rmail-mode-map): Add M-C-f as in rmailsum (bug#9802).
diff --git a/lisp/vc/log-edit.el b/lisp/vc/log-edit.el
index c421304442f..f57429c76c7 100644
--- a/lisp/vc/log-edit.el
+++ b/lisp/vc/log-edit.el
@@ -593,6 +593,13 @@ to build the Fixes: header.")
(put 'log-edit-rewrite-fixes 'safe-local-variable
(lambda (v) (and (stringp (car-safe v)) (stringp (cdr v)))))
+(defun log-edit-add-field (field value)
+ (rfc822-goto-eoh)
+ (if (save-excursion (re-search-backward (concat "^" field ":\\([ \t]*\\)$")
+ nil t))
+ (replace-match (concat " " value) t t nil 1)
+ (insert field ": " value "\n" (if (looking-at "\n") "" "\n"))))
+
(defun log-edit-insert-changelog (&optional use-first)
"Insert a log message by looking at the ChangeLog.
The idea is to write your ChangeLog entries first, and then use this
@@ -620,9 +627,7 @@ regardless of user name or time."
(log-edit-insert-changelog-entries (log-edit-files)))))
(log-edit-set-common-indentation)
;; Add an Author: field if appropriate.
- (when author
- (rfc822-goto-eoh)
- (insert "Author: " author "\n" (if (looking-at "\n") "" "\n")))
+ (when author (log-edit-add-field "Author" author))
;; Add a Fixes: field if applicable.
(when (consp log-edit-rewrite-fixes)
(rfc822-goto-eoh)
@@ -632,8 +637,7 @@ regardless of user name or time."
(fixes (match-substitute-replacement
(cdr log-edit-rewrite-fixes))))
(delete-region start end)
- (rfc822-goto-eoh)
- (insert "Fixes: " fixes "\n" (if (looking-at "\n") "" "\n")))))
+ (log-edit-add-field "Fixes" fixes))))
(and log-edit-strip-single-file-name
(progn (rfc822-goto-eoh)
(if (looking-at "\n") (forward-char 1))