From a43f98b3959cf9435de7ea5a5bb44e3fbd061085 Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Sat, 5 May 2012 13:58:14 -0700 Subject: [PATCH] Move function from cal-tex to holidays * calendar/holidays.el (holiday-in-range): Move here from cal-tex-list-holidays. * calendar/cal-tex.el (cal-tex-list-holidays): Make it an obsolete alias for holiday-in-range. Update all callers. --- lisp/ChangeLog | 7 +++++++ lisp/calendar/cal-tex.el | 44 ++++++++++----------------------------- lisp/calendar/holidays.el | 27 ++++++++++++++++++++++++ 3 files changed, 45 insertions(+), 33 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 12c1e16d64..f66cd887ad 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,10 @@ +2012-05-05 Glenn Morris + + * calendar/holidays.el (holiday-in-range): + Move here from cal-tex-list-holidays. + * calendar/cal-tex.el (cal-tex-list-holidays): + Make it an obsolete alias for holiday-in-range. Update all callers. + 2012-05-05 Chong Yidong * select.el (xselect--encode-string): Always use utf-8 for TEXT on diff --git a/lisp/calendar/cal-tex.el b/lisp/calendar/cal-tex.el index 0ae2b38eaf..2452f44448 100644 --- a/lisp/calendar/cal-tex.el +++ b/lisp/calendar/cal-tex.el @@ -237,31 +237,9 @@ The names are taken from `calendar-day-name-array'.") "LaTeX code to insert one box with date info in calendar. This definition is the heart of the calendar!") -(autoload 'calendar-holiday-list "holidays") - -(defun cal-tex-list-holidays (d1 d2) - "Generate a list of all holidays from absolute date D1 to D2." - (let* ((start (calendar-gregorian-from-absolute d1)) - (displayed-month (calendar-extract-month start)) - (displayed-year (calendar-extract-year start)) - (end (calendar-gregorian-from-absolute d2)) - (end-month (calendar-extract-month end)) - (end-year (calendar-extract-year end)) - (number-of-intervals - (1+ (/ (calendar-interval displayed-month displayed-year - end-month end-year) - 3))) - holidays in-range a) - (calendar-increment-month displayed-month displayed-year 1) - (dotimes (_idummy number-of-intervals) - (setq holidays (append holidays (calendar-holiday-list))) - (calendar-increment-month displayed-month displayed-year 3)) - (dolist (hol holidays) - (and (car hol) - (setq a (calendar-absolute-from-gregorian (car hol))) - (and (<= d1 a) (<= a d2)) - (setq in-range (append (list hol) in-range)))) - in-range)) +(autoload 'holiday-in-range "holidays") + +(define-obsolete-function-alias 'cal-tex-list-holidays 'holiday-in-range "24.2") (autoload 'diary-list-entries "diary-lib") @@ -446,7 +424,7 @@ Optional EVENT indicates a buffer position to use instead of point." (calendar-last-day-of-month end-month end-year) end-year)))) (diary-list (if cal-tex-diary (cal-tex-list-diary-entries d1 d2))) - (holidays (if cal-tex-holidays (cal-tex-list-holidays d1 d2))) + (holidays (if cal-tex-holidays (holiday-in-range d1 d2))) other-month other-year small-months-at-start) (cal-tex-insert-preamble (cal-tex-number-weeks month year 1) t "12pt") (cal-tex-cmd cal-tex-cal-one-month) @@ -516,7 +494,7 @@ indicates a buffer position to use instead of point." (calendar-last-day-of-month end-month end-year) end-year)))) (diary-list (if cal-tex-diary (cal-tex-list-diary-entries d1 d2))) - (holidays (if cal-tex-holidays (cal-tex-list-holidays d1 d2)))) + (holidays (if cal-tex-holidays (holiday-in-range d1 d2)))) (cal-tex-insert-preamble (cal-tex-number-weeks month year n) nil "12pt") (if (> n 1) (cal-tex-cmd cal-tex-cal-multi-month) @@ -697,7 +675,7 @@ entries are not shown). The calendar shows the hours 8-12am, 1-5pm." (d1 (calendar-absolute-from-gregorian date)) (d2 (+ (* 7 n) d1)) (holidays (if cal-tex-holidays - (cal-tex-list-holidays d1 d2)))) + (holiday-in-range d1 d2)))) (cal-tex-preamble "11pt") (cal-tex-cmd "\\textwidth 6.5in") (cal-tex-cmd "\\textheight 10.5in") @@ -752,7 +730,7 @@ Optional EVENT indicates a buffer position to use instead of point." (d1 (calendar-absolute-from-gregorian date)) (d2 (+ (* 7 n) d1)) (holidays (if cal-tex-holidays - (cal-tex-list-holidays d1 d2)))) + (holiday-in-range d1 d2)))) (cal-tex-preamble "12pt") (cal-tex-cmd "\\textwidth 6.5in") (cal-tex-cmd "\\textheight 10.5in") @@ -836,7 +814,7 @@ position to use instead of point." (d1 (calendar-absolute-from-gregorian date)) (d2 (+ (* 7 n) d1)) (holidays (if cal-tex-holidays - (cal-tex-list-holidays d1 d2))) + (holiday-in-range d1 d2))) (diary-list (if cal-tex-diary (cal-tex-list-diary-entries ;; FIXME d1? @@ -1052,7 +1030,7 @@ Optional EVENT indicates a buffer position to use instead of point." (d1 (calendar-absolute-from-gregorian date)) (d2 (+ (* 7 n) d1)) (holidays (if cal-tex-holidays - (cal-tex-list-holidays d1 d2))) + (holiday-in-range d1 d2))) (diary-list (if cal-tex-diary (cal-tex-list-diary-entries ;; FIXME d1? @@ -1149,7 +1127,7 @@ Optional EVENT indicates a buffer position to use instead of point." (d1 (calendar-absolute-from-gregorian date)) (d2 (+ (* 7 n) d1)) (holidays (if cal-tex-holidays - (cal-tex-list-holidays d1 d2))) + (holiday-in-range d1 d2))) (diary-list (if cal-tex-diary (cal-tex-list-diary-entries ;; FIXME d1? @@ -1292,7 +1270,7 @@ Optional EVENT indicates a buffer position to use instead of point." (d1 (calendar-absolute-from-gregorian date)) (d2 (+ (* 7 n) d1)) (holidays (if cal-tex-holidays - (cal-tex-list-holidays d1 d2))) + (holiday-in-range d1 d2))) (diary-list (if cal-tex-diary (cal-tex-list-diary-entries ;; FIXME d1? diff --git a/lisp/calendar/holidays.el b/lisp/calendar/holidays.el index 9edd353b88..0bb3c23184 100644 --- a/lisp/calendar/holidays.el +++ b/lisp/calendar/holidays.el @@ -645,6 +645,33 @@ strings describing those holidays that apply on DATE, or nil if none do." (define-obsolete-function-alias 'check-calendar-holidays 'calendar-check-holidays "23.1") + +;; Formerly cal-tex-list-holidays. +(defun holiday-in-range (d1 d2) + "Generate a list of all holidays in range from absolute date D1 to D2." + (let* ((start (calendar-gregorian-from-absolute d1)) + (displayed-month (calendar-extract-month start)) + (displayed-year (calendar-extract-year start)) + (end (calendar-gregorian-from-absolute d2)) + (end-month (calendar-extract-month end)) + (end-year (calendar-extract-year end)) + (number-of-intervals + (1+ (/ (calendar-interval displayed-month displayed-year + end-month end-year) + 3))) + holidays in-range a) + (calendar-increment-month displayed-month displayed-year 1) + (dotimes (_idummy number-of-intervals) + (setq holidays (append holidays (calendar-holiday-list))) + (calendar-increment-month displayed-month displayed-year 3)) + (dolist (hol holidays) + (and (car hol) + (setq a (calendar-absolute-from-gregorian (car hol))) + (and (<= d1 a) (<= a d2)) + (setq in-range (append (list hol) in-range)))) + in-range)) + + (declare-function x-popup-menu "menu.c" (position menu)) ;;;###cal-autoload -- 2.20.1