summaryrefslogtreecommitdiff
path: root/lisp
diff options
context:
space:
mode:
authorGlenn Morris <rgm@gnu.org>2008-04-02 03:15:54 +0000
committerGlenn Morris <rgm@gnu.org>2008-04-02 03:15:54 +0000
commitde1188fb96ab30fb233877a544a36344021a0059 (patch)
tree1146b2935077d8a06e086b8d61de2d2565fe3b57 /lisp
parentdacdc06b95d6dfbdd83c9e63e02e118666240f3f (diff)
downloademacs-de1188fb96ab30fb233877a544a36344021a0059.tar.gz
(holiday-chinese-new-year): Use a single let.
Diffstat (limited to 'lisp')
-rw-r--r--lisp/calendar/cal-china.el21
1 files changed, 10 insertions, 11 deletions
diff --git a/lisp/calendar/cal-china.el b/lisp/calendar/cal-china.el
index 51ba42b9a8b..eb07e41477d 100644
--- a/lisp/calendar/cal-china.el
+++ b/lisp/calendar/cal-china.el
@@ -422,22 +422,21 @@ Gregorian date Sunday, December 31, 1 BC."
"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)