Function: holiday-bahai-ridvan

holiday-bahai-ridvan is a byte-compiled function defined in cal-bahai.el.gz.

Signature

(holiday-bahai-ridvan &optional ALL)

Documentation

Holidays related to Ridvan, as visible in the calendar window.

Only considers the first, ninth, and twelfth days, unless ALL or calendar-bahai-all-holidays-flag is non-nil.

Ridvan is a 12-day festival from 13 Jalál to 5 Jamál (Bahá’í months 2-3). In the reformed calendar (172 BE onwards), these dates shift relative to the Gregorian calendar based on when Naw-Rúz falls.

Source Code

;; Defined in /usr/src/emacs/lisp/calendar/cal-bahai.el.gz
;;;###holiday-autoload
(defun holiday-bahai-ridvan (&optional all)
  "Holidays related to Ridvan, as visible in the calendar window.
Only considers the first, ninth, and twelfth days, unless ALL or
`calendar-bahai-all-holidays-flag' is non-nil.

Ridvan is a 12-day festival from 13 Jalál to 5 Jamál (Bahá’í months 2-3).
In the reformed calendar (172 BE onwards), these dates shift relative to
the Gregorian calendar based on when Naw-Rúz falls."
  (let ((ord ["First" "Second" "Third" "Fourth" "Fifth" "Sixth"
              "Seventh" "Eighth" "Ninth" "Tenth" "Eleventh" "Twelfth"])
        (show '(0 8 11))
        rid h)
    (if (or all calendar-bahai-all-holidays-flag)
        (setq show (number-sequence 0 11)))
    (dolist (i show (nreverse rid))
      ;; Ridvan spans months 2-3 in the Bahá’í calendar:
      ;; Day 1 (i=0) = 13 Jalál = month 2, day 13
      ;; Days 2-7 (i=1-6) = 14-19 Jalál = month 2, days 14-19
      ;; Days 8-12 (i=7-11) = 1-5 Jamál = month 3, days 1-5
      (let ((month (if (< i 7) 2 3))
            (day (if (< i 7) (+ i 13) (- i 6))))
        (when (setq h (holiday-bahai month day
                                     (format "%s Day of Ridvan" (aref ord i))))
          (push (car h) rid))))))