changeset 93523:aa0e26f1d3ae

(holiday-chinese-new-year): Use a single let.
author Glenn Morris <rgm@gnu.org>
date Wed, 02 Apr 2008 03:15:54 +0000
parents 38ab23c0b8ad
children 6076b35285b8
files lisp/calendar/cal-china.el
diffstat 1 files changed, 10 insertions(+), 11 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/calendar/cal-china.el	Tue Apr 01 21:27:07 2008 +0000
+++ b/lisp/calendar/cal-china.el	Wed Apr 02 03:15:54 2008 +0000
@@ -422,22 +422,21 @@
   "Date of Chinese New Year, if visible in calendar.
 Returns (((MONTH DAY YEAR) TEXT)), where the date is Gregorian."
   (let ((m displayed-month)
-        (y displayed-year))
+        (y displayed-year)
+        chinese-new-year)
     ;; In the Gregorian calendar, CNY falls between Jan 21 and Feb 20.
     ;; Jan is visible if displayed-month = 12, 1, 2; Feb if d-m = 1, 2, 3.
     ;; If we shift the calendar forward one month, we can do a
     ;; one-sided test, namely: d-m <= 4 means CNY might be visible.
     (increment-calendar-month m y 1)    ; shift forward a month
-    (if (< m 5)
-        (let ((chinese-new-year
-               (calendar-gregorian-from-absolute
-                (cadr (assoc 1 (chinese-year y))))))
-          (if (calendar-date-is-visible-p chinese-new-year)
-              (list
-               (list chinese-new-year
-                     (format "Chinese New Year (%s)"
-                             (calendar-chinese-sexagesimal-name
-                              (+ y 57))))))))))
+    (and (< m 5)
+         (calendar-date-is-visible-p (setq chinese-new-year
+                                           (calendar-gregorian-from-absolute
+                                            (cadr (assoc 1 (chinese-year y))))))
+         (list
+          (list chinese-new-year
+                (format "Chinese New Year (%s)"
+                        (calendar-chinese-sexagesimal-name (+ y 57))))))))
 
 ;;;###cal-autoload
 (defun calendar-chinese-date-string (&optional date)