Function: calendar-list-holidays

calendar-list-holidays is an autoloaded, interactive and byte-compiled function defined in holidays.el.gz.

Signature

(calendar-list-holidays &optional EVENT)

Documentation

Create a buffer containing the holidays for the current calendar window.

The holidays are those in the list calendar-notable-days. Returns non-nil if any holidays are found. If EVENT is non-nil, it's an event indicating the buffer position to use instead of point.

View in manual

Key Bindings

Source Code

;; Defined in /usr/src/emacs/lisp/calendar/holidays.el.gz
;; FIXME name that makes sense
;;;###cal-autoload
(defun calendar-list-holidays (&optional event)
  "Create a buffer containing the holidays for the current calendar window.
The holidays are those in the list `calendar-notable-days'.
Returns non-nil if any holidays are found.
If EVENT is non-nil, it's an event indicating the buffer position to
use instead of point."
  (interactive (list last-nonmenu-event))
  ;; If called from a menu, with the calendar window not selected.
  (with-current-buffer
      (if event (calendar-event-buffer event)
        (current-buffer))
    (message "Looking up holidays...")
    (let ((holiday-list (calendar-holiday-list))
          (m1 displayed-month)
          (y1 displayed-year)
          (m2 displayed-month)
          (y2 displayed-year))
      (if (not holiday-list)
          (message "Looking up holidays...none found")
        (calendar-in-read-only-buffer holiday-buffer
          (calendar-increment-month m1 y1 -1)
          (calendar-increment-month m2 y2 1)
          (calendar-set-mode-line
           (if (= y1 y2)
               (format "Notable Dates from %s to %s, %d%%-"
                       (calendar-month-name m1) (calendar-month-name m2) y2)
             (format "Notable Dates from %s, %d to %s, %d%%-"
                     (calendar-month-name m1) y1 (calendar-month-name m2) y2)))
          (insert
           (mapconcat
            (lambda (x) (concat (calendar-date-string (car x))
                                ": " (cadr x)))
            holiday-list "\n")))
        (message "Looking up holidays...done"))
      holiday-list)))