]> git.eshelyaron.com Git - emacs.git/commitdiff
* lisp/vc/log-edit.el: Fill empty field rather than adding new one.
authorStefan Monnier <monnier@iro.umontreal.ca>
Fri, 28 Oct 2011 02:50:05 +0000 (22:50 -0400)
committerStefan Monnier <monnier@iro.umontreal.ca>
Fri, 28 Oct 2011 02:50:05 +0000 (22:50 -0400)
(log-edit-add-field): New function.
(log-edit-insert-changelog): Use it.

lisp/ChangeLog
lisp/vc/log-edit.el

index e6e8c2fdb2ed6a952f80241966767478e3ec638a..be55e8410bfd0844fe928bd6aed0b4f58ea849b9 100644 (file)
@@ -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).
index c421304442f3bf8c922006dddf6c651dea602044..f57429c76c7f06dcdd74fe6231c285aac42f8fea 100644 (file)
@@ -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))