annotate lisp/calendar/calendar.el @ 77044:e0a720fbf325

(diary-font-lock-keywords, diary-live-p): Autoload these functions. (diary-date-forms): Add a custom :set form.
author Glenn Morris <rgm@gnu.org>
date Sat, 07 Apr 2007 21:53:39 +0000
parents f6dad15ba551
children 345c5cf4990e 4ef881a120fe
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
38422
7a94f1c588c4 Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents: 38088
diff changeset
1 ;;; calendar.el --- calendar functions
811
e694e0879463 *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 732
diff changeset
2
39785
5c56451d877f (calendar-mode-line-format): do not use #' on undefined functions
Sam Steingold <sds@gnu.org>
parents: 39523
diff changeset
3 ;; Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1997,
75346
7a3f13e2dd57 Add 2007 to copyright years.
Glenn Morris <rgm@gnu.org>
parents: 74851
diff changeset
4 ;; 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
846
20674ae6bf52 *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 811
diff changeset
5
811
e694e0879463 *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 732
diff changeset
6 ;; Author: Edward M. Reingold <reingold@cs.uiuc.edu>
65919
5c09efcfc1d9 Update maintainer email address.
Glenn Morris <rgm@gnu.org>
parents: 65620
diff changeset
7 ;; Maintainer: Glenn Morris <rgm@gnu.org>
2247
2c7997f249eb Add or correct keywords
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 2211
diff changeset
8 ;; Keywords: calendar
13193
a25a4f1246c0 Added key definitions and autoloads for cal-tex.el (a new file).
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13042
diff changeset
9 ;; Human-Keywords: calendar, Gregorian calendar, diary, holidays
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
10
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
11 ;; This file is part of GNU Emacs.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
12
6737
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
13 ;; GNU Emacs is free software; you can redistribute it and/or modify
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
14 ;; it under the terms of the GNU General Public License as published by
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
15 ;; the Free Software Foundation; either version 2, or (at your option)
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
16 ;; any later version.
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
17
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
18 ;; GNU Emacs is distributed in the hope that it will be useful,
6737
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
19 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
20 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
21 ;; GNU General Public License for more details.
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
22
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
23 ;; You should have received a copy of the GNU General Public License
14169
83f275dcd93a Update FSF's address.
Erik Naggum <erik@naggum.no>
parents: 13875
diff changeset
24 ;; along with GNU Emacs; see the file COPYING. If not, write to the
64085
18a818a2ee7c Update FSF's address.
Lute Kamstra <lute@gnu.org>
parents: 63334
diff changeset
25 ;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
18a818a2ee7c Update FSF's address.
Lute Kamstra <lute@gnu.org>
parents: 63334
diff changeset
26 ;; Boston, MA 02110-1301, USA.
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
27
811
e694e0879463 *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 732
diff changeset
28 ;;; Commentary:
e694e0879463 *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 732
diff changeset
29
55431
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
30 ;; This collection of functions implements a calendar window. It
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
31 ;; generates a calendar for the current month, together with the
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
32 ;; previous and coming months, or for any other three-month period.
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
33 ;; The calendar can be scrolled forward and backward in the window to
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
34 ;; show months in the past or future; the cursor can move forward and
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
35 ;; backward by days, weeks, or months, making it possible, for
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
36 ;; instance, to jump to the date a specified number of days, weeks, or
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
37 ;; months from the date under the cursor. The user can display a list
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
38 ;; of holidays and other notable days for the period shown; the
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
39 ;; notable days can be marked on the calendar, if desired. The user
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
40 ;; can also specify that dates having corresponding diary entries (in
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
41 ;; a file that the user specifies) be marked; the diary entries for
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
42 ;; any date can be viewed in a separate window. The diary and the
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
43 ;; notable days can be viewed independently of the calendar. Dates
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
44 ;; can be translated from the (usual) Gregorian calendar to the day of
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
45 ;; the year/days remaining in year, to the ISO commercial calendar, to
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
46 ;; the Julian (old style) calendar, to the Hebrew calendar, to the
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
47 ;; Islamic calendar, to the Baha'i calendar, to the French
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
48 ;; Revolutionary calendar, to the Mayan calendar, to the Chinese
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
49 ;; calendar, to the Coptic calendar, to the Ethiopic calendar, and to
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
50 ;; the astronomical (Julian) day number. When floating point is
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
51 ;; available, times of sunrise/sunset can be displayed, as can the
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
52 ;; phases of the moon. Appointment notification for diary entries is
13193
a25a4f1246c0 Added key definitions and autoloads for cal-tex.el (a new file).
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13042
diff changeset
53 ;; available. Calendar printing via LaTeX is available.
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
54
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
55 ;; The following files are part of the calendar/diary code:
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
56
13193
a25a4f1246c0 Added key definitions and autoloads for cal-tex.el (a new file).
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13042
diff changeset
57 ;; appt.el Appointment notification
14687
0d4ff7e4d6a3 Use the new file names in autoloads.
Karl Heuer <kwzh@gnu.org>
parents: 14169
diff changeset
58 ;; cal-china.el Chinese calendar
13193
a25a4f1246c0 Added key definitions and autoloads for cal-tex.el (a new file).
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13042
diff changeset
59 ;; cal-coptic.el Coptic/Ethiopic calendars
76477
a13a89e31b01 Change "daylight savings time" -> "daylight saving time".
Chong Yidong <cyd@stupidchicken.com>
parents: 75346
diff changeset
60 ;; cal-dst.el Daylight saving time rules
13193
a25a4f1246c0 Added key definitions and autoloads for cal-tex.el (a new file).
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13042
diff changeset
61 ;; cal-hebrew.el Hebrew calendar
14687
0d4ff7e4d6a3 Use the new file names in autoloads.
Karl Heuer <kwzh@gnu.org>
parents: 14169
diff changeset
62 ;; cal-islam.el Islamic calendar
55431
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
63 ;; cal-bahai.el Baha'i calendar
13193
a25a4f1246c0 Added key definitions and autoloads for cal-tex.el (a new file).
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13042
diff changeset
64 ;; cal-iso.el ISO calendar
a25a4f1246c0 Added key definitions and autoloads for cal-tex.el (a new file).
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13042
diff changeset
65 ;; cal-julian.el Julian/astronomical calendars
a25a4f1246c0 Added key definitions and autoloads for cal-tex.el (a new file).
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13042
diff changeset
66 ;; cal-mayan.el Mayan calendars
5694
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
67 ;; cal-menu.el Menu support
13042
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
68 ;; cal-move.el Movement in the calendar
15258
ab5975df6164 Change autoload references from cal-persian to cal-persia.
Karl Heuer <kwzh@gnu.org>
parents: 14937
diff changeset
69 ;; cal-persia.el Persian calendar
13193
a25a4f1246c0 Added key definitions and autoloads for cal-tex.el (a new file).
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13042
diff changeset
70 ;; cal-tex.el Calendars in LaTeX
10089
37edcffcf005 Mention cal-x.el in comments.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9998
diff changeset
71 ;; cal-x.el X-windows dedicated frame functions
15317
b52f48264690 Comment change.
Richard M. Stallman <rms@gnu.org>
parents: 15258
diff changeset
72 ;; diary-lib.el Diary functions
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
73 ;; holidays.el Holiday functions
13193
a25a4f1246c0 Added key definitions and autoloads for cal-tex.el (a new file).
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13042
diff changeset
74 ;; lunar.el Phases of the moon
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
75 ;; solar.el Sunrise/sunset, equinoxes/solstices
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
76
20462
d179de7ad92e Add reference to new Calendrical Calculations book.
Paul Eggert <eggert@twinsun.com>
parents: 20429
diff changeset
77 ;; Technical details of all the calendrical calculations can be found in
61148
7f7db25577d9 Update reference to "Calendrical Calculations" book; there's a new edition.
Paul Eggert <eggert@twinsun.com>
parents: 60922
diff changeset
78 ;; ``Calendrical Calculations: The Millennium Edition'' by Edward M. Reingold
7f7db25577d9 Update reference to "Calendrical Calculations" book; there's a new edition.
Paul Eggert <eggert@twinsun.com>
parents: 60922
diff changeset
79 ;; and Nachum Dershowitz, Cambridge University Press (2001).
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
80
20462
d179de7ad92e Add reference to new Calendrical Calculations book.
Paul Eggert <eggert@twinsun.com>
parents: 20429
diff changeset
81 ;; An earlier version of the technical details appeared in
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
82 ;; ``Calendrical Calculations'' by Nachum Dershowitz and Edward M. Reingold,
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
83 ;; Software--Practice and Experience, Volume 20, Number 9 (September, 1990),
61148
7f7db25577d9 Update reference to "Calendrical Calculations" book; there's a new edition.
Paul Eggert <eggert@twinsun.com>
parents: 60922
diff changeset
84 ;; pages 899-928, and in ``Calendrical Calculations, Part II: Three Historical
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
85 ;; Calendars'' by E. M. Reingold, N. Dershowitz, and S. M. Clamen,
2640
fc7b8160bcc9 * calendar.el: Update reference to the papers in S-P&E.
Jim Blandy <jimb@redhat.com>
parents: 2347
diff changeset
86 ;; Software--Practice and Experience, Volume 23, Number 4 (April, 1993),
fc7b8160bcc9 * calendar.el: Update reference to the papers in S-P&E.
Jim Blandy <jimb@redhat.com>
parents: 2347
diff changeset
87 ;; pages 383-404.
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
88
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
89 ;; Hard copies of these two papers can be obtained by sending email to
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
90 ;; reingold@cs.uiuc.edu with the SUBJECT "send-paper-cal" (no quotes) and
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
91 ;; the message BODY containing your mailing address (snail).
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
92
20462
d179de7ad92e Add reference to new Calendrical Calculations book.
Paul Eggert <eggert@twinsun.com>
parents: 20429
diff changeset
93 ;; Comments, corrections, and improvements should be sent to
d179de7ad92e Add reference to new Calendrical Calculations book.
Paul Eggert <eggert@twinsun.com>
parents: 20429
diff changeset
94 ;; Edward M. Reingold Department of Computer Science
d179de7ad92e Add reference to new Calendrical Calculations book.
Paul Eggert <eggert@twinsun.com>
parents: 20429
diff changeset
95 ;; (217) 333-6733 University of Illinois at Urbana-Champaign
d179de7ad92e Add reference to new Calendrical Calculations book.
Paul Eggert <eggert@twinsun.com>
parents: 20429
diff changeset
96 ;; reingold@cs.uiuc.edu 1304 West Springfield Avenue
d179de7ad92e Add reference to new Calendrical Calculations book.
Paul Eggert <eggert@twinsun.com>
parents: 20429
diff changeset
97 ;; Urbana, Illinois 61801
d179de7ad92e Add reference to new Calendrical Calculations book.
Paul Eggert <eggert@twinsun.com>
parents: 20429
diff changeset
98
811
e694e0879463 *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 732
diff changeset
99 ;;; Code:
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
100
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
101 (defvar displayed-month)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
102 (defvar displayed-year)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
103 (defvar calendar-month-name-array)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
104 (defvar calendar-starred-day)
31669
ec8ce5820488 (calendar-mode-line-format): Make fields
Dave Love <fx@gnu.org>
parents: 26530
diff changeset
105
6737
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
106 (defun calendar-version ()
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
107 (interactive)
13193
a25a4f1246c0 Added key definitions and autoloads for cal-tex.el (a new file).
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13042
diff changeset
108 (message "Version 6, October 12, 1995"))
6737
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
109
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
110 (defgroup calendar nil
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
111 "Calendar and time management support."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
112 :group 'applications)
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
113
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
114 (defgroup diary nil
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
115 "Emacs diary."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
116 :group 'calendar)
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
117
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
118 (defgroup appt nil
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
119 "Appointment notification."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
120 :group 'calendar)
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
121
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
122 (defgroup holidays nil
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
123 "Holidays support in calendar."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
124 :group 'calendar
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
125 :prefix "calendar-"
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
126 :group 'local)
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
127
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
128 (defgroup chinese-calendar nil
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
129 "Chinese calendar support."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
130 :group 'calendar)
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
131
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
132 (defgroup calendar-tex nil
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
133 "Options for printing calendar with LaTeX."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
134 :prefix "cal-tex-"
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
135 :group 'calendar)
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
136
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
137 (defgroup calendar-hooks nil
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
138 "Calendar hooks."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
139 :prefix "calendar-"
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
140 :group 'calendar)
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
141
4861
924486090b27 (calendar-week-start-day): New var (autoloaded) to
Richard M. Stallman <rms@gnu.org>
parents: 4658
diff changeset
142
60292
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
143 (defconst calendar-buffer "*Calendar*"
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
144 "Name of the buffer used for the calendar.")
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
145
4861
924486090b27 (calendar-week-start-day): New var (autoloaded) to
Richard M. Stallman <rms@gnu.org>
parents: 4658
diff changeset
146 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
147 (defcustom calendar-offset 0
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
148 "The offset of the principal month from the center of the calendar window.
9709
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
149 0 means the principal month is in the center (default), -1 means on the left,
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
150 +1 means on the right. Larger (or smaller) values push the principal month off
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
151 the screen."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
152 :type 'integer
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
153 :group 'calendar)
9709
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
154
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
155 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
156 (defcustom view-diary-entries-initially nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
157 "Non-nil means display current date's diary entries on entry to calendar.
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
158 The diary is displayed in another window when the calendar is first displayed,
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
159 if the current date is visible. The number of days of diary entries displayed
53559
ba8b837c072c Update copyright.
Glenn Morris <rgm@gnu.org>
parents: 52723
diff changeset
160 is governed by the variable `number-of-diary-entries'. This variable can
ba8b837c072c Update copyright.
Glenn Morris <rgm@gnu.org>
parents: 52723
diff changeset
161 be overridden by the value of `calendar-setup'."
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
162 :type 'boolean
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
163 :group 'diary)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
164
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
165 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
166 (defcustom mark-diary-entries-in-calendar nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
167 "Non-nil means mark dates with diary entries, in the calendar window.
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
168 The marking symbol is specified by the variable `diary-entry-marker'."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
169 :type 'boolean
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
170 :group 'diary)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
171
26427
3b6cf16f3633 * calendar/calendar.el (calendar-remove-frame-by-deleting):
Sam Steingold <sds@gnu.org>
parents: 26329
diff changeset
172 ;;;###autoload
3b6cf16f3633 * calendar/calendar.el (calendar-remove-frame-by-deleting):
Sam Steingold <sds@gnu.org>
parents: 26329
diff changeset
173 (defcustom calendar-remove-frame-by-deleting nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
174 "Determine how the calendar mode removes a frame no longer needed.
26427
3b6cf16f3633 * calendar/calendar.el (calendar-remove-frame-by-deleting):
Sam Steingold <sds@gnu.org>
parents: 26329
diff changeset
175 If nil, make an icon of the frame. If non-nil, delete the frame."
3b6cf16f3633 * calendar/calendar.el (calendar-remove-frame-by-deleting):
Sam Steingold <sds@gnu.org>
parents: 26329
diff changeset
176 :type 'boolean
3b6cf16f3633 * calendar/calendar.el (calendar-remove-frame-by-deleting):
Sam Steingold <sds@gnu.org>
parents: 26329
diff changeset
177 :group 'view)
3b6cf16f3633 * calendar/calendar.el (calendar-remove-frame-by-deleting):
Sam Steingold <sds@gnu.org>
parents: 26329
diff changeset
178
63221
6e968f79cfbc Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-385
Miles Bader <miles@gnu.org>
parents: 62779
diff changeset
179 (defvar diary-face 'diary
48366
9dad713d153a Patch of Alan Shutko <ats@acm.org> by way of rms.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 47333
diff changeset
180 "Face name to use for diary entries.")
63221
6e968f79cfbc Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-385
Miles Bader <miles@gnu.org>
parents: 62779
diff changeset
181 (defface diary
61394
31aa9a390538 * mh-customize.el (mh-speedbar-selected-folder-face): Special case
Dan Nicolaescu <dann@ics.uci.edu>
parents: 61148
diff changeset
182 '((((min-colors 88) (class color) (background light))
31aa9a390538 * mh-customize.el (mh-speedbar-selected-folder-face): Special case
Dan Nicolaescu <dann@ics.uci.edu>
parents: 61148
diff changeset
183 :foreground "red1")
31aa9a390538 * mh-customize.el (mh-speedbar-selected-folder-face): Special case
Dan Nicolaescu <dann@ics.uci.edu>
parents: 61148
diff changeset
184 (((class color) (background light))
33208
4360c704c17f Revoke the change.
ShengHuo ZHU <zsh@cs.rochester.edu>
parents: 33205
diff changeset
185 :foreground "red")
61394
31aa9a390538 * mh-customize.el (mh-speedbar-selected-folder-face): Special case
Dan Nicolaescu <dann@ics.uci.edu>
parents: 61148
diff changeset
186 (((min-colors 88) (class color) (background dark))
31aa9a390538 * mh-customize.el (mh-speedbar-selected-folder-face): Special case
Dan Nicolaescu <dann@ics.uci.edu>
parents: 61148
diff changeset
187 :foreground "yellow1")
33160
8006eaf2db42 (diary-face, calendar-today-face, holiday-face):
Miles Bader <miles@gnu.org>
parents: 33114
diff changeset
188 (((class color) (background dark))
33208
4360c704c17f Revoke the change.
ShengHuo ZHU <zsh@cs.rochester.edu>
parents: 33205
diff changeset
189 :foreground "yellow")
33160
8006eaf2db42 (diary-face, calendar-today-face, holiday-face):
Miles Bader <miles@gnu.org>
parents: 33114
diff changeset
190 (t
42456
8a4077ab418c (various face definitions): Use :weight, not :bold.
Richard M. Stallman <rms@gnu.org>
parents: 41577
diff changeset
191 :weight bold))
33160
8006eaf2db42 (diary-face, calendar-today-face, holiday-face):
Miles Bader <miles@gnu.org>
parents: 33114
diff changeset
192 "Face for highlighting diary entries."
8006eaf2db42 (diary-face, calendar-today-face, holiday-face):
Miles Bader <miles@gnu.org>
parents: 33114
diff changeset
193 :group 'diary)
63221
6e968f79cfbc Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-385
Miles Bader <miles@gnu.org>
parents: 62779
diff changeset
194 ;; backward-compatibility alias
6e968f79cfbc Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-385
Miles Bader <miles@gnu.org>
parents: 62779
diff changeset
195 (put 'diary-face 'face-alias 'diary)
6e968f79cfbc Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-385
Miles Bader <miles@gnu.org>
parents: 62779
diff changeset
196
6e968f79cfbc Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-385
Miles Bader <miles@gnu.org>
parents: 62779
diff changeset
197 (defface calendar-today
33160
8006eaf2db42 (diary-face, calendar-today-face, holiday-face):
Miles Bader <miles@gnu.org>
parents: 33114
diff changeset
198 '((t (:underline t)))
8006eaf2db42 (diary-face, calendar-today-face, holiday-face):
Miles Bader <miles@gnu.org>
parents: 33114
diff changeset
199 "Face for indicating today's date."
8006eaf2db42 (diary-face, calendar-today-face, holiday-face):
Miles Bader <miles@gnu.org>
parents: 33114
diff changeset
200 :group 'diary)
63221
6e968f79cfbc Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-385
Miles Bader <miles@gnu.org>
parents: 62779
diff changeset
201 ;; backward-compatibility alias
6e968f79cfbc Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-385
Miles Bader <miles@gnu.org>
parents: 62779
diff changeset
202 (put 'calendar-today-face 'face-alias 'calendar-today)
6e968f79cfbc Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-385
Miles Bader <miles@gnu.org>
parents: 62779
diff changeset
203
6e968f79cfbc Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-385
Miles Bader <miles@gnu.org>
parents: 62779
diff changeset
204 (defface holiday
33160
8006eaf2db42 (diary-face, calendar-today-face, holiday-face):
Miles Bader <miles@gnu.org>
parents: 33114
diff changeset
205 '((((class color) (background light))
33208
4360c704c17f Revoke the change.
ShengHuo ZHU <zsh@cs.rochester.edu>
parents: 33205
diff changeset
206 :background "pink")
33160
8006eaf2db42 (diary-face, calendar-today-face, holiday-face):
Miles Bader <miles@gnu.org>
parents: 33114
diff changeset
207 (((class color) (background dark))
33208
4360c704c17f Revoke the change.
ShengHuo ZHU <zsh@cs.rochester.edu>
parents: 33205
diff changeset
208 :background "chocolate4")
33160
8006eaf2db42 (diary-face, calendar-today-face, holiday-face):
Miles Bader <miles@gnu.org>
parents: 33114
diff changeset
209 (t
33208
4360c704c17f Revoke the change.
ShengHuo ZHU <zsh@cs.rochester.edu>
parents: 33205
diff changeset
210 :inverse-video t))
33160
8006eaf2db42 (diary-face, calendar-today-face, holiday-face):
Miles Bader <miles@gnu.org>
parents: 33114
diff changeset
211 "Face for indicating dates that have holidays."
8006eaf2db42 (diary-face, calendar-today-face, holiday-face):
Miles Bader <miles@gnu.org>
parents: 33114
diff changeset
212 :group 'diary)
63221
6e968f79cfbc Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-385
Miles Bader <miles@gnu.org>
parents: 62779
diff changeset
213 ;; backward-compatibility alias
6e968f79cfbc Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-385
Miles Bader <miles@gnu.org>
parents: 62779
diff changeset
214 (put 'holiday-face 'face-alias 'holiday)
19059
06cb7a02a079 (diary-face, calendar-today-face, holiday-face):
Richard M. Stallman <rms@gnu.org>
parents: 18940
diff changeset
215
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
216 (defcustom diary-entry-marker
37430
a0e805e3a7f1 (diary-entry-marker, calendar-today-marker, calendar-holiday-marker): Use
Eli Zaretskii <eliz@gnu.org>
parents: 37001
diff changeset
217 (if (not (display-color-p))
5694
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
218 "+"
63221
6e968f79cfbc Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-385
Miles Bader <miles@gnu.org>
parents: 62779
diff changeset
219 'diary)
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
220 "How to mark dates that have diary entries.
19059
06cb7a02a079 (diary-face, calendar-today-face, holiday-face):
Richard M. Stallman <rms@gnu.org>
parents: 18940
diff changeset
221 The value can be either a single-character string or a face."
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
222 :type '(choice string face)
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
223 :group 'diary)
5694
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
224
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
225 (defcustom calendar-today-marker
37430
a0e805e3a7f1 (diary-entry-marker, calendar-today-marker, calendar-holiday-marker): Use
Eli Zaretskii <eliz@gnu.org>
parents: 37001
diff changeset
226 (if (not (display-color-p))
5694
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
227 "="
63221
6e968f79cfbc Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-385
Miles Bader <miles@gnu.org>
parents: 62779
diff changeset
228 'calendar-today)
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
229 "How to mark today's date in the calendar.
19059
06cb7a02a079 (diary-face, calendar-today-face, holiday-face):
Richard M. Stallman <rms@gnu.org>
parents: 18940
diff changeset
230 The value can be either a single-character string or a face.
06cb7a02a079 (diary-face, calendar-today-face, holiday-face):
Richard M. Stallman <rms@gnu.org>
parents: 18940
diff changeset
231 Marking today's date is done only if you set up `today-visible-calendar-hook'
06cb7a02a079 (diary-face, calendar-today-face, holiday-face):
Richard M. Stallman <rms@gnu.org>
parents: 18940
diff changeset
232 to request that."
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
233 :type '(choice string face)
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
234 :group 'calendar)
5694
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
235
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
236 (defcustom calendar-holiday-marker
37430
a0e805e3a7f1 (diary-entry-marker, calendar-today-marker, calendar-holiday-marker): Use
Eli Zaretskii <eliz@gnu.org>
parents: 37001
diff changeset
237 (if (not (display-color-p))
5694
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
238 "*"
63221
6e968f79cfbc Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-385
Miles Bader <miles@gnu.org>
parents: 62779
diff changeset
239 'holiday)
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
240 "How to mark notable dates in the calendar.
19059
06cb7a02a079 (diary-face, calendar-today-face, holiday-face):
Richard M. Stallman <rms@gnu.org>
parents: 18940
diff changeset
241 The value can be either a single-character string or a face."
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
242 :type '(choice string face)
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
243 :group 'calendar)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
244
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
245 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
246 (defcustom view-calendar-holidays-initially nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
247 "Non-nil means display holidays for current three month period on entry.
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
248 The holidays are displayed in another window when the calendar is first
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
249 displayed."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
250 :type 'boolean
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
251 :group 'holidays)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
252
732
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
253 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
254 (defcustom mark-holidays-in-calendar nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
255 "Non-nil means mark dates of holidays in the calendar window.
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
256 The marking symbol is specified by the variable `calendar-holiday-marker'."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
257 :type 'boolean
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
258 :group 'holidays)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
259
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
260 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
261 (defcustom all-hebrew-calendar-holidays nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
262 "If nil, show only major holidays from the Hebrew calendar.
6737
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
263 This means only those Jewish holidays that appear on secular calendars.
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
264
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
265 If t, show all the holidays that would appear in a complete Hebrew calendar."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
266 :type 'boolean
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
267 :group 'holidays)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
268
732
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
269 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
270 (defcustom all-christian-calendar-holidays nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
271 "If nil, show only major holidays from the Christian calendar.
6737
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
272 This means only those Christian holidays that appear on secular calendars.
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
273
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
274 If t, show all the holidays that would appear in a complete Christian
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
275 calendar."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
276 :type 'boolean
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
277 :group 'holidays)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
278
732
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
279 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
280 (defcustom all-islamic-calendar-holidays nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
281 "If nil, show only major holidays from the Islamic calendar.
6737
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
282 This means only those Islamic holidays that appear on secular calendars.
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
283
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
284 If t, show all the holidays that would appear in a complete Islamic
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
285 calendar."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
286 :type 'boolean
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
287 :group 'holidays)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
288
49736
dd8404d4fed8 (diary-face-attrs): New custom.
Juanma Barranquero <lekktu@gmail.com>
parents: 49350
diff changeset
289 (defcustom diary-file-name-prefix-function (function (lambda (str) str))
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
290 "The function that will take a diary file name and return the desired prefix."
49828
88148dcfdd3a (diary-file-name-prefix-function): Fix custom type.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 49736
diff changeset
291 :type 'function
49736
dd8404d4fed8 (diary-face-attrs): New custom.
Juanma Barranquero <lekktu@gmail.com>
parents: 49350
diff changeset
292 :group 'diary)
dd8404d4fed8 (diary-face-attrs): New custom.
Juanma Barranquero <lekktu@gmail.com>
parents: 49350
diff changeset
293
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
294 ;;;###autoload
55431
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
295 (defcustom all-bahai-calendar-holidays nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
296 "If nil, show only major holidays from the Baha'i calendar.
55431
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
297 These are the days on which work and school must be suspended.
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
298
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
299 If t, show all the holidays that would appear in a complete Baha'i
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
300 calendar."
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
301 :type 'boolean
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
302 :group 'holidays)
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
303
76752
f6dad15ba551 (calendar-mode-hook): Declare it.
Glenn Morris <rgm@gnu.org>
parents: 76641
diff changeset
304 (defcustom calendar-mode-hook nil
f6dad15ba551 (calendar-mode-hook): Declare it.
Glenn Morris <rgm@gnu.org>
parents: 76641
diff changeset
305 "Hook run when entering `calendar-mode'."
f6dad15ba551 (calendar-mode-hook): Declare it.
Glenn Morris <rgm@gnu.org>
parents: 76641
diff changeset
306 :type 'hook
f6dad15ba551 (calendar-mode-hook): Declare it.
Glenn Morris <rgm@gnu.org>
parents: 76641
diff changeset
307 :group 'calendar-hooks)
f6dad15ba551 (calendar-mode-hook): Declare it.
Glenn Morris <rgm@gnu.org>
parents: 76641
diff changeset
308
55431
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
309 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
310 (defcustom calendar-load-hook nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
311 "List of functions to be called after the calendar is first loaded.
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
312 This is the place to add key bindings to `calendar-mode-map'."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
313 :type 'hook
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
314 :group 'calendar-hooks)
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
315
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
316 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
317 (defcustom initial-calendar-window-hook nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
318 "List of functions to be called when the calendar window is first opened.
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
319 The functions invoked are called after the calendar window is opened, but
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
320 once opened is never called again. Leaving the calendar with the `q' command
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
321 and reentering it will cause these functions to be called again."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
322 :type 'hook
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
323 :group 'calendar-hooks)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
324
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
325 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
326 (defcustom today-visible-calendar-hook nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
327 "List of functions called whenever the current date is visible.
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
328 This can be used, for example, to replace today's date with asterisks; a
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
329 function `calendar-star-date' is included for this purpose:
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
330 (setq today-visible-calendar-hook 'calendar-star-date)
7404
ce1457fb5ea4 Doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 7132
diff changeset
331 It can also be used to mark the current date with `calendar-today-marker';
5694
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
332 a function is also provided for this:
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
333 (setq today-visible-calendar-hook 'calendar-mark-today)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
334
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
335 The corresponding variable `today-invisible-calendar-hook' is the list of
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
336 functions called when the calendar function was called when the current
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
337 date is not visible in the window.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
338
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
339 Other than the use of the provided functions, the changing of any
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
340 characters in the calendar buffer by the hooks may cause the failure of the
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
341 functions that move by days and weeks."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
342 :type 'hook
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
343 :group 'calendar-hooks)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
344
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
345 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
346 (defcustom today-invisible-calendar-hook nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
347 "List of functions called whenever the current date is not visible.
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
348
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
349 The corresponding variable `today-visible-calendar-hook' is the list of
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
350 functions called when the calendar function was called when the current
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
351 date is visible in the window.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
352
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
353 Other than the use of the provided functions, the changing of any
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
354 characters in the calendar buffer by the hooks may cause the failure of the
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
355 functions that move by days and weeks."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
356 :type 'hook
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
357 :group 'calendar-hooks)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
358
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
359 ;;;###autoload
25410
3ab4413f7549 (calendar-move-hook): New hook.
Richard M. Stallman <rms@gnu.org>
parents: 25154
diff changeset
360 (defcustom calendar-move-hook nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
361 "List of functions called whenever the cursor moves in the calendar.
25410
3ab4413f7549 (calendar-move-hook): New hook.
Richard M. Stallman <rms@gnu.org>
parents: 25154
diff changeset
362
26427
3b6cf16f3633 * calendar/calendar.el (calendar-remove-frame-by-deleting):
Sam Steingold <sds@gnu.org>
parents: 26329
diff changeset
363 For example,
25410
3ab4413f7549 (calendar-move-hook): New hook.
Richard M. Stallman <rms@gnu.org>
parents: 25154
diff changeset
364
65477
a08c0922f1c4 (calendar-for-loop): Add edebug info.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64826
diff changeset
365 (add-hook 'calendar-move-hook (lambda () (diary-view-entries 1)))
25410
3ab4413f7549 (calendar-move-hook): New hook.
Richard M. Stallman <rms@gnu.org>
parents: 25154
diff changeset
366
3ab4413f7549 (calendar-move-hook): New hook.
Richard M. Stallman <rms@gnu.org>
parents: 25154
diff changeset
367 redisplays the diary for whatever date the cursor is moved to."
3ab4413f7549 (calendar-move-hook): New hook.
Richard M. Stallman <rms@gnu.org>
parents: 25154
diff changeset
368 :type 'hook
3ab4413f7549 (calendar-move-hook): New hook.
Richard M. Stallman <rms@gnu.org>
parents: 25154
diff changeset
369 :group 'calendar-hooks)
3ab4413f7549 (calendar-move-hook): New hook.
Richard M. Stallman <rms@gnu.org>
parents: 25154
diff changeset
370
3ab4413f7549 (calendar-move-hook): New hook.
Richard M. Stallman <rms@gnu.org>
parents: 25154
diff changeset
371 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
372 (defcustom diary-file "~/diary"
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
373 "Name of the file in which one's personal diary of dates is kept.
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
374
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
375 The file's entries are lines beginning with any of the forms
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
376 specified by the variable `american-date-diary-pattern', by default:
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
377
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
378 MONTH/DAY
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
379 MONTH/DAY/YEAR
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
380 MONTHNAME DAY
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
381 MONTHNAME DAY, YEAR
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
382 DAYNAME
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
383
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
384 with the remainder of the line being the diary entry string for
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
385 that date. MONTH and DAY are one or two digit numbers, YEAR is a
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
386 number and may be written in full or abbreviated to the final two
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
387 digits (if `abbreviated-calendar-year' is non-nil). MONTHNAME
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
388 and DAYNAME can be spelled in full (as specified by the variables
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
389 `calendar-month-name-array' and `calendar-day-name-array'),
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
390 abbreviated (as specified by `calendar-month-abbrev-array' and
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
391 `calendar-day-abbrev-array') with or without a period,
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
392 capitalized or not. Any of DAY, MONTH, or MONTHNAME, YEAR can be
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
393 `*' which matches any day, month, or year, respectively. If the
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
394 date does not contain a year, it is generic and applies to any
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
395 year. A DAYNAME entry applies to the appropriate day of the week
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
396 in every week.
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
397
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
398 The European style (in which the day precedes the month) can be
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
399 used instead, if you execute `european-calendar' when in the
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
400 calendar, or set `european-calendar-style' to t in your .emacs
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
401 file. The European forms (see `european-date-diary-pattern') are
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
402
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
403 DAY/MONTH
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
404 DAY/MONTH/YEAR
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
405 DAY MONTHNAME
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
406 DAY MONTHNAME YEAR
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
407 DAYNAME
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
408
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
409 To revert to the default American style from the European style, execute
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
410 `american-calendar' in the calendar.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
411
7404
ce1457fb5ea4 Doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 7132
diff changeset
412 A diary entry can be preceded by the character
ce1457fb5ea4 Doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 7132
diff changeset
413 `diary-nonmarking-symbol' (ordinarily `&') to make that entry
ce1457fb5ea4 Doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 7132
diff changeset
414 nonmarking--that is, it will not be marked on dates in the calendar
ce1457fb5ea4 Doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 7132
diff changeset
415 window but will appear in a diary window.
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
416
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
417 Multiline diary entries are made by indenting lines after the first with
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
418 either a TAB or one or more spaces.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
419
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
420 Lines not in one the above formats are ignored. Here are some sample diary
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
421 entries (in the default American style):
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
422
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
423 12/22/1988 Twentieth wedding anniversary!!
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
424 &1/1. Happy New Year!
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
425 10/22 Ruth's birthday.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
426 21: Payday
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
427 Tuesday--weekly meeting with grad students at 10am
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
428 Supowit, Shen, Bitner, and Kapoor to attend.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
429 1/13/89 Friday the thirteenth!!
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
430 &thu 4pm squash game with Lloyd.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
431 mar 16 Dad's birthday
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
432 April 15, 1989 Income tax due.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
433 &* 15 time cards due.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
434
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
435 If the first line of a diary entry consists only of the date or day name with
6737
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
436 no trailing blanks or punctuation, then that line is not displayed in the
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
437 diary window; only the continuation lines is shown. For example, the
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
438 single diary entry
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
439
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
440 02/11/1989
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
441 Bill Blattner visits Princeton today
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
442 2pm Cognitive Studies Committee meeting
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
443 2:30-5:30 Lizzie at Lawrenceville for `Group Initiative'
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
444 4:00pm Jamie Tappenden
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
445 7:30pm Dinner at George and Ed's for Alan Ryan
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
446 7:30-10:00pm dance at Stewart Country Day School
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
447
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
448 will appear in the diary window without the date line at the beginning. This
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
449 facility allows the diary window to look neater, but can cause confusion if
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
450 used with more than one day's entries displayed.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
451
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
452 Diary entries can be based on Lisp sexps. For example, the diary entry
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
453
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
454 %%(diary-block 11 1 1990 11 10 1990) Vacation
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
455
55431
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
456 causes the diary entry \"Vacation\" to appear from November 1 through
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
457 November 10, 1990. Other functions available are `diary-float',
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
458 `diary-anniversary', `diary-cyclic', `diary-day-of-year',
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
459 `diary-iso-date', `diary-french-date', `diary-hebrew-date',
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
460 `diary-islamic-date', `diary-bahai-date', `diary-mayan-date',
13042
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
461 `diary-chinese-date', `diary-coptic-date', `diary-ethiopic-date',
14915
5a4b28f19b75 Add references to Persian calendar.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 14687
diff changeset
462 `diary-persian-date', `diary-yahrzeit', `diary-sunrise-sunset',
55431
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
463 `diary-phases-of-moon', `diary-parasha', `diary-omer',
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
464 `diary-rosh-hodesh', and `diary-sabbath-candles'. See the
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
465 documentation for the function `list-sexp-diary-entries' for more
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
466 details.
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
467
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
468 Diary entries based on the Hebrew, the Islamic and/or the Baha'i
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
469 calendar are also possible, but because these are somewhat slow, they
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
470 are ignored unless you set the `nongregorian-diary-listing-hook' and
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
471 the `nongregorian-diary-marking-hook' appropriately. See the
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
472 documentation for these functions for details.
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
473
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
474 Diary files can contain directives to include the contents of other files; for
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
475 details, see the documentation for the variable `list-diary-entries-hook'."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
476 :type 'file
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
477 :group 'diary)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
478
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
479 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
480 (defcustom diary-nonmarking-symbol "&"
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
481 "Symbol indicating that a diary entry is not to be marked in the calendar."
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
482 :type 'string
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
483 :group 'diary)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
484
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
485 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
486 (defcustom hebrew-diary-entry-symbol "H"
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
487 "Symbol indicating a diary entry according to the Hebrew calendar."
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
488 :type 'string
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
489 :group 'diary)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
490
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
491 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
492 (defcustom islamic-diary-entry-symbol "I"
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
493 "Symbol indicating a diary entry according to the Islamic calendar."
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
494 :type 'string
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
495 :group 'diary)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
496
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
497 ;;;###autoload
55431
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
498 (defcustom bahai-diary-entry-symbol "B"
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
499 "Symbol indicating a diary entry according to the Baha'i calendar."
55431
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
500 :type 'string
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
501 :group 'diary)
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
502
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
503 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
504 (defcustom diary-include-string "#include"
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
505 "The string indicating inclusion of another file of diary entries.
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
506 See the documentation for the function `include-other-diary-files'."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
507 :type 'string
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
508 :group 'diary)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
509
49736
dd8404d4fed8 (diary-face-attrs): New custom.
Juanma Barranquero <lekktu@gmail.com>
parents: 49350
diff changeset
510 (defcustom diary-glob-file-regexp-prefix "^\\#"
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
511 "The regular expression that gets pre-pended to each of the attribute-regexp's for file-wide specifiers."
49736
dd8404d4fed8 (diary-face-attrs): New custom.
Juanma Barranquero <lekktu@gmail.com>
parents: 49350
diff changeset
512 :type 'regexp
dd8404d4fed8 (diary-face-attrs): New custom.
Juanma Barranquero <lekktu@gmail.com>
parents: 49350
diff changeset
513 :group 'diary)
dd8404d4fed8 (diary-face-attrs): New custom.
Juanma Barranquero <lekktu@gmail.com>
parents: 49350
diff changeset
514
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
515 (defcustom diary-face-attrs
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
516 '((" *\\[foreground:\\([-a-z]+\\)\\]$" 1 :foreground string)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
517 (" *\\[background:\\([-a-z]+\\)\\]$" 1 :background string)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
518 (" *\\[width:\\([-a-z]+\\)\\]$" 1 :width symbol)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
519 (" *\\[height:\\([-0-9a-z]+\\)\\]$" 1 :height int)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
520 (" *\\[weight:\\([-a-z]+\\)\\]$" 1 :weight symbol)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
521 (" *\\[slant:\\([-a-z]+\\)\\]$" 1 :slant symbol)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
522 (" *\\[underline:\\([-a-z]+\\)\\]$" 1 :underline stringtnil)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
523 (" *\\[overline:\\([-a-z]+\\)\\]$" 1 :overline stringtnil)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
524 (" *\\[strike-through:\\([-a-z]+\\)\\]$" 1 :strike-through stringtnil)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
525 (" *\\[inverse-video:\\([-a-z]+\\)\\]$" 1 :inverse-video tnil)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
526 (" *\\[face:\\([-0-9a-z]+\\)\\]$" 1 :face string)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
527 (" *\\[font:\\([-a-z0-9]+\\)\\]$" 1 :font string)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
528 ;; Unsupported.
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
529 ;;; (" *\\[box:\\([-a-z]+\\)\\]$" 1 :box)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
530 ;;; (" *\\[stipple:\\([-a-z]+\\)\\]$" 1 :stipple)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
531 )
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
532 "A list of (regexp regnum attr attrtype) lists where the
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
533 regexp says how to find the tag, the regnum says which
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
534 parenthetical sub-regexp this regexp looks for, and the attr says
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
535 which attribute of the face (or that this _is_ a face) is being
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
536 modified."
49736
dd8404d4fed8 (diary-face-attrs): New custom.
Juanma Barranquero <lekktu@gmail.com>
parents: 49350
diff changeset
537 :type 'sexp
dd8404d4fed8 (diary-face-attrs): New custom.
Juanma Barranquero <lekktu@gmail.com>
parents: 49350
diff changeset
538 :group 'diary)
dd8404d4fed8 (diary-face-attrs): New custom.
Juanma Barranquero <lekktu@gmail.com>
parents: 49350
diff changeset
539
dd8404d4fed8 (diary-face-attrs): New custom.
Juanma Barranquero <lekktu@gmail.com>
parents: 49350
diff changeset
540 (defcustom diary-file-name-prefix nil
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
541 "If non-nil each diary entry is prefixed with the name of the file where it is defined."
49736
dd8404d4fed8 (diary-face-attrs): New custom.
Juanma Barranquero <lekktu@gmail.com>
parents: 49350
diff changeset
542 :type 'boolean
dd8404d4fed8 (diary-face-attrs): New custom.
Juanma Barranquero <lekktu@gmail.com>
parents: 49350
diff changeset
543 :group 'diary)
dd8404d4fed8 (diary-face-attrs): New custom.
Juanma Barranquero <lekktu@gmail.com>
parents: 49350
diff changeset
544
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
545 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
546 (defcustom sexp-diary-entry-symbol "%%"
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
547 "The string used to indicate a sexp diary entry in `diary-file'.
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
548 See the documentation for the function `list-sexp-diary-entries'."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
549 :type 'string
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
550 :group 'diary)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
551
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
552 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
553 (defcustom abbreviated-calendar-year t
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
554 "Interpret a two-digit year DD in a diary entry as either 19DD or 20DD.
55431
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
555 For the Gregorian calendar; similarly for the Hebrew, Islamic and
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
556 Baha'i calendars. If this variable is nil, years must be written in
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
557 full."
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
558 :type 'boolean
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
559 :group 'diary)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
560
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
561 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
562 (defcustom european-calendar-style nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
563 "Use the European style of dates in the diary and in any displays.
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
564 If this variable is t, a date 1/2/1990 would be interpreted as February 1,
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
565 1990. The default European date styles (see `european-date-diary-pattern')
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
566 are
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
567
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
568 DAY/MONTH
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
569 DAY/MONTH/YEAR
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
570 DAY MONTHNAME
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
571 DAY MONTHNAME YEAR
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
572 DAYNAME
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
573
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
574 Names can be capitalized or not, written in full (as specified by the
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
575 variable `calendar-day-name-array'), or abbreviated (as specified by
73176
3dbfd59b44b5 (european-calendar-style): Call european-calendar or american-calendar
Glenn Morris <rgm@gnu.org>
parents: 71569
diff changeset
576 `calendar-day-abbrev-array') with or without a period.
3dbfd59b44b5 (european-calendar-style): Call european-calendar or american-calendar
Glenn Morris <rgm@gnu.org>
parents: 71569
diff changeset
577
3dbfd59b44b5 (european-calendar-style): Call european-calendar or american-calendar
Glenn Morris <rgm@gnu.org>
parents: 71569
diff changeset
578 Setting this variable directly does not take effect (if the
3dbfd59b44b5 (european-calendar-style): Call european-calendar or american-calendar
Glenn Morris <rgm@gnu.org>
parents: 71569
diff changeset
579 calendar package is already loaded). Rather, use either
3dbfd59b44b5 (european-calendar-style): Call european-calendar or american-calendar
Glenn Morris <rgm@gnu.org>
parents: 71569
diff changeset
580 \\[customize] or the functions `european-calendar' and
3dbfd59b44b5 (european-calendar-style): Call european-calendar or american-calendar
Glenn Morris <rgm@gnu.org>
parents: 71569
diff changeset
581 `american-calendar'."
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
582 :type 'boolean
73176
3dbfd59b44b5 (european-calendar-style): Call european-calendar or american-calendar
Glenn Morris <rgm@gnu.org>
parents: 71569
diff changeset
583 ;; Without :initialize (require 'calendar) throws an error because
3dbfd59b44b5 (european-calendar-style): Call european-calendar or american-calendar
Glenn Morris <rgm@gnu.org>
parents: 71569
diff changeset
584 ;; american-calendar is undefined at this point.
3dbfd59b44b5 (european-calendar-style): Call european-calendar or american-calendar
Glenn Morris <rgm@gnu.org>
parents: 71569
diff changeset
585 :initialize 'custom-initialize-default
73181
97319c05f531 (european-calendar-style): Tweak previous fix.
Glenn Morris <rgm@gnu.org>
parents: 73176
diff changeset
586 :set (lambda (symbol value)
97319c05f531 (european-calendar-style): Tweak previous fix.
Glenn Morris <rgm@gnu.org>
parents: 73176
diff changeset
587 (if value
97319c05f531 (european-calendar-style): Tweak previous fix.
Glenn Morris <rgm@gnu.org>
parents: 73176
diff changeset
588 (european-calendar)
97319c05f531 (european-calendar-style): Tweak previous fix.
Glenn Morris <rgm@gnu.org>
parents: 73176
diff changeset
589 (american-calendar)))
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
590 :group 'diary)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
591
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
592 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
593 (defcustom american-date-diary-pattern
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
594 '((month "/" day "[^/0-9]")
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
595 (month "/" day "/" year "[^0-9]")
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
596 (monthname " *" day "[^,0-9]")
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
597 (monthname " *" day ", *" year "[^0-9]")
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
598 (dayname "\\W"))
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
599 "List of pseudo-patterns describing the American patterns of date used.
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
600 See the documentation of `diary-date-forms' for an explanation."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
601 :type '(repeat (choice (cons :tag "Backup"
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
602 :value (backup . nil)
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
603 (const backup)
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
604 (repeat (list :inline t :format "%v"
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
605 (symbol :tag "Keyword")
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
606 (choice symbol regexp))))
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
607 (repeat (list :inline t :format "%v"
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
608 (symbol :tag "Keyword")
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
609 (choice symbol regexp)))))
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
610 :group 'diary)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
611
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
612 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
613 (defcustom european-date-diary-pattern
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
614 '((day "/" month "[^/0-9]")
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
615 (day "/" month "/" year "[^0-9]")
25154
4c873bb645d8 (european-date-diary-pattern): Fix pattern so it
Richard M. Stallman <rms@gnu.org>
parents: 24891
diff changeset
616 (backup day " *" monthname "\\W+\\<\\([^*0-9]\\|\\([0-9]+[:aApP]\\)\\)")
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
617 (day " *" monthname " *" year "[^0-9]")
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
618 (dayname "\\W"))
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
619 "List of pseudo-patterns describing the European patterns of date used.
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
620 See the documentation of `diary-date-forms' for an explanation."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
621 :type '(repeat (choice (cons :tag "Backup"
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
622 :value (backup . nil)
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
623 (const backup)
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
624 (repeat (list :inline t :format "%v"
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
625 (symbol :tag "Keyword")
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
626 (choice symbol regexp))))
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
627 (repeat (list :inline t :format "%v"
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
628 (symbol :tag "Keyword")
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
629 (choice symbol regexp)))))
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
630 :group 'diary)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
631
77044
e0a720fbf325 (diary-font-lock-keywords, diary-live-p): Autoload these functions.
Glenn Morris <rgm@gnu.org>
parents: 76752
diff changeset
632 (autoload 'diary-font-lock-keywords "diary-lib")
e0a720fbf325 (diary-font-lock-keywords, diary-live-p): Autoload these functions.
Glenn Morris <rgm@gnu.org>
parents: 76752
diff changeset
633 (autoload 'diary-live-p "diary-lib")
e0a720fbf325 (diary-font-lock-keywords, diary-live-p): Autoload these functions.
Glenn Morris <rgm@gnu.org>
parents: 76752
diff changeset
634 (defvar diary-font-lock-keywords)
e0a720fbf325 (diary-font-lock-keywords, diary-live-p): Autoload these functions.
Glenn Morris <rgm@gnu.org>
parents: 76752
diff changeset
635
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
636 (defcustom diary-date-forms
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
637 (if european-calendar-style
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
638 european-date-diary-pattern
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
639 american-date-diary-pattern)
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
640 "List of pseudo-patterns describing the forms of date used in the diary.
44371
aefe45855309 Fix typos.
Juanma Barranquero <lekktu@gmail.com>
parents: 44369
diff changeset
641 The patterns on the list must be MUTUALLY EXCLUSIVE and should not match
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
642 any portion of the diary entry itself, just the date component.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
643
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
644 A pseudo-pattern is a list of regular expressions and the keywords `month',
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
645 `day', `year', `monthname', and `dayname'. The keyword `monthname' will
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
646 match the name of the month (see `calendar-month-name-array'), capitalized
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
647 or not, or its user-specified abbreviation (see `calendar-month-abbrev-array'),
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
648 followed by a period or not; it will also match `*'. Similarly, `dayname'
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
649 will match the name of the day (see `calendar-day-name-array'), capitalized or
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
650 not, or its user-specified abbreviation (see `calendar-day-abbrev-array'),
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
651 followed by a period or not. The keywords `month', `day', and `year' will
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
652 match those numerical values, preceded by arbitrarily many zeros; they will
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
653 also match `*'.
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
654
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
655 The matching of the diary entries with the date forms is done with the
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
656 standard syntax table from Fundamental mode, but with the `*' changed so
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
657 that it is a word constituent.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
658
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
659 If, to be mutually exclusive, a pseudo-pattern must match a portion of the
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
660 diary entry itself, the first element of the pattern MUST be `backup'. This
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
661 directive causes the date recognizer to back up to the beginning of the
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
662 current word of the diary entry, so in no case can the pattern match more than
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
663 a portion of the first word of the diary entry."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
664 :type '(repeat (choice (cons :tag "Backup"
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
665 :value (backup . nil)
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
666 (const backup)
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
667 (repeat (list :inline t :format "%v"
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
668 (symbol :tag "Keyword")
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
669 (choice symbol regexp))))
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
670 (repeat (list :inline t :format "%v"
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
671 (symbol :tag "Keyword")
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
672 (choice symbol regexp)))))
77044
e0a720fbf325 (diary-font-lock-keywords, diary-live-p): Autoload these functions.
Glenn Morris <rgm@gnu.org>
parents: 76752
diff changeset
673 :initialize 'custom-initialize-default
e0a720fbf325 (diary-font-lock-keywords, diary-live-p): Autoload these functions.
Glenn Morris <rgm@gnu.org>
parents: 76752
diff changeset
674 :set (lambda (symbol value)
e0a720fbf325 (diary-font-lock-keywords, diary-live-p): Autoload these functions.
Glenn Morris <rgm@gnu.org>
parents: 76752
diff changeset
675 (unless (equal value (eval symbol))
e0a720fbf325 (diary-font-lock-keywords, diary-live-p): Autoload these functions.
Glenn Morris <rgm@gnu.org>
parents: 76752
diff changeset
676 (custom-set-default symbol value)
e0a720fbf325 (diary-font-lock-keywords, diary-live-p): Autoload these functions.
Glenn Morris <rgm@gnu.org>
parents: 76752
diff changeset
677 (setq diary-font-lock-keywords (diary-font-lock-keywords))
e0a720fbf325 (diary-font-lock-keywords, diary-live-p): Autoload these functions.
Glenn Morris <rgm@gnu.org>
parents: 76752
diff changeset
678 ;; Need to redraw not just to get new font-locking, but also
e0a720fbf325 (diary-font-lock-keywords, diary-live-p): Autoload these functions.
Glenn Morris <rgm@gnu.org>
parents: 76752
diff changeset
679 ;; to pick up any newly recognized entries.
e0a720fbf325 (diary-font-lock-keywords, diary-live-p): Autoload these functions.
Glenn Morris <rgm@gnu.org>
parents: 76752
diff changeset
680 (and (diary-live-p)
e0a720fbf325 (diary-font-lock-keywords, diary-live-p): Autoload these functions.
Glenn Morris <rgm@gnu.org>
parents: 76752
diff changeset
681 (diary))))
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
682 :group 'diary)
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
683
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
684 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
685 (defcustom european-calendar-display-form
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
686 '((if dayname (concat dayname ", ")) day " " monthname " " year)
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
687 "Pseudo-pattern governing the way a date appears in the European style.
48366
9dad713d153a Patch of Alan Shutko <ats@acm.org> by way of rms.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 47333
diff changeset
688 See the documentation of `calendar-date-display-form' for an explanation."
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
689 :type 'sexp
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
690 :group 'calendar)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
691
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
692 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
693 (defcustom american-calendar-display-form
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
694 '((if dayname (concat dayname ", ")) monthname " " day ", " year)
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
695 "Pseudo-pattern governing the way a date appears in the American style.
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
696 See the documentation of `calendar-date-display-form' for an explanation."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
697 :type 'sexp
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
698 :group 'calendar)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
699
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
700 (defcustom calendar-date-display-form
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
701 (if european-calendar-style
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
702 european-calendar-display-form
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
703 american-calendar-display-form)
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
704 "Pseudo-pattern governing the way a date appears.
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
705
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
706 Used by the function `calendar-date-string', a pseudo-pattern is a list of
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
707 expressions that can involve the keywords `month', `day', and `year', all
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
708 numbers in string form, and `monthname' and `dayname', both alphabetic
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
709 strings. For example, the ISO standard would use the pseudo- pattern
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
710
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
711 '(year \"-\" month \"-\" day)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
712
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
713 while a typical American form would be
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
714
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
715 '(month \"/\" day \"/\" (substring year -2))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
716
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
717 and
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
718
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
719 '((format \"%9s, %9s %2s, %4s\" dayname monthname day year))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
720
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
721 would give the usual American style in fixed-length fields.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
722
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
723 See the documentation of the function `calendar-date-string'."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
724 :type 'sexp
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
725 :group 'calendar)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
726
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
727 (defun european-calendar ()
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
728 "Set the interpretation and display of dates to the European style."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
729 (interactive)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
730 (setq european-calendar-style t)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
731 (setq calendar-date-display-form european-calendar-display-form)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
732 (setq diary-date-forms european-date-diary-pattern)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
733 (update-calendar-mode-line))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
734
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
735 (defun american-calendar ()
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
736 "Set the interpretation and display of dates to the American style."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
737 (interactive)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
738 (setq european-calendar-style nil)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
739 (setq calendar-date-display-form american-calendar-display-form)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
740 (setq diary-date-forms american-date-diary-pattern)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
741 (update-calendar-mode-line))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
742
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
743 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
744 (defcustom print-diary-entries-hook 'lpr-buffer
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
745 "List of functions called after a temporary diary buffer is prepared.
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
746 The buffer shows only the diary entries currently visible in the diary
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
747 buffer. The default just does the printing. Other uses might include, for
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
748 example, rearranging the lines into order by day and time, saving the buffer
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
749 instead of deleting it, or changing the function used to do the printing."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
750 :type 'hook
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
751 :group 'diary)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
752
732
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
753 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
754 (defcustom list-diary-entries-hook nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
755 "List of functions called after diary file is culled for relevant entries.
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
756 It is to be used for diary entries that are not found in the diary file.
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
757
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
758 A function `include-other-diary-files' is provided for use as the value of
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
759 this hook. This function enables you to use shared diary files together
7404
ce1457fb5ea4 Doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 7132
diff changeset
760 with your own. The files included are specified in the diary file by lines
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
761 of the form
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
762
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
763 #include \"filename\"
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
764
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
765 This is recursive; that is, #include directives in files thus included are
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
766 obeyed. You can change the \"#include\" to some other string by changing
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
767 the variable `diary-include-string'. When you use `include-other-diary-files'
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
768 as part of the list-diary-entries-hook, you will probably also want to use the
7404
ce1457fb5ea4 Doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 7132
diff changeset
769 function `mark-included-diary-files' as part of `mark-diary-entries-hook'.
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
770
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
771 For example, you could use
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
772
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
773 (setq list-diary-entries-hook
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
774 '(include-other-diary-files sort-diary-entries))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
775 (setq diary-display-hook 'fancy-diary-display)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
776
7404
ce1457fb5ea4 Doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 7132
diff changeset
777 in your `.emacs' file to cause the fancy diary buffer to be displayed with
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
778 diary entries from various included files, each day's entries sorted into
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
779 lexicographic order."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
780 :type 'hook
52160
833b56d6e12d (list-diary-entries-hook, diary-display-hook, nongregorian-diary-listing-hook)
Glenn Morris <rgm@gnu.org>
parents: 52115
diff changeset
781 :options '(include-other-diary-files sort-diary-entries)
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
782 :group 'diary)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
783
732
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
784 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
785 (defcustom diary-hook nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
786 "List of functions called after the display of the diary.
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
787 Can be used for appointment notification."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
788 :type 'hook
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
789 :group 'diary)
4453
7f41b3648380 (diary-display-hook): Change default and fix doc string.
Richard M. Stallman <rms@gnu.org>
parents: 4339
diff changeset
790
76641
6d2ab8b45146 (diary-set-maybe-redraw): Autoload it.
Glenn Morris <rgm@gnu.org>
parents: 76477
diff changeset
791 (autoload 'diary-set-maybe-redraw "diary-lib")
6d2ab8b45146 (diary-set-maybe-redraw): Autoload it.
Glenn Morris <rgm@gnu.org>
parents: 76477
diff changeset
792
4453
7f41b3648380 (diary-display-hook): Change default and fix doc string.
Richard M. Stallman <rms@gnu.org>
parents: 4339
diff changeset
793 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
794 (defcustom diary-display-hook nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
795 "List of functions that handle the display of the diary.
6737
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
796 If nil (the default), `simple-diary-display' is used. Use `ignore' for no
4453
7f41b3648380 (diary-display-hook): Change default and fix doc string.
Richard M. Stallman <rms@gnu.org>
parents: 4339
diff changeset
797 diary display.
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
798
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
799 Ordinarily, this just displays the diary buffer (with holidays indicated in
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
800 the mode line), if there are any relevant entries. At the time these
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
801 functions are called, the variable `diary-entries-list' is a list, in order
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
802 by date, of all relevant diary entries in the form of ((MONTH DAY YEAR)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
803 STRING), where string is the diary entry for the given date. This can be
4453
7f41b3648380 (diary-display-hook): Change default and fix doc string.
Richard M. Stallman <rms@gnu.org>
parents: 4339
diff changeset
804 used, for example, a different buffer for display (perhaps combined with
7f41b3648380 (diary-display-hook): Change default and fix doc string.
Richard M. Stallman <rms@gnu.org>
parents: 4339
diff changeset
805 holidays), or produce hard copy output.
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
806
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
807 A function `fancy-diary-display' is provided as an alternative
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
808 choice for this hook; this function prepares a special noneditable diary
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
809 buffer with the relevant diary entries that has neat day-by-day arrangement
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
810 with headings. The fancy diary buffer will show the holidays unless the
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
811 variable `holidays-in-diary-buffer' is set to nil. Ordinarily, the fancy
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
812 diary buffer will not show days for which there are no diary entries, even
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
813 if that day is a holiday; if you want such days to be shown in the fancy
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
814 diary buffer, set the variable `diary-list-include-blanks' to t."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
815 :type 'hook
52160
833b56d6e12d (list-diary-entries-hook, diary-display-hook, nongregorian-diary-listing-hook)
Glenn Morris <rgm@gnu.org>
parents: 52115
diff changeset
816 :options '(fancy-diary-display)
76641
6d2ab8b45146 (diary-set-maybe-redraw): Autoload it.
Glenn Morris <rgm@gnu.org>
parents: 76477
diff changeset
817 :initialize 'custom-initialize-default
6d2ab8b45146 (diary-set-maybe-redraw): Autoload it.
Glenn Morris <rgm@gnu.org>
parents: 76477
diff changeset
818 :set 'diary-set-maybe-redraw
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
819 :group 'diary)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
820
732
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
821 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
822 (defcustom nongregorian-diary-listing-hook nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
823 "List of functions called for listing diary file and included files.
55431
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
824 As the files are processed for diary entries, these functions are used
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
825 to cull relevant entries. You can use either or both of
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
826 `list-hebrew-diary-entries', `list-islamic-diary-entries' and
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
827 `list-bahai-diary-entries'. The documentation for these functions
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
828 describes the style of such diary entries."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
829 :type 'hook
55431
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
830 :options '(list-hebrew-diary-entries
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
831 list-islamic-diary-entries
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
832 list-bahai-diary-entries)
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
833 :group 'diary)
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
834
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
835 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
836 (defcustom mark-diary-entries-hook nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
837 "List of functions called after marking diary entries in the calendar.
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
838
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
839 A function `mark-included-diary-files' is also provided for use as the
31730
719a230f8091 Docstring fixes.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 31671
diff changeset
840 `mark-diary-entries-hook'; it enables you to use shared diary files together
7404
ce1457fb5ea4 Doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 7132
diff changeset
841 with your own. The files included are specified in the diary file by lines
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
842 of the form
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
843 #include \"filename\"
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
844 This is recursive; that is, #include directives in files thus included are
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
845 obeyed. You can change the \"#include\" to some other string by changing the
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
846 variable `diary-include-string'. When you use `mark-included-diary-files' as
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
847 part of the mark-diary-entries-hook, you will probably also want to use the
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
848 function `include-other-diary-files' as part of `list-diary-entries-hook'."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
849 :type 'hook
52160
833b56d6e12d (list-diary-entries-hook, diary-display-hook, nongregorian-diary-listing-hook)
Glenn Morris <rgm@gnu.org>
parents: 52115
diff changeset
850 :options '(mark-included-diary-files)
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
851 :group 'diary)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
852
732
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
853 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
854 (defcustom nongregorian-diary-marking-hook nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
855 "List of functions called for marking diary file and included files.
55431
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
856 As the files are processed for diary entries, these functions are used
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
857 to cull relevant entries. You can use either or both of
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
858 `mark-hebrew-diary-entries', `mark-islamic-diary-entries' and
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
859 `mark-bahai-diary-entries'. The documentation for these functions
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
860 describes the style of such diary entries."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
861 :type 'hook
55431
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
862 :options '(mark-hebrew-diary-entries
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
863 mark-islamic-diary-entries
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
864 mark-bahai-diary-entries)
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
865 :group 'diary)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
866
732
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
867 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
868 (defcustom diary-list-include-blanks nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
869 "If nil, do not include days with no diary entry in the list of diary entries.
23121
1e4f226ada30 (diary-list-include-blanks): Doc fix..
Karl Heuer <kwzh@gnu.org>
parents: 22270
diff changeset
870 Such days will then not be shown in the fancy diary buffer, even if they
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
871 are holidays."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
872 :type 'boolean
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
873 :group 'diary)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
874
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
875 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
876 (defcustom holidays-in-diary-buffer t
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
877 "Non-nil means include holidays in the diary display.
6737
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
878 The holidays appear in the mode line of the diary buffer, or in the
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
879 fancy diary buffer next to the date. This slows down the diary functions
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
880 somewhat; setting it to nil makes the diary display faster."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
881 :type 'boolean
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
882 :group 'holidays)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
883
3448
b7d345eaae47 (calendar-mode): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents: 2997
diff changeset
884 (defvar calendar-mark-ring nil)
b7d345eaae47 (calendar-mode): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents: 2997
diff changeset
885
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
886 ;;;###autoload
6737
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
887 (put 'general-holidays 'risky-local-variable t)
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
888 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
889 (defcustom general-holidays
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
890 '((holiday-fixed 1 1 "New Year's Day")
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
891 (holiday-float 1 1 3 "Martin Luther King Day")
20821
18188475b33b Fix mispelling.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 20638
diff changeset
892 (holiday-fixed 2 2 "Groundhog Day")
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
893 (holiday-fixed 2 14 "Valentine's Day")
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
894 (holiday-float 2 1 3 "President's Day")
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
895 (holiday-fixed 3 17 "St. Patrick's Day")
14937
a2cc3eb1633b Spelling fix.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 14915
diff changeset
896 (holiday-fixed 4 1 "April Fools' Day")
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
897 (holiday-float 5 0 2 "Mother's Day")
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
898 (holiday-float 5 1 -1 "Memorial Day")
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
899 (holiday-fixed 6 14 "Flag Day")
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
900 (holiday-float 6 0 3 "Father's Day")
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
901 (holiday-fixed 7 4 "Independence Day")
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
902 (holiday-float 9 1 1 "Labor Day")
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
903 (holiday-float 10 1 2 "Columbus Day")
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
904 (holiday-fixed 10 31 "Halloween")
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
905 (holiday-fixed 11 11 "Veteran's Day")
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
906 (holiday-float 11 4 4 "Thanksgiving"))
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
907 "General holidays. Default value is for the United States.
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
908 See the documentation for `calendar-holidays' for details."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
909 :type 'sexp
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
910 :group 'holidays)
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
911
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
912 ;;;###autoload
13042
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
913 (put 'oriental-holidays 'risky-local-variable t)
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
914 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
915 (defcustom oriental-holidays
13042
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
916 '((if (fboundp 'atan)
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
917 (holiday-chinese-new-year)))
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
918 "Oriental holidays.
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
919 See the documentation for `calendar-holidays' for details."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
920 :type 'sexp
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
921 :group 'holidays)
13042
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
922
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
923 ;;;###autoload
6737
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
924 (put 'local-holidays 'risky-local-variable t)
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
925 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
926 (defcustom local-holidays nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
927 "Local holidays.
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
928 See the documentation for `calendar-holidays' for details."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
929 :type 'sexp
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
930 :group 'holidays)
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
931
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
932 ;;;###autoload
6737
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
933 (put 'other-holidays 'risky-local-variable t)
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
934 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
935 (defcustom other-holidays nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
936 "User defined holidays.
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
937 See the documentation for `calendar-holidays' for details."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
938 :type 'sexp
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
939 :group 'holidays)
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
940
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
941 ;;;###autoload
6737
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
942 (put 'hebrew-holidays-1 'risky-local-variable t)
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
943 ;;;###autoload
4161
8e236d4ce64b (hebrew-holidays): Split into 4 sub-variables.
Richard M. Stallman <rms@gnu.org>
parents: 4086
diff changeset
944 (defvar hebrew-holidays-1
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
945 '((holiday-rosh-hashanah-etc)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
946 (if all-hebrew-calendar-holidays
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
947 (holiday-julian
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
948 11
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
949 (let* ((m displayed-month)
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
950 (y displayed-year)
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
951 (year))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
952 (increment-calendar-month m y -1)
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
953 (let ((year (extract-calendar-year
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
954 (calendar-julian-from-absolute
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
955 (calendar-absolute-from-gregorian
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
956 (list m 1 y))))))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
957 (if (zerop (% (1+ year) 4))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
958 22
4161
8e236d4ce64b (hebrew-holidays): Split into 4 sub-variables.
Richard M. Stallman <rms@gnu.org>
parents: 4086
diff changeset
959 21))) "\"Tal Umatar\" (evening)"))))
8e236d4ce64b (hebrew-holidays): Split into 4 sub-variables.
Richard M. Stallman <rms@gnu.org>
parents: 4086
diff changeset
960
8e236d4ce64b (hebrew-holidays): Split into 4 sub-variables.
Richard M. Stallman <rms@gnu.org>
parents: 4086
diff changeset
961 ;;;###autoload
6737
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
962 (put 'hebrew-holidays-2 'risky-local-variable t)
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
963 ;;;###autoload
4161
8e236d4ce64b (hebrew-holidays): Split into 4 sub-variables.
Richard M. Stallman <rms@gnu.org>
parents: 4086
diff changeset
964 (defvar hebrew-holidays-2
8e236d4ce64b (hebrew-holidays): Split into 4 sub-variables.
Richard M. Stallman <rms@gnu.org>
parents: 4086
diff changeset
965 '((if all-hebrew-calendar-holidays
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
966 (holiday-hanukkah)
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
967 (holiday-hebrew 9 25 "Hanukkah"))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
968 (if all-hebrew-calendar-holidays
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
969 (holiday-hebrew
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
970 10
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
971 (let ((h-year (extract-calendar-year
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
972 (calendar-hebrew-from-absolute
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
973 (calendar-absolute-from-gregorian
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
974 (list displayed-month 28 displayed-year))))))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
975 (if (= (% (calendar-absolute-from-hebrew (list 10 10 h-year))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
976 7)
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
977 6)
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
978 11 10))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
979 "Tzom Teveth"))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
980 (if all-hebrew-calendar-holidays
4161
8e236d4ce64b (hebrew-holidays): Split into 4 sub-variables.
Richard M. Stallman <rms@gnu.org>
parents: 4086
diff changeset
981 (holiday-hebrew 11 15 "Tu B'Shevat"))))
8e236d4ce64b (hebrew-holidays): Split into 4 sub-variables.
Richard M. Stallman <rms@gnu.org>
parents: 4086
diff changeset
982
8e236d4ce64b (hebrew-holidays): Split into 4 sub-variables.
Richard M. Stallman <rms@gnu.org>
parents: 4086
diff changeset
983 ;;;###autoload
6737
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
984 (put 'hebrew-holidays-3 'risky-local-variable t)
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
985 ;;;###autoload
4530
c14a75fce9c9 (hebrew-holidays-3): Fix misspelling in var name.
Richard M. Stallman <rms@gnu.org>
parents: 4453
diff changeset
986 (defvar hebrew-holidays-3
4161
8e236d4ce64b (hebrew-holidays): Split into 4 sub-variables.
Richard M. Stallman <rms@gnu.org>
parents: 4086
diff changeset
987 '((if all-hebrew-calendar-holidays
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
988 (holiday-hebrew
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
989 11
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
990 (let ((m displayed-month)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
991 (y displayed-year))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
992 (increment-calendar-month m y 1)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
993 (let* ((h-year (extract-calendar-year
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
994 (calendar-hebrew-from-absolute
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
995 (calendar-absolute-from-gregorian
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
996 (list m
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
997 (calendar-last-day-of-month m y)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
998 y)))))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
999 (s-s
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1000 (calendar-hebrew-from-absolute
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1001 (if (=
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1002 (% (calendar-absolute-from-hebrew
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1003 (list 7 1 h-year))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1004 7)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1005 6)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1006 (calendar-dayname-on-or-before
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1007 6 (calendar-absolute-from-hebrew
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1008 (list 11 17 h-year)))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1009 (calendar-dayname-on-or-before
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1010 6 (calendar-absolute-from-hebrew
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1011 (list 11 16 h-year))))))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1012 (day (extract-calendar-day s-s)))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1013 day))
4161
8e236d4ce64b (hebrew-holidays): Split into 4 sub-variables.
Richard M. Stallman <rms@gnu.org>
parents: 4086
diff changeset
1014 "Shabbat Shirah"))))
8e236d4ce64b (hebrew-holidays): Split into 4 sub-variables.
Richard M. Stallman <rms@gnu.org>
parents: 4086
diff changeset
1015
8e236d4ce64b (hebrew-holidays): Split into 4 sub-variables.
Richard M. Stallman <rms@gnu.org>
parents: 4086
diff changeset
1016 ;;;###autoload
6737
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
1017 (put 'hebrew-holidays-4 'risky-local-variable t)
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
1018 ;;;###autoload
4161
8e236d4ce64b (hebrew-holidays): Split into 4 sub-variables.
Richard M. Stallman <rms@gnu.org>
parents: 4086
diff changeset
1019 (defvar hebrew-holidays-4
8e236d4ce64b (hebrew-holidays): Split into 4 sub-variables.
Richard M. Stallman <rms@gnu.org>
parents: 4086
diff changeset
1020 '((holiday-passover-etc)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1021 (if (and all-hebrew-calendar-holidays
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1022 (let* ((m displayed-month)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1023 (y displayed-year)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1024 (year))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1025 (increment-calendar-month m y -1)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1026 (let ((year (extract-calendar-year
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1027 (calendar-julian-from-absolute
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1028 (calendar-absolute-from-gregorian
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1029 (list m 1 y))))))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1030 (= 21 (% year 28)))))
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1031 (holiday-julian 3 26 "Kiddush HaHamah"))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1032 (if all-hebrew-calendar-holidays
4161
8e236d4ce64b (hebrew-holidays): Split into 4 sub-variables.
Richard M. Stallman <rms@gnu.org>
parents: 4086
diff changeset
1033 (holiday-tisha-b-av-etc))))
8e236d4ce64b (hebrew-holidays): Split into 4 sub-variables.
Richard M. Stallman <rms@gnu.org>
parents: 4086
diff changeset
1034
8e236d4ce64b (hebrew-holidays): Split into 4 sub-variables.
Richard M. Stallman <rms@gnu.org>
parents: 4086
diff changeset
1035 ;;;###autoload
6737
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
1036 (put 'hebrew-holidays 'risky-local-variable t)
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
1037 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
1038 (defcustom hebrew-holidays (append hebrew-holidays-1 hebrew-holidays-2
4161
8e236d4ce64b (hebrew-holidays): Split into 4 sub-variables.
Richard M. Stallman <rms@gnu.org>
parents: 4086
diff changeset
1039 hebrew-holidays-3 hebrew-holidays-4)
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
1040 "Jewish holidays.
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
1041 See the documentation for `calendar-holidays' for details."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
1042 :type 'sexp
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
1043 :group 'holidays)
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1044
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1045 ;;;###autoload
6737
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
1046 (put 'christian-holidays 'risky-local-variable t)
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
1047 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
1048 (defcustom christian-holidays
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1049 '((if all-christian-calendar-holidays
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1050 (holiday-fixed 1 6 "Epiphany"))
57198
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1051 (holiday-easter-etc 0 "Easter Sunday")
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1052 (holiday-easter-etc -2 "Good Friday")
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1053 (holiday-easter-etc -46 "Ash Wednesday")
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1054 (if all-christian-calendar-holidays
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1055 (holiday-easter-etc -63 "Septuagesima Sunday"))
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1056 (if all-christian-calendar-holidays
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1057 (holiday-easter-etc -56 "Sexagesima Sunday"))
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1058 (if all-christian-calendar-holidays
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1059 (holiday-easter-etc -49 "Shrove Sunday"))
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1060 (if all-christian-calendar-holidays
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1061 (holiday-easter-etc -48 "Shrove Monday"))
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1062 (if all-christian-calendar-holidays
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1063 (holiday-easter-etc -47 "Shrove Tuesday"))
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1064 (if all-christian-calendar-holidays
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1065 (holiday-easter-etc -14 "Passion Sunday"))
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1066 (if all-christian-calendar-holidays
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1067 (holiday-easter-etc -7 "Palm Sunday"))
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1068 (if all-christian-calendar-holidays
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1069 (holiday-easter-etc -3 "Maundy Thursday"))
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1070 (if all-christian-calendar-holidays
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1071 (holiday-easter-etc 35 "Rogation Sunday"))
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1072 (if all-christian-calendar-holidays
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1073 (holiday-easter-etc 39 "Ascension Day"))
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1074 (if all-christian-calendar-holidays
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1075 (holiday-easter-etc 49 "Pentecost (Whitsunday)"))
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1076 (if all-christian-calendar-holidays
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1077 (holiday-easter-etc 50 "Whitmonday"))
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1078 (if all-christian-calendar-holidays
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1079 (holiday-easter-etc 56 "Trinity Sunday"))
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1080 (if all-christian-calendar-holidays
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1081 (holiday-easter-etc 60 "Corpus Christi"))
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1082 (if all-christian-calendar-holidays
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1083 (holiday-greek-orthodox-easter))
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1084 (if all-christian-calendar-holidays
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1085 (holiday-fixed 8 15 "Assumption"))
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1086 (if all-christian-calendar-holidays
57198
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1087 (holiday-advent 0 "Advent"))
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1088 (holiday-fixed 12 25 "Christmas")
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1089 (if all-christian-calendar-holidays
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1090 (holiday-julian 12 25 "Eastern Orthodox Christmas")))
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
1091 "Christian holidays.
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
1092 See the documentation for `calendar-holidays' for details."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
1093 :type 'sexp
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
1094 :group 'holidays)
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1095
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1096 ;;;###autoload
6737
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
1097 (put 'islamic-holidays 'risky-local-variable t)
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
1098 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
1099 (defcustom islamic-holidays
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1100 '((holiday-islamic
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1101 1 1
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1102 (format "Islamic New Year %d"
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1103 (let ((m displayed-month)
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1104 (y displayed-year))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1105 (increment-calendar-month m y 1)
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1106 (extract-calendar-year
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1107 (calendar-islamic-from-absolute
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1108 (calendar-absolute-from-gregorian
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1109 (list
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1110 m (calendar-last-day-of-month m y) y)))))))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1111 (if all-islamic-calendar-holidays
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1112 (holiday-islamic 1 10 "Ashura"))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1113 (if all-islamic-calendar-holidays
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1114 (holiday-islamic 3 12 "Mulad-al-Nabi"))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1115 (if all-islamic-calendar-holidays
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1116 (holiday-islamic 7 26 "Shab-e-Mi'raj"))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1117 (if all-islamic-calendar-holidays
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1118 (holiday-islamic 8 15 "Shab-e-Bara't"))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1119 (holiday-islamic 9 1 "Ramadan Begins")
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1120 (if all-islamic-calendar-holidays
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1121 (holiday-islamic 9 27 "Shab-e Qadr"))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1122 (if all-islamic-calendar-holidays
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1123 (holiday-islamic 10 1 "Id-al-Fitr"))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1124 (if all-islamic-calendar-holidays
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1125 (holiday-islamic 12 10 "Id-al-Adha")))
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
1126 "Islamic holidays.
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
1127 See the documentation for `calendar-holidays' for details."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
1128 :type 'sexp
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
1129 :group 'holidays)
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1130
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1131 ;;;###autoload
55431
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1132 (put 'bahai-holidays 'risky-local-variable t)
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1133 ;;;###autoload
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1134 (defcustom bahai-holidays
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1135 '((holiday-fixed
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1136 3 21
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1137 (format "Baha'i New Year (Naw-Ruz) %d" (- displayed-year (1- 1844))))
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1138 (holiday-fixed 4 21 "First Day of Ridvan")
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1139 (if all-bahai-calendar-holidays
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1140 (holiday-fixed 4 22 "Second Day of Ridvan"))
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1141 (if all-bahai-calendar-holidays
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1142 (holiday-fixed 4 23 "Third Day of Ridvan"))
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1143 (if all-bahai-calendar-holidays
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1144 (holiday-fixed 4 24 "Fourth Day of Ridvan"))
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1145 (if all-bahai-calendar-holidays
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1146 (holiday-fixed 4 25 "Fifth Day of Ridvan"))
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1147 (if all-bahai-calendar-holidays
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1148 (holiday-fixed 4 26 "Sixth Day of Ridvan"))
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1149 (if all-bahai-calendar-holidays
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1150 (holiday-fixed 4 27 "Seventh Day of Ridvan"))
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1151 (if all-bahai-calendar-holidays
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1152 (holiday-fixed 4 28 "Eighth Day of Ridvan"))
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1153 (holiday-fixed 4 29 "Ninth Day of Ridvan")
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1154 (if all-bahai-calendar-holidays
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1155 (holiday-fixed 4 30 "Tenth Day of Ridvan"))
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1156 (if all-bahai-calendar-holidays
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1157 (holiday-fixed 5 1 "Eleventh Day of Ridvan"))
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1158 (holiday-fixed 5 2 "Twelfth Day of Ridvan")
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1159 (holiday-fixed 5 23 "Declaration of the Bab")
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1160 (holiday-fixed 5 29 "Ascension of Baha'u'llah")
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1161 (holiday-fixed 7 9 "Martyrdom of the Bab")
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1162 (holiday-fixed 10 20 "Birth of the Bab")
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1163 (holiday-fixed 11 12 "Birth of Baha'u'llah")
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1164 (if all-bahai-calendar-holidays
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1165 (holiday-fixed 11 26 "Day of the Covenant"))
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1166 (if all-bahai-calendar-holidays
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1167 (holiday-fixed 11 28 "Ascension of `Abdu'l-Baha")))
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
1168 "Baha'i holidays.
55431
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1169 See the documentation for `calendar-holidays' for details."
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1170 :type 'sexp
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1171 :group 'holidays)
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1172
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1173 ;;;###autoload
6737
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
1174 (put 'solar-holidays 'risky-local-variable t)
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
1175 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
1176 (defcustom solar-holidays
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1177 '((if (fboundp 'atan)
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1178 (solar-equinoxes-solstices))
5009
bf77303bd714 (solar-holidays): Change top-level progn to an if.
Richard M. Stallman <rms@gnu.org>
parents: 4861
diff changeset
1179 (if (progn
bf77303bd714 (solar-holidays): Change top-level progn to an if.
Richard M. Stallman <rms@gnu.org>
parents: 4861
diff changeset
1180 (require 'cal-dst)
bf77303bd714 (solar-holidays): Change top-level progn to an if.
Richard M. Stallman <rms@gnu.org>
parents: 4861
diff changeset
1181 t)
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1182 (funcall
5009
bf77303bd714 (solar-holidays): Change top-level progn to an if.
Richard M. Stallman <rms@gnu.org>
parents: 4861
diff changeset
1183 'holiday-sexp
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1184 calendar-daylight-savings-starts
76477
a13a89e31b01 Change "daylight savings time" -> "daylight saving time".
Chong Yidong <cyd@stupidchicken.com>
parents: 75346
diff changeset
1185 '(format "Daylight Saving Time Begins %s"
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1186 (if (fboundp 'atan)
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1187 (solar-time-string
7779
866b98279551 (solar-holidays): Revised to use the rewritten and new fcns.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 7760
diff changeset
1188 (/ calendar-daylight-savings-starts-time (float 60))
866b98279551 (solar-holidays): Revised to use the rewritten and new fcns.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 7760
diff changeset
1189 calendar-standard-time-zone-name)
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1190 ""))))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1191 (funcall
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1192 'holiday-sexp
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1193 calendar-daylight-savings-ends
76477
a13a89e31b01 Change "daylight savings time" -> "daylight saving time".
Chong Yidong <cyd@stupidchicken.com>
parents: 75346
diff changeset
1194 '(format "Daylight Saving Time Ends %s"
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1195 (if (fboundp 'atan)
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1196 (solar-time-string
7779
866b98279551 (solar-holidays): Revised to use the rewritten and new fcns.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 7760
diff changeset
1197 (/ calendar-daylight-savings-ends-time (float 60))
866b98279551 (solar-holidays): Revised to use the rewritten and new fcns.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 7760
diff changeset
1198 calendar-daylight-time-zone-name)
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1199 ""))))
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
1200 "Sun-related holidays.
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
1201 See the documentation for `calendar-holidays' for details."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
1202 :type 'sexp
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
1203 :group 'holidays)
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1204
6737
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
1205 ;;;###autoload
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
1206 (put 'calendar-holidays 'risky-local-variable t)
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
1207 (defcustom calendar-holidays
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1208 (append general-holidays local-holidays other-holidays
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1209 christian-holidays hebrew-holidays islamic-holidays
55431
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1210 bahai-holidays oriental-holidays solar-holidays)
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
1211 "List of notable days for the command \\[holidays].
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1212
55431
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1213 Additional holidays are easy to add to the list, just put them in the
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1214 list `other-holidays' in your .emacs file. Similarly, by setting any
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1215 of `general-holidays', `local-holidays' `christian-holidays',
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1216 `hebrew-holidays', `islamic-holidays', `bahai-holidays',
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1217 `oriental-holidays', or `solar-holidays' to nil in your .emacs file,
69183
08af43fa19d8 (calendar-holidays): Doc fix.
Glenn Morris <rgm@gnu.org>
parents: 68655
diff changeset
1218 you can eliminate unwanted categories of holidays.
08af43fa19d8 (calendar-holidays): Doc fix.
Glenn Morris <rgm@gnu.org>
parents: 68655
diff changeset
1219
69351
86b7b0805645 (calendar-holidays): Doc fix.
Glenn Morris <rgm@gnu.org>
parents: 69183
diff changeset
1220 The aforementioned variables control the holiday choices offered
86b7b0805645 (calendar-holidays): Doc fix.
Glenn Morris <rgm@gnu.org>
parents: 69183
diff changeset
1221 by the function `list-holidays' when it is called interactively.
86b7b0805645 (calendar-holidays): Doc fix.
Glenn Morris <rgm@gnu.org>
parents: 69183
diff changeset
1222
69356
53ca33e3b6a5 (calendar-holidays): Make previous doc-fix less passive.
Glenn Morris <rgm@gnu.org>
parents: 69351
diff changeset
1223 They also initialize the default value of `calendar-holidays',
53ca33e3b6a5 (calendar-holidays): Make previous doc-fix less passive.
Glenn Morris <rgm@gnu.org>
parents: 69351
diff changeset
1224 which is the default list of holidays used by the function
53ca33e3b6a5 (calendar-holidays): Make previous doc-fix less passive.
Glenn Morris <rgm@gnu.org>
parents: 69351
diff changeset
1225 `list-holidays' in the non-interactive case. Note that these
53ca33e3b6a5 (calendar-holidays): Make previous doc-fix less passive.
Glenn Morris <rgm@gnu.org>
parents: 69351
diff changeset
1226 variables have no effect on `calendar-holidays' after it has been
53ca33e3b6a5 (calendar-holidays): Make previous doc-fix less passive.
Glenn Morris <rgm@gnu.org>
parents: 69351
diff changeset
1227 set (e.g. after the calendar is loaded). In that case, customize
53ca33e3b6a5 (calendar-holidays): Make previous doc-fix less passive.
Glenn Morris <rgm@gnu.org>
parents: 69351
diff changeset
1228 `calendar-holidays' directly.
69183
08af43fa19d8 (calendar-holidays): Doc fix.
Glenn Morris <rgm@gnu.org>
parents: 68655
diff changeset
1229
08af43fa19d8 (calendar-holidays): Doc fix.
Glenn Morris <rgm@gnu.org>
parents: 68655
diff changeset
1230 The intention is that (in the US) `local-holidays' be set in
08af43fa19d8 (calendar-holidays): Doc fix.
Glenn Morris <rgm@gnu.org>
parents: 68655
diff changeset
1231 site-init.el and `other-holidays' be set by the user.
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1232
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1233 Entries on the list are expressions that return (possibly empty) lists of
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1234 items of the form ((month day year) string) of a holiday in the in the
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1235 three-month period centered around `displayed-month' of `displayed-year'.
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1236 Several basic functions are provided for this purpose:
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1237
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1238 (holiday-fixed MONTH DAY STRING) is a fixed date on the Gregorian calendar
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1239 (holiday-float MONTH DAYNAME K STRING &optional day) is the Kth DAYNAME in
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1240 MONTH on the Gregorian calendar (0 for Sunday,
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1241 etc.); K<0 means count back from the end of the
31730
719a230f8091 Docstring fixes.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 31671
diff changeset
1242 month. An optional parameter DAY means the Kth
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1243 DAYNAME after/before MONTH DAY.
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1244 (holiday-hebrew MONTH DAY STRING) a fixed date on the Hebrew calendar
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1245 (holiday-islamic MONTH DAY STRING) a fixed date on the Islamic calendar
55431
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1246 (holiday-bahai MONTH DAY STRING) a fixed date on the Baha'i calendar
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1247 (holiday-julian MONTH DAY STRING) a fixed date on the Julian calendar
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1248 (holiday-sexp SEXP STRING) SEXP is a Gregorian-date-valued expression
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1249 in the variable `year'; if it evaluates to
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1250 a visible date, that's the holiday; if it
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1251 evaluates to nil, there's no holiday. STRING
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1252 is an expression in the variable `date'.
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1253
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1254 For example, to add Bastille Day, celebrated in France on July 14, add
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1255
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1256 (holiday-fixed 7 14 \"Bastille Day\")
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1257
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1258 to the list. To add Hurricane Supplication Day, celebrated in the Virgin
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1259 Islands on the fourth Monday in August, add
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1260
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1261 (holiday-float 8 1 4 \"Hurricane Supplication Day\")
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1262
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1263 to the list (the last Monday would be specified with `-1' instead of `4').
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1264 To add the last day of Hanukkah to the list, use
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1265
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1266 (holiday-hebrew 10 2 \"Last day of Hanukkah\")
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1267
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1268 since the Hebrew months are numbered with 1 starting from Nisan, while to
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1269 add the Islamic feast celebrating Mohammed's birthday use
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1270
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1271 (holiday-islamic 3 12 \"Mohammed's Birthday\")
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1272
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1273 since the Islamic months are numbered from 1 starting with Muharram. To
55431
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1274 add an entry for the Baha'i festival of Ridvan, use
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1275
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1276 (holiday-bahai 2 13 \"Festival of Ridvan\")
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1277
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1278 since the Baha'i months are numbered from 1 starting with Baha. To
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1279 add Thomas Jefferson's birthday, April 2, 1743 (Julian), use
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1280
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1281 (holiday-julian 4 2 \"Jefferson's Birthday\")
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1282
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1283 To include a holiday conditionally, use the sexp form or a conditional. For
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1284 example, to include American presidential elections, which occur on the first
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1285 Tuesday after the first Monday in November of years divisible by 4, add
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1286
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1287 (holiday-sexp
54071
8089fbb082b9 (calendar-holidays): Doc fix.
Glenn Morris <rgm@gnu.org>
parents: 53559
diff changeset
1288 '(if (zerop (% year 4))
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1289 (calendar-gregorian-from-absolute
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1290 (1+ (calendar-dayname-on-or-before
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1291 1 (+ 6 (calendar-absolute-from-gregorian
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1292 (list 11 1 year)))))))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1293 \"US Presidential Election\")
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1294
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1295 or
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1296
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1297 (if (zerop (% displayed-year 4))
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1298 (holiday-fixed 11
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1299 (extract-calendar-day
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1300 (calendar-gregorian-from-absolute
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1301 (1+ (calendar-dayname-on-or-before
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1302 1 (+ 6 (calendar-absolute-from-gregorian
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1303 (list 11 1 displayed-year)))))))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1304 \"US Presidential Election\"))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1305
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1306 to the list. To include the phases of the moon, add
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1307
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1308 (lunar-phases)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1309
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1310 to the holiday list, where `lunar-phases' is an Emacs-Lisp function that
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1311 you've written to return a (possibly empty) list of the relevant VISIBLE dates
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1312 with descriptive strings such as
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1313
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
1314 (((2 6 1989) \"New Moon\") ((2 12 1989) \"First Quarter Moon\") ... )."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
1315 :type 'sexp
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
1316 :group 'holidays)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1317
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1318 (defconst holiday-buffer "*Holidays*"
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1319 "Name of the buffer used for the displaying the holidays.")
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1320
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1321 (defconst fancy-diary-buffer "*Fancy Diary Entries*"
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1322 "Name of the buffer used for the optional fancy display of the diary.")
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1323
22261
329f546a73ec Add function to show equivalent date on all available calendars (in parallel
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 22028
diff changeset
1324 (defconst other-calendars-buffer "*Other Calendars*"
329f546a73ec Add function to show equivalent date on all available calendars (in parallel
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 22028
diff changeset
1325 "Name of the buffer used for the display of date on other calendars.")
329f546a73ec Add function to show equivalent date on all available calendars (in parallel
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 22028
diff changeset
1326
9709
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1327 (defconst lunar-phases-buffer "*Phases of Moon*"
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1328 "Name of the buffer used for the lunar phases.")
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1329
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1330 (defmacro increment-calendar-month (mon yr n)
52723
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1331 "Increment the variables MON and YR by N months.
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1332 Forward if N is positive or backward if N is negative.
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1333 A negative YR is interpreted as BC; -1 being 1 BC, and so on."
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1334 `(let (macro-y)
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1335 (if (< ,yr 0) (setq ,yr (1+ ,yr))) ; -1 BC -> 0 AD, etc
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1336 (setq macro-y (+ (* ,yr 12) ,mon -1 ,n)
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1337 ,mon (1+ (mod macro-y 12))
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1338 ,yr (/ macro-y 12))
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1339 (and (< macro-y 0) (> ,mon 1) (setq ,yr (1- ,yr)))
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1340 (if (< ,yr 1) (setq ,yr (1- ,yr))))) ; 0 AD -> -1 BC, etc
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1341
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
1342 (defun calendar-increment-month (n &optional mon yr)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
1343 "Return the Nth month after MON/YR.
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
1344 The return value is a pair (MONTH . YEAR).
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
1345 MON defaults to `displayed-month'. YR defaults to `displayed-year'."
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
1346 (unless mon (setq mon displayed-month))
68655
3d624f4184ec (calendar-increment-month): Typo in last change.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 68366
diff changeset
1347 (unless yr (setq yr displayed-year))
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
1348 (increment-calendar-month mon yr n)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
1349 (cons mon yr))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
1350
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1351 (defmacro calendar-for-loop (var from init to final do &rest body)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1352 "Execute a for loop."
65477
a08c0922f1c4 (calendar-for-loop): Add edebug info.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64826
diff changeset
1353 (declare (debug (symbolp "from" form "to" form "do" body)))
26427
3b6cf16f3633 * calendar/calendar.el (calendar-remove-frame-by-deleting):
Sam Steingold <sds@gnu.org>
parents: 26329
diff changeset
1354 `(let ((,var (1- ,init)))
3b6cf16f3633 * calendar/calendar.el (calendar-remove-frame-by-deleting):
Sam Steingold <sds@gnu.org>
parents: 26329
diff changeset
1355 (while (>= ,final (setq ,var (1+ ,var)))
3b6cf16f3633 * calendar/calendar.el (calendar-remove-frame-by-deleting):
Sam Steingold <sds@gnu.org>
parents: 26329
diff changeset
1356 ,@body)))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1357
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1358 (defmacro calendar-sum (index initial condition expression)
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1359 "For INDEX = INITIAL et seq, as long as CONDITION holds, sum EXPRESSION."
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
1360 (declare (debug (symbolp form form form)))
26427
3b6cf16f3633 * calendar/calendar.el (calendar-remove-frame-by-deleting):
Sam Steingold <sds@gnu.org>
parents: 26329
diff changeset
1361 `(let ((,index ,initial)
3b6cf16f3633 * calendar/calendar.el (calendar-remove-frame-by-deleting):
Sam Steingold <sds@gnu.org>
parents: 26329
diff changeset
1362 (sum 0))
3b6cf16f3633 * calendar/calendar.el (calendar-remove-frame-by-deleting):
Sam Steingold <sds@gnu.org>
parents: 26329
diff changeset
1363 (while ,condition
3b6cf16f3633 * calendar/calendar.el (calendar-remove-frame-by-deleting):
Sam Steingold <sds@gnu.org>
parents: 26329
diff changeset
1364 (setq sum (+ sum ,expression))
3b6cf16f3633 * calendar/calendar.el (calendar-remove-frame-by-deleting):
Sam Steingold <sds@gnu.org>
parents: 26329
diff changeset
1365 (setq ,index (1+ ,index)))
3b6cf16f3633 * calendar/calendar.el (calendar-remove-frame-by-deleting):
Sam Steingold <sds@gnu.org>
parents: 26329
diff changeset
1366 sum))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1367
9709
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1368 ;; The following are in-line for speed; they can be called thousands of times
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1369 ;; when looking up holidays or processing the diary. Here, for example, are
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1370 ;; the numbers of calls to calendar/diary/holiday functions in preparing the
732
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1371 ;; fancy diary display, for a moderately complex diary file, with functions
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1372 ;; used instead of macros. There were a total of 10000 such calls:
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1373 ;;
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1374 ;; 1934 extract-calendar-month
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1375 ;; 1852 extract-calendar-year
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1376 ;; 1819 extract-calendar-day
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1377 ;; 845 calendar-leap-year-p
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1378 ;; 837 calendar-day-number
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1379 ;; 775 calendar-absolute-from-gregorian
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1380 ;; 346 calendar-last-day-of-month
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1381 ;; 286 hebrew-calendar-last-day-of-month
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1382 ;; 188 hebrew-calendar-leap-year-p
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1383 ;; 180 hebrew-calendar-elapsed-days
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1384 ;; 163 hebrew-calendar-last-month-of-year
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1385 ;; 66 calendar-date-compare
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1386 ;; 65 hebrew-calendar-days-in-year
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1387 ;; 60 calendar-absolute-from-julian
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1388 ;; 50 calendar-absolute-from-hebrew
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1389 ;; 43 calendar-date-equal
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1390 ;; 38 calendar-gregorian-from-absolute
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1391 ;; .
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1392 ;; .
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1393 ;; .
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1394 ;;
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1395 ;; The use of these seven macros eliminates the overhead of 92% of the function
9709
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1396 ;; calls; it's faster this way.
732
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1397
9709
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1398 (defsubst extract-calendar-month (date)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1399 "Extract the month part of DATE which has the form (month day year)."
9709
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1400 (car date))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1401
70581
1eaae4fee224 (calendar-basic-setup): Set day to 1 in
Glenn Morris <rgm@gnu.org>
parents: 69356
diff changeset
1402 ;; Note gives wrong answer for result of (calendar-read-date 'noday).
9709
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1403 (defsubst extract-calendar-day (date)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1404 "Extract the day part of DATE which has the form (month day year)."
9709
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1405 (car (cdr date)))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1406
9709
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1407 (defsubst extract-calendar-year (date)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1408 "Extract the year part of DATE which has the form (month day year)."
9709
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1409 (car (cdr (cdr date))))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1410
9709
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1411 (defsubst calendar-leap-year-p (year)
52723
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1412 "Return t if YEAR is a Gregorian leap year.
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1413 A negative year is interpreted as BC; -1 being 1 BC, and so on."
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1414 ;; 1 BC = 0 AD, 2 BC acts like 1 AD, etc.
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1415 (if (< year 0) (setq year (1- (abs year))))
9709
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1416 (and (zerop (% year 4))
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1417 (or (not (zerop (% year 100)))
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1418 (zerop (% year 400)))))
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1419
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1420 ;; The foregoing is a bit faster, but not as clear as the following:
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1421 ;;
9709
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1422 ;;(defsubst calendar-leap-year-p (year)
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1423 ;; "Returns t if YEAR is a Gregorian leap year."
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1424 ;; (or
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1425 ;; (and (= (% year 4) 0)
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1426 ;; (/= (% year 100) 0))
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1427 ;; (= (% year 400) 0)))
732
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1428
9709
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1429 (defsubst calendar-last-day-of-month (month year)
732
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1430 "The last day in MONTH during YEAR."
9709
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1431 (if (and (= month 2) (calendar-leap-year-p year))
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1432 29
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1433 (aref [31 28 31 30 31 30 31 31 30 31 30 31] (1- month))))
732
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1434
9709
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1435 ;; An explanation of the calculation can be found in PascAlgorithms by
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1436 ;; Edward and Ruth Reingold, Scott-Foresman/Little, Brown, 1988.
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1437
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1438 (defsubst calendar-day-number (date)
732
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1439 "Return the day number within the year of the date DATE.
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1440 For example, (calendar-day-number '(1 1 1987)) returns the value 1,
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1441 while (calendar-day-number '(12 31 1980)) returns 366."
9709
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1442 (let* ((month (extract-calendar-month date))
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1443 (day (extract-calendar-day date))
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1444 (year (extract-calendar-year date))
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1445 (day-of-year (+ day (* 31 (1- month)))))
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1446 (if (> month 2)
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1447 (progn
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1448 (setq day-of-year (- day-of-year (/ (+ 23 (* 4 month)) 10)))
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1449 (if (calendar-leap-year-p year)
732
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1450 (setq day-of-year (1+ day-of-year)))))
9709
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1451 day-of-year))
732
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1452
9709
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1453 (defsubst calendar-absolute-from-gregorian (date)
732
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1454 "The number of days elapsed between the Gregorian date 12/31/1 BC and DATE.
52723
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1455 The Gregorian date Sunday, December 31, 1 BC is imaginary.
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1456 DATE is a list of the form (month day year). A negative year is
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1457 interpreted as BC; -1 being 1 BC, and so on. Dates before 12/31/1 BC
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1458 return negative results."
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1459 (let ((year (extract-calendar-year date))
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1460 offset-years)
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1461 (cond ((= year 0)
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1462 (error "There was no year zero"))
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1463 ((> year 0)
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1464 (setq offset-years (1- year))
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1465 (+ (calendar-day-number date) ; Days this year
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1466 (* 365 offset-years) ; + Days in prior years
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1467 (/ offset-years 4) ; + Julian leap years
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1468 (- (/ offset-years 100)) ; - century years
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1469 (/ offset-years 400))) ; + Gregorian leap years
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1470 (t
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1471 ;; Years between date and 1 BC, excluding 1 BC (1 for 2 BC, etc).
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1472 (setq offset-years (abs (1+ year)))
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1473 (- (calendar-day-number date)
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1474 (* 365 offset-years)
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1475 (/ offset-years 4)
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1476 (- (/ offset-years 100))
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1477 (/ offset-years 400)
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1478 (calendar-day-number '(12 31 -1))))))) ; days in year 1 BC
732
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1479
13042
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1480 (autoload 'calendar-goto-today "cal-move"
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1481 "Reposition the calendar window so the current date is visible."
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1482 t)
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1483
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1484 (autoload 'calendar-forward-month "cal-move"
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1485 "Move the cursor forward ARG months."
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1486 t)
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1487
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1488 (autoload 'calendar-forward-year "cal-move"
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1489 "Move the cursor forward by ARG years."
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1490 t)
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1491
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1492 (autoload 'calendar-backward-month "cal-move"
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1493 "Move the cursor backward by ARG months."
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1494 t)
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1495
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1496 (autoload 'calendar-backward-year "cal-move"
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1497 "Move the cursor backward ARG years."
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1498 t)
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1499
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1500 (autoload 'scroll-calendar-left "cal-move"
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1501 "Scroll the displayed calendar left by ARG months."
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1502 t)
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1503
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1504 (autoload 'scroll-calendar-right "cal-move"
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1505 "Scroll the displayed calendar window right by ARG months."
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1506 t)
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1507
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1508 (autoload 'scroll-calendar-left-three-months "cal-move"
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1509 "Scroll the displayed calendar window left by 3*ARG months."
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1510 t)
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1511
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1512 (autoload 'scroll-calendar-right-three-months "cal-move"
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1513 "Scroll the displayed calendar window right by 3*ARG months."
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1514 t)
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1515
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1516 (autoload 'calendar-cursor-to-nearest-date "cal-move"
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1517 "Move the cursor to the closest date."
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1518 t)
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1519
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1520 (autoload 'calendar-forward-day "cal-move"
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1521 "Move the cursor forward ARG days."
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1522 t)
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1523
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1524 (autoload 'calendar-backward-day "cal-move"
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1525 "Move the cursor back ARG days."
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1526 t)
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1527
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1528 (autoload 'calendar-forward-week "cal-move"
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1529 "Move the cursor forward ARG weeks."
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1530 t)
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1531
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1532 (autoload 'calendar-backward-week "cal-move"
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1533 "Move the cursor back ARG weeks."
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1534 t)
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1535
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1536 (autoload 'calendar-beginning-of-week "cal-move"
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1537 "Move the cursor back ARG calendar-week-start-day's."
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1538 t)
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1539
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1540 (autoload 'calendar-end-of-week "cal-move"
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1541 "Move the cursor forward ARG calendar-week-start-day+6's."
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1542 t)
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1543
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1544 (autoload 'calendar-beginning-of-month "cal-move"
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1545 "Move the cursor backward ARG month beginnings."
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1546 t)
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1547
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1548 (autoload 'calendar-end-of-month "cal-move"
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1549 "Move the cursor forward ARG month ends."
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1550 t)
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1551
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1552 (autoload 'calendar-beginning-of-year "cal-move"
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1553 "Move the cursor backward ARG year beginnings."
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1554 t)
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1555
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1556 (autoload 'calendar-end-of-year "cal-move"
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1557 "Move the cursor forward ARG year beginnings."
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1558 t)
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1559
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1560 (autoload 'calendar-cursor-to-visible-date "cal-move"
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1561 "Move the cursor to DATE that is on the screen."
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1562 t)
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1563
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1564 (autoload 'calendar-goto-date "cal-move"
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1565 "Move cursor to DATE."
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1566 t)
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1567
52232
e1debf3a5153 Edward M. Reingold <reingold@emr.cs.iit.edu>
Glenn Morris <rgm@gnu.org>
parents: 52160
diff changeset
1568 (autoload 'calendar-goto-day-of-year "cal-move"
e1debf3a5153 Edward M. Reingold <reingold@emr.cs.iit.edu>
Glenn Morris <rgm@gnu.org>
parents: 52160
diff changeset
1569 "Move cursor to day of year."
e1debf3a5153 Edward M. Reingold <reingold@emr.cs.iit.edu>
Glenn Morris <rgm@gnu.org>
parents: 52160
diff changeset
1570 t)
e1debf3a5153 Edward M. Reingold <reingold@emr.cs.iit.edu>
Glenn Morris <rgm@gnu.org>
parents: 52160
diff changeset
1571
49350
c4611ea3a05d (calendar-only-one-frame-setup): Add autoload.
Glenn Morris <rgm@gnu.org>
parents: 48717
diff changeset
1572 (autoload 'calendar-only-one-frame-setup "cal-x"
c4611ea3a05d (calendar-only-one-frame-setup): Add autoload.
Glenn Morris <rgm@gnu.org>
parents: 48717
diff changeset
1573 "Start calendar and display it in a dedicated frame.")
c4611ea3a05d (calendar-only-one-frame-setup): Add autoload.
Glenn Morris <rgm@gnu.org>
parents: 48717
diff changeset
1574
13042
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1575 (autoload 'calendar-one-frame-setup "cal-x"
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1576 "Start calendar and display it in a dedicated frame together with the diary.")
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1577
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1578 (autoload 'calendar-two-frame-setup "cal-x"
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1579 "Start calendar and diary in separate, dedicated frames.")
26427
3b6cf16f3633 * calendar/calendar.el (calendar-remove-frame-by-deleting):
Sam Steingold <sds@gnu.org>
parents: 26329
diff changeset
1580
13042
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1581 ;;;###autoload
53559
ba8b837c072c Update copyright.
Glenn Morris <rgm@gnu.org>
parents: 52723
diff changeset
1582 (defcustom calendar-setup nil
ba8b837c072c Update copyright.
Glenn Morris <rgm@gnu.org>
parents: 52723
diff changeset
1583 "The frame setup of the calendar.
ba8b837c072c Update copyright.
Glenn Morris <rgm@gnu.org>
parents: 52723
diff changeset
1584 The choices are: `one-frame' (calendar and diary together in one separate,
ba8b837c072c Update copyright.
Glenn Morris <rgm@gnu.org>
parents: 52723
diff changeset
1585 dedicated frame); `two-frames' (calendar and diary in separate, dedicated
ba8b837c072c Update copyright.
Glenn Morris <rgm@gnu.org>
parents: 52723
diff changeset
1586 frames); `calendar-only' (calendar in a separate, dedicated frame); with
60292
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
1587 any other value the current frame is used. Using any of the first
53559
ba8b837c072c Update copyright.
Glenn Morris <rgm@gnu.org>
parents: 52723
diff changeset
1588 three options overrides the value of `view-diary-entries-initially'."
ba8b837c072c Update copyright.
Glenn Morris <rgm@gnu.org>
parents: 52723
diff changeset
1589 :type '(choice
ba8b837c072c Update copyright.
Glenn Morris <rgm@gnu.org>
parents: 52723
diff changeset
1590 (const :tag "calendar and diary in separate frame" one-frame)
ba8b837c072c Update copyright.
Glenn Morris <rgm@gnu.org>
parents: 52723
diff changeset
1591 (const :tag "calendar and diary each in own frame" two-frames)
ba8b837c072c Update copyright.
Glenn Morris <rgm@gnu.org>
parents: 52723
diff changeset
1592 (const :tag "calendar in separate frame" calendar-only)
ba8b837c072c Update copyright.
Glenn Morris <rgm@gnu.org>
parents: 52723
diff changeset
1593 (const :tag "use current frame" nil))
ba8b837c072c Update copyright.
Glenn Morris <rgm@gnu.org>
parents: 52723
diff changeset
1594 :group 'calendar)
13042
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1595
60292
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
1596 (defcustom calendar-minimum-window-height 8
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
1597 "Minimum height `generate-calendar-window' should use for calendar window."
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
1598 :type 'integer
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
1599 :version "22.1"
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
1600 :group 'calendar)
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
1601
675
85fd29f25c75 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 628
diff changeset
1602 ;;;###autoload
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1603 (defun calendar (&optional arg)
13042
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1604 "Choose between the one frame, two frame, or basic calendar displays.
44084
97a5caf68c50 (calendar): Doc fix.
Eli Zaretskii <eliz@gnu.org>
parents: 43010
diff changeset
1605 If called with an optional prefix argument, prompts for month and year.
97a5caf68c50 (calendar): Doc fix.
Eli Zaretskii <eliz@gnu.org>
parents: 43010
diff changeset
1606
97a5caf68c50 (calendar): Doc fix.
Eli Zaretskii <eliz@gnu.org>
parents: 43010
diff changeset
1607 The original function `calendar' has been renamed `calendar-basic-setup'.
97a5caf68c50 (calendar): Doc fix.
Eli Zaretskii <eliz@gnu.org>
parents: 43010
diff changeset
1608 See the documentation of that function for more information."
13042
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1609 (interactive "P")
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1610 (cond ((equal calendar-setup 'one-frame) (calendar-one-frame-setup arg))
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1611 ((equal calendar-setup 'two-frames) (calendar-two-frame-setup arg))
24891
85d8302a2e82 (calendar): Call calendar-only-one-frame-setup if requested.
Karl Heuer <kwzh@gnu.org>
parents: 24243
diff changeset
1612 ((equal calendar-setup 'calendar-only)
85d8302a2e82 (calendar): Call calendar-only-one-frame-setup if requested.
Karl Heuer <kwzh@gnu.org>
parents: 24243
diff changeset
1613 (calendar-only-one-frame-setup arg))
13042
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1614 (t (calendar-basic-setup arg))))
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1615
73176
3dbfd59b44b5 (european-calendar-style): Call european-calendar or american-calendar
Glenn Morris <rgm@gnu.org>
parents: 71569
diff changeset
1616 (autoload 'diary-view-entries "diary-lib"
3dbfd59b44b5 (european-calendar-style): Call european-calendar or american-calendar
Glenn Morris <rgm@gnu.org>
parents: 71569
diff changeset
1617 "Prepare and display a buffer with diary entries.
3dbfd59b44b5 (european-calendar-style): Call european-calendar or american-calendar
Glenn Morris <rgm@gnu.org>
parents: 71569
diff changeset
1618 Searches your diary file for entries that match ARG days starting with
3dbfd59b44b5 (european-calendar-style): Call european-calendar or american-calendar
Glenn Morris <rgm@gnu.org>
parents: 71569
diff changeset
1619 the date indicated by the cursor position in the displayed three-month
3dbfd59b44b5 (european-calendar-style): Call european-calendar or american-calendar
Glenn Morris <rgm@gnu.org>
parents: 71569
diff changeset
1620 calendar."
3dbfd59b44b5 (european-calendar-style): Call european-calendar or american-calendar
Glenn Morris <rgm@gnu.org>
parents: 71569
diff changeset
1621 t)
3dbfd59b44b5 (european-calendar-style): Call european-calendar or american-calendar
Glenn Morris <rgm@gnu.org>
parents: 71569
diff changeset
1622
3dbfd59b44b5 (european-calendar-style): Call european-calendar or american-calendar
Glenn Morris <rgm@gnu.org>
parents: 71569
diff changeset
1623 (autoload 'list-calendar-holidays "holidays"
3dbfd59b44b5 (european-calendar-style): Call european-calendar or american-calendar
Glenn Morris <rgm@gnu.org>
parents: 71569
diff changeset
1624 "Create a buffer containing the holidays for the current calendar window.
3dbfd59b44b5 (european-calendar-style): Call european-calendar or american-calendar
Glenn Morris <rgm@gnu.org>
parents: 71569
diff changeset
1625 The holidays are those in the list `calendar-notable-days'. Returns t if any
3dbfd59b44b5 (european-calendar-style): Call european-calendar or american-calendar
Glenn Morris <rgm@gnu.org>
parents: 71569
diff changeset
1626 holidays are found, nil if not."
3dbfd59b44b5 (european-calendar-style): Call european-calendar or american-calendar
Glenn Morris <rgm@gnu.org>
parents: 71569
diff changeset
1627 t)
3dbfd59b44b5 (european-calendar-style): Call european-calendar or american-calendar
Glenn Morris <rgm@gnu.org>
parents: 71569
diff changeset
1628
13042
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1629 (defun calendar-basic-setup (&optional arg)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1630 "Display a three-month calendar in another window.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1631 The three months appear side by side, with the current month in the middle
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1632 surrounded by the previous and next months. The cursor is put on today's date.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1633
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1634 If called with an optional prefix argument, prompts for month and year.
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1635
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1636 This function is suitable for execution in a .emacs file; appropriate setting
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1637 of the variable `view-diary-entries-initially' will cause the diary entries for
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1638 the current date to be displayed in another window. The value of the variable
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1639 `number-of-diary-entries' controls the number of days of diary entries
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1640 displayed upon initial display of the calendar.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1641
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1642 Once in the calendar window, future or past months can be moved into view.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1643 Arbitrary months can be displayed, or the calendar can be scrolled forward
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1644 or backward.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1645
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1646 The cursor can be moved forward or backward by one day, one week, one month,
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1647 or one year. All of these commands take prefix arguments which, when negative,
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1648 cause movement in the opposite direction. For convenience, the digit keys
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1649 and the minus sign are automatically prefixes. The window is replotted as
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1650 necessary to display the desired date.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1651
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1652 Diary entries can be marked on the calendar or displayed in another window.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1653
31730
719a230f8091 Docstring fixes.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 31671
diff changeset
1654 Use \\[describe-mode] for details of the key bindings in the calendar window.
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1655
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1656 The Gregorian calendar is assumed.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1657
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1658 After loading the calendar, the hooks given by the variable
10436
c9ba2babe54e (calendar): Doc fix.
Karl Heuer <kwzh@gnu.org>
parents: 10089
diff changeset
1659 `calendar-load-hook' are run. This is the place to add key bindings to the
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1660 calendar-mode-map.
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1661
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1662 After preparing the calendar window initially, the hooks given by the variable
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1663 `initial-calendar-window-hook' are run.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1664
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1665 The hooks given by the variable `today-visible-calendar-hook' are run
13671
97293da2f27b (calendar-setup, calendar-basic-setup, calendar-next-calendar-round-date,
Paul Eggert <eggert@twinsun.com>
parents: 13649
diff changeset
1666 every time the calendar window gets scrolled, if the current date is visible
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1667 in the window. If it is not visible, the hooks given by the variable
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1668 `today-invisible-calendar-hook' are run. Thus, for example, setting
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1669 `today-visible-calendar-hook' to 'calendar-star-date will cause today's date
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1670 to be replaced by asterisks to highlight it whenever it is in the window."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1671 (interactive "P")
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1672 (set-buffer (get-buffer-create calendar-buffer))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1673 (calendar-mode)
9747
5586959f3393 Redo the noday option for calendar-read-date.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9709
diff changeset
1674 (let* ((pop-up-windows t)
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1675 (split-height-threshold 1000)
9709
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1676 (date (if arg
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1677 (calendar-read-date t)
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1678 (calendar-current-date)))
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1679 (month (extract-calendar-month date))
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1680 (year (extract-calendar-year date)))
70581
1eaae4fee224 (calendar-basic-setup): Set day to 1 in
Glenn Morris <rgm@gnu.org>
parents: 69356
diff changeset
1681 ;; (calendar-read-date t) returns a date with day = nil, which is
1eaae4fee224 (calendar-basic-setup): Set day to 1 in
Glenn Morris <rgm@gnu.org>
parents: 69356
diff changeset
1682 ;; not a legal date for the visible test in the diary section.
1eaae4fee224 (calendar-basic-setup): Set day to 1 in
Glenn Morris <rgm@gnu.org>
parents: 69356
diff changeset
1683 (if arg (setcar (cdr date) 1))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1684 (pop-to-buffer calendar-buffer)
9709
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
1685 (increment-calendar-month month year (- calendar-offset))
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1686 (generate-calendar-window month year)
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1687 (if (and view-diary-entries-initially (calendar-date-is-visible-p date))
65477
a08c0922f1c4 (calendar-for-loop): Add edebug info.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64826
diff changeset
1688 (diary-view-entries)))
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1689 (let* ((diary-buffer (get-file-buffer diary-file))
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1690 (diary-window (if diary-buffer (get-buffer-window diary-buffer)))
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1691 (split-height-threshold (if diary-window 2 1000)))
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1692 (if view-calendar-holidays-initially
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1693 (list-calendar-holidays)))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1694 (run-hooks 'initial-calendar-window-hook))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1695
59044
9dadbbe9a381 (view-other-diary-entries): Add autoload.
Glenn Morris <rgm@gnu.org>
parents: 57326
diff changeset
1696 (autoload 'view-other-diary-entries "diary-lib"
9dadbbe9a381 (view-other-diary-entries): Add autoload.
Glenn Morris <rgm@gnu.org>
parents: 57326
diff changeset
1697 "Prepare and display buffer of diary entries from an alternative diary file.
9dadbbe9a381 (view-other-diary-entries): Add autoload.
Glenn Morris <rgm@gnu.org>
parents: 57326
diff changeset
1698 Searches for entries that match ARG days, starting with the date indicated
9dadbbe9a381 (view-other-diary-entries): Add autoload.
Glenn Morris <rgm@gnu.org>
parents: 57326
diff changeset
1699 by the cursor position in the displayed three-month calendar.
9dadbbe9a381 (view-other-diary-entries): Add autoload.
Glenn Morris <rgm@gnu.org>
parents: 57326
diff changeset
1700 D-FILE specifies the file to use as the diary file."
9dadbbe9a381 (view-other-diary-entries): Add autoload.
Glenn Morris <rgm@gnu.org>
parents: 57326
diff changeset
1701 t)
9dadbbe9a381 (view-other-diary-entries): Add autoload.
Glenn Morris <rgm@gnu.org>
parents: 57326
diff changeset
1702
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1703 (autoload 'calendar-sunrise-sunset "solar"
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1704 "Local time of sunrise and sunset for date under cursor."
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1705 t)
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1706
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1707 (autoload 'calendar-phases-of-moon "lunar"
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1708 "Create a buffer of the phases of the moon for the current calendar window."
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1709 t)
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1710
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1711 (autoload 'calendar-print-french-date "cal-french"
5694
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
1712 "Show the French Revolutionary calendar equivalent of the date under the cursor."
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1713 t)
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1714
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1715 (autoload 'calendar-goto-french-date "cal-french"
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1716 "Move cursor to French Revolutionary date."
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1717 t)
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1718
5694
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
1719 (autoload 'calendar-french-date-string "cal-french"
70598
7a79aa083c6b Johan Bockg? <bojohan at dd.chalmers.se>:
Glenn Morris <rgm@gnu.org>
parents: 70581
diff changeset
1720 "String of French Revolutionary date of Gregorian date.")
5694
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
1721
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
1722 (autoload 'calendar-mayan-date-string "cal-mayan"
70598
7a79aa083c6b Johan Bockg? <bojohan at dd.chalmers.se>:
Glenn Morris <rgm@gnu.org>
parents: 70581
diff changeset
1723 "String of Mayan date of Gregorian date.")
5694
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
1724
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1725 (autoload 'calendar-print-mayan-date "cal-mayan"
5694
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
1726 "Show the Mayan long count, Tzolkin, and Haab equivalents of the date under the cursor."
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1727 t)
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1728
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1729 (autoload 'calendar-goto-mayan-long-count-date "cal-mayan"
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1730 "Move cursor to Mayan long count date."
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1731 t)
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1732
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1733 (autoload 'calendar-next-haab-date "cal-mayan"
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1734 "Move cursor to next instance of Mayan Haab date."
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1735 t)
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1736
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1737 (autoload 'calendar-previous-haab-date "cal-mayan"
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1738 "Move cursor to previous instance of Mayan Haab date."
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1739 t)
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1740
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1741 (autoload 'calendar-next-tzolkin-date "cal-mayan"
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1742 "Move cursor to next instance of Mayan Tzolkin date."
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1743 t)
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1744
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1745 (autoload 'calendar-previous-tzolkin-date "cal-mayan"
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1746 "Move cursor to previous instance of Mayan Tzolkin date."
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1747 t)
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1748
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1749 (autoload 'calendar-next-calendar-round-date "cal-mayan"
13671
97293da2f27b (calendar-setup, calendar-basic-setup, calendar-next-calendar-round-date,
Paul Eggert <eggert@twinsun.com>
parents: 13649
diff changeset
1750 "Move cursor to next instance of Mayan Haab/Tzolkin combination."
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1751 t)
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1752
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1753 (autoload 'calendar-previous-calendar-round-date "cal-mayan"
13671
97293da2f27b (calendar-setup, calendar-basic-setup, calendar-next-calendar-round-date,
Paul Eggert <eggert@twinsun.com>
parents: 13649
diff changeset
1754 "Move cursor to previous instance of Mayan Haab/Tzolkin combination."
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1755 t)
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1756
14687
0d4ff7e4d6a3 Use the new file names in autoloads.
Karl Heuer <kwzh@gnu.org>
parents: 14169
diff changeset
1757 (autoload 'calendar-goto-chinese-date "cal-china"
13875
96d81534d210 Fix autoloads.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13792
diff changeset
1758 "Move cursor to Chinese date."
13042
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1759 t)
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1760
14687
0d4ff7e4d6a3 Use the new file names in autoloads.
Karl Heuer <kwzh@gnu.org>
parents: 14169
diff changeset
1761 (autoload 'calendar-print-chinese-date "cal-china"
13042
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1762 "Show the Chinese date equivalents of date."
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1763 t)
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1764
14687
0d4ff7e4d6a3 Use the new file names in autoloads.
Karl Heuer <kwzh@gnu.org>
parents: 14169
diff changeset
1765 (autoload 'calendar-chinese-date-string "cal-china"
70598
7a79aa083c6b Johan Bockg? <bojohan at dd.chalmers.se>:
Glenn Morris <rgm@gnu.org>
parents: 70581
diff changeset
1766 "String of Chinese date of Gregorian date.")
13042
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1767
26530
82384d47a93d Fix autoload for calendar-absolute-from-astro. Add autoload for
Gerd Moellmann <gerd@gnu.org>
parents: 26427
diff changeset
1768 (autoload 'calendar-absolute-from-astro "cal-julian"
13875
96d81534d210 Fix autoloads.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13792
diff changeset
1769 "Absolute date of astronomical (Julian) day number D."
26530
82384d47a93d Fix autoload for calendar-absolute-from-astro. Add autoload for
Gerd Moellmann <gerd@gnu.org>
parents: 26427
diff changeset
1770 t )
13875
96d81534d210 Fix autoloads.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13792
diff changeset
1771
13792
a1776aba8124 (calendar-astro-from-absolute): Autoload it.
Karl Heuer <kwzh@gnu.org>
parents: 13671
diff changeset
1772 (autoload 'calendar-astro-from-absolute "cal-julian"
a1776aba8124 (calendar-astro-from-absolute): Autoload it.
Karl Heuer <kwzh@gnu.org>
parents: 13671
diff changeset
1773 "Astronomical (Julian) day number of absolute date D.")
a1776aba8124 (calendar-astro-from-absolute): Autoload it.
Karl Heuer <kwzh@gnu.org>
parents: 13671
diff changeset
1774
13875
96d81534d210 Fix autoloads.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13792
diff changeset
1775 (autoload 'calendar-astro-date-string "cal-julian"
70598
7a79aa083c6b Johan Bockg? <bojohan at dd.chalmers.se>:
Glenn Morris <rgm@gnu.org>
parents: 70581
diff changeset
1776 "String of astronomical (Julian) day number of Gregorian date.")
13875
96d81534d210 Fix autoloads.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13792
diff changeset
1777
25412
27c66621737f (calendar-goto-astro-day-number): Autoload the right function name.
Richard M. Stallman <rms@gnu.org>
parents: 25410
diff changeset
1778 (autoload 'calendar-goto-astro-day-number "cal-julian"
13875
96d81534d210 Fix autoloads.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13792
diff changeset
1779 "Move cursor to astronomical (Julian) day number."
96d81534d210 Fix autoloads.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13792
diff changeset
1780 t)
96d81534d210 Fix autoloads.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13792
diff changeset
1781
26530
82384d47a93d Fix autoload for calendar-absolute-from-astro. Add autoload for
Gerd Moellmann <gerd@gnu.org>
parents: 26427
diff changeset
1782 (autoload 'calendar-print-astro-day-number "cal-julian"
82384d47a93d Fix autoload for calendar-absolute-from-astro. Add autoload for
Gerd Moellmann <gerd@gnu.org>
parents: 26427
diff changeset
1783 "Show the astro date equivalents of date."
82384d47a93d Fix autoload for calendar-absolute-from-astro. Add autoload for
Gerd Moellmann <gerd@gnu.org>
parents: 26427
diff changeset
1784 t)
82384d47a93d Fix autoload for calendar-absolute-from-astro. Add autoload for
Gerd Moellmann <gerd@gnu.org>
parents: 26427
diff changeset
1785
13546
b979fa5d0d0b (calendar-julian-from-absolute): Autoload it.
Richard M. Stallman <rms@gnu.org>
parents: 13490
diff changeset
1786 (autoload 'calendar-julian-from-absolute "cal-julian"
b979fa5d0d0b (calendar-julian-from-absolute): Autoload it.
Richard M. Stallman <rms@gnu.org>
parents: 13490
diff changeset
1787 "Compute the Julian (month day year) corresponding to the absolute DATE.
b979fa5d0d0b (calendar-julian-from-absolute): Autoload it.
Richard M. Stallman <rms@gnu.org>
parents: 13490
diff changeset
1788 The absolute date is the number of days elapsed since the (imaginary)
b979fa5d0d0b (calendar-julian-from-absolute): Autoload it.
Richard M. Stallman <rms@gnu.org>
parents: 13490
diff changeset
1789 Gregorian date Sunday, December 31, 1 BC.")
b979fa5d0d0b (calendar-julian-from-absolute): Autoload it.
Richard M. Stallman <rms@gnu.org>
parents: 13490
diff changeset
1790
13042
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1791 (autoload 'calendar-goto-julian-date "cal-julian"
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1792 "Move cursor to Julian DATE; echo Julian date unless NOECHO is t."
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1793 t)
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1794
19422
d43fe749c103 Add an autoload form for calendar-print-julian-date.
Richard M. Stallman <rms@gnu.org>
parents: 19248
diff changeset
1795 (autoload 'calendar-print-julian-date "cal-julian"
d43fe749c103 Add an autoload form for calendar-print-julian-date.
Richard M. Stallman <rms@gnu.org>
parents: 19248
diff changeset
1796 "Show the Julian calendar equivalent of the date under the cursor."
d43fe749c103 Add an autoload form for calendar-print-julian-date.
Richard M. Stallman <rms@gnu.org>
parents: 19248
diff changeset
1797 t)
d43fe749c103 Add an autoload form for calendar-print-julian-date.
Richard M. Stallman <rms@gnu.org>
parents: 19248
diff changeset
1798
13573
6fff4a5fc018 (calendar-julian-date-string): Autoload this.
Richard M. Stallman <rms@gnu.org>
parents: 13546
diff changeset
1799 (autoload 'calendar-julian-date-string "cal-julian"
6fff4a5fc018 (calendar-julian-date-string): Autoload this.
Richard M. Stallman <rms@gnu.org>
parents: 13546
diff changeset
1800 "String of Julian date of Gregorian DATE.
6fff4a5fc018 (calendar-julian-date-string): Autoload this.
Richard M. Stallman <rms@gnu.org>
parents: 13546
diff changeset
1801 Defaults to today's date if DATE is not given.
19438
3a3578e9593f (calendar-julian-date-string): Mark not interactive.
Richard M. Stallman <rms@gnu.org>
parents: 19422
diff changeset
1802 Driven by the variable `calendar-date-display-form'.")
13573
6fff4a5fc018 (calendar-julian-date-string): Autoload this.
Richard M. Stallman <rms@gnu.org>
parents: 13546
diff changeset
1803
13042
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1804 (autoload 'calendar-goto-iso-date "cal-iso"
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1805 "Move cursor to ISO date."
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1806 t)
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1807
57326
958fe05efd62 From Emilio C. Lopes <eclig@gmx.net>:
Glenn Morris <rgm@gnu.org>
parents: 57198
diff changeset
1808 (autoload 'calendar-goto-iso-week "cal-iso"
958fe05efd62 From Emilio C. Lopes <eclig@gmx.net>:
Glenn Morris <rgm@gnu.org>
parents: 57198
diff changeset
1809 "Move cursor to start of ISO week."
958fe05efd62 From Emilio C. Lopes <eclig@gmx.net>:
Glenn Morris <rgm@gnu.org>
parents: 57198
diff changeset
1810 t)
958fe05efd62 From Emilio C. Lopes <eclig@gmx.net>:
Glenn Morris <rgm@gnu.org>
parents: 57198
diff changeset
1811
13042
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1812 (autoload 'calendar-print-iso-date "cal-iso"
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1813 "Show the ISO date equivalents of date."
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1814 t)
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1815
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1816 (autoload 'calendar-iso-date-string "cal-iso"
70598
7a79aa083c6b Johan Bockg? <bojohan at dd.chalmers.se>:
Glenn Morris <rgm@gnu.org>
parents: 70581
diff changeset
1817 "String of ISO date of Gregorian date.")
13042
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1818
38448
911d5f6da3f7 (calendar-goto-islamic-date): Add
Gerd Moellmann <gerd@gnu.org>
parents: 38422
diff changeset
1819 (autoload 'calendar-goto-islamic-date "cal-islam"
911d5f6da3f7 (calendar-goto-islamic-date): Add
Gerd Moellmann <gerd@gnu.org>
parents: 38422
diff changeset
1820 "Move cursor to Islamic date."
911d5f6da3f7 (calendar-goto-islamic-date): Add
Gerd Moellmann <gerd@gnu.org>
parents: 38422
diff changeset
1821 t)
911d5f6da3f7 (calendar-goto-islamic-date): Add
Gerd Moellmann <gerd@gnu.org>
parents: 38422
diff changeset
1822
14687
0d4ff7e4d6a3 Use the new file names in autoloads.
Karl Heuer <kwzh@gnu.org>
parents: 14169
diff changeset
1823 (autoload 'calendar-print-islamic-date "cal-islam"
13042
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1824 "Show the Islamic date equivalents of date."
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1825 t)
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1826
14687
0d4ff7e4d6a3 Use the new file names in autoloads.
Karl Heuer <kwzh@gnu.org>
parents: 14169
diff changeset
1827 (autoload 'calendar-islamic-date-string "cal-islam"
70598
7a79aa083c6b Johan Bockg? <bojohan at dd.chalmers.se>:
Glenn Morris <rgm@gnu.org>
parents: 70581
diff changeset
1828 "String of Islamic date of Gregorian date.")
13042
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1829
55431
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1830 (autoload 'calendar-print-bahai-date "cal-bahai"
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1831 "Show the Baha'i date equivalents of date."
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1832 t)
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1833
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1834 (autoload 'calendar-bahai-date-string "cal-bahai"
70598
7a79aa083c6b Johan Bockg? <bojohan at dd.chalmers.se>:
Glenn Morris <rgm@gnu.org>
parents: 70581
diff changeset
1835 "String of Baha'i date of Gregorian date.")
55431
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1836
13042
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1837 (autoload 'calendar-goto-hebrew-date "cal-hebrew"
64446
6d54ca488e15 (calendar-goto-hebrew-date)
Juri Linkov <juri@jurta.org>
parents: 64085
diff changeset
1838 "Move cursor to Hebrew date."
13042
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1839 t)
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1840
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1841 (autoload 'calendar-print-hebrew-date "cal-hebrew"
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1842 "Show the Hebrew date equivalents of date."
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1843 t)
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1844
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1845 (autoload 'calendar-hebrew-date-string "cal-hebrew"
70598
7a79aa083c6b Johan Bockg? <bojohan at dd.chalmers.se>:
Glenn Morris <rgm@gnu.org>
parents: 70581
diff changeset
1846 "String of Hebrew date of Gregorian date.")
13042
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1847
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1848 (autoload 'calendar-goto-coptic-date "cal-coptic"
64446
6d54ca488e15 (calendar-goto-hebrew-date)
Juri Linkov <juri@jurta.org>
parents: 64085
diff changeset
1849 "Move cursor to Coptic date."
13042
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1850 t)
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1851
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1852 (autoload 'calendar-print-coptic-date "cal-coptic"
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1853 "Show the Coptic date equivalents of date."
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1854 t)
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1855
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1856 (autoload 'calendar-coptic-date-string "cal-coptic"
70598
7a79aa083c6b Johan Bockg? <bojohan at dd.chalmers.se>:
Glenn Morris <rgm@gnu.org>
parents: 70581
diff changeset
1857 "String of Coptic date of Gregorian date.")
13042
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1858
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1859 (autoload 'calendar-goto-ethiopic-date "cal-coptic"
64446
6d54ca488e15 (calendar-goto-hebrew-date)
Juri Linkov <juri@jurta.org>
parents: 64085
diff changeset
1860 "Move cursor to Ethiopic date."
13042
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1861 t)
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1862
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1863 (autoload 'calendar-print-ethiopic-date "cal-coptic"
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1864 "Show the Ethiopic date equivalents of date."
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1865 t)
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1866
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1867 (autoload 'calendar-ethiopic-date-string "cal-coptic"
70598
7a79aa083c6b Johan Bockg? <bojohan at dd.chalmers.se>:
Glenn Morris <rgm@gnu.org>
parents: 70581
diff changeset
1868 "String of Ethiopic date of Gregorian date.")
13042
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1869
15258
ab5975df6164 Change autoload references from cal-persian to cal-persia.
Karl Heuer <kwzh@gnu.org>
parents: 14937
diff changeset
1870 (autoload 'calendar-goto-persian-date "cal-persia"
64446
6d54ca488e15 (calendar-goto-hebrew-date)
Juri Linkov <juri@jurta.org>
parents: 64085
diff changeset
1871 "Move cursor to Persian date."
14915
5a4b28f19b75 Add references to Persian calendar.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 14687
diff changeset
1872 t)
5a4b28f19b75 Add references to Persian calendar.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 14687
diff changeset
1873
15258
ab5975df6164 Change autoload references from cal-persian to cal-persia.
Karl Heuer <kwzh@gnu.org>
parents: 14937
diff changeset
1874 (autoload 'calendar-print-persian-date "cal-persia"
14915
5a4b28f19b75 Add references to Persian calendar.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 14687
diff changeset
1875 "Show the Persian date equivalents of date."
5a4b28f19b75 Add references to Persian calendar.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 14687
diff changeset
1876 t)
5a4b28f19b75 Add references to Persian calendar.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 14687
diff changeset
1877
15258
ab5975df6164 Change autoload references from cal-persian to cal-persia.
Karl Heuer <kwzh@gnu.org>
parents: 14937
diff changeset
1878 (autoload 'calendar-persian-date-string "cal-persia"
70598
7a79aa083c6b Johan Bockg? <bojohan at dd.chalmers.se>:
Glenn Morris <rgm@gnu.org>
parents: 70581
diff changeset
1879 "String of Persian date of Gregorian date.")
14915
5a4b28f19b75 Add references to Persian calendar.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 14687
diff changeset
1880
70600
b9be6d21f2ac (diary-show-all-entries): Do not refer to
Glenn Morris <rgm@gnu.org>
parents: 70598
diff changeset
1881 (autoload 'diary-show-all-entries "diary-lib"
7404
ce1457fb5ea4 Doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 7132
diff changeset
1882 "Show all of the diary entries in the diary file.
ce1457fb5ea4 Doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 7132
diff changeset
1883 This function gets rid of the selective display of the diary file so that
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1884 all entries, not just some, are visible. If there is no diary buffer, one
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1885 is created."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1886 t)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1887
13649
fb670bed6222 Use new file name diary-lib.
Richard M. Stallman <rms@gnu.org>
parents: 13597
diff changeset
1888 (autoload 'mark-diary-entries "diary-lib"
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1889 "Mark days in the calendar window that have diary entries.
7404
ce1457fb5ea4 Doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 7132
diff changeset
1890 Each entry in diary file visible in the calendar window is marked."
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1891 t)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1892
13649
fb670bed6222 Use new file name diary-lib.
Richard M. Stallman <rms@gnu.org>
parents: 13597
diff changeset
1893 (autoload 'make-diary-entry "diary-lib"
70600
b9be6d21f2ac (diary-show-all-entries): Do not refer to
Glenn Morris <rgm@gnu.org>
parents: 70598
diff changeset
1894 "Insert a diary entry STRING which may be NONMARKING in FILE.")
13042
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1895
13649
fb670bed6222 Use new file name diary-lib.
Richard M. Stallman <rms@gnu.org>
parents: 13597
diff changeset
1896 (autoload 'insert-diary-entry "diary-lib"
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1897 "Insert a diary entry for the date indicated by point."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1898 t)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1899
13649
fb670bed6222 Use new file name diary-lib.
Richard M. Stallman <rms@gnu.org>
parents: 13597
diff changeset
1900 (autoload 'insert-weekly-diary-entry "diary-lib"
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1901 "Insert a weekly diary entry for the day of the week indicated by point."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1902 t)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1903
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1904
13649
fb670bed6222 Use new file name diary-lib.
Richard M. Stallman <rms@gnu.org>
parents: 13597
diff changeset
1905 (autoload 'insert-monthly-diary-entry "diary-lib"
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1906 "Insert a monthly diary entry for the day of the month indicated by point."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1907 t)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1908
13649
fb670bed6222 Use new file name diary-lib.
Richard M. Stallman <rms@gnu.org>
parents: 13597
diff changeset
1909 (autoload 'insert-yearly-diary-entry "diary-lib"
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1910 "Insert an annual diary entry for the day of the year indicated by point."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1911 t)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1912
13649
fb670bed6222 Use new file name diary-lib.
Richard M. Stallman <rms@gnu.org>
parents: 13597
diff changeset
1913 (autoload 'insert-anniversary-diary-entry "diary-lib"
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1914 "Insert an anniversary diary entry for the date indicated by point."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1915 t)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1916
13649
fb670bed6222 Use new file name diary-lib.
Richard M. Stallman <rms@gnu.org>
parents: 13597
diff changeset
1917 (autoload 'insert-block-diary-entry "diary-lib"
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1918 "Insert a block diary entry for the dates indicated by point and mark."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1919 t)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1920
13649
fb670bed6222 Use new file name diary-lib.
Richard M. Stallman <rms@gnu.org>
parents: 13597
diff changeset
1921 (autoload 'insert-cyclic-diary-entry "diary-lib"
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1922 "Insert a cyclic diary entry starting at the date indicated by point."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1923 t)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1924
13042
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1925 (autoload 'insert-hebrew-diary-entry "cal-hebrew"
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1926 "Insert a diary entry for the Hebrew date corresponding to the date
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1927 indicated by point."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1928 t)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1929
13042
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1930 (autoload 'insert-monthly-hebrew-diary-entry "cal-hebrew"
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1931 "Insert a monthly diary entry for the day of the Hebrew month corresponding
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1932 to the date indicated by point."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1933 t)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1934
13042
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1935 (autoload 'insert-yearly-hebrew-diary-entry "cal-hebrew"
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1936 "Insert an annual diary entry for the day of the Hebrew year corresponding
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1937 to the date indicated by point."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1938 t)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1939
14687
0d4ff7e4d6a3 Use the new file names in autoloads.
Karl Heuer <kwzh@gnu.org>
parents: 14169
diff changeset
1940 (autoload 'insert-islamic-diary-entry "cal-islam"
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1941 "Insert a diary entry for the Islamic date corresponding to the date
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1942 indicated by point."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1943 t)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1944
14687
0d4ff7e4d6a3 Use the new file names in autoloads.
Karl Heuer <kwzh@gnu.org>
parents: 14169
diff changeset
1945 (autoload 'insert-monthly-islamic-diary-entry "cal-islam"
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1946 "Insert a monthly diary entry for the day of the Islamic month corresponding
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1947 to the date indicated by point."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1948 t)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1949
14687
0d4ff7e4d6a3 Use the new file names in autoloads.
Karl Heuer <kwzh@gnu.org>
parents: 14169
diff changeset
1950 (autoload 'insert-yearly-islamic-diary-entry "cal-islam"
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1951 "Insert an annual diary entry for the day of the Islamic year corresponding
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1952 to the date indicated by point."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1953 t)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1954
55431
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1955 (autoload 'insert-bahai-diary-entry "cal-bahai"
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1956 "Insert a diary entry for the Baha'i date corresponding to the date
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1957 indicated by point."
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1958 t)
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1959
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1960 (autoload 'insert-monthly-bahai-diary-entry "cal-bahai"
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1961 "Insert a monthly diary entry for the day of the Baha'i month corresponding
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1962 to the date indicated by point."
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1963 t)
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1964
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1965 (autoload 'insert-yearly-bahai-diary-entry "cal-bahai"
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1966 "Insert an annual diary entry for the day of the Baha'i year corresponding
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1967 to the date indicated by point."
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1968 t)
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1969
13193
a25a4f1246c0 Added key definitions and autoloads for cal-tex.el (a new file).
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13042
diff changeset
1970 (autoload 'cal-tex-cursor-month "cal-tex"
a25a4f1246c0 Added key definitions and autoloads for cal-tex.el (a new file).
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13042
diff changeset
1971 "Make a buffer with LaTeX commands for the month cursor is on.
a25a4f1246c0 Added key definitions and autoloads for cal-tex.el (a new file).
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13042
diff changeset
1972 Optional prefix argument specifies number of months to be produced.
70600
b9be6d21f2ac (diary-show-all-entries): Do not refer to
Glenn Morris <rgm@gnu.org>
parents: 70598
diff changeset
1973 Calendar is condensed onto one page." t)
13193
a25a4f1246c0 Added key definitions and autoloads for cal-tex.el (a new file).
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13042
diff changeset
1974
a25a4f1246c0 Added key definitions and autoloads for cal-tex.el (a new file).
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13042
diff changeset
1975 (autoload 'cal-tex-cursor-month-landscape "cal-tex"
a25a4f1246c0 Added key definitions and autoloads for cal-tex.el (a new file).
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13042
diff changeset
1976 "Make a buffer with LaTeX commands for the month cursor is on.
70600
b9be6d21f2ac (diary-show-all-entries): Do not refer to
Glenn Morris <rgm@gnu.org>
parents: 70598
diff changeset
1977 Optional prefix argument specifies number of months to be produced." t)
13193
a25a4f1246c0 Added key definitions and autoloads for cal-tex.el (a new file).
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13042
diff changeset
1978
a25a4f1246c0 Added key definitions and autoloads for cal-tex.el (a new file).
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13042
diff changeset
1979 (autoload 'cal-tex-cursor-day "cal-tex"
70600
b9be6d21f2ac (diary-show-all-entries): Do not refer to
Glenn Morris <rgm@gnu.org>
parents: 70598
diff changeset
1980 "Make a buffer with LaTeX commands for the day cursor is on." t)
13193
a25a4f1246c0 Added key definitions and autoloads for cal-tex.el (a new file).
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13042
diff changeset
1981
a25a4f1246c0 Added key definitions and autoloads for cal-tex.el (a new file).
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13042
diff changeset
1982 (autoload 'cal-tex-cursor-week "cal-tex"
13596
d205632cc756 (cal-tex-cursor-filofax-week): Renamed from cal-tex-cursor-week6.
Richard M. Stallman <rms@gnu.org>
parents: 13589
diff changeset
1983 "Make a buffer with LaTeX commands for a two-page one-week calendar.
d205632cc756 (cal-tex-cursor-filofax-week): Renamed from cal-tex-cursor-week6.
Richard M. Stallman <rms@gnu.org>
parents: 13589
diff changeset
1984 It applies to the week that point is in.
d205632cc756 (cal-tex-cursor-filofax-week): Renamed from cal-tex-cursor-week6.
Richard M. Stallman <rms@gnu.org>
parents: 13589
diff changeset
1985 Optional prefix argument specifies number of weeks.
70600
b9be6d21f2ac (diary-show-all-entries): Do not refer to
Glenn Morris <rgm@gnu.org>
parents: 70598
diff changeset
1986 Holidays are included if `cal-tex-holidays' is t." t)
13193
a25a4f1246c0 Added key definitions and autoloads for cal-tex.el (a new file).
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13042
diff changeset
1987
26427
3b6cf16f3633 * calendar/calendar.el (calendar-remove-frame-by-deleting):
Sam Steingold <sds@gnu.org>
parents: 26329
diff changeset
1988 (autoload 'cal-tex-cursor-week2 "cal-tex"
13596
d205632cc756 (cal-tex-cursor-filofax-week): Renamed from cal-tex-cursor-week6.
Richard M. Stallman <rms@gnu.org>
parents: 13589
diff changeset
1989 "Make a buffer with LaTeX commands for a two-page one-week calendar.
d205632cc756 (cal-tex-cursor-filofax-week): Renamed from cal-tex-cursor-week6.
Richard M. Stallman <rms@gnu.org>
parents: 13589
diff changeset
1990 It applies to the week that point is in.
d205632cc756 (cal-tex-cursor-filofax-week): Renamed from cal-tex-cursor-week6.
Richard M. Stallman <rms@gnu.org>
parents: 13589
diff changeset
1991 Optional prefix argument specifies number of weeks.
70600
b9be6d21f2ac (diary-show-all-entries): Do not refer to
Glenn Morris <rgm@gnu.org>
parents: 70598
diff changeset
1992 Holidays are included if `cal-tex-holidays' is t." t)
13193
a25a4f1246c0 Added key definitions and autoloads for cal-tex.el (a new file).
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13042
diff changeset
1993
13596
d205632cc756 (cal-tex-cursor-filofax-week): Renamed from cal-tex-cursor-week6.
Richard M. Stallman <rms@gnu.org>
parents: 13589
diff changeset
1994 (autoload 'cal-tex-cursor-week-iso "cal-tex"
d205632cc756 (cal-tex-cursor-filofax-week): Renamed from cal-tex-cursor-week6.
Richard M. Stallman <rms@gnu.org>
parents: 13589
diff changeset
1995 "Make a buffer with LaTeX commands for a one page ISO-style weekly calendar.
13597
493156a0ad85 (cal-tex-cursor-week-iso): Doc fix.
Erik Naggum <erik@naggum.no>
parents: 13596
diff changeset
1996 Optional prefix argument specifies number of weeks.
13596
d205632cc756 (cal-tex-cursor-filofax-week): Renamed from cal-tex-cursor-week6.
Richard M. Stallman <rms@gnu.org>
parents: 13589
diff changeset
1997 Diary entries are included if `cal-tex-diary' is t.
70600
b9be6d21f2ac (diary-show-all-entries): Do not refer to
Glenn Morris <rgm@gnu.org>
parents: 70598
diff changeset
1998 Holidays are included if `cal-tex-holidays' is t." t)
13193
a25a4f1246c0 Added key definitions and autoloads for cal-tex.el (a new file).
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13042
diff changeset
1999
13596
d205632cc756 (cal-tex-cursor-filofax-week): Renamed from cal-tex-cursor-week6.
Richard M. Stallman <rms@gnu.org>
parents: 13589
diff changeset
2000 (autoload 'cal-tex-cursor-week-monday "cal-tex"
d205632cc756 (cal-tex-cursor-filofax-week): Renamed from cal-tex-cursor-week6.
Richard M. Stallman <rms@gnu.org>
parents: 13589
diff changeset
2001 "Make a buffer with LaTeX commands for a two-page one-week calendar.
d205632cc756 (cal-tex-cursor-filofax-week): Renamed from cal-tex-cursor-week6.
Richard M. Stallman <rms@gnu.org>
parents: 13589
diff changeset
2002 It applies to the week that point is in, and starts on Monday.
d205632cc756 (cal-tex-cursor-filofax-week): Renamed from cal-tex-cursor-week6.
Richard M. Stallman <rms@gnu.org>
parents: 13589
diff changeset
2003 Optional prefix argument specifies number of weeks.
70600
b9be6d21f2ac (diary-show-all-entries): Do not refer to
Glenn Morris <rgm@gnu.org>
parents: 70598
diff changeset
2004 Holidays are included if `cal-tex-holidays' is t." t)
13193
a25a4f1246c0 Added key definitions and autoloads for cal-tex.el (a new file).
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13042
diff changeset
2005
13596
d205632cc756 (cal-tex-cursor-filofax-week): Renamed from cal-tex-cursor-week6.
Richard M. Stallman <rms@gnu.org>
parents: 13589
diff changeset
2006 (autoload 'cal-tex-cursor-filofax-2week "cal-tex"
d205632cc756 (cal-tex-cursor-filofax-week): Renamed from cal-tex-cursor-week6.
Richard M. Stallman <rms@gnu.org>
parents: 13589
diff changeset
2007 "Two-weeks-at-a-glance Filofax style calendar for week indicated by cursor.
d205632cc756 (cal-tex-cursor-filofax-week): Renamed from cal-tex-cursor-week6.
Richard M. Stallman <rms@gnu.org>
parents: 13589
diff changeset
2008 Optional prefix argument specifies number of weeks.
d205632cc756 (cal-tex-cursor-filofax-week): Renamed from cal-tex-cursor-week6.
Richard M. Stallman <rms@gnu.org>
parents: 13589
diff changeset
2009 Diary entries are included if cal-tex-diary is t.
70600
b9be6d21f2ac (diary-show-all-entries): Do not refer to
Glenn Morris <rgm@gnu.org>
parents: 70598
diff changeset
2010 Holidays are included if `cal-tex-holidays' is t." t)
13193
a25a4f1246c0 Added key definitions and autoloads for cal-tex.el (a new file).
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13042
diff changeset
2011
13596
d205632cc756 (cal-tex-cursor-filofax-week): Renamed from cal-tex-cursor-week6.
Richard M. Stallman <rms@gnu.org>
parents: 13589
diff changeset
2012 (autoload 'cal-tex-cursor-filofax-week "cal-tex"
d205632cc756 (cal-tex-cursor-filofax-week): Renamed from cal-tex-cursor-week6.
Richard M. Stallman <rms@gnu.org>
parents: 13589
diff changeset
2013 "One-week-at-a-glance Filofax style calendar for week indicated by cursor.
d205632cc756 (cal-tex-cursor-filofax-week): Renamed from cal-tex-cursor-week6.
Richard M. Stallman <rms@gnu.org>
parents: 13589
diff changeset
2014 Optional prefix argument specifies number of weeks.
26427
3b6cf16f3633 * calendar/calendar.el (calendar-remove-frame-by-deleting):
Sam Steingold <sds@gnu.org>
parents: 26329
diff changeset
2015 Weeks start on Monday.
13596
d205632cc756 (cal-tex-cursor-filofax-week): Renamed from cal-tex-cursor-week6.
Richard M. Stallman <rms@gnu.org>
parents: 13589
diff changeset
2016 Diary entries are included if cal-tex-diary is t.
70600
b9be6d21f2ac (diary-show-all-entries): Do not refer to
Glenn Morris <rgm@gnu.org>
parents: 70598
diff changeset
2017 Holidays are included if `cal-tex-holidays' is t." t)
13193
a25a4f1246c0 Added key definitions and autoloads for cal-tex.el (a new file).
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13042
diff changeset
2018
19974
620ed2f8250e (calendar-mode-map): Bind it to key.
Karl Heuer <kwzh@gnu.org>
parents: 19438
diff changeset
2019 (autoload 'cal-tex-cursor-filofax-daily "cal-tex"
620ed2f8250e (calendar-mode-map): Bind it to key.
Karl Heuer <kwzh@gnu.org>
parents: 19438
diff changeset
2020 "Day-per-page Filofax style calendar for week indicated by cursor.
26427
3b6cf16f3633 * calendar/calendar.el (calendar-remove-frame-by-deleting):
Sam Steingold <sds@gnu.org>
parents: 26329
diff changeset
2021 Optional prefix argument specifies number of weeks. Weeks start on Monday.
19974
620ed2f8250e (calendar-mode-map): Bind it to key.
Karl Heuer <kwzh@gnu.org>
parents: 19438
diff changeset
2022 Diary entries are included if `cal-tex-diary' is t.
70600
b9be6d21f2ac (diary-show-all-entries): Do not refer to
Glenn Morris <rgm@gnu.org>
parents: 70598
diff changeset
2023 Holidays are included if `cal-tex-holidays' is t." t)
19974
620ed2f8250e (calendar-mode-map): Bind it to key.
Karl Heuer <kwzh@gnu.org>
parents: 19438
diff changeset
2024
13193
a25a4f1246c0 Added key definitions and autoloads for cal-tex.el (a new file).
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13042
diff changeset
2025 (autoload 'cal-tex-cursor-year "cal-tex"
a25a4f1246c0 Added key definitions and autoloads for cal-tex.el (a new file).
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13042
diff changeset
2026 "Make a buffer with LaTeX commands for a year's calendar.
70600
b9be6d21f2ac (diary-show-all-entries): Do not refer to
Glenn Morris <rgm@gnu.org>
parents: 70598
diff changeset
2027 Optional prefix argument specifies number of years." t)
13193
a25a4f1246c0 Added key definitions and autoloads for cal-tex.el (a new file).
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13042
diff changeset
2028
a25a4f1246c0 Added key definitions and autoloads for cal-tex.el (a new file).
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13042
diff changeset
2029 (autoload 'cal-tex-cursor-year-landscape "cal-tex"
a25a4f1246c0 Added key definitions and autoloads for cal-tex.el (a new file).
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13042
diff changeset
2030 "Make a buffer with LaTeX commands for a year's calendar (landscape).
70600
b9be6d21f2ac (diary-show-all-entries): Do not refer to
Glenn Morris <rgm@gnu.org>
parents: 70598
diff changeset
2031 Optional prefix argument specifies number of years." t)
13193
a25a4f1246c0 Added key definitions and autoloads for cal-tex.el (a new file).
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13042
diff changeset
2032
a25a4f1246c0 Added key definitions and autoloads for cal-tex.el (a new file).
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13042
diff changeset
2033 (autoload 'cal-tex-cursor-filofax-year "cal-tex"
a25a4f1246c0 Added key definitions and autoloads for cal-tex.el (a new file).
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13042
diff changeset
2034 "Make a buffer with LaTeX commands for a year's calendar (Filofax).
70600
b9be6d21f2ac (diary-show-all-entries): Do not refer to
Glenn Morris <rgm@gnu.org>
parents: 70598
diff changeset
2035 Optional prefix argument specifies number of years." t)
13193
a25a4f1246c0 Added key definitions and autoloads for cal-tex.el (a new file).
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13042
diff changeset
2036
73518
099deb7b2cbd (cal-html-cursor-month, cal-html-cursor-year): Add autoloads for this
Glenn Morris <rgm@gnu.org>
parents: 73181
diff changeset
2037 (autoload 'cal-html-cursor-month "cal-html"
099deb7b2cbd (cal-html-cursor-month, cal-html-cursor-year): Add autoloads for this
Glenn Morris <rgm@gnu.org>
parents: 73181
diff changeset
2038 "Write an HTML calendar file for numeric MONTH of four-digit YEAR.
099deb7b2cbd (cal-html-cursor-month, cal-html-cursor-year): Add autoloads for this
Glenn Morris <rgm@gnu.org>
parents: 73181
diff changeset
2039 The output directory DIR is created if necessary. Interactively,
099deb7b2cbd (cal-html-cursor-month, cal-html-cursor-year): Add autoloads for this
Glenn Morris <rgm@gnu.org>
parents: 73181
diff changeset
2040 MONTH and YEAR are taken from the calendar cursor position. Note
099deb7b2cbd (cal-html-cursor-month, cal-html-cursor-year): Add autoloads for this
Glenn Morris <rgm@gnu.org>
parents: 73181
diff changeset
2041 that any existing output files are overwritten." t)
099deb7b2cbd (cal-html-cursor-month, cal-html-cursor-year): Add autoloads for this
Glenn Morris <rgm@gnu.org>
parents: 73181
diff changeset
2042
099deb7b2cbd (cal-html-cursor-month, cal-html-cursor-year): Add autoloads for this
Glenn Morris <rgm@gnu.org>
parents: 73181
diff changeset
2043 (autoload 'cal-html-cursor-year "cal-html"
099deb7b2cbd (cal-html-cursor-month, cal-html-cursor-year): Add autoloads for this
Glenn Morris <rgm@gnu.org>
parents: 73181
diff changeset
2044 "Write HTML calendar files (index and monthly pages) for four-digit YEAR.
099deb7b2cbd (cal-html-cursor-month, cal-html-cursor-year): Add autoloads for this
Glenn Morris <rgm@gnu.org>
parents: 73181
diff changeset
2045 The output directory DIR is created if necessary. Interactively,
099deb7b2cbd (cal-html-cursor-month, cal-html-cursor-year): Add autoloads for this
Glenn Morris <rgm@gnu.org>
parents: 73181
diff changeset
2046 YEAR is taken from the calendar cursor position. Note that any
099deb7b2cbd (cal-html-cursor-month, cal-html-cursor-year): Add autoloads for this
Glenn Morris <rgm@gnu.org>
parents: 73181
diff changeset
2047 existing output files are overwritten." t)
099deb7b2cbd (cal-html-cursor-month, cal-html-cursor-year): Add autoloads for this
Glenn Morris <rgm@gnu.org>
parents: 73181
diff changeset
2048
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2049 (autoload 'mark-calendar-holidays "holidays"
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2050 "Mark notable days in the calendar window."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2051 t)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2052
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2053 (autoload 'calendar-cursor-holidays "holidays"
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2054 "Find holidays for the date specified by the cursor in the calendar window."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2055 t)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2056
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2057 (defun generate-calendar-window (&optional mon yr)
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2058 "Generate the calendar window for the current date.
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2059 Or, for optional MON, YR."
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2060 (let* ((buffer-read-only nil)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2061 (today (calendar-current-date))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2062 (month (extract-calendar-month today))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2063 (day (extract-calendar-day today))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2064 (year (extract-calendar-year today))
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2065 (today-visible
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2066 (or (not mon)
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2067 (let ((offset (calendar-interval mon yr month year)))
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2068 (and (<= offset 1) (>= offset -1)))))
60292
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
2069 (day-in-week (calendar-day-of-week today))
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
2070 (in-calendar-window (eq (window-buffer (selected-window))
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
2071 (get-buffer calendar-buffer))))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2072 (update-calendar-mode-line)
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2073 (if mon
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2074 (generate-calendar mon yr)
60292
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
2075 (generate-calendar month year))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2076 (calendar-cursor-to-visible-date
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2077 (if today-visible today (list displayed-month 1 displayed-year)))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2078 (set-buffer-modified-p nil)
60292
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
2079 ;; Don't do any window-related stuff if we weren't called from a
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
2080 ;; window displaying the calendar
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
2081 (when in-calendar-window
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
2082 (if (or (one-window-p t) (/= (frame-width) (window-width)))
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
2083 ;; Don't mess with the window size, but ensure that the first
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
2084 ;; line is fully visible
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
2085 (set-window-vscroll nil 0)
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
2086 ;; Adjust the window to exactly fit the displayed calendar
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
2087 (fit-window-to-buffer nil nil calendar-minimum-window-height))
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
2088 (sit-for 0))
49736
dd8404d4fed8 (diary-face-attrs): New custom.
Juanma Barranquero <lekktu@gmail.com>
parents: 49350
diff changeset
2089 (if (and (boundp 'font-lock-mode)
dd8404d4fed8 (diary-face-attrs): New custom.
Juanma Barranquero <lekktu@gmail.com>
parents: 49350
diff changeset
2090 font-lock-mode)
48366
9dad713d153a Patch of Alan Shutko <ats@acm.org> by way of rms.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 47333
diff changeset
2091 (font-lock-fontify-buffer))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2092 (and mark-holidays-in-calendar
54536
934d92d8b496 (calendar-set-mode-line): Use total available mode-line width, rather
Glenn Morris <rgm@gnu.org>
parents: 54128
diff changeset
2093 ;;; (calendar-date-is-legal-p today) ; useful for BC dates
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2094 (mark-calendar-holidays)
60292
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
2095 (and in-calendar-window (sit-for 0)))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2096 (unwind-protect
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2097 (if mark-diary-entries-in-calendar (mark-diary-entries))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2098 (if today-visible
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2099 (run-hooks 'today-visible-calendar-hook)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2100 (run-hooks 'today-invisible-calendar-hook)))))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2101
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2102 (defun generate-calendar (month year)
54128
520476f3222d *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 54071
diff changeset
2103 "Generate a three-month Gregorian calendar centered around MONTH, YEAR."
520476f3222d *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 54071
diff changeset
2104 ;;; A negative YEAR is interpreted as BC; -1 being 1 BC, and so on.
520476f3222d *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 54071
diff changeset
2105 ;;; Note that while calendars for years BC could be displayed as it
60292
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
2106 ;;; stands, almost all other calendar functions (eg holidays) would
54128
520476f3222d *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 54071
diff changeset
2107 ;;; at best have unpredictable results for such dates.
520476f3222d *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 54071
diff changeset
2108 (if (< (+ month (* 12 (1- year))) 2)
60292
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
2109 (error "Months before January, 1 AD cannot be displayed"))
54128
520476f3222d *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 54071
diff changeset
2110 (setq displayed-month month
520476f3222d *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 54071
diff changeset
2111 displayed-year year)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2112 (erase-buffer)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2113 (increment-calendar-month month year -1)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2114 (calendar-for-loop i from 0 to 2 do
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2115 (generate-calendar-month month year (+ 5 (* 25 i)))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2116 (increment-calendar-month month year 1)))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2117
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2118 (defun generate-calendar-month (month year indent)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2119 "Produce a calendar for MONTH, YEAR on the Gregorian calendar.
43010
f3f6fc83e6d1 (generate-calendar-month): Doc fix.
Eli Zaretskii <eliz@gnu.org>
parents: 42924
diff changeset
2120 The calendar is inserted at the top of the buffer in which point is currently
f3f6fc83e6d1 (generate-calendar-month): Doc fix.
Eli Zaretskii <eliz@gnu.org>
parents: 42924
diff changeset
2121 located, but indented INDENT spaces. The indentation is done from the first
f3f6fc83e6d1 (generate-calendar-month): Doc fix.
Eli Zaretskii <eliz@gnu.org>
parents: 42924
diff changeset
2122 character on the line and does not disturb the first INDENT characters on the
54128
520476f3222d *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 54071
diff changeset
2123 line."
4861
924486090b27 (calendar-week-start-day): New var (autoloaded) to
Richard M. Stallman <rms@gnu.org>
parents: 4658
diff changeset
2124 (let* ((blank-days;; at start of month
7760
4edcac57a8f2 (calendar-mod): Remove; it was equivalent to `mod'. All callers changed.
Paul Eggert <eggert@twinsun.com>
parents: 7759
diff changeset
2125 (mod
4861
924486090b27 (calendar-week-start-day): New var (autoloaded) to
Richard M. Stallman <rms@gnu.org>
parents: 4658
diff changeset
2126 (- (calendar-day-of-week (list month 1 year))
924486090b27 (calendar-week-start-day): New var (autoloaded) to
Richard M. Stallman <rms@gnu.org>
parents: 4658
diff changeset
2127 calendar-week-start-day)
924486090b27 (calendar-week-start-day): New var (autoloaded) to
Richard M. Stallman <rms@gnu.org>
parents: 4658
diff changeset
2128 7))
924486090b27 (calendar-week-start-day): New var (autoloaded) to
Richard M. Stallman <rms@gnu.org>
parents: 4658
diff changeset
2129 (last (calendar-last-day-of-month month year)))
924486090b27 (calendar-week-start-day): New var (autoloaded) to
Richard M. Stallman <rms@gnu.org>
parents: 4658
diff changeset
2130 (goto-char (point-min))
924486090b27 (calendar-week-start-day): New var (autoloaded) to
Richard M. Stallman <rms@gnu.org>
parents: 4658
diff changeset
2131 (calendar-insert-indented
924486090b27 (calendar-week-start-day): New var (autoloaded) to
Richard M. Stallman <rms@gnu.org>
parents: 4658
diff changeset
2132 (calendar-string-spread
12061
017af11017a0 Fixed calendar-string-spread to allow 0 or 1 string; this simplified several
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 10459
diff changeset
2133 (list (format "%s %d" (calendar-month-name month) year)) ? 20)
4861
924486090b27 (calendar-week-start-day): New var (autoloaded) to
Richard M. Stallman <rms@gnu.org>
parents: 4658
diff changeset
2134 indent t)
924486090b27 (calendar-week-start-day): New var (autoloaded) to
Richard M. Stallman <rms@gnu.org>
parents: 4658
diff changeset
2135 (calendar-insert-indented "" indent);; Go to proper spot
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2136 ;; Use the first two characters of each day to head the columns.
4861
924486090b27 (calendar-week-start-day): New var (autoloaded) to
Richard M. Stallman <rms@gnu.org>
parents: 4658
diff changeset
2137 (calendar-for-loop i from 0 to 6 do
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2138 (insert
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2139 (let ((string
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2140 (calendar-day-name (mod (+ calendar-week-start-day i) 7) nil t)))
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2141 (if enable-multibyte-characters
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2142 (truncate-string-to-width string 2)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2143 (substring string 0 2)))
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2144 " "))
4861
924486090b27 (calendar-week-start-day): New var (autoloaded) to
Richard M. Stallman <rms@gnu.org>
parents: 4658
diff changeset
2145 (calendar-insert-indented "" 0 t);; Force onto following line
924486090b27 (calendar-week-start-day): New var (autoloaded) to
Richard M. Stallman <rms@gnu.org>
parents: 4658
diff changeset
2146 (calendar-insert-indented "" indent);; Go to proper spot
924486090b27 (calendar-week-start-day): New var (autoloaded) to
Richard M. Stallman <rms@gnu.org>
parents: 4658
diff changeset
2147 ;; Add blank days before the first of the month
924486090b27 (calendar-week-start-day): New var (autoloaded) to
Richard M. Stallman <rms@gnu.org>
parents: 4658
diff changeset
2148 (calendar-for-loop i from 1 to blank-days do (insert " "))
924486090b27 (calendar-week-start-day): New var (autoloaded) to
Richard M. Stallman <rms@gnu.org>
parents: 4658
diff changeset
2149 ;; Put in the days of the month
924486090b27 (calendar-week-start-day): New var (autoloaded) to
Richard M. Stallman <rms@gnu.org>
parents: 4658
diff changeset
2150 (calendar-for-loop i from 1 to last do
924486090b27 (calendar-week-start-day): New var (autoloaded) to
Richard M. Stallman <rms@gnu.org>
parents: 4658
diff changeset
2151 (insert (format "%2d " i))
38088
fcbf5971fe12 (generate-calendar-month): Add help-echo to mouse-highlighted text.
Eli Zaretskii <eliz@gnu.org>
parents: 37430
diff changeset
2152 (add-text-properties
fcbf5971fe12 (generate-calendar-month): Add help-echo to mouse-highlighted text.
Eli Zaretskii <eliz@gnu.org>
parents: 37430
diff changeset
2153 (- (point) 3) (1- (point))
fcbf5971fe12 (generate-calendar-month): Add help-echo to mouse-highlighted text.
Eli Zaretskii <eliz@gnu.org>
parents: 37430
diff changeset
2154 '(mouse-face highlight
fcbf5971fe12 (generate-calendar-month): Add help-echo to mouse-highlighted text.
Eli Zaretskii <eliz@gnu.org>
parents: 37430
diff changeset
2155 help-echo "mouse-2: menu of operations for this date"))
7760
4edcac57a8f2 (calendar-mod): Remove; it was equivalent to `mod'. All callers changed.
Paul Eggert <eggert@twinsun.com>
parents: 7759
diff changeset
2156 (and (zerop (mod (+ i blank-days) 7))
4861
924486090b27 (calendar-week-start-day): New var (autoloaded) to
Richard M. Stallman <rms@gnu.org>
parents: 4658
diff changeset
2157 (/= i last)
924486090b27 (calendar-week-start-day): New var (autoloaded) to
Richard M. Stallman <rms@gnu.org>
parents: 4658
diff changeset
2158 (calendar-insert-indented "" 0 t) ;; Force onto following line
924486090b27 (calendar-week-start-day): New var (autoloaded) to
Richard M. Stallman <rms@gnu.org>
parents: 4658
diff changeset
2159 (calendar-insert-indented "" indent)))));; Go to proper spot
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2160
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2161 (defun calendar-insert-indented (string indent &optional newline)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2162 "Insert STRING at column INDENT.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2163 If the optional parameter NEWLINE is t, leave point at start of next line,
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2164 inserting a newline if there was no next line; otherwise, leave point after
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2165 the inserted text. Value is always t."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2166 ;; Try to move to that column.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2167 (move-to-column indent)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2168 ;; If line is too short, indent out to that column.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2169 (if (< (current-column) indent)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2170 (indent-to indent))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2171 (insert string)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2172 ;; Advance to next line, if requested.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2173 (if newline
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2174 (progn
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2175 (end-of-line)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2176 (if (eobp)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2177 (newline)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2178 (forward-line 1))))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2179 t)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2180
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2181 (defun redraw-calendar ()
60322
ae2850fc74dc (redraw-calendar): Work from any buffer, not just the calendar.
Glenn Morris <rgm@gnu.org>
parents: 60292
diff changeset
2182 "Redraw the calendar display, if `calendar-buffer' is live."
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2183 (interactive)
60322
ae2850fc74dc (redraw-calendar): Work from any buffer, not just the calendar.
Glenn Morris <rgm@gnu.org>
parents: 60292
diff changeset
2184 (if (get-buffer calendar-buffer)
60568
e2cd8a11381a (calendar-redrawing): New internal variable.
Glenn Morris <rgm@gnu.org>
parents: 60528
diff changeset
2185 (with-current-buffer calendar-buffer
60649
3a754b1548d3 (calendar-redrawing): Delete.
Glenn Morris <rgm@gnu.org>
parents: 60568
diff changeset
2186 (let ((cursor-date (calendar-cursor-to-nearest-date)))
60568
e2cd8a11381a (calendar-redrawing): New internal variable.
Glenn Morris <rgm@gnu.org>
parents: 60528
diff changeset
2187 (generate-calendar-window displayed-month displayed-year)
e2cd8a11381a (calendar-redrawing): New internal variable.
Glenn Morris <rgm@gnu.org>
parents: 60528
diff changeset
2188 (calendar-cursor-to-visible-date cursor-date)))))
60528
952103a61e35 (redraw-calendar): Preserve point. Reported by Matt Hodges
Glenn Morris <rgm@gnu.org>
parents: 60322
diff changeset
2189
952103a61e35 (redraw-calendar): Preserve point. Reported by Matt Hodges
Glenn Morris <rgm@gnu.org>
parents: 60322
diff changeset
2190 ;;;###autoload
952103a61e35 (redraw-calendar): Preserve point. Reported by Matt Hodges
Glenn Morris <rgm@gnu.org>
parents: 60322
diff changeset
2191 (defcustom calendar-week-start-day 0
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2192 "The day of the week on which a week in the calendar begins.
60528
952103a61e35 (redraw-calendar): Preserve point. Reported by Matt Hodges
Glenn Morris <rgm@gnu.org>
parents: 60322
diff changeset
2193 0 means Sunday (default), 1 means Monday, and so on.
952103a61e35 (redraw-calendar): Preserve point. Reported by Matt Hodges
Glenn Morris <rgm@gnu.org>
parents: 60322
diff changeset
2194
952103a61e35 (redraw-calendar): Preserve point. Reported by Matt Hodges
Glenn Morris <rgm@gnu.org>
parents: 60322
diff changeset
2195 If you change this variable directly (without using customize)
952103a61e35 (redraw-calendar): Preserve point. Reported by Matt Hodges
Glenn Morris <rgm@gnu.org>
parents: 60322
diff changeset
2196 after starting `calendar', you should call `redraw-calendar' to
952103a61e35 (redraw-calendar): Preserve point. Reported by Matt Hodges
Glenn Morris <rgm@gnu.org>
parents: 60322
diff changeset
2197 update the calendar display to reflect the change, otherwise
952103a61e35 (redraw-calendar): Preserve point. Reported by Matt Hodges
Glenn Morris <rgm@gnu.org>
parents: 60322
diff changeset
2198 movement commands will not work correctly."
952103a61e35 (redraw-calendar): Preserve point. Reported by Matt Hodges
Glenn Morris <rgm@gnu.org>
parents: 60322
diff changeset
2199 :type 'integer
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2200 ;; Change the initialize so that if you reload calendar.el, it will not
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2201 ;; cause a redraw (which may fail, e.g. with "invalid byte-code in
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2202 ;; calendar.elc" because of the "byte-compile-dynamic").
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2203 :initialize 'custom-initialize-default
60528
952103a61e35 (redraw-calendar): Preserve point. Reported by Matt Hodges
Glenn Morris <rgm@gnu.org>
parents: 60322
diff changeset
2204 :set (lambda (sym val)
952103a61e35 (redraw-calendar): Preserve point. Reported by Matt Hodges
Glenn Morris <rgm@gnu.org>
parents: 60322
diff changeset
2205 (set sym val)
952103a61e35 (redraw-calendar): Preserve point. Reported by Matt Hodges
Glenn Morris <rgm@gnu.org>
parents: 60322
diff changeset
2206 (redraw-calendar))
952103a61e35 (redraw-calendar): Preserve point. Reported by Matt Hodges
Glenn Morris <rgm@gnu.org>
parents: 60322
diff changeset
2207 :group 'calendar)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2208
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
2209 (defcustom calendar-debug-sexp nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2210 "Turn debugging on when evaluating a sexp in the diary or holiday list."
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
2211 :type 'boolean
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
2212 :group 'calendar)
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2213
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2214 (defvar calendar-mode-map nil)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2215 (if calendar-mode-map
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2216 nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2217 (let ((map (make-keymap)))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2218 (suppress-keymap map)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2219 (dolist (c '(narrow-to-region mark-word mark-sexp mark-paragraph
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2220 mark-defun mark-whole-buffer mark-page
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2221 downcase-region upcase-region kill-region
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2222 copy-region-as-kill capitalize-region write-region))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2223 (define-key map (vector 'remap c) 'calendar-not-implemented))
74851
4b70fa58f083 (calendar-mode-map): Switch < and >.
Chong Yidong <cyd@stupidchicken.com>
parents: 73518
diff changeset
2224 (define-key map "<" 'scroll-calendar-right)
4b70fa58f083 (calendar-mode-map): Switch < and >.
Chong Yidong <cyd@stupidchicken.com>
parents: 73518
diff changeset
2225 (define-key map "\C-x<" 'scroll-calendar-right)
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2226 (define-key map [prior] 'scroll-calendar-right-three-months)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2227 (define-key map "\ev" 'scroll-calendar-right-three-months)
74851
4b70fa58f083 (calendar-mode-map): Switch < and >.
Chong Yidong <cyd@stupidchicken.com>
parents: 73518
diff changeset
2228 (define-key map ">" 'scroll-calendar-left)
4b70fa58f083 (calendar-mode-map): Switch < and >.
Chong Yidong <cyd@stupidchicken.com>
parents: 73518
diff changeset
2229 (define-key map "\C-x>" 'scroll-calendar-left)
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2230 (define-key map [next] 'scroll-calendar-left-three-months)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2231 (define-key map "\C-v" 'scroll-calendar-left-three-months)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2232 (define-key map "\C-b" 'calendar-backward-day)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2233 (define-key map "\C-p" 'calendar-backward-week)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2234 (define-key map "\e{" 'calendar-backward-month)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2235 (define-key map "\C-x[" 'calendar-backward-year)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2236 (define-key map "\C-f" 'calendar-forward-day)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2237 (define-key map "\C-n" 'calendar-forward-week)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2238 (define-key map [left] 'calendar-backward-day)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2239 (define-key map [up] 'calendar-backward-week)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2240 (define-key map [right] 'calendar-forward-day)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2241 (define-key map [down] 'calendar-forward-week)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2242 (define-key map "\e}" 'calendar-forward-month)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2243 (define-key map "\C-x]" 'calendar-forward-year)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2244 (define-key map "\C-a" 'calendar-beginning-of-week)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2245 (define-key map "\C-e" 'calendar-end-of-week)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2246 (define-key map "\ea" 'calendar-beginning-of-month)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2247 (define-key map "\ee" 'calendar-end-of-month)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2248 (define-key map "\e<" 'calendar-beginning-of-year)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2249 (define-key map "\e>" 'calendar-end-of-year)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2250 (define-key map "\C-@" 'calendar-set-mark)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2251 ;; Many people are used to typing C-SPC and getting C-@.
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2252 (define-key map [?\C- ] 'calendar-set-mark)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2253 (define-key map "\C-x\C-x" 'calendar-exchange-point-and-mark)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2254 (define-key map "\e=" 'calendar-count-days-region)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2255 (define-key map "gd" 'calendar-goto-date)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2256 (define-key map "gD" 'calendar-goto-day-of-year)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2257 (define-key map "gj" 'calendar-goto-julian-date)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2258 (define-key map "ga" 'calendar-goto-astro-day-number)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2259 (define-key map "gh" 'calendar-goto-hebrew-date)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2260 (define-key map "gi" 'calendar-goto-islamic-date)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2261 (define-key map "gb" 'calendar-goto-bahai-date)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2262 (define-key map "gC" 'calendar-goto-chinese-date)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2263 (define-key map "gk" 'calendar-goto-coptic-date)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2264 (define-key map "ge" 'calendar-goto-ethiopic-date)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2265 (define-key map "gp" 'calendar-goto-persian-date)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2266 (define-key map "gc" 'calendar-goto-iso-date)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2267 (define-key map "gw" 'calendar-goto-iso-week)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2268 (define-key map "gf" 'calendar-goto-french-date)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2269 (define-key map "gml" 'calendar-goto-mayan-long-count-date)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2270 (define-key map "gmpc" 'calendar-previous-calendar-round-date)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2271 (define-key map "gmnc" 'calendar-next-calendar-round-date)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2272 (define-key map "gmph" 'calendar-previous-haab-date)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2273 (define-key map "gmnh" 'calendar-next-haab-date)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2274 (define-key map "gmpt" 'calendar-previous-tzolkin-date)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2275 (define-key map "gmnt" 'calendar-next-tzolkin-date)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2276 (define-key map "Aa" 'appt-add)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2277 (define-key map "Ad" 'appt-delete)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2278 (define-key map "S" 'calendar-sunrise-sunset)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2279 (define-key map "M" 'calendar-phases-of-moon)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2280 (define-key map " " 'scroll-other-window)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2281 (define-key map (kbd "DEL") 'scroll-other-window-down)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2282 (define-key map "\C-c\C-l" 'redraw-calendar)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2283 (define-key map "." 'calendar-goto-today)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2284 (define-key map "o" 'calendar-other-month)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2285 (define-key map "q" 'exit-calendar)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2286 (define-key map "a" 'list-calendar-holidays)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2287 (define-key map "h" 'calendar-cursor-holidays)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2288 (define-key map "x" 'mark-calendar-holidays)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2289 (define-key map "u" 'calendar-unmark)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2290 (define-key map "m" 'mark-diary-entries)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2291 (define-key map "d" 'diary-view-entries)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2292 (define-key map "D" 'view-other-diary-entries)
70632
2c9ec59f776a (calendar-mode-map): Refer to diary-show-all-entries rather than alias
Glenn Morris <rgm@gnu.org>
parents: 70600
diff changeset
2293 (define-key map "s" 'diary-show-all-entries)
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2294 (define-key map "pd" 'calendar-print-day-of-year)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2295 (define-key map "pC" 'calendar-print-chinese-date)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2296 (define-key map "pk" 'calendar-print-coptic-date)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2297 (define-key map "pe" 'calendar-print-ethiopic-date)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2298 (define-key map "pp" 'calendar-print-persian-date)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2299 (define-key map "pc" 'calendar-print-iso-date)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2300 (define-key map "pj" 'calendar-print-julian-date)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2301 (define-key map "pa" 'calendar-print-astro-day-number)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2302 (define-key map "ph" 'calendar-print-hebrew-date)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2303 (define-key map "pi" 'calendar-print-islamic-date)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2304 (define-key map "pb" 'calendar-print-bahai-date)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2305 (define-key map "pf" 'calendar-print-french-date)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2306 (define-key map "pm" 'calendar-print-mayan-date)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2307 (define-key map "po" 'calendar-print-other-dates)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2308 (define-key map "id" 'insert-diary-entry)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2309 (define-key map "iw" 'insert-weekly-diary-entry)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2310 (define-key map "im" 'insert-monthly-diary-entry)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2311 (define-key map "iy" 'insert-yearly-diary-entry)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2312 (define-key map "ia" 'insert-anniversary-diary-entry)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2313 (define-key map "ib" 'insert-block-diary-entry)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2314 (define-key map "ic" 'insert-cyclic-diary-entry)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2315 (define-key map "ihd" 'insert-hebrew-diary-entry)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2316 (define-key map "ihm" 'insert-monthly-hebrew-diary-entry)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2317 (define-key map "ihy" 'insert-yearly-hebrew-diary-entry)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2318 (define-key map "iid" 'insert-islamic-diary-entry)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2319 (define-key map "iim" 'insert-monthly-islamic-diary-entry)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2320 (define-key map "iiy" 'insert-yearly-islamic-diary-entry)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2321 (define-key map "iBd" 'insert-bahai-diary-entry)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2322 (define-key map "iBm" 'insert-monthly-bahai-diary-entry)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2323 (define-key map "iBy" 'insert-yearly-bahai-diary-entry)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2324 (define-key map "?" 'calendar-goto-info-node)
73518
099deb7b2cbd (cal-html-cursor-month, cal-html-cursor-year): Add autoloads for this
Glenn Morris <rgm@gnu.org>
parents: 73181
diff changeset
2325 (define-key map "Hm" 'cal-html-cursor-month)
099deb7b2cbd (cal-html-cursor-month, cal-html-cursor-year): Add autoloads for this
Glenn Morris <rgm@gnu.org>
parents: 73181
diff changeset
2326 (define-key map "Hy" 'cal-html-cursor-year)
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2327 (define-key map "tm" 'cal-tex-cursor-month)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2328 (define-key map "tM" 'cal-tex-cursor-month-landscape)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2329 (define-key map "td" 'cal-tex-cursor-day)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2330 (define-key map "tw1" 'cal-tex-cursor-week)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2331 (define-key map "tw2" 'cal-tex-cursor-week2)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2332 (define-key map "tw3" 'cal-tex-cursor-week-iso)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2333 (define-key map "tw4" 'cal-tex-cursor-week-monday)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2334 (define-key map "tfd" 'cal-tex-cursor-filofax-daily)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2335 (define-key map "tfw" 'cal-tex-cursor-filofax-2week)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2336 (define-key map "tfW" 'cal-tex-cursor-filofax-week)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2337 (define-key map "tfy" 'cal-tex-cursor-filofax-year)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2338 (define-key map "ty" 'cal-tex-cursor-year)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2339 (define-key map "tY" 'cal-tex-cursor-year-landscape)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2340 (setq calendar-mode-map map)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2341 ;; Require cal-menu after initializing calendar-mode-map because it uses it.
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2342 (require 'cal-menu)))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2343
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2344 (defun describe-calendar-mode ()
48366
9dad713d153a Patch of Alan Shutko <ats@acm.org> by way of rms.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 47333
diff changeset
2345 "Create a help buffer with a brief description of the `calendar-mode'."
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2346 (interactive)
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2347 (help-setup-xref (list #'describe-calendar-mode) (interactive-p))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2348 (with-output-to-temp-buffer (help-buffer)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2349 (princ
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2350 (format
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2351 "Calendar Mode:\nFor a complete description, type %s\n%s\n"
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2352 (substitute-command-keys
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2353 "\\<calendar-mode-map>\\[describe-mode] from within the calendar")
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2354 (substitute-command-keys "\\{calendar-mode-map}")))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2355 (print-help-return-message)))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2356
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2357 ;; Calendar mode is suitable only for specially formatted data.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2358 (put 'calendar-mode 'mode-class 'special)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2359
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2360 (defvar calendar-mode-line-format
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2361 (list
74851
4b70fa58f083 (calendar-mode-map): Switch < and >.
Chong Yidong <cyd@stupidchicken.com>
parents: 73518
diff changeset
2362 (propertize "<"
4b70fa58f083 (calendar-mode-map): Switch < and >.
Chong Yidong <cyd@stupidchicken.com>
parents: 73518
diff changeset
2363 'help-echo "mouse-1: previous month"
62779
c3dbcfe29c9e (calendar-mode-line-format): Use mode-line-highlight as mouse-face.
Luc Teirlinck <teirllm@auburn.edu>
parents: 62402
diff changeset
2364 'mouse-face 'mode-line-highlight
74851
4b70fa58f083 (calendar-mode-map): Switch < and >.
Chong Yidong <cyd@stupidchicken.com>
parents: 73518
diff changeset
2365 'keymap (make-mode-line-mouse-map 'mouse-1
4b70fa58f083 (calendar-mode-map): Switch < and >.
Chong Yidong <cyd@stupidchicken.com>
parents: 73518
diff changeset
2366 'mouse-scroll-calendar-right))
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2367 "Calendar"
31669
ec8ce5820488 (calendar-mode-line-format): Make fields
Dave Love <fx@gnu.org>
parents: 26530
diff changeset
2368 (concat
ec8ce5820488 (calendar-mode-line-format): Make fields
Dave Love <fx@gnu.org>
parents: 26530
diff changeset
2369 (propertize
ec8ce5820488 (calendar-mode-line-format): Make fields
Dave Love <fx@gnu.org>
parents: 26530
diff changeset
2370 (substitute-command-keys
ec8ce5820488 (calendar-mode-line-format): Make fields
Dave Love <fx@gnu.org>
parents: 26530
diff changeset
2371 "\\<calendar-mode-map>\\[calendar-goto-info-node] info")
74851
4b70fa58f083 (calendar-mode-map): Switch < and >.
Chong Yidong <cyd@stupidchicken.com>
parents: 73518
diff changeset
2372 'help-echo "mouse-1: read Info on Calendar"
62779
c3dbcfe29c9e (calendar-mode-line-format): Use mode-line-highlight as mouse-face.
Luc Teirlinck <teirllm@auburn.edu>
parents: 62402
diff changeset
2373 'mouse-face 'mode-line-highlight
74851
4b70fa58f083 (calendar-mode-map): Switch < and >.
Chong Yidong <cyd@stupidchicken.com>
parents: 73518
diff changeset
2374 'keymap (make-mode-line-mouse-map 'mouse-1 'calendar-goto-info-node))
4b70fa58f083 (calendar-mode-map): Switch < and >.
Chong Yidong <cyd@stupidchicken.com>
parents: 73518
diff changeset
2375 " / "
31669
ec8ce5820488 (calendar-mode-line-format): Make fields
Dave Love <fx@gnu.org>
parents: 26530
diff changeset
2376 (propertize
ec8ce5820488 (calendar-mode-line-format): Make fields
Dave Love <fx@gnu.org>
parents: 26530
diff changeset
2377 (substitute-command-keys
74851
4b70fa58f083 (calendar-mode-map): Switch < and >.
Chong Yidong <cyd@stupidchicken.com>
parents: 73518
diff changeset
2378 " \\<calendar-mode-map>\\[calendar-other-month] other")
4b70fa58f083 (calendar-mode-map): Switch < and >.
Chong Yidong <cyd@stupidchicken.com>
parents: 73518
diff changeset
2379 'help-echo "mouse-1: choose another month"
62779
c3dbcfe29c9e (calendar-mode-line-format): Use mode-line-highlight as mouse-face.
Luc Teirlinck <teirllm@auburn.edu>
parents: 62402
diff changeset
2380 'mouse-face 'mode-line-highlight
39785
5c56451d877f (calendar-mode-line-format): do not use #' on undefined functions
Sam Steingold <sds@gnu.org>
parents: 39523
diff changeset
2381 'keymap (make-mode-line-mouse-map
74851
4b70fa58f083 (calendar-mode-map): Switch < and >.
Chong Yidong <cyd@stupidchicken.com>
parents: 73518
diff changeset
2382 'mouse-1 'mouse-calendar-other-month))
4b70fa58f083 (calendar-mode-map): Switch < and >.
Chong Yidong <cyd@stupidchicken.com>
parents: 73518
diff changeset
2383 " / "
31669
ec8ce5820488 (calendar-mode-line-format): Make fields
Dave Love <fx@gnu.org>
parents: 26530
diff changeset
2384 (propertize
ec8ce5820488 (calendar-mode-line-format): Make fields
Dave Love <fx@gnu.org>
parents: 26530
diff changeset
2385 (substitute-command-keys
ec8ce5820488 (calendar-mode-line-format): Make fields
Dave Love <fx@gnu.org>
parents: 26530
diff changeset
2386 "\\<calendar-mode-map>\\[calendar-goto-today] today")
74851
4b70fa58f083 (calendar-mode-map): Switch < and >.
Chong Yidong <cyd@stupidchicken.com>
parents: 73518
diff changeset
2387 'help-echo "mouse-1: go to today's date"
62779
c3dbcfe29c9e (calendar-mode-line-format): Use mode-line-highlight as mouse-face.
Luc Teirlinck <teirllm@auburn.edu>
parents: 62402
diff changeset
2388 'mouse-face 'mode-line-highlight
74851
4b70fa58f083 (calendar-mode-map): Switch < and >.
Chong Yidong <cyd@stupidchicken.com>
parents: 73518
diff changeset
2389 'keymap (make-mode-line-mouse-map 'mouse-1 #'calendar-goto-today)))
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2390 '(calendar-date-string (calendar-current-date) t)
74851
4b70fa58f083 (calendar-mode-map): Switch < and >.
Chong Yidong <cyd@stupidchicken.com>
parents: 73518
diff changeset
2391 (propertize ">"
4b70fa58f083 (calendar-mode-map): Switch < and >.
Chong Yidong <cyd@stupidchicken.com>
parents: 73518
diff changeset
2392 'help-echo "mouse-1: next month"
62779
c3dbcfe29c9e (calendar-mode-line-format): Use mode-line-highlight as mouse-face.
Luc Teirlinck <teirllm@auburn.edu>
parents: 62402
diff changeset
2393 'mouse-face 'mode-line-highlight
39785
5c56451d877f (calendar-mode-line-format): do not use #' on undefined functions
Sam Steingold <sds@gnu.org>
parents: 39523
diff changeset
2394 'keymap (make-mode-line-mouse-map
74851
4b70fa58f083 (calendar-mode-map): Switch < and >.
Chong Yidong <cyd@stupidchicken.com>
parents: 73518
diff changeset
2395 'mouse-1 'mouse-scroll-calendar-left)))
44369
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2396 "The mode line of the calendar buffer.
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2397
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2398 This must be a list of items that evaluate to strings--those strings are
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2399 evaluated and concatenated together, evenly separated by blanks. The variable
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2400 `date' is available for use as the date under (or near) the cursor; `date'
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2401 defaults to the current date if it is otherwise undefined. Here is an example
44371
aefe45855309 Fix typos.
Juanma Barranquero <lekktu@gmail.com>
parents: 44369
diff changeset
2402 value that has the Hebrew date, the day number/days remaining in the year,
44369
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2403 and the ISO week/year numbers in the mode. When calendar-move-hook is set to
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2404 'update-calendar-mode-line, these mode line shows these values for the date
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2405 under the cursor:
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2406
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2407 (list
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2408 \"\"
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2409 '(calendar-hebrew-date-string date)
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2410 '(let* ((year (extract-calendar-year date))
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2411 (d (calendar-day-number date))
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2412 (days-remaining
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2413 (- (calendar-day-number (list 12 31 year)) d)))
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2414 (format \"%d/%d\" d days-remaining))
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2415 '(let* ((d (calendar-absolute-from-gregorian date))
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2416 (iso-date (calendar-iso-from-absolute d)))
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2417 (format \"ISO week %d of %d\"
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2418 (extract-calendar-month iso-date)
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2419 (extract-calendar-year iso-date)))
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2420 \"\"))
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2421 ")
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2422
47333
79920a7d8018 (mouse-scroll-calendar-left)
Richard M. Stallman <rms@gnu.org>
parents: 44371
diff changeset
2423 (defun mouse-scroll-calendar-left (event)
79920a7d8018 (mouse-scroll-calendar-left)
Richard M. Stallman <rms@gnu.org>
parents: 44371
diff changeset
2424 "Scroll the displayed calendar left by one month.
79920a7d8018 (mouse-scroll-calendar-left)
Richard M. Stallman <rms@gnu.org>
parents: 44371
diff changeset
2425 Maintains the relative position of the cursor
79920a7d8018 (mouse-scroll-calendar-left)
Richard M. Stallman <rms@gnu.org>
parents: 44371
diff changeset
2426 with respect to the calendar as well as possible."
79920a7d8018 (mouse-scroll-calendar-left)
Richard M. Stallman <rms@gnu.org>
parents: 44371
diff changeset
2427 (interactive "e")
79920a7d8018 (mouse-scroll-calendar-left)
Richard M. Stallman <rms@gnu.org>
parents: 44371
diff changeset
2428 (save-selected-window
79920a7d8018 (mouse-scroll-calendar-left)
Richard M. Stallman <rms@gnu.org>
parents: 44371
diff changeset
2429 (select-window (posn-window (event-start event)))
79920a7d8018 (mouse-scroll-calendar-left)
Richard M. Stallman <rms@gnu.org>
parents: 44371
diff changeset
2430 (scroll-calendar-left 1)))
79920a7d8018 (mouse-scroll-calendar-left)
Richard M. Stallman <rms@gnu.org>
parents: 44371
diff changeset
2431
79920a7d8018 (mouse-scroll-calendar-left)
Richard M. Stallman <rms@gnu.org>
parents: 44371
diff changeset
2432 (defun mouse-scroll-calendar-right (event)
79920a7d8018 (mouse-scroll-calendar-left)
Richard M. Stallman <rms@gnu.org>
parents: 44371
diff changeset
2433 "Scroll the displayed calendar right by one month.
79920a7d8018 (mouse-scroll-calendar-left)
Richard M. Stallman <rms@gnu.org>
parents: 44371
diff changeset
2434 Maintains the relative position of the cursor
79920a7d8018 (mouse-scroll-calendar-left)
Richard M. Stallman <rms@gnu.org>
parents: 44371
diff changeset
2435 with respect to the calendar as well as possible."
79920a7d8018 (mouse-scroll-calendar-left)
Richard M. Stallman <rms@gnu.org>
parents: 44371
diff changeset
2436 (interactive "e")
79920a7d8018 (mouse-scroll-calendar-left)
Richard M. Stallman <rms@gnu.org>
parents: 44371
diff changeset
2437 (save-selected-window
79920a7d8018 (mouse-scroll-calendar-left)
Richard M. Stallman <rms@gnu.org>
parents: 44371
diff changeset
2438 (select-window (posn-window (event-start event)))
79920a7d8018 (mouse-scroll-calendar-left)
Richard M. Stallman <rms@gnu.org>
parents: 44371
diff changeset
2439 (scroll-calendar-right 1)))
79920a7d8018 (mouse-scroll-calendar-left)
Richard M. Stallman <rms@gnu.org>
parents: 44371
diff changeset
2440
79920a7d8018 (mouse-scroll-calendar-left)
Richard M. Stallman <rms@gnu.org>
parents: 44371
diff changeset
2441 (defun mouse-calendar-other-month (event)
79920a7d8018 (mouse-scroll-calendar-left)
Richard M. Stallman <rms@gnu.org>
parents: 44371
diff changeset
2442 "Display a three-month calendar centered around a specified month and year."
79920a7d8018 (mouse-scroll-calendar-left)
Richard M. Stallman <rms@gnu.org>
parents: 44371
diff changeset
2443 (interactive "e")
79920a7d8018 (mouse-scroll-calendar-left)
Richard M. Stallman <rms@gnu.org>
parents: 44371
diff changeset
2444 (save-selected-window
79920a7d8018 (mouse-scroll-calendar-left)
Richard M. Stallman <rms@gnu.org>
parents: 44371
diff changeset
2445 (select-window (posn-window (event-start event)))
79920a7d8018 (mouse-scroll-calendar-left)
Richard M. Stallman <rms@gnu.org>
parents: 44371
diff changeset
2446 (call-interactively 'calendar-other-month)))
79920a7d8018 (mouse-scroll-calendar-left)
Richard M. Stallman <rms@gnu.org>
parents: 44371
diff changeset
2447
9709
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2448 (defun calendar-goto-info-node ()
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2449 "Go to the info node for the calendar."
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2450 (interactive)
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2451 (require 'info)
13589
a2554930ea38 (calendar-goto-info-node): Don't let
Richard M. Stallman <rms@gnu.org>
parents: 13573
diff changeset
2452 (let ((where (save-window-excursion
a2554930ea38 (calendar-goto-info-node): Don't let
Richard M. Stallman <rms@gnu.org>
parents: 13573
diff changeset
2453 (Info-find-emacs-command-nodes 'calendar))))
9709
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2454 (if (not where)
38422
7a94f1c588c4 Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents: 38088
diff changeset
2455 (error "Couldn't find documentation for the calendar")
13589
a2554930ea38 (calendar-goto-info-node): Don't let
Richard M. Stallman <rms@gnu.org>
parents: 13573
diff changeset
2456 (let (same-window-buffer-names)
a2554930ea38 (calendar-goto-info-node): Don't let
Richard M. Stallman <rms@gnu.org>
parents: 13573
diff changeset
2457 (info))
9709
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2458 (Info-find-node (car (car where)) (car (cdr (car where)))))))
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2459
48366
9dad713d153a Patch of Alan Shutko <ats@acm.org> by way of rms.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 47333
diff changeset
2460
9dad713d153a Patch of Alan Shutko <ats@acm.org> by way of rms.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 47333
diff changeset
2461
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2462 (defun calendar-mode ()
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2463 "A major mode for the calendar window.
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2464
9709
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2465 For a complete description, type \
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2466 \\<calendar-mode-map>\\[calendar-goto-info-node] from within the calendar.
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2467
9709
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2468 \\<calendar-mode-map>\\{calendar-mode-map}"
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2469 (kill-all-local-variables)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2470 (setq major-mode 'calendar-mode)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2471 (setq mode-name "Calendar")
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2472 (use-local-map calendar-mode-map)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2473 (setq buffer-read-only t)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2474 (setq indent-tabs-mode nil)
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2475 (update-calendar-mode-line)
39523
183567a011b1 (calendar-mode-map): Require cal-menu unconditionally.
Eli Zaretskii <eliz@gnu.org>
parents: 38756
diff changeset
2476 (add-hook 'activate-menubar-hook 'cal-menu-update nil t)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2477 (make-local-variable 'calendar-mark-ring)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2478 (make-local-variable 'displayed-month);; Month in middle of window.
48366
9dad713d153a Patch of Alan Shutko <ats@acm.org> by way of rms.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 47333
diff changeset
2479 (make-local-variable 'displayed-year) ;; Year in middle of window.
9dad713d153a Patch of Alan Shutko <ats@acm.org> by way of rms.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 47333
diff changeset
2480 (set (make-local-variable 'font-lock-defaults)
63334
e3610cf31194 (calendar-mode): Use run-mode-hooks.
Lute Kamstra <lute@gnu.org>
parents: 63221
diff changeset
2481 '(calendar-font-lock-keywords t))
e3610cf31194 (calendar-mode): Use run-mode-hooks.
Lute Kamstra <lute@gnu.org>
parents: 63221
diff changeset
2482 (run-mode-hooks 'calendar-mode-hook))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2483
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2484 (defun calendar-string-spread (strings char length)
12061
017af11017a0 Fixed calendar-string-spread to allow 0 or 1 string; this simplified several
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 10459
diff changeset
2485 "Concatenate list of STRINGS separated with copies of CHAR to fill LENGTH.
017af11017a0 Fixed calendar-string-spread to allow 0 or 1 string; this simplified several
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 10459
diff changeset
2486 The effect is like mapconcat but the separating pieces are as balanced as
017af11017a0 Fixed calendar-string-spread to allow 0 or 1 string; this simplified several
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 10459
diff changeset
2487 possible. Each item of STRINGS is evaluated before concatenation so it can
017af11017a0 Fixed calendar-string-spread to allow 0 or 1 string; this simplified several
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 10459
diff changeset
2488 actually be an expression that evaluates to a string. If LENGTH is too short,
017af11017a0 Fixed calendar-string-spread to allow 0 or 1 string; this simplified several
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 10459
diff changeset
2489 the STRINGS are just concatenated and the result truncated."
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2490 ;; The algorithm is based on equation (3.25) on page 85 of Concrete
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2491 ;; Mathematics by Ronald L. Graham, Donald E. Knuth, and Oren Patashnik,
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2492 ;; Addison-Wesley, Reading, MA, 1989
12061
017af11017a0 Fixed calendar-string-spread to allow 0 or 1 string; this simplified several
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 10459
diff changeset
2493 (let* ((strings (mapcar 'eval
017af11017a0 Fixed calendar-string-spread to allow 0 or 1 string; this simplified several
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 10459
diff changeset
2494 (if (< (length strings) 2)
017af11017a0 Fixed calendar-string-spread to allow 0 or 1 string; this simplified several
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 10459
diff changeset
2495 (append (list "") strings (list ""))
017af11017a0 Fixed calendar-string-spread to allow 0 or 1 string; this simplified several
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 10459
diff changeset
2496 strings)))
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2497 (n (- length (length (apply 'concat strings))))
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2498 (m (1- (length strings)))
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2499 (s (car strings))
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2500 (strings (cdr strings))
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2501 (i 0))
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2502 (dolist (string strings)
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2503 (setq s (concat s
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2504 (make-string (max 0 (/ (+ n i) m)) char)
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2505 string))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2506 (setq i (1+ i)))
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2507 (substring s 0 length)))
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2508
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2509 (defun update-calendar-mode-line ()
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2510 "Update the calendar mode line with the current date and date style."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2511 (if (bufferp (get-buffer calendar-buffer))
65477
a08c0922f1c4 (calendar-for-loop): Add edebug info.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64826
diff changeset
2512 (with-current-buffer calendar-buffer
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2513 (setq mode-line-format
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2514 (calendar-string-spread
44369
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2515 (let ((date (condition-case nil
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2516 (calendar-cursor-to-nearest-date)
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2517 (error (calendar-current-date)))))
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2518 (mapcar 'eval calendar-mode-line-format))
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2519 ? (frame-width)))
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2520 (force-mode-line-update))))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2521
9709
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2522 (defun calendar-window-list ()
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2523 "List of all calendar-related windows."
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2524 (let ((calendar-buffers (calendar-buffer-list))
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2525 list)
31669
ec8ce5820488 (calendar-mode-line-format): Make fields
Dave Love <fx@gnu.org>
parents: 26530
diff changeset
2526 (walk-windows (lambda (w)
ec8ce5820488 (calendar-mode-line-format): Make fields
Dave Love <fx@gnu.org>
parents: 26530
diff changeset
2527 (if (memq (window-buffer w) calendar-buffers)
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2528 (push w list)))
9709
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2529 nil t)
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2530 list))
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2531
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2532 (defun calendar-buffer-list ()
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2533 "List of all calendar-related buffers."
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2534 (let* ((diary-buffer (get-file-buffer diary-file))
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2535 (buffers (list "*Yahrzeits*" lunar-phases-buffer holiday-buffer
22270
0739384d4356 Minor fixes of earlier updates.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 22261
diff changeset
2536 fancy-diary-buffer diary-buffer calendar-buffer
0739384d4356 Minor fixes of earlier updates.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 22261
diff changeset
2537 other-calendars-buffer))
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2538 (buffer-list nil))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2539 (dolist (b buffers)
9709
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2540 (setq b (cond ((stringp b) (get-buffer b))
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2541 ((bufferp b) b)
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2542 (t nil)))
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2543 (if b (push b buffer-list)))
9709
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2544 buffer-list))
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2545
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2546 (defun exit-calendar ()
9709
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2547 "Get out of the calendar window and hide it and related buffers."
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2548 (interactive)
9709
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2549 (let* ((diary-buffer (get-file-buffer diary-file)))
22028
639be14b80ef On exiting, don't signal error when user changes mind.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 22027
diff changeset
2550 (if (or (not diary-buffer)
639be14b80ef On exiting, don't signal error when user changes mind.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 22027
diff changeset
2551 (not (buffer-modified-p diary-buffer))
639be14b80ef On exiting, don't signal error when user changes mind.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 22027
diff changeset
2552 (yes-or-no-p
639be14b80ef On exiting, don't signal error when user changes mind.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 22027
diff changeset
2553 "Diary modified; do you really want to exit the calendar? "))
9709
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2554 ;; Need to do this multiple times because one time can replace some
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2555 ;; calendar-related buffers with other calendar-related buffers
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2556 (mapcar (lambda (x)
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2557 (mapcar 'calendar-hide-window (calendar-window-list)))
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2558 (calendar-window-list)))))
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2559
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2560 (defun calendar-hide-window (window)
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2561 "Hide WINDOW if it is calendar-related."
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2562 (let ((buffer (if (window-live-p window) (window-buffer window))))
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2563 (if (memq buffer (calendar-buffer-list))
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2564 (cond
37430
a0e805e3a7f1 (diary-entry-marker, calendar-today-marker, calendar-holiday-marker): Use
Eli Zaretskii <eliz@gnu.org>
parents: 37001
diff changeset
2565 ((and (display-multi-frame-p)
9709
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2566 (eq 'icon (cdr (assoc 'visibility
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2567 (frame-parameters
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2568 (window-frame window))))))
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2569 nil)
37430
a0e805e3a7f1 (diary-entry-marker, calendar-today-marker, calendar-holiday-marker): Use
Eli Zaretskii <eliz@gnu.org>
parents: 37001
diff changeset
2570 ((and (display-multi-frame-p) (window-dedicated-p window))
26427
3b6cf16f3633 * calendar/calendar.el (calendar-remove-frame-by-deleting):
Sam Steingold <sds@gnu.org>
parents: 26329
diff changeset
2571 (if calendar-remove-frame-by-deleting
3b6cf16f3633 * calendar/calendar.el (calendar-remove-frame-by-deleting):
Sam Steingold <sds@gnu.org>
parents: 26329
diff changeset
2572 (delete-frame (window-frame window))
3b6cf16f3633 * calendar/calendar.el (calendar-remove-frame-by-deleting):
Sam Steingold <sds@gnu.org>
parents: 26329
diff changeset
2573 (iconify-frame (window-frame window))))
9709
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2574 ((not (and (select-window window) (one-window-p window)))
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2575 (delete-window window))
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2576 (t (set-buffer buffer)
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2577 (bury-buffer))))))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2578
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2579 (defun calendar-current-date ()
31730
719a230f8091 Docstring fixes.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 31671
diff changeset
2580 "Return the current date in a list (month day year)."
16099
e3b0c3bf4451 (calendar-current-date): Simplify by using decode-time instead
Richard M. Stallman <rms@gnu.org>
parents: 15317
diff changeset
2581 (let ((now (decode-time)))
e3b0c3bf4451 (calendar-current-date): Simplify by using decode-time instead
Richard M. Stallman <rms@gnu.org>
parents: 15317
diff changeset
2582 (list (nth 4 now) (nth 3 now) (nth 5 now))))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2583
5829
d266967cc1cc (calendar-mode-line-format): Change "current" to "today".
Richard M. Stallman <rms@gnu.org>
parents: 5771
diff changeset
2584 (defun calendar-cursor-to-date (&optional error)
31730
719a230f8091 Docstring fixes.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 31671
diff changeset
2585 "Return a list (month day year) of current cursor position.
5829
d266967cc1cc (calendar-mode-line-format): Change "current" to "today".
Richard M. Stallman <rms@gnu.org>
parents: 5771
diff changeset
2586 If cursor is not on a specific date, signals an error if optional parameter
d266967cc1cc (calendar-mode-line-format): Change "current" to "today".
Richard M. Stallman <rms@gnu.org>
parents: 5771
diff changeset
2587 ERROR is t, otherwise just returns nil."
6037
324bb3410cfb Fix calendar-cursor-to-date to handle starred days correctly.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 6025
diff changeset
2588 (let* ((segment (/ (current-column) 25))
324bb3410cfb Fix calendar-cursor-to-date to handle starred days correctly.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 6025
diff changeset
2589 (month (% (+ displayed-month segment -1) 12))
324bb3410cfb Fix calendar-cursor-to-date to handle starred days correctly.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 6025
diff changeset
2590 (month (if (= 0 month) 12 month))
324bb3410cfb Fix calendar-cursor-to-date to handle starred days correctly.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 6025
diff changeset
2591 (year
324bb3410cfb Fix calendar-cursor-to-date to handle starred days correctly.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 6025
diff changeset
2592 (cond
324bb3410cfb Fix calendar-cursor-to-date to handle starred days correctly.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 6025
diff changeset
2593 ((and (= 12 month) (= segment 0)) (1- displayed-year))
324bb3410cfb Fix calendar-cursor-to-date to handle starred days correctly.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 6025
diff changeset
2594 ((and (= 1 month) (= segment 2)) (1+ displayed-year))
324bb3410cfb Fix calendar-cursor-to-date to handle starred days correctly.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 6025
diff changeset
2595 (t displayed-year))))
13042
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
2596 (if (and (looking-at "[ 0-9]?[0-9][^0-9]")
6037
324bb3410cfb Fix calendar-cursor-to-date to handle starred days correctly.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 6025
diff changeset
2597 (< 2 (count-lines (point-min) (point))))
324bb3410cfb Fix calendar-cursor-to-date to handle starred days correctly.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 6025
diff changeset
2598 (save-excursion
13042
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
2599 (if (not (looking-at " "))
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
2600 (re-search-backward "[^0-9]"))
6037
324bb3410cfb Fix calendar-cursor-to-date to handle starred days correctly.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 6025
diff changeset
2601 (list month
62402
a7e02ef1e3d6 Replace `string-to-int' by `string-to-number'.
Juanma Barranquero <lekktu@gmail.com>
parents: 61394
diff changeset
2602 (string-to-number (buffer-substring (1+ (point)) (+ 4 (point))))
6037
324bb3410cfb Fix calendar-cursor-to-date to handle starred days correctly.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 6025
diff changeset
2603 year))
65477
a08c0922f1c4 (calendar-for-loop): Add edebug info.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64826
diff changeset
2604 (if (and (looking-at "\\*")
a08c0922f1c4 (calendar-for-loop): Add edebug info.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64826
diff changeset
2605 (save-excursion
a08c0922f1c4 (calendar-for-loop): Add edebug info.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64826
diff changeset
2606 (re-search-backward "[^*]")
a08c0922f1c4 (calendar-for-loop): Add edebug info.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64826
diff changeset
2607 (looking-at ".\\*\\*")))
a08c0922f1c4 (calendar-for-loop): Add edebug info.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64826
diff changeset
2608 (list month calendar-starred-day year)
7441
7f25bd8883e6 (calendar-cursor-to-date): Fix error return.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 7404
diff changeset
2609 (if error (error "Not on a date!"))))))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2610
65477
a08c0922f1c4 (calendar-for-loop): Add edebug info.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64826
diff changeset
2611 (add-to-list 'debug-ignored-errors "Not on a date!")
a08c0922f1c4 (calendar-for-loop): Add edebug info.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64826
diff changeset
2612
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2613 ;; The following version of calendar-gregorian-from-absolute is preferred for
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2614 ;; reasons of clarity, BUT it's much slower than the version that follows it.
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2615
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2616 ;;(defun calendar-gregorian-from-absolute (date)
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2617 ;; "Compute the list (month day year) corresponding to the absolute DATE.
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2618 ;;The absolute date is the number of days elapsed since the (imaginary)
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2619 ;;Gregorian date Sunday, December 31, 1 BC."
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2620 ;; (let* ((approx (/ date 366));; Approximation from below.
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2621 ;; (year ;; Search forward from the approximation.
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2622 ;; (+ approx
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2623 ;; (calendar-sum y approx
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2624 ;; (>= date (calendar-absolute-from-gregorian (list 1 1 (1+ y))))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2625 ;; 1)))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2626 ;; (month ;; Search forward from January.
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2627 ;; (1+ (calendar-sum m 1
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2628 ;; (> date
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2629 ;; (calendar-absolute-from-gregorian
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2630 ;; (list m (calendar-last-day-of-month m year) year)))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2631 ;; 1)))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2632 ;; (day ;; Calculate the day by subtraction.
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2633 ;; (- date
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2634 ;; (1- (calendar-absolute-from-gregorian (list month 1 year))))))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2635 ;; (list month day year)))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2636
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2637 (defun calendar-gregorian-from-absolute (date)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2638 "Compute the list (month day year) corresponding to the absolute DATE.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2639 The absolute date is the number of days elapsed since the (imaginary)
52723
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
2640 Gregorian date Sunday, December 31, 1 BC. This function does not
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
2641 handle dates in years BC."
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2642 ;; See the footnote on page 384 of ``Calendrical Calculations, Part II:
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2643 ;; Three Historical Calendars'' by E. M. Reingold, N. Dershowitz, and S. M.
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2644 ;; Clamen, Software--Practice and Experience, Volume 23, Number 4
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2645 ;; (April, 1993), pages 383-404 for an explanation.
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2646 (let* ((d0 (1- date))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2647 (n400 (/ d0 146097))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2648 (d1 (% d0 146097))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2649 (n100 (/ d1 36524))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2650 (d2 (% d1 36524))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2651 (n4 (/ d2 1461))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2652 (d3 (% d2 1461))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2653 (n1 (/ d3 365))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2654 (day (1+ (% d3 365)))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2655 (year (+ (* 400 n400) (* 100 n100) (* n4 4) n1)))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2656 (if (or (= n100 4) (= n1 4))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2657 (list 12 31 year)
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2658 (let ((year (1+ year))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2659 (month 1))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2660 (while (let ((mdays (calendar-last-day-of-month month year)))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2661 (and (< mdays day)
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2662 (setq day (- day mdays))))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2663 (setq month (1+ month)))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2664 (list month day year)))))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2665
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2666 (defun calendar-other-month (month year)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2667 "Display a three-month calendar centered around MONTH and YEAR."
9747
5586959f3393 Redo the noday option for calendar-read-date.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9709
diff changeset
2668 (interactive (calendar-read-date 'noday))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2669 (if (and (= month displayed-month)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2670 (= year displayed-year))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2671 nil
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2672 (let ((old-date (calendar-cursor-to-date))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2673 (today (calendar-current-date)))
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2674 (generate-calendar-window month year)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2675 (calendar-cursor-to-visible-date
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2676 (cond
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2677 ((calendar-date-is-visible-p old-date) old-date)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2678 ((calendar-date-is-visible-p today) today)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2679 (t (list month 1 year)))))))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2680
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2681 (defun calendar-set-mark (arg)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2682 "Mark the date under the cursor, or jump to marked date.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2683 With no prefix argument, push current date onto marked date ring.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2684 With argument, jump to mark, pop it, and put point at end of ring."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2685 (interactive "P")
5829
d266967cc1cc (calendar-mode-line-format): Change "current" to "today".
Richard M. Stallman <rms@gnu.org>
parents: 5771
diff changeset
2686 (let ((date (calendar-cursor-to-date t)))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2687 (if (null arg)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2688 (progn
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2689 (push date calendar-mark-ring)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2690 ;; Since the top of the mark ring is the marked date in the
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2691 ;; calendar, the mark ring in the calendar is one longer than
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2692 ;; in other buffers to get the same effect.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2693 (if (> (length calendar-mark-ring) (1+ mark-ring-max))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2694 (setcdr (nthcdr mark-ring-max calendar-mark-ring) nil))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2695 (message "Mark set"))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2696 (if (null calendar-mark-ring)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2697 (error "No mark set in this buffer")
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2698 (calendar-goto-date (car calendar-mark-ring))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2699 (setq calendar-mark-ring
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2700 (cdr (nconc calendar-mark-ring (list date))))))))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2701
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2702 (defun calendar-exchange-point-and-mark ()
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2703 "Exchange the current cursor position with the marked date."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2704 (interactive)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2705 (let ((mark (car calendar-mark-ring))
5829
d266967cc1cc (calendar-mode-line-format): Change "current" to "today".
Richard M. Stallman <rms@gnu.org>
parents: 5771
diff changeset
2706 (date (calendar-cursor-to-date t)))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2707 (if (null mark)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2708 (error "No mark set in this buffer")
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2709 (setq calendar-mark-ring (cons date (cdr calendar-mark-ring)))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2710 (calendar-goto-date mark))))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2711
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2712 (defun calendar-count-days-region ()
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2713 "Count the number of days (inclusive) between point and the mark."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2714 (interactive)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2715 (let* ((days (- (calendar-absolute-from-gregorian
5829
d266967cc1cc (calendar-mode-line-format): Change "current" to "today".
Richard M. Stallman <rms@gnu.org>
parents: 5771
diff changeset
2716 (calendar-cursor-to-date t))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2717 (calendar-absolute-from-gregorian
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2718 (or (car calendar-mark-ring)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2719 (error "No mark set in this buffer")))))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2720 (days (1+ (if (> days 0) days (- days)))))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2721 (message "Region has %d day%s (inclusive)"
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2722 days (if (> days 1) "s" ""))))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2723
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2724 (defun calendar-not-implemented ()
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2725 "Not implemented."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2726 (interactive)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2727 (error "%s not available in the calendar"
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2728 (global-key-binding (this-command-keys))))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2729
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2730 (defun calendar-read (prompt acceptable &optional initial-contents)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2731 "Return an object read from the minibuffer.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2732 Prompt with the string PROMPT and use the function ACCEPTABLE to decide if
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2733 entered item is acceptable. If non-nil, optional third arg INITIAL-CONTENTS
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2734 is a string to insert in the minibuffer before reading."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2735 (let ((value (read-minibuffer prompt initial-contents)))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2736 (while (not (funcall acceptable value))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2737 (setq value (read-minibuffer prompt initial-contents)))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2738 value))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2739
9709
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2740 (defun calendar-read-date (&optional noday)
31730
719a230f8091 Docstring fixes.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 31671
diff changeset
2741 "Prompt for Gregorian date. Return a list (month day year).
9709
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2742 If optional NODAY is t, does not ask for day, but just returns
18940
953dfe84b101 (calendar-day-name): New optional args WIDTH, ABSOLUTE.
Richard M. Stallman <rms@gnu.org>
parents: 17625
diff changeset
2743 \(month nil year); if NODAY is any other non-nil value the value returned is
31730
719a230f8091 Docstring fixes.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 31671
diff changeset
2744 \(month year)"
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2745 (let* ((year (calendar-read
54128
520476f3222d *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 54071
diff changeset
2746 "Year (>0): "
520476f3222d *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 54071
diff changeset
2747 (lambda (x) (> x 0))
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2748 (int-to-string (extract-calendar-year
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2749 (calendar-current-date)))))
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2750 (month-array calendar-month-name-array)
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2751 (completion-ignore-case t)
54071
8089fbb082b9 (calendar-holidays): Doc fix.
Glenn Morris <rgm@gnu.org>
parents: 53559
diff changeset
2752 (month (cdr (assoc-string
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2753 (completing-read
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2754 "Month name: "
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2755 (mapcar 'list (append month-array nil))
24188
94db9f395842 (calendar-read-date): Use assoc-ignore-case and do not capitalize when
Richard M. Stallman <rms@gnu.org>
parents: 23531
diff changeset
2756 nil t)
54071
8089fbb082b9 (calendar-holidays): Doc fix.
Glenn Morris <rgm@gnu.org>
parents: 53559
diff changeset
2757 (calendar-make-alist month-array 1) t)))
9709
3ece524b8ea3 Lots of minor fixes and code polishing. Exit-calendar code rewritten.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9417
diff changeset
2758 (last (calendar-last-day-of-month month year)))
9747
5586959f3393 Redo the noday option for calendar-read-date.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9709
diff changeset
2759 (if noday
5586959f3393 Redo the noday option for calendar-read-date.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9709
diff changeset
2760 (if (eq noday t)
5586959f3393 Redo the noday option for calendar-read-date.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9709
diff changeset
2761 (list month nil year)
5586959f3393 Redo the noday option for calendar-read-date.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9709
diff changeset
2762 (list month year))
5586959f3393 Redo the noday option for calendar-read-date.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9709
diff changeset
2763 (list month
5586959f3393 Redo the noday option for calendar-read-date.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9709
diff changeset
2764 (calendar-read (format "Day (1-%d): " last)
31669
ec8ce5820488 (calendar-mode-line-format): Make fields
Dave Love <fx@gnu.org>
parents: 26530
diff changeset
2765 (lambda (x) (and (< 0 x) (<= x last))))
9747
5586959f3393 Redo the noday option for calendar-read-date.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9709
diff changeset
2766 year))))
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2767
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2768 (defun calendar-interval (mon1 yr1 mon2 yr2)
52723
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
2769 "The number of months difference between MON1, YR1 and MON2, YR2.
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
2770 The result is positive if the second date is later than the first.
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
2771 Negative years are interpreted as years BC; -1 being 1 BC, and so on."
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
2772 (if (< yr1 0) (setq yr1 (1+ yr1))) ; -1 BC -> 0 AD, etc
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
2773 (if (< yr2 0) (setq yr2 (1+ yr2)))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2774 (+ (* 12 (- yr2 yr1))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2775 (- mon2 mon1)))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2776
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2777 (defvar calendar-abbrev-length 3
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2778 "*Length of abbreviations to be used for day and month names.
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2779 See also `calendar-day-abbrev-array' and `calendar-month-abbrev-array'.")
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2780
4861
924486090b27 (calendar-week-start-day): New var (autoloaded) to
Richard M. Stallman <rms@gnu.org>
parents: 4658
diff changeset
2781 (defvar calendar-day-name-array
23531
37ae25c77df0 Add doc strings CORRECTLY!
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 23498
diff changeset
2782 ["Sunday" "Monday" "Tuesday" "Wednesday" "Thursday" "Friday" "Saturday"]
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2783 "*Array of capitalized strings giving, in order, the day names.
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2784 The first two characters of each string will be used to head the
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2785 day columns in the calendar. See also the variable
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2786 `calendar-day-abbrev-array'.")
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2787
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2788 (defvar calendar-day-abbrev-array
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2789 [nil nil nil nil nil nil nil]
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2790 "*Array of capitalized strings giving the abbreviated day names.
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2791 The order should be the same as that of the full names specified
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2792 in `calendar-day-name-array'. These abbreviations may be used
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2793 instead of the full names in the diary file. Do not include a
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2794 trailing `.' in the strings specified in this variable, though
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2795 you may use such in the diary file. If any element of this array
61148
7f7db25577d9 Update reference to "Calendrical Calculations" book; there's a new edition.
Paul Eggert <eggert@twinsun.com>
parents: 60922
diff changeset
2796 is nil, then the abbreviation will be constructed as the first
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2797 `calendar-abbrev-length' characters of the corresponding full name.")
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2798
4861
924486090b27 (calendar-week-start-day): New var (autoloaded) to
Richard M. Stallman <rms@gnu.org>
parents: 4658
diff changeset
2799 (defvar calendar-month-name-array
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2800 ["January" "February" "March" "April" "May" "June"
23531
37ae25c77df0 Add doc strings CORRECTLY!
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 23498
diff changeset
2801 "July" "August" "September" "October" "November" "December"]
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2802 "*Array of capitalized strings giving, in order, the month names.
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2803 See also the variable `calendar-month-abbrev-array'.")
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2804
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2805 (defvar calendar-month-abbrev-array
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2806 [nil nil nil nil nil nil nil nil nil nil nil nil]
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2807 "*Array of capitalized strings giving the abbreviated month names.
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2808 The order should be the same as that of the full names specified
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2809 in `calendar-month-name-array'. These abbreviations are used in
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2810 the calendar menu entries, and can also be used in the diary
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2811 file. Do not include a trailing `.' in the strings specified in
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2812 this variable, though you may use such in the diary file. If any
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2813 element of this array is nil, then the abbreviation will be
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2814 constructed as the first `calendar-abbrev-length' characters of the
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2815 corresponding full name.")
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2816
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2817 (defun calendar-abbrev-construct (abbrev full &optional period)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2818 "Internal calendar function to return a complete abbreviation array.
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2819 ABBREV is an array of abbreviations, FULL the corresponding array
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2820 of full names. The return value is the ABBREV array, with any nil
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2821 elements replaced by the first three characters taken from the
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2822 corresponding element of FULL. If optional argument PERIOD is non-nil,
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2823 each element returned has a final `.' character."
52160
833b56d6e12d (list-diary-entries-hook, diary-display-hook, nongregorian-diary-listing-hook)
Glenn Morris <rgm@gnu.org>
parents: 52115
diff changeset
2824 (let (elem array name)
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2825 (dotimes (i (length full))
52160
833b56d6e12d (list-diary-entries-hook, diary-display-hook, nongregorian-diary-listing-hook)
Glenn Morris <rgm@gnu.org>
parents: 52115
diff changeset
2826 (setq name (aref full i)
833b56d6e12d (list-diary-entries-hook, diary-display-hook, nongregorian-diary-listing-hook)
Glenn Morris <rgm@gnu.org>
parents: 52115
diff changeset
2827 elem (or (aref abbrev i)
833b56d6e12d (list-diary-entries-hook, diary-display-hook, nongregorian-diary-listing-hook)
Glenn Morris <rgm@gnu.org>
parents: 52115
diff changeset
2828 (substring name 0
833b56d6e12d (list-diary-entries-hook, diary-display-hook, nongregorian-diary-listing-hook)
Glenn Morris <rgm@gnu.org>
parents: 52115
diff changeset
2829 (min calendar-abbrev-length (length name))))
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2830 elem (format "%s%s" elem (if period "." ""))
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2831 array (append array (list elem))))
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2832 (vconcat array)))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2833
48366
9dad713d153a Patch of Alan Shutko <ats@acm.org> by way of rms.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 47333
diff changeset
2834 (defvar calendar-font-lock-keywords
48683
ead34b521994 (facemenu-unlisted-faces): Only update after facemenu was loaded.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 48366
diff changeset
2835 `((,(concat (regexp-opt (mapcar 'identity calendar-month-name-array) t)
ead34b521994 (facemenu-unlisted-faces): Only update after facemenu was loaded.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 48366
diff changeset
2836 " -?[0-9]+")
ead34b521994 (facemenu-unlisted-faces): Only update after facemenu was loaded.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 48366
diff changeset
2837 . font-lock-function-name-face) ; month and year
ead34b521994 (facemenu-unlisted-faces): Only update after facemenu was loaded.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 48366
diff changeset
2838 (,(regexp-opt
ead34b521994 (facemenu-unlisted-faces): Only update after facemenu was loaded.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 48366
diff changeset
2839 (list (substring (aref calendar-day-name-array 6) 0 2)
ead34b521994 (facemenu-unlisted-faces): Only update after facemenu was loaded.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 48366
diff changeset
2840 (substring (aref calendar-day-name-array 0) 0 2)))
ead34b521994 (facemenu-unlisted-faces): Only update after facemenu was loaded.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 48366
diff changeset
2841 ;; Saturdays and Sundays are hilited differently.
ead34b521994 (facemenu-unlisted-faces): Only update after facemenu was loaded.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 48366
diff changeset
2842 . font-lock-comment-face)
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2843 ;; First two chars of each day are used in the calendar.
48683
ead34b521994 (facemenu-unlisted-faces): Only update after facemenu was loaded.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 48366
diff changeset
2844 (,(regexp-opt (mapcar (lambda (x) (substring x 0 2)) calendar-day-name-array))
ead34b521994 (facemenu-unlisted-faces): Only update after facemenu was loaded.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 48366
diff changeset
2845 . font-lock-reference-face))
48366
9dad713d153a Patch of Alan Shutko <ats@acm.org> by way of rms.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 47333
diff changeset
2846 "Default keywords to highlight in Calendar mode.")
9dad713d153a Patch of Alan Shutko <ats@acm.org> by way of rms.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 47333
diff changeset
2847
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2848 (defun calendar-day-name (date &optional abbrev absolute)
48717
b243692710b4 (calendar-day-name): Move defn down.
Richard M. Stallman <rms@gnu.org>
parents: 48683
diff changeset
2849 "Return a string with the name of the day of the week of DATE.
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2850 DATE should be a list in the format (MONTH DAY YEAR), unless the
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2851 optional argument ABSOLUTE is non-nil, in which case DATE should
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2852 be an integer in the range 0 to 6 corresponding to the day of the
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2853 week. Day names are taken from the variable `calendar-day-name-array',
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2854 unless the optional argument ABBREV is non-nil, in which case
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2855 the variable `calendar-day-abbrev-array' is used."
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2856 (aref (if abbrev
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2857 (calendar-abbrev-construct calendar-day-abbrev-array
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2858 calendar-day-name-array)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2859 calendar-day-name-array)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2860 (if absolute date (calendar-day-of-week date))))
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2861
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2862 (defun calendar-make-alist (sequence &optional start-index filter abbrevs)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2863 "Make an assoc list corresponding to SEQUENCE.
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2864 Each element of sequence will be associated with an integer, starting
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2865 from 1, or from START-INDEX if that is non-nil. If a sequence ABBREVS
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2866 is supplied, the function `calendar-abbrev-construct' is used to
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2867 construct abbreviations corresponding to the elements in SEQUENCE.
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2868 Each abbreviation is entered into the alist with the same
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2869 association index as the full name it represents.
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2870 If FILTER is provided, apply it to each key in the alist."
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2871 (let ((index 0)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2872 (offset (or start-index 1))
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2873 (aseq (if abbrevs (calendar-abbrev-construct abbrevs sequence)))
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2874 (aseqp (if abbrevs (calendar-abbrev-construct abbrevs sequence
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2875 'period)))
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2876 alist elem)
52232
e1debf3a5153 Edward M. Reingold <reingold@emr.cs.iit.edu>
Glenn Morris <rgm@gnu.org>
parents: 52160
diff changeset
2877 (dotimes (i (length sequence) (reverse alist))
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2878 (setq index (+ i offset)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2879 elem (elt sequence i)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2880 alist
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2881 (cons (cons (if filter (funcall filter elem) elem) index) alist))
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2882 (if aseq
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2883 (setq elem (elt aseq i)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2884 alist (cons (cons (if filter (funcall filter elem) elem)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2885 index) alist)))
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2886 (if aseqp
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2887 (setq elem (elt aseqp i)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2888 alist (cons (cons (if filter (funcall filter elem) elem)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2889 index) alist))))))
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2890
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2891 (defun calendar-month-name (month &optional abbrev)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2892 "Return a string with the name of month number MONTH.
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2893 Months are numbered from one. Month names are taken from the
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2894 variable `calendar-month-name-array', unless the optional
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2895 argument ABBREV is non-nil, in which case
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2896 `calendar-month-abbrev-array' is used."
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2897 (aref (if abbrev
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2898 (calendar-abbrev-construct calendar-month-abbrev-array
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2899 calendar-month-name-array)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2900 calendar-month-name-array)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2901 (1- month)))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2902
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2903 (defun calendar-day-of-week (date)
52723
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
2904 "Return the day-of-the-week index of DATE, 0 for Sunday, 1 for Monday, etc.
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
2905 DATE is a list of the form (month day year). A negative year is
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
2906 interpreted as BC; -1 being 1 BC, and so on."
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
2907 (mod (calendar-absolute-from-gregorian date) 7))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2908
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2909 (defun calendar-unmark ()
5694
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
2910 "Delete all diary/holiday marks/highlighting from the calendar."
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2911 (interactive)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2912 (setq mark-holidays-in-calendar nil)
5694
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
2913 (setq mark-diary-entries-in-calendar nil)
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
2914 (redraw-calendar))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2915
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2916 (defun calendar-date-is-visible-p (date)
60922
4e6ed80c0af2 * calendar/calendar.el: Replace `legal' with `valid'.
Werner LEMBERG <wl@gnu.org>
parents: 60649
diff changeset
2917 "Return t if DATE is valid and is visible in the calendar window."
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2918 (let ((gap (calendar-interval
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2919 displayed-month displayed-year
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2920 (extract-calendar-month date) (extract-calendar-year date))))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2921 (and (calendar-date-is-legal-p date) (> 2 gap) (< -2 gap))))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2922
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2923 (defun calendar-date-is-legal-p (date)
60922
4e6ed80c0af2 * calendar/calendar.el: Replace `legal' with `valid'.
Werner LEMBERG <wl@gnu.org>
parents: 60649
diff changeset
2924 "Return t if DATE is a valid date."
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2925 (let ((month (extract-calendar-month date))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2926 (day (extract-calendar-day date))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2927 (year (extract-calendar-year date)))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2928 (and (<= 1 month) (<= month 12)
70581
1eaae4fee224 (calendar-basic-setup): Set day to 1 in
Glenn Morris <rgm@gnu.org>
parents: 69356
diff changeset
2929 ;; (calendar-read-date t) returns a date with day = nil.
1eaae4fee224 (calendar-basic-setup): Set day to 1 in
Glenn Morris <rgm@gnu.org>
parents: 69356
diff changeset
2930 ;; Should not be valid (?), since many funcs prob assume integer.
1eaae4fee224 (calendar-basic-setup): Set day to 1 in
Glenn Morris <rgm@gnu.org>
parents: 69356
diff changeset
2931 ;; (calendar-read-date 'noday) returns (month year), which
1eaae4fee224 (calendar-basic-setup): Set day to 1 in
Glenn Morris <rgm@gnu.org>
parents: 69356
diff changeset
2932 ;; currently results in extract-calendar-year returning nil.
1eaae4fee224 (calendar-basic-setup): Set day to 1 in
Glenn Morris <rgm@gnu.org>
parents: 69356
diff changeset
2933 day year (<= 1 day) (<= day (calendar-last-day-of-month month year))
60922
4e6ed80c0af2 * calendar/calendar.el: Replace `legal' with `valid'.
Werner LEMBERG <wl@gnu.org>
parents: 60649
diff changeset
2934 ;; BC dates left as non-valid, to suppress errors from
52723
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
2935 ;; complex holiday algorithms not suitable for years BC.
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
2936 ;; Note there are side effects on calendar navigation.
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2937 (<= 1 year))))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2938
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2939 (defun calendar-date-equal (date1 date2)
31730
719a230f8091 Docstring fixes.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 31671
diff changeset
2940 "Return t if the DATE1 and DATE2 are the same."
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2941 (and
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2942 (= (extract-calendar-month date1) (extract-calendar-month date2))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2943 (= (extract-calendar-day date1) (extract-calendar-day date2))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2944 (= (extract-calendar-year date1) (extract-calendar-year date2))))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2945
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2946 (defun mark-visible-calendar-date (date &optional mark)
5694
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
2947 "Mark DATE in the calendar window with MARK.
49736
dd8404d4fed8 (diary-face-attrs): New custom.
Juanma Barranquero <lekktu@gmail.com>
parents: 49350
diff changeset
2948 MARK is a single-character string, a list of face attributes/values, or a face.
48366
9dad713d153a Patch of Alan Shutko <ats@acm.org> by way of rms.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 47333
diff changeset
2949 MARK defaults to `diary-entry-marker'."
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2950 (if (calendar-date-is-legal-p date)
65620
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2951 (with-current-buffer calendar-buffer
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2952 (save-excursion
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2953 (calendar-cursor-to-visible-date date)
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2954 (setq mark
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2955 (or (and (stringp mark) (= (length mark) 1) mark) ; single-char
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2956 (and (listp mark) (> (length mark) 0) mark) ; attr list
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2957 (and (facep mark) mark) ; face-name
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2958 diary-entry-marker))
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2959 (cond
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2960 ;; face or an attr-list that contained a face
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2961 ((facep mark)
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2962 (overlay-put
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2963 (make-overlay (1- (point)) (1+ (point))) 'face mark))
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2964 ;; single-char
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2965 ((and (stringp mark) (= (length mark) 1))
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2966 (let ((inhibit-read-only t))
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2967 (forward-char 1)
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2968 ;; Insert before delete so as to better preserve markers.
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2969 (insert mark)
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2970 (delete-char 1)
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2971 (forward-char -2)))
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2972 (t ;; attr list
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2973 (let ((temp-face
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2974 (make-symbol
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2975 (apply 'concat "temp-"
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2976 (mapcar (lambda (sym)
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2977 (cond
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2978 ((symbolp sym) (symbol-name sym))
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2979 ((numberp sym) (number-to-string sym))
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2980 (t sym)))
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2981 mark))))
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2982 (faceinfo mark))
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2983 (make-face temp-face)
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2984 ;; Remove :face info from the mark, copy the face info into
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2985 ;; temp-face
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2986 (while (setq faceinfo (memq :face faceinfo))
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2987 (copy-face (read (nth 1 faceinfo)) temp-face)
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2988 (setcar faceinfo nil)
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2989 (setcar (cdr faceinfo) nil))
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2990 (setq mark (delq nil mark))
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2991 ;; Apply the font aspects
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2992 (apply 'set-face-attribute temp-face nil mark)
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2993 (overlay-put
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2994 (make-overlay (1- (point)) (1+ (point))) 'face temp-face))))))))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2995
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2996 (defun calendar-star-date ()
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2997 "Replace the date under the cursor in the calendar window with asterisks.
31730
719a230f8091 Docstring fixes.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 31671
diff changeset
2998 This function can be used with the `today-visible-calendar-hook' run after the
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2999 calendar window has been prepared."
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3000 (let ((inhibit-read-only t)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3001 (modified (buffer-modified-p)))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3002 (forward-char 1)
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3003 (set (make-local-variable 'calendar-starred-day)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3004 (string-to-number
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3005 (buffer-substring (point) (- (point) 2))))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3006 ;; Insert before deleting, to better preserve markers.
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3007 (insert "**")
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3008 (forward-char -2)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3009 (delete-char -2)
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3010 (forward-char 1)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3011 (restore-buffer-modified-p modified)))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3012
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3013 (defun calendar-mark-today ()
5694
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
3014 "Mark the date under the cursor in the calendar window.
48366
9dad713d153a Patch of Alan Shutko <ats@acm.org> by way of rms.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 47333
diff changeset
3015 The date is marked with `calendar-today-marker'. This function can be used with
31730
719a230f8091 Docstring fixes.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 31671
diff changeset
3016 the `today-visible-calendar-hook' run after the calendar window has been
5694
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
3017 prepared."
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
3018 (mark-visible-calendar-date
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
3019 (calendar-cursor-to-date)
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
3020 calendar-today-marker))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3021
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3022 (defun calendar-date-compare (date1 date2)
31730
719a230f8091 Docstring fixes.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 31671
diff changeset
3023 "Return t if DATE1 is before DATE2, nil otherwise.
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3024 The actual dates are in the car of DATE1 and DATE2."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3025 (< (calendar-absolute-from-gregorian (car date1))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3026 (calendar-absolute-from-gregorian (car date2))))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3027
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3028 (defun calendar-date-string (date &optional abbreviate nodayname)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3029 "A string form of DATE, driven by the variable `calendar-date-display-form'.
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
3030 An optional parameter ABBREVIATE, when non-nil, causes the month
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
3031 and day names to be abbreviated as specified by
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
3032 `calendar-month-abbrev-array' and `calendar-day-abbrev-array',
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
3033 respectively. An optional parameter NODAYNAME, when t, omits the
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
3034 name of the day of the week."
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3035 (let* ((dayname
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
3036 (unless nodayname
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
3037 (calendar-day-name date abbreviate)))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3038 (month (extract-calendar-month date))
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
3039 (monthname (calendar-month-name month abbreviate))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3040 (day (int-to-string (extract-calendar-day date)))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3041 (month (int-to-string month))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3042 (year (int-to-string (extract-calendar-year date))))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3043 (mapconcat 'eval calendar-date-display-form "")))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3044
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3045 (defun calendar-dayname-on-or-before (dayname date)
31730
719a230f8091 Docstring fixes.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 31671
diff changeset
3046 "Return the absolute date of the DAYNAME on or before absolute DATE.
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3047 DAYNAME=0 means Sunday, DAYNAME=1 means Monday, and so on.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3048
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3049 Note: Applying this function to d+6 gives us the DAYNAME on or after an
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3050 absolute day d. Similarly, applying it to d+3 gives the DAYNAME nearest to
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3051 absolute date d, applying it to d-1 gives the DAYNAME previous to absolute
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3052 date d, and applying it to d+7 gives the DAYNAME following absolute date d."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3053 (- date (% (- date dayname) 7)))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3054
4658
a34bd3ee36ef (solar-holidays): Use new
Paul Eggert <eggert@twinsun.com>
parents: 4652
diff changeset
3055 (defun calendar-nth-named-absday (n dayname month year &optional day)
a34bd3ee36ef (solar-holidays): Use new
Paul Eggert <eggert@twinsun.com>
parents: 4652
diff changeset
3056 "The absolute date of Nth DAYNAME in MONTH, YEAR before/after optional DAY.
a34bd3ee36ef (solar-holidays): Use new
Paul Eggert <eggert@twinsun.com>
parents: 4652
diff changeset
3057 A DAYNAME of 0 means Sunday, 1 means Monday, and so on. If N<0,
a34bd3ee36ef (solar-holidays): Use new
Paul Eggert <eggert@twinsun.com>
parents: 4652
diff changeset
3058 return the Nth DAYNAME before MONTH DAY, YEAR (inclusive).
a34bd3ee36ef (solar-holidays): Use new
Paul Eggert <eggert@twinsun.com>
parents: 4652
diff changeset
3059 If N>0, return the Nth DAYNAME after MONTH DAY, YEAR (inclusive).
a34bd3ee36ef (solar-holidays): Use new
Paul Eggert <eggert@twinsun.com>
parents: 4652
diff changeset
3060
a34bd3ee36ef (solar-holidays): Use new
Paul Eggert <eggert@twinsun.com>
parents: 4652
diff changeset
3061 If DAY is omitted, it defaults to 1 if N>0, and MONTH's last day otherwise."
a34bd3ee36ef (solar-holidays): Use new
Paul Eggert <eggert@twinsun.com>
parents: 4652
diff changeset
3062 (if (> n 0)
a34bd3ee36ef (solar-holidays): Use new
Paul Eggert <eggert@twinsun.com>
parents: 4652
diff changeset
3063 (+ (* 7 (1- n))
a34bd3ee36ef (solar-holidays): Use new
Paul Eggert <eggert@twinsun.com>
parents: 4652
diff changeset
3064 (calendar-dayname-on-or-before
a34bd3ee36ef (solar-holidays): Use new
Paul Eggert <eggert@twinsun.com>
parents: 4652
diff changeset
3065 dayname
a34bd3ee36ef (solar-holidays): Use new
Paul Eggert <eggert@twinsun.com>
parents: 4652
diff changeset
3066 (+ 6 (calendar-absolute-from-gregorian
a34bd3ee36ef (solar-holidays): Use new
Paul Eggert <eggert@twinsun.com>
parents: 4652
diff changeset
3067 (list month (or day 1) year)))))
a34bd3ee36ef (solar-holidays): Use new
Paul Eggert <eggert@twinsun.com>
parents: 4652
diff changeset
3068 (+ (* 7 (1+ n))
a34bd3ee36ef (solar-holidays): Use new
Paul Eggert <eggert@twinsun.com>
parents: 4652
diff changeset
3069 (calendar-dayname-on-or-before
a34bd3ee36ef (solar-holidays): Use new
Paul Eggert <eggert@twinsun.com>
parents: 4652
diff changeset
3070 dayname
a34bd3ee36ef (solar-holidays): Use new
Paul Eggert <eggert@twinsun.com>
parents: 4652
diff changeset
3071 (calendar-absolute-from-gregorian
a34bd3ee36ef (solar-holidays): Use new
Paul Eggert <eggert@twinsun.com>
parents: 4652
diff changeset
3072 (list month
a34bd3ee36ef (solar-holidays): Use new
Paul Eggert <eggert@twinsun.com>
parents: 4652
diff changeset
3073 (or day (calendar-last-day-of-month month year))
a34bd3ee36ef (solar-holidays): Use new
Paul Eggert <eggert@twinsun.com>
parents: 4652
diff changeset
3074 year))))))
a34bd3ee36ef (solar-holidays): Use new
Paul Eggert <eggert@twinsun.com>
parents: 4652
diff changeset
3075
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
3076 (defun calendar-nth-named-day (n dayname month year &optional day)
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
3077 "The date of Nth DAYNAME in MONTH, YEAR before/after optional DAY.
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
3078 A DAYNAME of 0 means Sunday, 1 means Monday, and so on. If N<0,
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
3079 return the Nth DAYNAME before MONTH DAY, YEAR (inclusive).
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
3080 If N>0, return the Nth DAYNAME after MONTH DAY, YEAR (inclusive).
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
3081
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
3082 If DAY is omitted, it defaults to 1 if N>0, and MONTH's last day otherwise."
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3083 (calendar-gregorian-from-absolute
4658
a34bd3ee36ef (solar-holidays): Use new
Paul Eggert <eggert@twinsun.com>
parents: 4652
diff changeset
3084 (calendar-nth-named-absday n dayname month year day)))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3085
5694
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
3086 (defun calendar-day-of-year-string (&optional date)
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
3087 "String of day number of year of Gregorian DATE.
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
3088 Defaults to today's date if DATE is not given."
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
3089 (let* ((d (or date (calendar-current-date)))
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
3090 (year (extract-calendar-year d))
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
3091 (day (calendar-day-number d))
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
3092 (days-remaining (- (calendar-day-number (list 12 31 year)) day)))
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
3093 (format "Day %d of %d; %d day%s remaining in the year"
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
3094 day year days-remaining (if (= days-remaining 1) "" "s"))))
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
3095
22261
329f546a73ec Add function to show equivalent date on all available calendars (in parallel
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 22028
diff changeset
3096 (defun calendar-print-other-dates ()
329f546a73ec Add function to show equivalent date on all available calendars (in parallel
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 22028
diff changeset
3097 "Show dates on other calendars for date under the cursor."
329f546a73ec Add function to show equivalent date on all available calendars (in parallel
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 22028
diff changeset
3098 (interactive)
329f546a73ec Add function to show equivalent date on all available calendars (in parallel
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 22028
diff changeset
3099 (let* ((date (calendar-cursor-to-date t)))
65477
a08c0922f1c4 (calendar-for-loop): Add edebug info.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64826
diff changeset
3100 (with-current-buffer (get-buffer-create other-calendars-buffer)
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3101 (let ((inhibit-read-only t)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3102 (modified (buffer-modified-p)))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3103 (calendar-set-mode-line
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3104 (concat (calendar-date-string date) " (Gregorian)"))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3105 (erase-buffer)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3106 (apply
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3107 'insert
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3108 (delq nil
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3109 (list
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3110 (calendar-day-of-year-string date) "\n"
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3111 (format "ISO date: %s\n" (calendar-iso-date-string date))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3112 (format "Julian date: %s\n"
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3113 (calendar-julian-date-string date))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3114 (format "Astronomical (Julian) day number (at noon UTC): %s.0\n"
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3115 (calendar-astro-date-string date))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3116 (format "Fixed (RD) date: %s\n"
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3117 (calendar-absolute-from-gregorian date))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3118 (format "Hebrew date (before sunset): %s\n"
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3119 (calendar-hebrew-date-string date))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3120 (format "Persian date: %s\n"
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3121 (calendar-persian-date-string date))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3122 (let ((i (calendar-islamic-date-string date)))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3123 (if (not (string-equal i ""))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3124 (format "Islamic date (before sunset): %s\n" i)))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3125 (let ((b (calendar-bahai-date-string date)))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3126 (if (not (string-equal b ""))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3127 (format "Baha'i date (before sunset): %s\n" b)))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3128 (format "Chinese date: %s\n"
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3129 (calendar-chinese-date-string date))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3130 (let ((c (calendar-coptic-date-string date)))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3131 (if (not (string-equal c ""))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3132 (format "Coptic date: %s\n" c)))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3133 (let ((e (calendar-ethiopic-date-string date)))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3134 (if (not (string-equal e ""))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3135 (format "Ethiopic date: %s\n" e)))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3136 (let ((f (calendar-french-date-string date)))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3137 (if (not (string-equal f ""))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3138 (format "French Revolutionary date: %s\n" f)))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3139 (format "Mayan date: %s\n"
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3140 (calendar-mayan-date-string date)))))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3141 (goto-char (point-min))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3142 (restore-buffer-modified-p modified))
22261
329f546a73ec Add function to show equivalent date on all available calendars (in parallel
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 22028
diff changeset
3143 (display-buffer other-calendars-buffer))))
329f546a73ec Add function to show equivalent date on all available calendars (in parallel
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 22028
diff changeset
3144
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
3145 (defun calendar-print-day-of-year ()
5694
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
3146 "Show day number in year/days remaining in year for date under the cursor."
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3147 (interactive)
5829
d266967cc1cc (calendar-mode-line-format): Change "current" to "today".
Richard M. Stallman <rms@gnu.org>
parents: 5771
diff changeset
3148 (message (calendar-day-of-year-string (calendar-cursor-to-date t))))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3149
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
3150 (defun calendar-set-mode-line (str)
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
3151 "Set mode line to STR, centered, surrounded by dashes."
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3152 (let* ((edges (window-edges))
54536
934d92d8b496 (calendar-set-mode-line): Use total available mode-line width, rather
Glenn Morris <rgm@gnu.org>
parents: 54128
diff changeset
3153 ;; As per doc of window-width, total visible mode-line length.
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3154 (width (- (nth 2 edges) (nth 0 edges))))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3155 (setq mode-line-format
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3156 (if buffer-file-name
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3157 `("-" mode-line-modified
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3158 ,(calendar-string-spread (list str) ?- (- width 6))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3159 "---")
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3160 (calendar-string-spread (list str) ?- width)))))
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
3161
13042
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
3162 (defun calendar-mod (m n)
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
3163 "Non-negative remainder of M/N with N instead of 0."
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
3164 (1+ (mod (1- m) n)))
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
3165
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
3166 (run-hooks 'calendar-load-hook)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3167
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3168 (provide 'calendar)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3169
65477
a08c0922f1c4 (calendar-for-loop): Add edebug info.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64826
diff changeset
3170 ;; Local variables:
a08c0922f1c4 (calendar-for-loop): Add edebug info.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64826
diff changeset
3171 ;; byte-compile-dynamic: t
a08c0922f1c4 (calendar-for-loop): Add edebug info.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64826
diff changeset
3172 ;; End:
a08c0922f1c4 (calendar-for-loop): Add edebug info.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64826
diff changeset
3173
a08c0922f1c4 (calendar-for-loop): Add edebug info.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64826
diff changeset
3174 ;; arch-tag: 19c61596-c8fb-4c69-bcf1-7dd739919cd8
675
85fd29f25c75 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 628
diff changeset
3175 ;;; calendar.el ends here