changeset 96217:e5a55b8c9892

* add-log.el (add-change-log-entry): Add new arg to force each new entry to be on a new line. * diff-mode.el (diff-add-change-log-entries-other-window): Use it.
author Dan Nicolaescu <dann@ics.uci.edu>
date Tue, 24 Jun 2008 04:04:48 +0000
parents 0c3be806e711
children 15fc1f3d8664
files lisp/ChangeLog lisp/add-log.el lisp/diff-mode.el
diffstat 3 files changed, 20 insertions(+), 10 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/ChangeLog	Tue Jun 24 03:45:06 2008 +0000
+++ b/lisp/ChangeLog	Tue Jun 24 04:04:48 2008 +0000
@@ -1,5 +1,9 @@
 2008-06-24  Dan Nicolaescu  <dann@ics.uci.edu>
 
+	* add-log.el (add-change-log-entry): Add new arg to force each new
+	entry to be on a new line.
+	* diff-mode.el (diff-add-change-log-entries-other-window): Use it.
+
 	* vc-dir.el (vc-client-object): Remove.
 	(vc-dir-prepare-status-buffer): Take a backend as an argument and
 	use it when looking for a buffer.
@@ -17,11 +21,11 @@
 
 	* vc.el (Todo): Update.
 
-	* vc-hg.el (vc-annotate-convert-time, vc-default-status-printer): 
-	* vc-rcs.el (vc-annotate-convert-time): 
-	* vc-mtn.el (vc-annotate-convert-time): 
-	* vc-git.el (vc-annotate-convert-time): 
-	* vc-cvs.el (vc-annotate-convert-time): 
+	* vc-hg.el (vc-annotate-convert-time, vc-default-status-printer):
+	* vc-rcs.el (vc-annotate-convert-time):
+	* vc-mtn.el (vc-annotate-convert-time):
+	* vc-git.el (vc-annotate-convert-time):
+	* vc-cvs.el (vc-annotate-convert-time):
 	* vc-bzr.el (vc-annotate-convert-time): Declare as functions.
 
 2008-06-23  Dan Nicolaescu  <dann@ics.uci.edu>
--- a/lisp/add-log.el	Tue Jun 24 03:45:06 2008 +0000
+++ b/lisp/add-log.el	Tue Jun 24 04:04:48 2008 +0000
@@ -518,7 +518,8 @@
 	buffer-file))))
 
 ;;;###autoload
-(defun add-change-log-entry (&optional whoami file-name other-window new-entry)
+(defun add-change-log-entry (&optional whoami file-name other-window new-entry
+				       put-new-entry-on-new-line)
   "Find change log file, and add an entry for today and an item for this file.
 Optional arg WHOAMI (interactive prefix) non-nil means prompt for user
 name and email (stored in `add-log-full-name' and `add-log-mailing-address').
@@ -532,6 +533,10 @@
 never append to an existing entry.  Option `add-log-keep-changes-together'
 otherwise affects whether a new entry is created.
 
+Fifth arg PUT-NEW-ENTRY-ON-NEW-LINE non-nil means that if a new
+entry is created, put it on a new line by itself, do not put it
+after a comma on an existing line.
+
 Option `add-log-always-start-new-record' non-nil means always create a
 new record, even when the last record was made on the same date and by
 the same person.
@@ -679,7 +684,8 @@
       (let ((pos (point-marker)))
 	(skip-syntax-backward " ")
 	(skip-chars-backward "):")
-	(if (and (looking-at "):")
+	(if (and (not put-new-entry-on-new-line)
+		 (looking-at "):")
 		 (let ((pos (save-excursion (backward-sexp 1) (point))))
 		   (when (equal (buffer-substring pos (point)) defun)
 		     (delete-region pos (point)))
@@ -687,8 +693,8 @@
 	    (progn (skip-chars-backward ", ")
 		   (delete-region (point) pos)
 		   (unless (memq (char-before) '(?\()) (insert ", ")))
-	  (if (looking-at "):")
-	      (delete-region (+ 1 (point)) (line-end-position)))
+	  (when (and (not put-new-entry-on-new-line) (looking-at "):"))
+	    (delete-region (+ 1 (point)) (line-end-position)))
 	  (goto-char pos)
 	  (insert "("))
 	(set-marker pos nil))
--- a/lisp/diff-mode.el	Tue Jun 24 03:45:06 2008 +0000
+++ b/lisp/diff-mode.el	Tue Jun 24 04:04:48 2008 +0000
@@ -1875,7 +1875,7 @@
                             "\\( .*\n\\)*[+]\\)?")
                     nil t))
             (save-excursion
-              (add-change-log-entry nil nil t t)))
+              (add-change-log-entry nil nil t nil t)))
         ;; When there's no more hunks, diff-hunk-next signals an error.
 	(error nil)))))