changeset 35500:38b437f4134e

(diary-float): Fix case of MONTH being a list of numbers. (diary-mail-entries): Rewritten.
author Gerd Moellmann <gerd@gnu.org>
date Wed, 24 Jan 2001 11:47:44 +0000
parents 1f86a3c25e8d
children 5009a7acb767
files lisp/calendar/diary-lib.el
diffstat 1 files changed, 26 insertions(+), 31 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/calendar/diary-lib.el	Wed Jan 24 08:09:48 2001 +0000
+++ b/lisp/calendar/diary-lib.el	Wed Jan 24 11:47:44 2001 +0000
@@ -633,29 +633,20 @@
 system.  Alternatively, you can specify a cron entry:
 0 1 * * * diary-rem.sh
 to run it every morning at 1am."
-  (interactive "p")
-  (let ((text nil)
-	;; Use the fancy-diary-display as it doesn't hide rest of
-	;; diary file with ^M characters.  It also looks nicer.
-	(diary-display-hook 'fancy-diary-display))	
-    (if (not current-prefix-arg)
-	(setq ndays diary-mail-days))
-    (calendar)
-    (view-diary-entries ndays)
-    (set-buffer fancy-diary-buffer)
-    (setq text (buffer-substring (point-min) (point-max)))
+  (interactive "P")
+  (let* ((diary-display-hook 'fancy-diary-display)
+         (diary-list-include-blanks t)
+         (text (progn (list-diary-entries (calendar-current-date)
+                                          (if ndays ndays diary-mail-days))
+                      (set-buffer fancy-diary-buffer)
+                      (buffer-substring (point-min) (point-max)))))
+    (mail)
+    (mail-to) (insert diary-mail-addr)
+    (mail-subject) (insert "Diary entries generated "
+                           (calendar-date-string (calendar-current-date)))
+    (mail-text) (insert text)
+    (mail-send-and-exit nil)))
 
-    ;; Now send text as a mail message.
-    (mail)
-    (mail-to)
-    (insert diary-mail-addr)
-    (mail-subject)
-    (insert "Diary entries generated ")
-    (insert (format-time-string "%a %d %b %Y" (current-time)))
-    (mail-text)
-    (insert text)
-    (mail-send-and-exit nil)
-    (exit-calendar)))
 
 (defun diary-name-pattern (string-array &optional fullname)
   "Convert an STRING-ARRAY, an array of strings to a pattern.
@@ -1295,9 +1286,10 @@
               (d2 (extract-calendar-day last))
               (y2 (extract-calendar-year last)))
 	 (if (or (and (= m1 m2)	; only possible base dates in one month
-		      (or (and (listp month) (memq m1 month))
-			  (eq month t)
-			  (= m1 month))
+		      (or (eq month t)
+			  (if (listp month)
+                              (memq m1 month)
+			    (= m1 month)))
 		      (let ((d (or day (if (> n 0)
 					   1
 					 (calendar-last-day-of-month m1 y1)))))
@@ -1308,22 +1300,25 @@
 		      (or
 		       ;; m1, d1 works as a base date
 		       (and
-			(or (and (listp month) (memq m1 month))
-			    (eq month t)
-			    (= m1 month))
+			(or (eq month t)
+			    (if (listp month)
+                                (memq m1 month)
+			      (= m1 month)))
 			(<= d1 (or day (if (> n 0)
 					   1
 					 (calendar-last-day-of-month m1 y1)))))
 		       ;; m2, d2 works as a base date
-		       (and (or (and (listp month) (memq m2 month))
-				(eq month t)
-				(= m2 month))
+		       (and (or (eq month t)
+				(if (listp month)
+                                    (memq m2 month)
+				  (= m2 month)))
 			    (<= (or day (if (> n 0)
 					    1
 					  (calendar-last-day-of-month m2 y2)))
 				d2)))))
 	     entry))))
 
+
 (defun diary-anniversary (month day year)
   "Anniversary diary entry.
 Entry applies if date is the anniversary of MONTH, DAY, YEAR if