]> code.delx.au - gnu-emacs/blobdiff - lisp/calendar/calendar.el
* calendar.el (calendar-standard-time-zone-name,
[gnu-emacs] / lisp / calendar / calendar.el
index 52bb556a7b1e61d1e179880240bfe36f20e8326c..9f389b815745fd850f0294e81d7778a8bf0153d5 100644 (file)
@@ -3,8 +3,10 @@
 ;;; Copyright (C) 1988, 1989, 1990, 1991, 1992 Free Software Foundation, Inc.
 
 ;; Author: Edward M. Reingold <reingold@cs.uiuc.edu>
-;; Keywords: calendar, Gregorian calendar, Julian calendar, Hebrew calendar,
-;;     Islamic calendar, ISO calendar, Julian day number, diary, holidays
+;; Keywords: calendar
+;; Human-Keywords: calendar, Gregorian calendar, Julian calendar, 
+;;     Hebrew calendar, Islamic calendar, ISO calendar, Julian day number,
+;;     diary, holidays
 
 (defconst calendar-version "Version 5, released August 10, 1992")
 
@@ -51,7 +53,7 @@
 
 ;; The following files are part of the calendar/diary code:
 
-;;       diary.el, diary-insert.el     Diary functions
+;;       diary.el, diary-ins.el     Diary functions
 ;;       holidays.el                   Holiday functions
 ;;       cal-french.el                 French Revolutionary calendar
 ;;       cal-mayan.el                  Mayan calendars
@@ -477,22 +479,50 @@ For example, -74.0 for New York City.")
 `calendar-longitude', calendar-latitude'.  Default value is just the latitude,
 longitude pair.")
 
+;;; Since the following three defvars are marked to go into
+;;; loaddefs.el, they will be evaluated when Emacs is dumped.
+;;; However, these variables' appropriate values really depend on the
+;;; conditions under which the code is invoked; so it's inappropriate
+;;; to initialize them when Emacs is dumped.  Thus we initialize them
+;;; to nil now, and if they are still nil when this file is actually
+;;; loaded, we give them their real values then.
+
 ;;;###autoload
-(defvar calendar-time-zone (car (current-time-zone))
+(defvar calendar-time-zone nil
   "*Number of minutes difference between local standard time at
 `calendar-location-name' and Universal (Greenwich) Time.  For example, -300
-for New York City, -480 for Los Angeles.")
+for New York City, -480 for Los Angeles.
+
+If this is nil, it will be set to the local time zone when the calendar
+package loads.")
+;;; If the user has given this a real value, don't wipe it out.
+(or calendar-time-zone
+    (setq calendar-time-zone (car (current-time-zone))))
 
 ;;;###autoload
-(defvar calendar-standard-time-zone-name (car (nthcdr 2 (current-time-zone)))
+(defvar calendar-standard-time-zone-name nil
   "*Abbreviated name of standard time zone at `calendar-location-name'.
-For example, \"EST\" in New York City, \"PST\" for Los Angeles.")
+For example, \"EST\" in New York City, \"PST\" for Los Angeles.
+
+If this is nil, it will be set for the local time zone when the calendar
+package loads.")
+;;; If the user has given this a value, don't wipe it out.
+(or calendar-standard-time-zone-name
+    (setq calendar-standard-time-zone-name
+          (car (nthcdr 2 (current-time-zone)))))
 
 ;;;###autoload
-(defvar calendar-daylight-time-zone-name (car (nthcdr 3 (current-time-zone)))
+(defvar calendar-daylight-time-zone-name nil
   "*Abbreviated name of daylight-savings time zone at `calendar-location-name'.
-For example, \"EDT\" in New York City, \"PDT\" for Los Angeles.")
-
+For example, \"EDT\" in New York City, \"PDT\" for Los Angeles.
+
+If this is nil, it will be set for the local time zone when the calendar
+package loads.")
+;;; If the user has given this a value, don't wipe it out.
+(or calendar-daylight-time-zone-name
+    (setq calendar-daylight-time-zone-name
+          (car (nthcdr 3 (current-time-zone)))))
+  
 ;;;###autoload
 (defvar calendar-daylight-savings-starts
   '(calendar-nth-named-day 1 0 4 year)
@@ -1228,60 +1258,60 @@ is created."
 Each entry in diary-file visible in the calendar window is marked."
   t)
 
-(autoload 'insert-diary-entry "diary-insert"
+(autoload 'insert-diary-entry "diary-ins"
   "Insert a diary entry for the date indicated by point."
   t)
 
-(autoload 'insert-weekly-diary-entry "diary-insert"
+(autoload 'insert-weekly-diary-entry "diary-ins"
   "Insert a weekly diary entry for the day of the week indicated by point."
   t)
 
-(autoload 'insert-monthly-diary-entry "diary-insert"
+(autoload 'insert-monthly-diary-entry "diary-ins"
   "Insert a monthly diary entry for the day of the month indicated by point."
   t)
 
-(autoload 'insert-yearly-diary-entry "diary-insert"
+(autoload 'insert-yearly-diary-entry "diary-ins"
   "Insert an annual diary entry for the day of the year indicated by point."
   t)
 
-(autoload 'insert-anniversary-diary-entry "diary-insert"
+(autoload 'insert-anniversary-diary-entry "diary-ins"
   "Insert an anniversary diary entry for the date indicated by point."
   t)
 
-(autoload 'insert-block-diary-entry "diary-insert"
+(autoload 'insert-block-diary-entry "diary-ins"
   "Insert a block diary entry for the dates indicated by point and mark."
   t)
 
-(autoload 'insert-cyclic-diary-entry "diary-insert"
+(autoload 'insert-cyclic-diary-entry "diary-ins"
   "Insert a cyclic diary entry starting at the date indicated by point."
   t)
 
-(autoload 'insert-hebrew-diary-entry "diary-insert"
+(autoload 'insert-hebrew-diary-entry "diary-ins"
   "Insert a diary entry for the Hebrew date corresponding to the date
 indicated by point."
   t)
 
-(autoload 'insert-monthly-hebrew-diary-entry "diary-insert"
+(autoload 'insert-monthly-hebrew-diary-entry "diary-ins"
   "Insert a monthly diary entry for the day of the Hebrew month corresponding
 to the date indicated by point."
   t)
 
-(autoload 'insert-yearly-hebrew-diary-entry "diary-insert"
+(autoload 'insert-yearly-hebrew-diary-entry "diary-ins"
   "Insert an annual diary entry for the day of the Hebrew year corresponding
 to the date indicated by point."
   t)
 
-(autoload 'insert-islamic-diary-entry "diary-insert"
+(autoload 'insert-islamic-diary-entry "diary-ins"
   "Insert a diary entry for the Islamic date corresponding to the date
 indicated by point."
   t)
 
-(autoload 'insert-monthly-islamic-diary-entry "diary-insert"
+(autoload 'insert-monthly-islamic-diary-entry "diary-ins"
   "Insert a monthly diary entry for the day of the Islamic month corresponding
 to the date indicated by point."
   t)
 
-(autoload 'insert-yearly-islamic-diary-entry "diary-insert"
+(autoload 'insert-yearly-islamic-diary-entry "diary-ins"
   "Insert an annual diary entry for the day of the Islamic year corresponding
 to the date indicated by point."
   t)
@@ -2910,7 +2940,7 @@ Gregorian date Sunday, December 31, 1 BC."
      ;; year (Adar or Adar II).
      ((= death-month 13)
       (calendar-absolute-from-hebrew
-       (list (last-month-of-hebrew-year year) death-day year)))
+       (list (hebrew-calendar-last-month-of-year year) death-day year)))
      ;; If it's the 30th in Adar I and $year$ is not a leap year
      ;; (so Adar has only 29 days), use the last day in Shevat.
      ((and (= death-day 30)