annotate lisp/calendar/calendar.el @ 87170:e50a2e215441

* erc-stamp.el (erc-echo-timestamp): * erc-lang.el (language): * erc-backend.el (erc-server-connect): Fix buggy call to `message'. * gnus-sum.el (gnus-summary-simplify-subject-query): * ecomplete.el (ecomplete-display-matches): Fix buggy call to `message'. * textmodes/reftex.el (reftex-select-with-char): * textmodes/reftex-toc.el (reftex-toc-do-promote) (reftex-toc-visit-location, reftex-toc-find-section): * textmodes/reftex-index.el (reftex-index-show-entry): * textmodes/org.el (org-cycle-hide-archived-subtrees) (org-table-rotate-recalc-marks, org-mark-ring-push) (org-follow-info-link, org-mhe-get-message-folder-from-index) (org-auto-repeat-maybe, org-store-log-note, org-delete-property) (org-evaluate-time-range, org-edit-agenda-file-list): * textmodes/artist.el (artist-select-next-op-in-list) (artist-select-prev-op-in-list): * term/mac-win.el (mac-service-insert-text): * startup.el (fancy-about-screen): * progmodes/vhdl-mode.el (vhdl-decision-query): * progmodes/idlwave.el (idlwave-template) (idlwave-scroll-completions, idlwave-display-completion-list): * progmodes/ebrowse.el (ebrowse-show-progress): * progmodes/cperl-mode.el (cperl-find-pods-heres): * progmodes/antlr-mode.el (antlr-insert-option-do): * play/mpuz.el (mpuz-close-game): * net/rcirc.el (rcirc-next-active-buffer): * mail/reporter.el (reporter-update-status): * kmacro.el (kmacro-display): * international/ja-dic-cnv.el (skkdic-set-okuri-nasi): * emulation/viper-util.el (viper-save-setting): * emacs-lisp/lisp-mnt.el (lm-verify): * emacs-lisp/edebug.el (edebug-set-mode): * emacs-lisp/checkdoc.el (checkdoc-rogue-spaces, checkdoc-defun): * calendar/calendar.el (calendar-print-day-of-year): * calc/calcalg3.el (calc-curve-fit): * calc/calcalg2.el (math-integral): * calc/calc.el (calc-read-key-sequence, calc-version): * calc/calc-mode.el (calc-set-simplify-mode): * calc/calc-ext.el (calc-fancy-prefix): Fix buggy call to `message'.
author David Kastrup <dak@gnu.org>
date Sat, 08 Dec 2007 01:02:29 +0000
parents 93da3d3f787e
children 107ccd98fa12 2fcaae6177a5
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,
86493
93da3d3f787e Re-fill copyright years.
Glenn Morris <rgm@gnu.org>
parents: 84593
diff changeset
4 ;; 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007
93da3d3f787e Re-fill copyright years.
Glenn Morris <rgm@gnu.org>
parents: 84593
diff changeset
5 ;; Free Software Foundation, Inc.
846
20674ae6bf52 *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 811
diff changeset
6
811
e694e0879463 *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 732
diff changeset
7 ;; Author: Edward M. Reingold <reingold@cs.uiuc.edu>
65919
5c09efcfc1d9 Update maintainer email address.
Glenn Morris <rgm@gnu.org>
parents: 65620
diff changeset
8 ;; Maintainer: Glenn Morris <rgm@gnu.org>
2247
2c7997f249eb Add or correct keywords
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 2211
diff changeset
9 ;; 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
10 ;; Human-Keywords: calendar, Gregorian calendar, diary, holidays
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
11
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
12 ;; This file is part of GNU Emacs.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
13
6737
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
14 ;; 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
15 ;; it under the terms of the GNU General Public License as published by
78216
93e11478c954 Switch license to GPLv3 or later.
Glenn Morris <rgm@gnu.org>
parents: 78145
diff changeset
16 ;; the Free Software Foundation; either version 3, or (at your option)
6737
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
17 ;; any later version.
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
18
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
19 ;; 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
20 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
21 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
22 ;; GNU General Public License for more details.
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
23
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
24 ;; 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
25 ;; 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
26 ;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
18a818a2ee7c Update FSF's address.
Lute Kamstra <lute@gnu.org>
parents: 63334
diff changeset
27 ;; Boston, MA 02110-1301, USA.
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
28
811
e694e0879463 *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 732
diff changeset
29 ;;; Commentary:
e694e0879463 *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 732
diff changeset
30
55431
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
31 ;; 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
32 ;; 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
33 ;; 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
34 ;; 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
35 ;; 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
36 ;; 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
37 ;; 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
38 ;; 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
39 ;; 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
40 ;; 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
41 ;; 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
42 ;; 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
43 ;; 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
44 ;; 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
45 ;; 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
46 ;; 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
47 ;; 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
48 ;; 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
49 ;; 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
50 ;; 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
51 ;; 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
52 ;; 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
53 ;; 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
54 ;; available. Calendar printing via LaTeX is available.
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
55
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
56 ;; The following files are part of the calendar/diary code:
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
57
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
58 ;; appt.el Appointment notification
14687
0d4ff7e4d6a3 Use the new file names in autoloads.
Karl Heuer <kwzh@gnu.org>
parents: 14169
diff changeset
59 ;; 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
60 ;; cal-coptic.el Coptic/Ethiopic calendars
76477
a13a89e31b01 Change "daylight savings time" -> "daylight saving time".
Chong Yidong <cyd@stupidchicken.com>
parents: 75346
diff changeset
61 ;; 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
62 ;; cal-hebrew.el Hebrew calendar
14687
0d4ff7e4d6a3 Use the new file names in autoloads.
Karl Heuer <kwzh@gnu.org>
parents: 14169
diff changeset
63 ;; cal-islam.el Islamic calendar
55431
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
64 ;; 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
65 ;; 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
66 ;; 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
67 ;; cal-mayan.el Mayan calendars
5694
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
68 ;; 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
69 ;; 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
70 ;; 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
71 ;; 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
72 ;; cal-x.el X-windows dedicated frame functions
15317
b52f48264690 Comment change.
Richard M. Stallman <rms@gnu.org>
parents: 15258
diff changeset
73 ;; diary-lib.el Diary functions
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
74 ;; 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
75 ;; lunar.el Phases of the moon
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
76 ;; solar.el Sunrise/sunset, equinoxes/solstices
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
77
20462
d179de7ad92e Add reference to new Calendrical Calculations book.
Paul Eggert <eggert@twinsun.com>
parents: 20429
diff changeset
78 ;; 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
79 ;; ``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
80 ;; and Nachum Dershowitz, Cambridge University Press (2001).
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
81
20462
d179de7ad92e Add reference to new Calendrical Calculations book.
Paul Eggert <eggert@twinsun.com>
parents: 20429
diff changeset
82 ;; An earlier version of the technical details appeared in
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
83 ;; ``Calendrical Calculations'' by Nachum Dershowitz and Edward M. Reingold,
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
84 ;; 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
85 ;; 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
86 ;; 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
87 ;; 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
88 ;; pages 383-404.
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
89
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
90 ;; 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
91 ;; 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
92 ;; the message BODY containing your mailing address (snail).
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
93
811
e694e0879463 *** empty log message ***
Eric S. Raymond <esr@snark.thyrsus.com>
parents: 732
diff changeset
94 ;;; Code:
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
95
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
96 (defvar displayed-month)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
97 (defvar displayed-year)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
98 (defvar calendar-month-name-array)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
99 (defvar calendar-starred-day)
31669
ec8ce5820488 (calendar-mode-line-format): Make fields
Dave Love <fx@gnu.org>
parents: 26530
diff changeset
100
6737
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
101 (defun calendar-version ()
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
102 (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
103 (message "Version 6, October 12, 1995"))
6737
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
104
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
105 (defgroup calendar nil
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
106 "Calendar and time management support."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
107 :group 'applications)
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
108
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
109 (defgroup diary nil
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
110 "Emacs diary."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
111 :group 'calendar)
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
112
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
113 (defgroup appt nil
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
114 "Appointment notification."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
115 :group 'calendar)
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
116
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
117 (defgroup holidays nil
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
118 "Holidays support in calendar."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
119 :group 'calendar
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
120 :prefix "calendar-"
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
121 :group 'local)
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
122
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
123 (defgroup chinese-calendar nil
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
124 "Chinese calendar support."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
125 :group 'calendar)
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
126
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
127 (defgroup calendar-tex nil
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
128 "Options for printing calendar with LaTeX."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
129 :prefix "cal-tex-"
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-hooks nil
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
133 "Calendar hooks."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
134 :prefix "calendar-"
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
4861
924486090b27 (calendar-week-start-day): New var (autoloaded) to
Richard M. Stallman <rms@gnu.org>
parents: 4658
diff changeset
137
60292
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
138 (defconst calendar-buffer "*Calendar*"
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
139 "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
140
4861
924486090b27 (calendar-week-start-day): New var (autoloaded) to
Richard M. Stallman <rms@gnu.org>
parents: 4658
diff changeset
141 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
142 (defcustom calendar-offset 0
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
143 "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
144 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
145 +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
146 the screen."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
147 :type 'integer
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
148 :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
149
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 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
151 (defcustom view-diary-entries-initially nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
152 "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
153 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
154 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
155 is governed by the variable `number-of-diary-entries'. This variable can
ba8b837c072c Update copyright.
Glenn Morris <rgm@gnu.org>
parents: 52723
diff changeset
156 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
157 :type 'boolean
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
158 :group 'diary)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
159
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
160 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
161 (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
162 "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
163 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
164 :type 'boolean
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
165 :group 'diary)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
166
26427
3b6cf16f3633 * calendar/calendar.el (calendar-remove-frame-by-deleting):
Sam Steingold <sds@gnu.org>
parents: 26329
diff changeset
167 ;;;###autoload
3b6cf16f3633 * calendar/calendar.el (calendar-remove-frame-by-deleting):
Sam Steingold <sds@gnu.org>
parents: 26329
diff changeset
168 (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
169 "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
170 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
171 :type 'boolean
3b6cf16f3633 * calendar/calendar.el (calendar-remove-frame-by-deleting):
Sam Steingold <sds@gnu.org>
parents: 26329
diff changeset
172 :group 'view)
3b6cf16f3633 * calendar/calendar.el (calendar-remove-frame-by-deleting):
Sam Steingold <sds@gnu.org>
parents: 26329
diff changeset
173
63221
6e968f79cfbc Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-385
Miles Bader <miles@gnu.org>
parents: 62779
diff changeset
174 (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
175 "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
176 (defface diary
61394
31aa9a390538 * mh-customize.el (mh-speedbar-selected-folder-face): Special case
Dan Nicolaescu <dann@ics.uci.edu>
parents: 61148
diff changeset
177 '((((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
178 :foreground "red1")
31aa9a390538 * mh-customize.el (mh-speedbar-selected-folder-face): Special case
Dan Nicolaescu <dann@ics.uci.edu>
parents: 61148
diff changeset
179 (((class color) (background light))
33208
4360c704c17f Revoke the change.
ShengHuo ZHU <zsh@cs.rochester.edu>
parents: 33205
diff changeset
180 :foreground "red")
61394
31aa9a390538 * mh-customize.el (mh-speedbar-selected-folder-face): Special case
Dan Nicolaescu <dann@ics.uci.edu>
parents: 61148
diff changeset
181 (((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
182 :foreground "yellow1")
33160
8006eaf2db42 (diary-face, calendar-today-face, holiday-face):
Miles Bader <miles@gnu.org>
parents: 33114
diff changeset
183 (((class color) (background dark))
33208
4360c704c17f Revoke the change.
ShengHuo ZHU <zsh@cs.rochester.edu>
parents: 33205
diff changeset
184 :foreground "yellow")
33160
8006eaf2db42 (diary-face, calendar-today-face, holiday-face):
Miles Bader <miles@gnu.org>
parents: 33114
diff changeset
185 (t
42456
8a4077ab418c (various face definitions): Use :weight, not :bold.
Richard M. Stallman <rms@gnu.org>
parents: 41577
diff changeset
186 :weight bold))
33160
8006eaf2db42 (diary-face, calendar-today-face, holiday-face):
Miles Bader <miles@gnu.org>
parents: 33114
diff changeset
187 "Face for highlighting diary entries."
8006eaf2db42 (diary-face, calendar-today-face, holiday-face):
Miles Bader <miles@gnu.org>
parents: 33114
diff changeset
188 :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
189 ;; 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
190 (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
191
6e968f79cfbc Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-385
Miles Bader <miles@gnu.org>
parents: 62779
diff changeset
192 (defface calendar-today
33160
8006eaf2db42 (diary-face, calendar-today-face, holiday-face):
Miles Bader <miles@gnu.org>
parents: 33114
diff changeset
193 '((t (:underline t)))
8006eaf2db42 (diary-face, calendar-today-face, holiday-face):
Miles Bader <miles@gnu.org>
parents: 33114
diff changeset
194 "Face for indicating today's date."
8006eaf2db42 (diary-face, calendar-today-face, holiday-face):
Miles Bader <miles@gnu.org>
parents: 33114
diff changeset
195 :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
196 ;; 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
197 (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
198
6e968f79cfbc Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-385
Miles Bader <miles@gnu.org>
parents: 62779
diff changeset
199 (defface holiday
33160
8006eaf2db42 (diary-face, calendar-today-face, holiday-face):
Miles Bader <miles@gnu.org>
parents: 33114
diff changeset
200 '((((class color) (background light))
33208
4360c704c17f Revoke the change.
ShengHuo ZHU <zsh@cs.rochester.edu>
parents: 33205
diff changeset
201 :background "pink")
33160
8006eaf2db42 (diary-face, calendar-today-face, holiday-face):
Miles Bader <miles@gnu.org>
parents: 33114
diff changeset
202 (((class color) (background dark))
33208
4360c704c17f Revoke the change.
ShengHuo ZHU <zsh@cs.rochester.edu>
parents: 33205
diff changeset
203 :background "chocolate4")
33160
8006eaf2db42 (diary-face, calendar-today-face, holiday-face):
Miles Bader <miles@gnu.org>
parents: 33114
diff changeset
204 (t
33208
4360c704c17f Revoke the change.
ShengHuo ZHU <zsh@cs.rochester.edu>
parents: 33205
diff changeset
205 :inverse-video t))
33160
8006eaf2db42 (diary-face, calendar-today-face, holiday-face):
Miles Bader <miles@gnu.org>
parents: 33114
diff changeset
206 "Face for indicating dates that have holidays."
8006eaf2db42 (diary-face, calendar-today-face, holiday-face):
Miles Bader <miles@gnu.org>
parents: 33114
diff changeset
207 :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
208 ;; 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
209 (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
210
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
211 (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
212 (if (not (display-color-p))
5694
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
213 "+"
63221
6e968f79cfbc Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-385
Miles Bader <miles@gnu.org>
parents: 62779
diff changeset
214 'diary)
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
215 "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
216 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
217 :type '(choice string face)
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
218 :group 'diary)
5694
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
219
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
220 (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
221 (if (not (display-color-p))
5694
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
222 "="
63221
6e968f79cfbc Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-385
Miles Bader <miles@gnu.org>
parents: 62779
diff changeset
223 'calendar-today)
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
224 "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
225 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
226 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
227 to request that."
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
228 :type '(choice string face)
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
229 :group 'calendar)
5694
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
230
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
231 (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
232 (if (not (display-color-p))
5694
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
233 "*"
63221
6e968f79cfbc Revision: miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-385
Miles Bader <miles@gnu.org>
parents: 62779
diff changeset
234 'holiday)
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
235 "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
236 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
237 :type '(choice string face)
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
238 :group 'calendar)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
239
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
240 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
241 (defcustom view-calendar-holidays-initially nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
242 "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
243 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
244 displayed."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
245 :type 'boolean
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
246 :group 'holidays)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
247
732
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
248 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
249 (defcustom mark-holidays-in-calendar nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
250 "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
251 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
252 :type 'boolean
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
253 :group 'holidays)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
254
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
255 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
256 (defcustom all-hebrew-calendar-holidays nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
257 "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
258 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
259
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
260 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
261 :type 'boolean
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
262 :group 'holidays)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
263
732
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
264 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
265 (defcustom all-christian-calendar-holidays nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
266 "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
267 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
268
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
269 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
270 calendar."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
271 :type 'boolean
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
272 :group 'holidays)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
273
732
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
274 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
275 (defcustom all-islamic-calendar-holidays nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
276 "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
277 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
278
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
279 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
280 calendar."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
281 :type 'boolean
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
282 :group 'holidays)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
283
49736
dd8404d4fed8 (diary-face-attrs): New custom.
Juanma Barranquero <lekktu@gmail.com>
parents: 49350
diff changeset
284 (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
285 "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
286 :type 'function
49736
dd8404d4fed8 (diary-face-attrs): New custom.
Juanma Barranquero <lekktu@gmail.com>
parents: 49350
diff changeset
287 :group 'diary)
dd8404d4fed8 (diary-face-attrs): New custom.
Juanma Barranquero <lekktu@gmail.com>
parents: 49350
diff changeset
288
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
289 ;;;###autoload
55431
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
290 (defcustom all-bahai-calendar-holidays nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
291 "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
292 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
293
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
294 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
295 calendar."
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
296 :type 'boolean
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
297 :group 'holidays)
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
298
76752
f6dad15ba551 (calendar-mode-hook): Declare it.
Glenn Morris <rgm@gnu.org>
parents: 76641
diff changeset
299 (defcustom calendar-mode-hook nil
f6dad15ba551 (calendar-mode-hook): Declare it.
Glenn Morris <rgm@gnu.org>
parents: 76641
diff changeset
300 "Hook run when entering `calendar-mode'."
f6dad15ba551 (calendar-mode-hook): Declare it.
Glenn Morris <rgm@gnu.org>
parents: 76641
diff changeset
301 :type 'hook
f6dad15ba551 (calendar-mode-hook): Declare it.
Glenn Morris <rgm@gnu.org>
parents: 76641
diff changeset
302 :group 'calendar-hooks)
f6dad15ba551 (calendar-mode-hook): Declare it.
Glenn Morris <rgm@gnu.org>
parents: 76641
diff changeset
303
55431
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
304 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
305 (defcustom calendar-load-hook nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
306 "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
307 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
308 :type 'hook
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
309 :group 'calendar-hooks)
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
310
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
311 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
312 (defcustom initial-calendar-window-hook nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
313 "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
314 The functions invoked are called after the calendar window is opened, but
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
315 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
316 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
317 :type 'hook
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
318 :group 'calendar-hooks)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
319
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
320 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
321 (defcustom today-visible-calendar-hook nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
322 "List of functions called whenever the current date is visible.
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
323 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
324 function `calendar-star-date' is included for this purpose:
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
325 (setq today-visible-calendar-hook 'calendar-star-date)
7404
ce1457fb5ea4 Doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 7132
diff changeset
326 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
327 a function is also provided for this:
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
328 (setq today-visible-calendar-hook 'calendar-mark-today)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
329
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
330 The corresponding variable `today-invisible-calendar-hook' is the list of
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
331 functions called when the calendar function was called when the current
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
332 date is not visible in the window.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
333
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
334 Other than the use of the provided functions, the changing of any
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
335 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
336 functions that move by days and weeks."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
337 :type 'hook
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
338 :group 'calendar-hooks)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
339
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
340 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
341 (defcustom today-invisible-calendar-hook nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
342 "List of functions called whenever the current date is not visible.
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
343
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
344 The corresponding variable `today-visible-calendar-hook' is the list of
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
345 functions called when the calendar function was called when the current
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
346 date is visible in the window.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
347
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
348 Other than the use of the provided functions, the changing of any
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
349 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
350 functions that move by days and weeks."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
351 :type 'hook
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
352 :group 'calendar-hooks)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
353
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
354 ;;;###autoload
25410
3ab4413f7549 (calendar-move-hook): New hook.
Richard M. Stallman <rms@gnu.org>
parents: 25154
diff changeset
355 (defcustom calendar-move-hook nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
356 "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
357
26427
3b6cf16f3633 * calendar/calendar.el (calendar-remove-frame-by-deleting):
Sam Steingold <sds@gnu.org>
parents: 26329
diff changeset
358 For example,
25410
3ab4413f7549 (calendar-move-hook): New hook.
Richard M. Stallman <rms@gnu.org>
parents: 25154
diff changeset
359
65477
a08c0922f1c4 (calendar-for-loop): Add edebug info.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64826
diff changeset
360 (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
361
3ab4413f7549 (calendar-move-hook): New hook.
Richard M. Stallman <rms@gnu.org>
parents: 25154
diff changeset
362 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
363 :type 'hook
3ab4413f7549 (calendar-move-hook): New hook.
Richard M. Stallman <rms@gnu.org>
parents: 25154
diff changeset
364 :group 'calendar-hooks)
3ab4413f7549 (calendar-move-hook): New hook.
Richard M. Stallman <rms@gnu.org>
parents: 25154
diff changeset
365
3ab4413f7549 (calendar-move-hook): New hook.
Richard M. Stallman <rms@gnu.org>
parents: 25154
diff changeset
366 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
367 (defcustom diary-file "~/diary"
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
368 "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
369
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
370 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
371 specified by the variable `american-date-diary-pattern', by default:
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
372
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
373 MONTH/DAY
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
374 MONTH/DAY/YEAR
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
375 MONTHNAME DAY
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
376 MONTHNAME DAY, YEAR
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
377 DAYNAME
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
378
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
379 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
380 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
381 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
382 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
383 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
384 `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
385 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
386 `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
387 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
388 `*' 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
389 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
390 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
391 in every week.
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
392
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
393 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
394 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
395 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
396 file. The European forms (see `european-date-diary-pattern') are
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
397
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
398 DAY/MONTH
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
399 DAY/MONTH/YEAR
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
400 DAY MONTHNAME
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
401 DAY MONTHNAME YEAR
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
402 DAYNAME
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
403
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
404 To revert to the default American style from the European style, execute
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
405 `american-calendar' in the calendar.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
406
7404
ce1457fb5ea4 Doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 7132
diff changeset
407 A diary entry can be preceded by the character
ce1457fb5ea4 Doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 7132
diff changeset
408 `diary-nonmarking-symbol' (ordinarily `&') to make that entry
ce1457fb5ea4 Doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 7132
diff changeset
409 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
410 window but will appear in a diary window.
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
411
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
412 Multiline diary entries are made by indenting lines after the first with
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
413 either a TAB or one or more spaces.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
414
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
415 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
416 entries (in the default American style):
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
417
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
418 12/22/1988 Twentieth wedding anniversary!!
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
419 &1/1. Happy New Year!
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
420 10/22 Ruth's birthday.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
421 21: Payday
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
422 Tuesday--weekly meeting with grad students at 10am
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
423 Supowit, Shen, Bitner, and Kapoor to attend.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
424 1/13/89 Friday the thirteenth!!
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
425 &thu 4pm squash game with Lloyd.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
426 mar 16 Dad's birthday
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
427 April 15, 1989 Income tax due.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
428 &* 15 time cards due.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
429
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
430 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
431 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
432 diary window; only the continuation lines is shown. For example, the
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
433 single diary entry
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 02/11/1989
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
436 Bill Blattner visits Princeton today
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
437 2pm Cognitive Studies Committee meeting
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
438 2:30-5:30 Lizzie at Lawrenceville for `Group Initiative'
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
439 4:00pm Jamie Tappenden
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
440 7:30pm Dinner at George and Ed's for Alan Ryan
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
441 7:30-10:00pm dance at Stewart Country Day School
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
442
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
443 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
444 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
445 used with more than one day's entries displayed.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
446
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
447 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
448
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
449 %%(diary-block 11 1 1990 11 10 1990) Vacation
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
450
55431
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
451 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
452 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
453 `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
454 `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
455 `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
456 `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
457 `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
458 `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
459 `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
460 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
461 details.
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
462
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
463 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
464 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
465 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
466 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
467 documentation for these functions for details.
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
468
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
469 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
470 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
471 :type 'file
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
472 :group 'diary)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
473
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
474 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
475 (defcustom diary-nonmarking-symbol "&"
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
476 "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
477 :type 'string
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
478 :group 'diary)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
479
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
480 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
481 (defcustom hebrew-diary-entry-symbol "H"
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
482 "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
483 :type 'string
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
484 :group 'diary)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
485
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
486 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
487 (defcustom islamic-diary-entry-symbol "I"
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
488 "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
489 :type 'string
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
490 :group 'diary)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
491
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
492 ;;;###autoload
55431
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
493 (defcustom bahai-diary-entry-symbol "B"
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
494 "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
495 :type 'string
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
496 :group 'diary)
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
497
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
498 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
499 (defcustom diary-include-string "#include"
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
500 "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
501 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
502 :type 'string
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
503 :group 'diary)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
504
49736
dd8404d4fed8 (diary-face-attrs): New custom.
Juanma Barranquero <lekktu@gmail.com>
parents: 49350
diff changeset
505 (defcustom diary-glob-file-regexp-prefix "^\\#"
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
506 "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
507 :type 'regexp
dd8404d4fed8 (diary-face-attrs): New custom.
Juanma Barranquero <lekktu@gmail.com>
parents: 49350
diff changeset
508 :group 'diary)
dd8404d4fed8 (diary-face-attrs): New custom.
Juanma Barranquero <lekktu@gmail.com>
parents: 49350
diff changeset
509
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
510 (defcustom diary-face-attrs
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
511 '((" *\\[foreground:\\([-a-z]+\\)\\]$" 1 :foreground string)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
512 (" *\\[background:\\([-a-z]+\\)\\]$" 1 :background string)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
513 (" *\\[width:\\([-a-z]+\\)\\]$" 1 :width symbol)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
514 (" *\\[height:\\([-0-9a-z]+\\)\\]$" 1 :height int)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
515 (" *\\[weight:\\([-a-z]+\\)\\]$" 1 :weight symbol)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
516 (" *\\[slant:\\([-a-z]+\\)\\]$" 1 :slant symbol)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
517 (" *\\[underline:\\([-a-z]+\\)\\]$" 1 :underline stringtnil)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
518 (" *\\[overline:\\([-a-z]+\\)\\]$" 1 :overline stringtnil)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
519 (" *\\[strike-through:\\([-a-z]+\\)\\]$" 1 :strike-through stringtnil)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
520 (" *\\[inverse-video:\\([-a-z]+\\)\\]$" 1 :inverse-video tnil)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
521 (" *\\[face:\\([-0-9a-z]+\\)\\]$" 1 :face string)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
522 (" *\\[font:\\([-a-z0-9]+\\)\\]$" 1 :font string)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
523 ;; Unsupported.
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
524 ;;; (" *\\[box:\\([-a-z]+\\)\\]$" 1 :box)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
525 ;;; (" *\\[stipple:\\([-a-z]+\\)\\]$" 1 :stipple)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
526 )
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
527 "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
528 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
529 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
530 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
531 modified."
49736
dd8404d4fed8 (diary-face-attrs): New custom.
Juanma Barranquero <lekktu@gmail.com>
parents: 49350
diff changeset
532 :type 'sexp
dd8404d4fed8 (diary-face-attrs): New custom.
Juanma Barranquero <lekktu@gmail.com>
parents: 49350
diff changeset
533 :group 'diary)
dd8404d4fed8 (diary-face-attrs): New custom.
Juanma Barranquero <lekktu@gmail.com>
parents: 49350
diff changeset
534
dd8404d4fed8 (diary-face-attrs): New custom.
Juanma Barranquero <lekktu@gmail.com>
parents: 49350
diff changeset
535 (defcustom diary-file-name-prefix nil
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
536 "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
537 :type 'boolean
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
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
540 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
541 (defcustom sexp-diary-entry-symbol "%%"
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
542 "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
543 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
544 :type 'string
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
545 :group 'diary)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
546
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
547 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
548 (defcustom abbreviated-calendar-year t
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
549 "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
550 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
551 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
552 full."
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
553 :type 'boolean
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
554 :group 'diary)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
555
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
556 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
557 (defcustom european-calendar-style nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
558 "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
559 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
560 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
561 are
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
562
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
563 DAY/MONTH
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
564 DAY/MONTH/YEAR
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
565 DAY MONTHNAME
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
566 DAY MONTHNAME YEAR
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
567 DAYNAME
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
568
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
569 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
570 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
571 `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
572
3dbfd59b44b5 (european-calendar-style): Call european-calendar or american-calendar
Glenn Morris <rgm@gnu.org>
parents: 71569
diff changeset
573 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
574 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
575 \\[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
576 `american-calendar'."
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
577 :type 'boolean
73176
3dbfd59b44b5 (european-calendar-style): Call european-calendar or american-calendar
Glenn Morris <rgm@gnu.org>
parents: 71569
diff changeset
578 ;; 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
579 ;; 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
580 :initialize 'custom-initialize-default
73181
97319c05f531 (european-calendar-style): Tweak previous fix.
Glenn Morris <rgm@gnu.org>
parents: 73176
diff changeset
581 :set (lambda (symbol value)
97319c05f531 (european-calendar-style): Tweak previous fix.
Glenn Morris <rgm@gnu.org>
parents: 73176
diff changeset
582 (if value
97319c05f531 (european-calendar-style): Tweak previous fix.
Glenn Morris <rgm@gnu.org>
parents: 73176
diff changeset
583 (european-calendar)
97319c05f531 (european-calendar-style): Tweak previous fix.
Glenn Morris <rgm@gnu.org>
parents: 73176
diff changeset
584 (american-calendar)))
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
585 :group 'diary)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
586
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
587 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
588 (defcustom american-date-diary-pattern
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
589 '((month "/" day "[^/0-9]")
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
590 (month "/" day "/" year "[^0-9]")
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
591 (monthname " *" day "[^,0-9]")
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
592 (monthname " *" day ", *" year "[^0-9]")
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
593 (dayname "\\W"))
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
594 "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
595 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
596 :type '(repeat (choice (cons :tag "Backup"
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
597 :value (backup . nil)
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
598 (const backup)
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
599 (repeat (list :inline t :format "%v"
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
600 (symbol :tag "Keyword")
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
601 (choice symbol regexp))))
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
602 (repeat (list :inline t :format "%v"
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
603 (symbol :tag "Keyword")
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
604 (choice symbol regexp)))))
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
605 :group 'diary)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
606
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
607 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
608 (defcustom european-date-diary-pattern
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
609 '((day "/" month "[^/0-9]")
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
610 (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
611 (backup day " *" monthname "\\W+\\<\\([^*0-9]\\|\\([0-9]+[:aApP]\\)\\)")
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
612 (day " *" monthname " *" year "[^0-9]")
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
613 (dayname "\\W"))
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
614 "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
615 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
616 :type '(repeat (choice (cons :tag "Backup"
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
617 :value (backup . nil)
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
618 (const backup)
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
619 (repeat (list :inline t :format "%v"
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
620 (symbol :tag "Keyword")
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
621 (choice symbol regexp))))
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
622 (repeat (list :inline t :format "%v"
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
623 (symbol :tag "Keyword")
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
624 (choice symbol regexp)))))
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
625 :group 'diary)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
626
77044
e0a720fbf325 (diary-font-lock-keywords, diary-live-p): Autoload these functions.
Glenn Morris <rgm@gnu.org>
parents: 76752
diff changeset
627 (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
628 (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
629 (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
630
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
631 (defcustom diary-date-forms
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
632 (if european-calendar-style
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
633 european-date-diary-pattern
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
634 american-date-diary-pattern)
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
635 "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
636 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
637 any portion of the diary entry itself, just the date component.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
638
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
639 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
640 `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
641 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
642 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
643 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
644 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
645 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
646 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
647 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
648 also match `*'.
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
649
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
650 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
651 standard syntax table from Fundamental mode, but with the `*' changed so
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
652 that it is a word constituent.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
653
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
654 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
655 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
656 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
657 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
658 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
659 :type '(repeat (choice (cons :tag "Backup"
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
660 :value (backup . nil)
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
661 (const backup)
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
662 (repeat (list :inline t :format "%v"
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
663 (symbol :tag "Keyword")
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
664 (choice symbol regexp))))
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
665 (repeat (list :inline t :format "%v"
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
666 (symbol :tag "Keyword")
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
667 (choice symbol regexp)))))
77044
e0a720fbf325 (diary-font-lock-keywords, diary-live-p): Autoload these functions.
Glenn Morris <rgm@gnu.org>
parents: 76752
diff changeset
668 :initialize 'custom-initialize-default
e0a720fbf325 (diary-font-lock-keywords, diary-live-p): Autoload these functions.
Glenn Morris <rgm@gnu.org>
parents: 76752
diff changeset
669 :set (lambda (symbol value)
e0a720fbf325 (diary-font-lock-keywords, diary-live-p): Autoload these functions.
Glenn Morris <rgm@gnu.org>
parents: 76752
diff changeset
670 (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
671 (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
672 (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
673 ;; 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
674 ;; 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
675 (and (diary-live-p)
e0a720fbf325 (diary-font-lock-keywords, diary-live-p): Autoload these functions.
Glenn Morris <rgm@gnu.org>
parents: 76752
diff changeset
676 (diary))))
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
677 :group 'diary)
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
678
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
679 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
680 (defcustom european-calendar-display-form
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
681 '((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
682 "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
683 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
684 :type 'sexp
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
685 :group 'calendar)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
686
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
687 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
688 (defcustom american-calendar-display-form
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
689 '((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
690 "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
691 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
692 :type 'sexp
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
693 :group 'calendar)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
694
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
695 (defcustom calendar-date-display-form
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
696 (if european-calendar-style
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
697 european-calendar-display-form
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
698 american-calendar-display-form)
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
699 "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
700
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
701 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
702 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
703 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
704 strings. For example, the ISO standard would use the pseudo- pattern
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
705
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
706 '(year \"-\" month \"-\" day)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
707
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
708 while a typical American form would be
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
709
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
710 '(month \"/\" day \"/\" (substring year -2))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
711
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
712 and
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
713
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
714 '((format \"%9s, %9s %2s, %4s\" dayname monthname day year))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
715
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
716 would give the usual American style in fixed-length fields.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
717
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
718 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
719 :type 'sexp
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
720 :group 'calendar)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
721
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
722 (defun european-calendar ()
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
723 "Set the interpretation and display of dates to the European style."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
724 (interactive)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
725 (setq european-calendar-style t)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
726 (setq calendar-date-display-form european-calendar-display-form)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
727 (setq diary-date-forms european-date-diary-pattern)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
728 (update-calendar-mode-line))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
729
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
730 (defun american-calendar ()
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
731 "Set the interpretation and display of dates to the American style."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
732 (interactive)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
733 (setq european-calendar-style nil)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
734 (setq calendar-date-display-form american-calendar-display-form)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
735 (setq diary-date-forms american-date-diary-pattern)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
736 (update-calendar-mode-line))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
737
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
738 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
739 (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
740 "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
741 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
742 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
743 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
744 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
745 :type 'hook
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
746 :group 'diary)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
747
732
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
748 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
749 (defcustom list-diary-entries-hook nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
750 "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
751 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
752
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
753 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
754 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
755 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
756 of the form
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 #include \"filename\"
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
759
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
760 This is recursive; that is, #include directives in files thus included are
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
761 obeyed. You can change the \"#include\" to some other string by changing
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
762 the variable `diary-include-string'. When you use `include-other-diary-files'
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
763 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
764 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
765
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
766 For example, you could use
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
767
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
768 (setq list-diary-entries-hook
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
769 '(include-other-diary-files sort-diary-entries))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
770 (setq diary-display-hook 'fancy-diary-display)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
771
7404
ce1457fb5ea4 Doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 7132
diff changeset
772 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
773 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
774 lexicographic order."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
775 :type 'hook
52160
833b56d6e12d (list-diary-entries-hook, diary-display-hook, nongregorian-diary-listing-hook)
Glenn Morris <rgm@gnu.org>
parents: 52115
diff changeset
776 :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
777 :group 'diary)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
778
732
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
779 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
780 (defcustom diary-hook nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
781 "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
782 Can be used for appointment notification."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
783 :type 'hook
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
784 :group 'diary)
4453
7f41b3648380 (diary-display-hook): Change default and fix doc string.
Richard M. Stallman <rms@gnu.org>
parents: 4339
diff changeset
785
76641
6d2ab8b45146 (diary-set-maybe-redraw): Autoload it.
Glenn Morris <rgm@gnu.org>
parents: 76477
diff changeset
786 (autoload 'diary-set-maybe-redraw "diary-lib")
6d2ab8b45146 (diary-set-maybe-redraw): Autoload it.
Glenn Morris <rgm@gnu.org>
parents: 76477
diff changeset
787
4453
7f41b3648380 (diary-display-hook): Change default and fix doc string.
Richard M. Stallman <rms@gnu.org>
parents: 4339
diff changeset
788 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
789 (defcustom diary-display-hook nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
790 "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
791 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
792 diary display.
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
793
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
794 Ordinarily, this just displays the diary buffer (with holidays indicated in
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
795 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
796 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
797 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
798 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
799 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
800 holidays), or produce hard copy output.
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
801
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
802 A function `fancy-diary-display' is provided as an alternative
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
803 choice for this hook; this function prepares a special noneditable diary
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
804 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
805 with headings. The fancy diary buffer will show the holidays unless the
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
806 variable `holidays-in-diary-buffer' is set to nil. Ordinarily, the fancy
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
807 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
808 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
809 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
810 :type 'hook
52160
833b56d6e12d (list-diary-entries-hook, diary-display-hook, nongregorian-diary-listing-hook)
Glenn Morris <rgm@gnu.org>
parents: 52115
diff changeset
811 :options '(fancy-diary-display)
76641
6d2ab8b45146 (diary-set-maybe-redraw): Autoload it.
Glenn Morris <rgm@gnu.org>
parents: 76477
diff changeset
812 :initialize 'custom-initialize-default
6d2ab8b45146 (diary-set-maybe-redraw): Autoload it.
Glenn Morris <rgm@gnu.org>
parents: 76477
diff changeset
813 :set 'diary-set-maybe-redraw
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
814 :group 'diary)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
815
732
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
816 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
817 (defcustom nongregorian-diary-listing-hook nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
818 "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
819 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
820 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
821 `list-hebrew-diary-entries', `list-islamic-diary-entries' and
86493
93da3d3f787e Re-fill copyright years.
Glenn Morris <rgm@gnu.org>
parents: 84593
diff changeset
822 `diary-bahai-list-entries'. The documentation for these functions
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
823 describes the style of such diary entries."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
824 :type 'hook
55431
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
825 :options '(list-hebrew-diary-entries
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
826 list-islamic-diary-entries
84593
6a5b534dceee Following cal-bahai renaming, update all
Glenn Morris <rgm@gnu.org>
parents: 84554
diff changeset
827 diary-bahai-list-entries)
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
828 :group 'diary)
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
829
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
830 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
831 (defcustom mark-diary-entries-hook nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
832 "List of functions called after marking diary entries in the calendar.
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
833
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
834 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
835 `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
836 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
837 of the form
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
838 #include \"filename\"
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
839 This is recursive; that is, #include directives in files thus included are
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
840 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
841 variable `diary-include-string'. When you use `mark-included-diary-files' as
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
842 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
843 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
844 :type 'hook
52160
833b56d6e12d (list-diary-entries-hook, diary-display-hook, nongregorian-diary-listing-hook)
Glenn Morris <rgm@gnu.org>
parents: 52115
diff changeset
845 :options '(mark-included-diary-files)
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
846 :group 'diary)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
847
732
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
848 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
849 (defcustom nongregorian-diary-marking-hook nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
850 "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
851 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
852 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
853 `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
854 `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
855 describes the style of such diary entries."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
856 :type 'hook
55431
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
857 :options '(mark-hebrew-diary-entries
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
858 mark-islamic-diary-entries
84593
6a5b534dceee Following cal-bahai renaming, update all
Glenn Morris <rgm@gnu.org>
parents: 84554
diff changeset
859 diary-bahai-mark-entries)
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
860 :group 'diary)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
861
732
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
862 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
863 (defcustom diary-list-include-blanks nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
864 "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
865 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
866 are holidays."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
867 :type 'boolean
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
868 :group 'diary)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
869
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
870 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
871 (defcustom holidays-in-diary-buffer t
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
872 "Non-nil means include holidays in the diary display.
6737
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
873 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
874 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
875 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
876 :type 'boolean
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
877 :group 'holidays)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
878
3448
b7d345eaae47 (calendar-mode): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents: 2997
diff changeset
879 (defvar calendar-mark-ring nil)
b7d345eaae47 (calendar-mode): Doc fix.
Richard M. Stallman <rms@gnu.org>
parents: 2997
diff changeset
880
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
881 ;;;###autoload
6737
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
882 (put 'general-holidays 'risky-local-variable t)
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
883 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
884 (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
885 '((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
886 (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
887 (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
888 (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
889 (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
890 (holiday-fixed 3 17 "St. Patrick's Day")
14937
a2cc3eb1633b Spelling fix.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 14915
diff changeset
891 (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
892 (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
893 (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
894 (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
895 (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
896 (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
897 (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
898 (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
899 (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
900 (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
901 (holiday-float 11 4 4 "Thanksgiving"))
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
902 "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
903 See the documentation for `calendar-holidays' for details."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
904 :type 'sexp
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
905 :group 'holidays)
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
906
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
907 ;;;###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
908 (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
909 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
910 (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
911 '((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
912 (holiday-chinese-new-year)))
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
913 "Oriental holidays.
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
914 See the documentation for `calendar-holidays' for details."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
915 :type 'sexp
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
916 :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
917
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
918 ;;;###autoload
6737
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
919 (put 'local-holidays 'risky-local-variable t)
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
920 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
921 (defcustom local-holidays nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
922 "Local holidays.
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
923 See the documentation for `calendar-holidays' for details."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
924 :type 'sexp
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
925 :group 'holidays)
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
926
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
927 ;;;###autoload
6737
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
928 (put 'other-holidays 'risky-local-variable t)
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
929 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
930 (defcustom other-holidays nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
931 "User defined holidays.
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
932 See the documentation for `calendar-holidays' for details."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
933 :type 'sexp
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
934 :group 'holidays)
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
935
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
936 ;;;###autoload
6737
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
937 (put 'hebrew-holidays-1 'risky-local-variable t)
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
938 ;;;###autoload
4161
8e236d4ce64b (hebrew-holidays): Split into 4 sub-variables.
Richard M. Stallman <rms@gnu.org>
parents: 4086
diff changeset
939 (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
940 '((holiday-rosh-hashanah-etc)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
941 (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
942 (holiday-julian
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
943 11
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
944 (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
945 (y displayed-year)
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
946 (year))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
947 (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
948 (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
949 (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
950 (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
951 (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
952 (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
953 22
4161
8e236d4ce64b (hebrew-holidays): Split into 4 sub-variables.
Richard M. Stallman <rms@gnu.org>
parents: 4086
diff changeset
954 21))) "\"Tal Umatar\" (evening)"))))
8e236d4ce64b (hebrew-holidays): Split into 4 sub-variables.
Richard M. Stallman <rms@gnu.org>
parents: 4086
diff changeset
955
8e236d4ce64b (hebrew-holidays): Split into 4 sub-variables.
Richard M. Stallman <rms@gnu.org>
parents: 4086
diff changeset
956 ;;;###autoload
6737
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
957 (put 'hebrew-holidays-2 'risky-local-variable t)
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
958 ;;;###autoload
4161
8e236d4ce64b (hebrew-holidays): Split into 4 sub-variables.
Richard M. Stallman <rms@gnu.org>
parents: 4086
diff changeset
959 (defvar hebrew-holidays-2
8e236d4ce64b (hebrew-holidays): Split into 4 sub-variables.
Richard M. Stallman <rms@gnu.org>
parents: 4086
diff changeset
960 '((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
961 (holiday-hanukkah)
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
962 (holiday-hebrew 9 25 "Hanukkah"))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
963 (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
964 (holiday-hebrew
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
965 10
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
966 (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
967 (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
968 (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
969 (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
970 (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
971 7)
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
972 6)
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
973 11 10))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
974 "Tzom Teveth"))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
975 (if all-hebrew-calendar-holidays
4161
8e236d4ce64b (hebrew-holidays): Split into 4 sub-variables.
Richard M. Stallman <rms@gnu.org>
parents: 4086
diff changeset
976 (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
977
8e236d4ce64b (hebrew-holidays): Split into 4 sub-variables.
Richard M. Stallman <rms@gnu.org>
parents: 4086
diff changeset
978 ;;;###autoload
6737
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
979 (put 'hebrew-holidays-3 'risky-local-variable t)
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
980 ;;;###autoload
4530
c14a75fce9c9 (hebrew-holidays-3): Fix misspelling in var name.
Richard M. Stallman <rms@gnu.org>
parents: 4453
diff changeset
981 (defvar hebrew-holidays-3
4161
8e236d4ce64b (hebrew-holidays): Split into 4 sub-variables.
Richard M. Stallman <rms@gnu.org>
parents: 4086
diff changeset
982 '((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
983 (holiday-hebrew
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
984 11
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
985 (let ((m displayed-month)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
986 (y displayed-year))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
987 (increment-calendar-month m y 1)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
988 (let* ((h-year (extract-calendar-year
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
989 (calendar-hebrew-from-absolute
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
990 (calendar-absolute-from-gregorian
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
991 (list m
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
992 (calendar-last-day-of-month m y)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
993 y)))))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
994 (s-s
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
995 (calendar-hebrew-from-absolute
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
996 (if (=
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
997 (% (calendar-absolute-from-hebrew
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
998 (list 7 1 h-year))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
999 7)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1000 6)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1001 (calendar-dayname-on-or-before
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1002 6 (calendar-absolute-from-hebrew
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1003 (list 11 17 h-year)))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1004 (calendar-dayname-on-or-before
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1005 6 (calendar-absolute-from-hebrew
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1006 (list 11 16 h-year))))))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1007 (day (extract-calendar-day s-s)))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1008 day))
4161
8e236d4ce64b (hebrew-holidays): Split into 4 sub-variables.
Richard M. Stallman <rms@gnu.org>
parents: 4086
diff changeset
1009 "Shabbat Shirah"))))
8e236d4ce64b (hebrew-holidays): Split into 4 sub-variables.
Richard M. Stallman <rms@gnu.org>
parents: 4086
diff changeset
1010
8e236d4ce64b (hebrew-holidays): Split into 4 sub-variables.
Richard M. Stallman <rms@gnu.org>
parents: 4086
diff changeset
1011 ;;;###autoload
6737
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
1012 (put 'hebrew-holidays-4 'risky-local-variable t)
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
1013 ;;;###autoload
4161
8e236d4ce64b (hebrew-holidays): Split into 4 sub-variables.
Richard M. Stallman <rms@gnu.org>
parents: 4086
diff changeset
1014 (defvar hebrew-holidays-4
8e236d4ce64b (hebrew-holidays): Split into 4 sub-variables.
Richard M. Stallman <rms@gnu.org>
parents: 4086
diff changeset
1015 '((holiday-passover-etc)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1016 (if (and all-hebrew-calendar-holidays
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1017 (let* ((m displayed-month)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1018 (y displayed-year)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1019 (year))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1020 (increment-calendar-month m y -1)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1021 (let ((year (extract-calendar-year
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1022 (calendar-julian-from-absolute
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1023 (calendar-absolute-from-gregorian
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1024 (list m 1 y))))))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1025 (= 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
1026 (holiday-julian 3 26 "Kiddush HaHamah"))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1027 (if all-hebrew-calendar-holidays
4161
8e236d4ce64b (hebrew-holidays): Split into 4 sub-variables.
Richard M. Stallman <rms@gnu.org>
parents: 4086
diff changeset
1028 (holiday-tisha-b-av-etc))))
8e236d4ce64b (hebrew-holidays): Split into 4 sub-variables.
Richard M. Stallman <rms@gnu.org>
parents: 4086
diff changeset
1029
8e236d4ce64b (hebrew-holidays): Split into 4 sub-variables.
Richard M. Stallman <rms@gnu.org>
parents: 4086
diff changeset
1030 ;;;###autoload
6737
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
1031 (put 'hebrew-holidays 'risky-local-variable t)
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
1032 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
1033 (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
1034 hebrew-holidays-3 hebrew-holidays-4)
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
1035 "Jewish holidays.
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
1036 See the documentation for `calendar-holidays' for details."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
1037 :type 'sexp
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
1038 :group 'holidays)
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1039
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1040 ;;;###autoload
6737
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
1041 (put 'christian-holidays 'risky-local-variable t)
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
1042 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
1043 (defcustom christian-holidays
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1044 '((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
1045 (holiday-fixed 1 6 "Epiphany"))
57198
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1046 (holiday-easter-etc 0 "Easter Sunday")
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1047 (holiday-easter-etc -2 "Good Friday")
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1048 (holiday-easter-etc -46 "Ash Wednesday")
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1049 (if all-christian-calendar-holidays
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1050 (holiday-easter-etc -63 "Septuagesima Sunday"))
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1051 (if all-christian-calendar-holidays
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1052 (holiday-easter-etc -56 "Sexagesima Sunday"))
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1053 (if all-christian-calendar-holidays
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1054 (holiday-easter-etc -49 "Shrove Sunday"))
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1055 (if all-christian-calendar-holidays
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1056 (holiday-easter-etc -48 "Shrove Monday"))
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1057 (if all-christian-calendar-holidays
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1058 (holiday-easter-etc -47 "Shrove Tuesday"))
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1059 (if all-christian-calendar-holidays
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1060 (holiday-easter-etc -14 "Passion Sunday"))
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1061 (if all-christian-calendar-holidays
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1062 (holiday-easter-etc -7 "Palm Sunday"))
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1063 (if all-christian-calendar-holidays
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1064 (holiday-easter-etc -3 "Maundy Thursday"))
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1065 (if all-christian-calendar-holidays
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1066 (holiday-easter-etc 35 "Rogation Sunday"))
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1067 (if all-christian-calendar-holidays
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1068 (holiday-easter-etc 39 "Ascension Day"))
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1069 (if all-christian-calendar-holidays
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1070 (holiday-easter-etc 49 "Pentecost (Whitsunday)"))
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1071 (if all-christian-calendar-holidays
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1072 (holiday-easter-etc 50 "Whitmonday"))
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1073 (if all-christian-calendar-holidays
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1074 (holiday-easter-etc 56 "Trinity Sunday"))
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1075 (if all-christian-calendar-holidays
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1076 (holiday-easter-etc 60 "Corpus Christi"))
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1077 (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
1078 (holiday-greek-orthodox-easter))
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1079 (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
1080 (holiday-fixed 8 15 "Assumption"))
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1081 (if all-christian-calendar-holidays
57198
2f22c25f37c2 Update maintainer.
Glenn Morris <rgm@gnu.org>
parents: 55431
diff changeset
1082 (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
1083 (holiday-fixed 12 25 "Christmas")
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-julian 12 25 "Eastern Orthodox Christmas")))
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
1086 "Christian holidays.
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
1087 See the documentation for `calendar-holidays' for details."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
1088 :type 'sexp
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
1089 :group 'holidays)
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1090
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1091 ;;;###autoload
6737
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
1092 (put 'islamic-holidays 'risky-local-variable t)
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
1093 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
1094 (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
1095 '((holiday-islamic
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1096 1 1
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1097 (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
1098 (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
1099 (y displayed-year))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1100 (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
1101 (extract-calendar-year
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1102 (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
1103 (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
1104 (list
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1105 m (calendar-last-day-of-month m y) y)))))))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1106 (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
1107 (holiday-islamic 1 10 "Ashura"))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1108 (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
1109 (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
1110 (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
1111 (holiday-islamic 7 26 "Shab-e-Mi'raj"))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1112 (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
1113 (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
1114 (holiday-islamic 9 1 "Ramadan Begins")
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1115 (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
1116 (holiday-islamic 9 27 "Shab-e Qadr"))
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 10 1 "Id-al-Fitr"))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1119 (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
1120 (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
1121 "Islamic holidays.
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
1122 See the documentation for `calendar-holidays' for details."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
1123 :type 'sexp
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
1124 :group 'holidays)
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1125
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1126 ;;;###autoload
55431
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1127 (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
1128 ;;;###autoload
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1129 (defcustom bahai-holidays
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1130 '((holiday-fixed
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1131 3 21
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1132 (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
1133 (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
1134 (if all-bahai-calendar-holidays
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1135 (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
1136 (if all-bahai-calendar-holidays
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1137 (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
1138 (if all-bahai-calendar-holidays
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1139 (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
1140 (if all-bahai-calendar-holidays
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1141 (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
1142 (if all-bahai-calendar-holidays
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1143 (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
1144 (if all-bahai-calendar-holidays
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1145 (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
1146 (if all-bahai-calendar-holidays
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1147 (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
1148 (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
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 30 "Tenth 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 5 1 "Eleventh Day of Ridvan"))
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1153 (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
1154 (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
1155 (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
1156 (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
1157 (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
1158 (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
1159 (if all-bahai-calendar-holidays
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1160 (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
1161 (if all-bahai-calendar-holidays
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1162 (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
1163 "Baha'i holidays.
55431
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1164 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
1165 :type 'sexp
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1166 :group 'holidays)
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1167
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1168 ;;;###autoload
6737
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
1169 (put 'solar-holidays 'risky-local-variable t)
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
1170 ;;;###autoload
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
1171 (defcustom solar-holidays
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1172 '((if (fboundp 'atan)
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1173 (solar-equinoxes-solstices))
5009
bf77303bd714 (solar-holidays): Change top-level progn to an if.
Richard M. Stallman <rms@gnu.org>
parents: 4861
diff changeset
1174 (if (progn
bf77303bd714 (solar-holidays): Change top-level progn to an if.
Richard M. Stallman <rms@gnu.org>
parents: 4861
diff changeset
1175 (require 'cal-dst)
bf77303bd714 (solar-holidays): Change top-level progn to an if.
Richard M. Stallman <rms@gnu.org>
parents: 4861
diff changeset
1176 t)
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1177 (funcall
5009
bf77303bd714 (solar-holidays): Change top-level progn to an if.
Richard M. Stallman <rms@gnu.org>
parents: 4861
diff changeset
1178 'holiday-sexp
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1179 calendar-daylight-savings-starts
76477
a13a89e31b01 Change "daylight savings time" -> "daylight saving time".
Chong Yidong <cyd@stupidchicken.com>
parents: 75346
diff changeset
1180 '(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
1181 (if (fboundp 'atan)
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1182 (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
1183 (/ 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
1184 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
1185 ""))))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1186 (funcall
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1187 'holiday-sexp
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1188 calendar-daylight-savings-ends
76477
a13a89e31b01 Change "daylight savings time" -> "daylight saving time".
Chong Yidong <cyd@stupidchicken.com>
parents: 75346
diff changeset
1189 '(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
1190 (if (fboundp 'atan)
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1191 (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
1192 (/ 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
1193 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
1194 ""))))
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
1195 "Sun-related holidays.
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
1196 See the documentation for `calendar-holidays' for details."
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
1197 :type 'sexp
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
1198 :group 'holidays)
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1199
6737
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
1200 ;;;###autoload
a3ef1108b7ff Many doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 6672
diff changeset
1201 (put 'calendar-holidays 'risky-local-variable t)
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
1202 (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
1203 (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
1204 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
1205 bahai-holidays oriental-holidays solar-holidays)
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
1206 "List of notable days for the command \\[holidays].
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1207
55431
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1208 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
1209 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
1210 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
1211 `hebrew-holidays', `islamic-holidays', `bahai-holidays',
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1212 `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
1213 you can eliminate unwanted categories of holidays.
08af43fa19d8 (calendar-holidays): Doc fix.
Glenn Morris <rgm@gnu.org>
parents: 68655
diff changeset
1214
69351
86b7b0805645 (calendar-holidays): Doc fix.
Glenn Morris <rgm@gnu.org>
parents: 69183
diff changeset
1215 The aforementioned variables control the holiday choices offered
84554
5bd5d06e4cf2 Rename all list-calendar-holidays callers to calendar-list-holidays,
Glenn Morris <rgm@gnu.org>
parents: 82365
diff changeset
1216 by the function `holiday-list' when it is called interactively.
69351
86b7b0805645 (calendar-holidays): Doc fix.
Glenn Morris <rgm@gnu.org>
parents: 69183
diff changeset
1217
69356
53ca33e3b6a5 (calendar-holidays): Make previous doc-fix less passive.
Glenn Morris <rgm@gnu.org>
parents: 69351
diff changeset
1218 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
1219 which is the default list of holidays used by the function
84554
5bd5d06e4cf2 Rename all list-calendar-holidays callers to calendar-list-holidays,
Glenn Morris <rgm@gnu.org>
parents: 82365
diff changeset
1220 `holiday-list' in the non-interactive case. Note that these
69356
53ca33e3b6a5 (calendar-holidays): Make previous doc-fix less passive.
Glenn Morris <rgm@gnu.org>
parents: 69351
diff changeset
1221 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
1222 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
1223 `calendar-holidays' directly.
69183
08af43fa19d8 (calendar-holidays): Doc fix.
Glenn Morris <rgm@gnu.org>
parents: 68655
diff changeset
1224
08af43fa19d8 (calendar-holidays): Doc fix.
Glenn Morris <rgm@gnu.org>
parents: 68655
diff changeset
1225 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
1226 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
1227
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1228 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
1229 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
1230 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
1231 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
1232
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1233 (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
1234 (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
1235 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
1236 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
1237 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
1238 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
1239 (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
1240 (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
1241 (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
1242 (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
1243 (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
1244 in the variable `year'; if it evaluates to
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1245 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
1246 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
1247 is an expression in the variable `date'.
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1248
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1249 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
1250
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1251 (holiday-fixed 7 14 \"Bastille Day\")
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1252
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1253 to the list. To add Hurricane Supplication Day, celebrated in the Virgin
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1254 Islands on the fourth Monday in August, 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-float 8 1 4 \"Hurricane Supplication 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 (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
1259 To add the last day of Hanukkah to the list, use
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
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-hebrew 10 2 \"Last day of Hanukkah\")
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 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
1264 add the Islamic feast celebrating Mohammed's birthday use
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
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-islamic 3 12 \"Mohammed's Birthday\")
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 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
1269 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
1270
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1271 (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
1272
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1273 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
1274 add Thomas Jefferson's birthday, April 2, 1743 (Julian), use
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1275
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1276 (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
1277
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1278 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
1279 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
1280 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
1281
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1282 (holiday-sexp
54071
8089fbb082b9 (calendar-holidays): Doc fix.
Glenn Morris <rgm@gnu.org>
parents: 53559
diff changeset
1283 '(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
1284 (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
1285 (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
1286 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
1287 (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
1288 \"US Presidential Election\")
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1289
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1290 or
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1291
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1292 (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
1293 (holiday-fixed 11
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1294 (extract-calendar-day
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1295 (calendar-gregorian-from-absolute
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1296 (1+ (calendar-dayname-on-or-before
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1297 1 (+ 6 (calendar-absolute-from-gregorian
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1298 (list 11 1 displayed-year)))))))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1299 \"US Presidential Election\"))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1300
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1301 to the list. To include the phases of the moon, add
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1302
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1303 (lunar-phases)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1304
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1305 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
1306 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
1307 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
1308
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
1309 (((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
1310 :type 'sexp
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
1311 :group 'holidays)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1312
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1313 (defconst holiday-buffer "*Holidays*"
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1314 "Name of the buffer used for the displaying the holidays.")
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1315
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1316 (defconst fancy-diary-buffer "*Fancy Diary Entries*"
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1317 "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
1318
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
1319 (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
1320 "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
1321
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
1322 (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
1323 "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
1324
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1325 (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
1326 "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
1327 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
1328 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
1329 `(let (macro-y)
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1330 (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
1331 (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
1332 ,mon (1+ (mod macro-y 12))
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1333 ,yr (/ macro-y 12))
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1334 (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
1335 (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
1336
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
1337 (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
1338 "Return the Nth month after MON/YR.
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
1339 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
1340 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
1341 (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
1342 (unless yr (setq yr displayed-year))
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
1343 (increment-calendar-month mon yr n)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
1344 (cons mon yr))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
1345
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1346 (defmacro calendar-for-loop (var from init to final do &rest body)
82086
1ee19eca3bfc (generate-calendar, (generate-calendar-month): Use dotimes rather than
Glenn Morris <rgm@gnu.org>
parents: 78145
diff changeset
1347 "Execute a for loop.
1ee19eca3bfc (generate-calendar, (generate-calendar-month): Use dotimes rather than
Glenn Morris <rgm@gnu.org>
parents: 78145
diff changeset
1348 Evaluate BODY with VAR bound to successive integers from INIT to FINAL,
1ee19eca3bfc (generate-calendar, (generate-calendar-month): Use dotimes rather than
Glenn Morris <rgm@gnu.org>
parents: 78145
diff changeset
1349 inclusive."
65477
a08c0922f1c4 (calendar-for-loop): Add edebug info.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64826
diff changeset
1350 (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
1351 `(let ((,var (1- ,init)))
3b6cf16f3633 * calendar/calendar.el (calendar-remove-frame-by-deleting):
Sam Steingold <sds@gnu.org>
parents: 26329
diff changeset
1352 (while (>= ,final (setq ,var (1+ ,var)))
3b6cf16f3633 * calendar/calendar.el (calendar-remove-frame-by-deleting):
Sam Steingold <sds@gnu.org>
parents: 26329
diff changeset
1353 ,@body)))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1354
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1355 (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
1356 "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
1357 (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
1358 `(let ((,index ,initial)
3b6cf16f3633 * calendar/calendar.el (calendar-remove-frame-by-deleting):
Sam Steingold <sds@gnu.org>
parents: 26329
diff changeset
1359 (sum 0))
3b6cf16f3633 * calendar/calendar.el (calendar-remove-frame-by-deleting):
Sam Steingold <sds@gnu.org>
parents: 26329
diff changeset
1360 (while ,condition
3b6cf16f3633 * calendar/calendar.el (calendar-remove-frame-by-deleting):
Sam Steingold <sds@gnu.org>
parents: 26329
diff changeset
1361 (setq sum (+ sum ,expression))
3b6cf16f3633 * calendar/calendar.el (calendar-remove-frame-by-deleting):
Sam Steingold <sds@gnu.org>
parents: 26329
diff changeset
1362 (setq ,index (1+ ,index)))
3b6cf16f3633 * calendar/calendar.el (calendar-remove-frame-by-deleting):
Sam Steingold <sds@gnu.org>
parents: 26329
diff changeset
1363 sum))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1364
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
1365 ;; 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
1366 ;; 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
1367 ;; 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
1368 ;; fancy diary display, for a moderately complex diary file, with functions
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1369 ;; 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
1370 ;;
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1371 ;; 1934 extract-calendar-month
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1372 ;; 1852 extract-calendar-year
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1373 ;; 1819 extract-calendar-day
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1374 ;; 845 calendar-leap-year-p
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1375 ;; 837 calendar-day-number
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1376 ;; 775 calendar-absolute-from-gregorian
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1377 ;; 346 calendar-last-day-of-month
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1378 ;; 286 hebrew-calendar-last-day-of-month
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1379 ;; 188 hebrew-calendar-leap-year-p
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1380 ;; 180 hebrew-calendar-elapsed-days
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1381 ;; 163 hebrew-calendar-last-month-of-year
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1382 ;; 66 calendar-date-compare
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1383 ;; 65 hebrew-calendar-days-in-year
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1384 ;; 60 calendar-absolute-from-julian
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1385 ;; 50 calendar-absolute-from-hebrew
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1386 ;; 43 calendar-date-equal
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1387 ;; 38 calendar-gregorian-from-absolute
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1388 ;; .
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1389 ;; .
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1390 ;; .
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 ;; 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
1393 ;; calls; it's faster this way.
732
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1394
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
1395 (defsubst extract-calendar-month (date)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1396 "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
1397 (car date))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1398
70581
1eaae4fee224 (calendar-basic-setup): Set day to 1 in
Glenn Morris <rgm@gnu.org>
parents: 69356
diff changeset
1399 ;; 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
1400 (defsubst extract-calendar-day (date)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1401 "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
1402 (car (cdr date)))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1403
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
1404 (defsubst extract-calendar-year (date)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1405 "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
1406 (car (cdr (cdr date))))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1407
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
1408 (defsubst calendar-leap-year-p (year)
52723
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1409 "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
1410 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
1411 ;; 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
1412 (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
1413 (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
1414 (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
1415 (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
1416
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1417 ;; 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
1418 ;;
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
1419 ;;(defsubst calendar-leap-year-p (year)
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1420 ;; "Returns t if YEAR is a Gregorian leap year."
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1421 ;; (or
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1422 ;; (and (= (% year 4) 0)
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1423 ;; (/= (% year 100) 0))
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1424 ;; (= (% year 400) 0)))
732
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1425
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
1426 (defsubst calendar-last-day-of-month (month year)
732
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1427 "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
1428 (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
1429 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
1430 (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
1431
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
1432 ;; 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
1433 ;; 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
1434
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 (defsubst calendar-day-number (date)
732
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1436 "Return the day number within the year of the date DATE.
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1437 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
1438 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
1439 (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
1440 (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
1441 (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
1442 (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
1443 (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
1444 (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
1445 (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
1446 (if (calendar-leap-year-p year)
732
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1447 (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
1448 day-of-year))
732
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1449
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
1450 (defsubst calendar-absolute-from-gregorian (date)
732
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 675
diff changeset
1451 "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
1452 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
1453 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
1454 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
1455 return negative results."
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1456 (let ((year (extract-calendar-year date))
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1457 offset-years)
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1458 (cond ((= year 0)
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1459 (error "There was no year zero"))
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1460 ((> year 0)
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1461 (setq offset-years (1- year))
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1462 (+ (calendar-day-number date) ; Days this year
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1463 (* 365 offset-years) ; + Days in prior years
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1464 (/ offset-years 4) ; + Julian leap years
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1465 (- (/ offset-years 100)) ; - century years
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1466 (/ offset-years 400))) ; + Gregorian leap years
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1467 (t
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1468 ;; 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
1469 (setq offset-years (abs (1+ year)))
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1470 (- (calendar-day-number date)
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1471 (* 365 offset-years)
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1472 (/ offset-years 4)
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1473 (- (/ offset-years 100))
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1474 (/ offset-years 400)
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1475 (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
1476
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
1477 (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
1478 "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
1479 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
1480
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 (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
1482 "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
1483 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
1484
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 (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
1486 "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
1487 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
1488
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 (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
1490 "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
1491 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
1492
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 (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
1494 "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
1495 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
1496
82151
7b6bc42d5f2c (calendar-mode-map): Use new calendar-scroll-* names.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82140
diff changeset
1497 (autoload 'calendar-scroll-left "cal-move"
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
1498 "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
1499 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
1500
82151
7b6bc42d5f2c (calendar-mode-map): Use new calendar-scroll-* names.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82140
diff changeset
1501 (autoload 'calendar-scroll-right "cal-move"
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
1502 "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
1503 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
1504
82151
7b6bc42d5f2c (calendar-mode-map): Use new calendar-scroll-* names.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82140
diff changeset
1505 (autoload 'calendar-scroll-left-three-months "cal-move"
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
1506 "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
1507 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
1508
82151
7b6bc42d5f2c (calendar-mode-map): Use new calendar-scroll-* names.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82140
diff changeset
1509 (autoload 'calendar-scroll-right-three-months "cal-move"
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
1510 "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
1511 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
1512
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 (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
1514 "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
1515 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
1516
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 (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
1518 "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
1519 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
1520
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 (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
1522 "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
1523 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
1524
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 (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
1526 "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
1527 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
1528
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 (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
1530 "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
1531 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
1532
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 (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
1534 "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
1535 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
1536
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 (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
1538 "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
1539 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
1540
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 (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
1542 "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
1543 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
1544
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 (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
1546 "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
1547 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
1548
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 (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
1550 "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
1551 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
1552
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 (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
1554 "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
1555 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
1556
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 (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
1558 "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
1559 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
1560
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 (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
1562 "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
1563 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
1564
52232
e1debf3a5153 Edward M. Reingold <reingold@emr.cs.iit.edu>
Glenn Morris <rgm@gnu.org>
parents: 52160
diff changeset
1565 (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
1566 "Move cursor to day of year."
e1debf3a5153 Edward M. Reingold <reingold@emr.cs.iit.edu>
Glenn Morris <rgm@gnu.org>
parents: 52160
diff changeset
1567 t)
e1debf3a5153 Edward M. Reingold <reingold@emr.cs.iit.edu>
Glenn Morris <rgm@gnu.org>
parents: 52160
diff changeset
1568
49350
c4611ea3a05d (calendar-only-one-frame-setup): Add autoload.
Glenn Morris <rgm@gnu.org>
parents: 48717
diff changeset
1569 (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
1570 "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
1571
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
1572 (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
1573 "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
1574
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-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
1576 "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
1577
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
1578 ;;;###autoload
53559
ba8b837c072c Update copyright.
Glenn Morris <rgm@gnu.org>
parents: 52723
diff changeset
1579 (defcustom calendar-setup nil
ba8b837c072c Update copyright.
Glenn Morris <rgm@gnu.org>
parents: 52723
diff changeset
1580 "The frame setup of the calendar.
ba8b837c072c Update copyright.
Glenn Morris <rgm@gnu.org>
parents: 52723
diff changeset
1581 The choices are: `one-frame' (calendar and diary together in one separate,
ba8b837c072c Update copyright.
Glenn Morris <rgm@gnu.org>
parents: 52723
diff changeset
1582 dedicated frame); `two-frames' (calendar and diary in separate, dedicated
ba8b837c072c Update copyright.
Glenn Morris <rgm@gnu.org>
parents: 52723
diff changeset
1583 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
1584 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
1585 three options overrides the value of `view-diary-entries-initially'."
ba8b837c072c Update copyright.
Glenn Morris <rgm@gnu.org>
parents: 52723
diff changeset
1586 :type '(choice
ba8b837c072c Update copyright.
Glenn Morris <rgm@gnu.org>
parents: 52723
diff changeset
1587 (const :tag "calendar and diary in separate frame" one-frame)
ba8b837c072c Update copyright.
Glenn Morris <rgm@gnu.org>
parents: 52723
diff changeset
1588 (const :tag "calendar and diary each in own frame" two-frames)
ba8b837c072c Update copyright.
Glenn Morris <rgm@gnu.org>
parents: 52723
diff changeset
1589 (const :tag "calendar in separate frame" calendar-only)
ba8b837c072c Update copyright.
Glenn Morris <rgm@gnu.org>
parents: 52723
diff changeset
1590 (const :tag "use current frame" nil))
ba8b837c072c Update copyright.
Glenn Morris <rgm@gnu.org>
parents: 52723
diff changeset
1591 :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
1592
60292
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
1593 (defcustom calendar-minimum-window-height 8
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
1594 "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
1595 :type 'integer
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
1596 :version "22.1"
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
1597 :group 'calendar)
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
1598
675
85fd29f25c75 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 628
diff changeset
1599 ;;;###autoload
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1600 (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
1601 "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
1602 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
1603
97a5caf68c50 (calendar): Doc fix.
Eli Zaretskii <eliz@gnu.org>
parents: 43010
diff changeset
1604 The original function `calendar' has been renamed `calendar-basic-setup'.
97a5caf68c50 (calendar): Doc fix.
Eli Zaretskii <eliz@gnu.org>
parents: 43010
diff changeset
1605 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
1606 (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
1607 (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
1608 ((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
1609 ((equal calendar-setup 'calendar-only)
85d8302a2e82 (calendar): Call calendar-only-one-frame-setup if requested.
Karl Heuer <kwzh@gnu.org>
parents: 24243
diff changeset
1610 (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
1611 (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
1612
73176
3dbfd59b44b5 (european-calendar-style): Call european-calendar or american-calendar
Glenn Morris <rgm@gnu.org>
parents: 71569
diff changeset
1613 (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
1614 "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
1615 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
1616 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
1617 calendar."
3dbfd59b44b5 (european-calendar-style): Call european-calendar or american-calendar
Glenn Morris <rgm@gnu.org>
parents: 71569
diff changeset
1618 t)
3dbfd59b44b5 (european-calendar-style): Call european-calendar or american-calendar
Glenn Morris <rgm@gnu.org>
parents: 71569
diff changeset
1619
84554
5bd5d06e4cf2 Rename all list-calendar-holidays callers to calendar-list-holidays,
Glenn Morris <rgm@gnu.org>
parents: 82365
diff changeset
1620 (autoload 'calendar-list-holidays "holidays"
73176
3dbfd59b44b5 (european-calendar-style): Call european-calendar or american-calendar
Glenn Morris <rgm@gnu.org>
parents: 71569
diff changeset
1621 "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
1622 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
1623 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
1624 t)
3dbfd59b44b5 (european-calendar-style): Call european-calendar or american-calendar
Glenn Morris <rgm@gnu.org>
parents: 71569
diff changeset
1625
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
1626 (defun calendar-basic-setup (&optional arg)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1627 "Display a three-month calendar in another window.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1628 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
1629 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
1630
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1631 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
1632
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1633 This function is suitable for execution in a .emacs file; appropriate setting
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1634 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
1635 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
1636 `number-of-diary-entries' controls the number of days of diary entries
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1637 displayed upon initial display of the calendar.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1638
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1639 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
1640 Arbitrary months can be displayed, or the calendar can be scrolled forward
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1641 or backward.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1642
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1643 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
1644 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
1645 cause movement in the opposite direction. For convenience, the digit keys
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1646 and the minus sign are automatically prefixes. The window is replotted as
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1647 necessary to display the desired date.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1648
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1649 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
1650
31730
719a230f8091 Docstring fixes.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 31671
diff changeset
1651 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
1652
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1653 The Gregorian calendar is assumed.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1654
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1655 After loading the calendar, the hooks given by the variable
10436
c9ba2babe54e (calendar): Doc fix.
Karl Heuer <kwzh@gnu.org>
parents: 10089
diff changeset
1656 `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
1657 calendar-mode-map.
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1658
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1659 After preparing the calendar window initially, the hooks given by the variable
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1660 `initial-calendar-window-hook' are run.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1661
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1662 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
1663 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
1664 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
1665 `today-invisible-calendar-hook' are run. Thus, for example, setting
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1666 `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
1667 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
1668 (interactive "P")
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1669 (set-buffer (get-buffer-create calendar-buffer))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1670 (calendar-mode)
9747
5586959f3393 Redo the noday option for calendar-read-date.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9709
diff changeset
1671 (let* ((pop-up-windows t)
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1672 (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
1673 (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
1674 (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
1675 (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
1676 (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
1677 (year (extract-calendar-year date)))
70581
1eaae4fee224 (calendar-basic-setup): Set day to 1 in
Glenn Morris <rgm@gnu.org>
parents: 69356
diff changeset
1678 ;; (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
1679 ;; 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
1680 (if arg (setcar (cdr date) 1))
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
1681 (increment-calendar-month month year (- calendar-offset))
82203
3d0d3af343ac (calendar-mode): Make sure displayed-(month|year) are set.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82151
diff changeset
1682 ;; Display the buffer before calling generate-calendar-window so that it
3d0d3af343ac (calendar-mode): Make sure displayed-(month|year) are set.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82151
diff changeset
1683 ;; can get a chance to adjust the window sizes to the frame size.
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1684 (pop-to-buffer calendar-buffer)
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1685 (generate-calendar-window month year)
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1686 (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
1687 (diary-view-entries)))
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1688 (let* ((diary-buffer (get-file-buffer diary-file))
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1689 (diary-window (if diary-buffer (get-buffer-window diary-buffer)))
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1690 (split-height-threshold (if diary-window 2 1000)))
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1691 (if view-calendar-holidays-initially
84554
5bd5d06e4cf2 Rename all list-calendar-holidays callers to calendar-list-holidays,
Glenn Morris <rgm@gnu.org>
parents: 82365
diff changeset
1692 (calendar-list-holidays)))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1693 (run-hooks 'initial-calendar-window-hook))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1694
59044
9dadbbe9a381 (view-other-diary-entries): Add autoload.
Glenn Morris <rgm@gnu.org>
parents: 57326
diff changeset
1695 (autoload 'view-other-diary-entries "diary-lib"
9dadbbe9a381 (view-other-diary-entries): Add autoload.
Glenn Morris <rgm@gnu.org>
parents: 57326
diff changeset
1696 "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
1697 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
1698 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
1699 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
1700 t)
9dadbbe9a381 (view-other-diary-entries): Add autoload.
Glenn Morris <rgm@gnu.org>
parents: 57326
diff changeset
1701
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1702 (autoload 'calendar-sunrise-sunset "solar"
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1703 "Local time of sunrise and sunset for date under cursor."
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1704 t)
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1705
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1706 (autoload 'calendar-phases-of-moon "lunar"
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1707 "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
1708 t)
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1709
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1710 (autoload 'calendar-print-french-date "cal-french"
5694
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
1711 "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
1712 t)
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1713
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1714 (autoload 'calendar-goto-french-date "cal-french"
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1715 "Move cursor to French Revolutionary date."
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1716 t)
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1717
5694
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
1718 (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
1719 "String of French Revolutionary date of Gregorian date.")
5694
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
1720
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
1721 (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
1722 "String of Mayan date of Gregorian date.")
5694
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
1723
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1724 (autoload 'calendar-print-mayan-date "cal-mayan"
5694
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
1725 "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
1726 t)
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1727
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1728 (autoload 'calendar-goto-mayan-long-count-date "cal-mayan"
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1729 "Move cursor to Mayan long count date."
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1730 t)
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1731
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1732 (autoload 'calendar-next-haab-date "cal-mayan"
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1733 "Move cursor to next instance of Mayan Haab date."
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1734 t)
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1735
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1736 (autoload 'calendar-previous-haab-date "cal-mayan"
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1737 "Move cursor to previous instance of Mayan Haab date."
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1738 t)
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1739
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1740 (autoload 'calendar-next-tzolkin-date "cal-mayan"
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1741 "Move cursor to next instance of Mayan Tzolkin date."
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1742 t)
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1743
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1744 (autoload 'calendar-previous-tzolkin-date "cal-mayan"
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1745 "Move cursor to previous instance of Mayan Tzolkin date."
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1746 t)
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1747
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1748 (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
1749 "Move cursor to next instance of Mayan Haab/Tzolkin combination."
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1750 t)
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1751
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1752 (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
1753 "Move cursor to previous instance of Mayan Haab/Tzolkin combination."
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1754 t)
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
1755
14687
0d4ff7e4d6a3 Use the new file names in autoloads.
Karl Heuer <kwzh@gnu.org>
parents: 14169
diff changeset
1756 (autoload 'calendar-goto-chinese-date "cal-china"
13875
96d81534d210 Fix autoloads.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13792
diff changeset
1757 "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
1758 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
1759
14687
0d4ff7e4d6a3 Use the new file names in autoloads.
Karl Heuer <kwzh@gnu.org>
parents: 14169
diff changeset
1760 (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
1761 "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
1762 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
1763
14687
0d4ff7e4d6a3 Use the new file names in autoloads.
Karl Heuer <kwzh@gnu.org>
parents: 14169
diff changeset
1764 (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
1765 "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
1766
26530
82384d47a93d Fix autoload for calendar-absolute-from-astro. Add autoload for
Gerd Moellmann <gerd@gnu.org>
parents: 26427
diff changeset
1767 (autoload 'calendar-absolute-from-astro "cal-julian"
13875
96d81534d210 Fix autoloads.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13792
diff changeset
1768 "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
1769 t )
13875
96d81534d210 Fix autoloads.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13792
diff changeset
1770
13792
a1776aba8124 (calendar-astro-from-absolute): Autoload it.
Karl Heuer <kwzh@gnu.org>
parents: 13671
diff changeset
1771 (autoload 'calendar-astro-from-absolute "cal-julian"
a1776aba8124 (calendar-astro-from-absolute): Autoload it.
Karl Heuer <kwzh@gnu.org>
parents: 13671
diff changeset
1772 "Astronomical (Julian) day number of absolute date D.")
a1776aba8124 (calendar-astro-from-absolute): Autoload it.
Karl Heuer <kwzh@gnu.org>
parents: 13671
diff changeset
1773
13875
96d81534d210 Fix autoloads.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13792
diff changeset
1774 (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
1775 "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
1776
25412
27c66621737f (calendar-goto-astro-day-number): Autoload the right function name.
Richard M. Stallman <rms@gnu.org>
parents: 25410
diff changeset
1777 (autoload 'calendar-goto-astro-day-number "cal-julian"
13875
96d81534d210 Fix autoloads.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13792
diff changeset
1778 "Move cursor to astronomical (Julian) day number."
96d81534d210 Fix autoloads.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13792
diff changeset
1779 t)
96d81534d210 Fix autoloads.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 13792
diff changeset
1780
26530
82384d47a93d Fix autoload for calendar-absolute-from-astro. Add autoload for
Gerd Moellmann <gerd@gnu.org>
parents: 26427
diff changeset
1781 (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
1782 "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
1783 t)
82384d47a93d Fix autoload for calendar-absolute-from-astro. Add autoload for
Gerd Moellmann <gerd@gnu.org>
parents: 26427
diff changeset
1784
13546
b979fa5d0d0b (calendar-julian-from-absolute): Autoload it.
Richard M. Stallman <rms@gnu.org>
parents: 13490
diff changeset
1785 (autoload 'calendar-julian-from-absolute "cal-julian"
b979fa5d0d0b (calendar-julian-from-absolute): Autoload it.
Richard M. Stallman <rms@gnu.org>
parents: 13490
diff changeset
1786 "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
1787 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
1788 Gregorian date Sunday, December 31, 1 BC.")
b979fa5d0d0b (calendar-julian-from-absolute): Autoload it.
Richard M. Stallman <rms@gnu.org>
parents: 13490
diff changeset
1789
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
1790 (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
1791 "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
1792 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
19422
d43fe749c103 Add an autoload form for calendar-print-julian-date.
Richard M. Stallman <rms@gnu.org>
parents: 19248
diff changeset
1794 (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
1795 "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
1796 t)
d43fe749c103 Add an autoload form for calendar-print-julian-date.
Richard M. Stallman <rms@gnu.org>
parents: 19248
diff changeset
1797
13573
6fff4a5fc018 (calendar-julian-date-string): Autoload this.
Richard M. Stallman <rms@gnu.org>
parents: 13546
diff changeset
1798 (autoload 'calendar-julian-date-string "cal-julian"
6fff4a5fc018 (calendar-julian-date-string): Autoload this.
Richard M. Stallman <rms@gnu.org>
parents: 13546
diff changeset
1799 "String of Julian date of Gregorian DATE.
6fff4a5fc018 (calendar-julian-date-string): Autoload this.
Richard M. Stallman <rms@gnu.org>
parents: 13546
diff changeset
1800 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
1801 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
1802
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
1803 (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
1804 "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
1805 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
1806
57326
958fe05efd62 From Emilio C. Lopes <eclig@gmx.net>:
Glenn Morris <rgm@gnu.org>
parents: 57198
diff changeset
1807 (autoload 'calendar-goto-iso-week "cal-iso"
958fe05efd62 From Emilio C. Lopes <eclig@gmx.net>:
Glenn Morris <rgm@gnu.org>
parents: 57198
diff changeset
1808 "Move cursor to start of ISO week."
958fe05efd62 From Emilio C. Lopes <eclig@gmx.net>:
Glenn Morris <rgm@gnu.org>
parents: 57198
diff changeset
1809 t)
958fe05efd62 From Emilio C. Lopes <eclig@gmx.net>:
Glenn Morris <rgm@gnu.org>
parents: 57198
diff changeset
1810
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
1811 (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
1812 "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
1813 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
1814
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 (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
1816 "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
1817
38448
911d5f6da3f7 (calendar-goto-islamic-date): Add
Gerd Moellmann <gerd@gnu.org>
parents: 38422
diff changeset
1818 (autoload 'calendar-goto-islamic-date "cal-islam"
911d5f6da3f7 (calendar-goto-islamic-date): Add
Gerd Moellmann <gerd@gnu.org>
parents: 38422
diff changeset
1819 "Move cursor to Islamic date."
911d5f6da3f7 (calendar-goto-islamic-date): Add
Gerd Moellmann <gerd@gnu.org>
parents: 38422
diff changeset
1820 t)
911d5f6da3f7 (calendar-goto-islamic-date): Add
Gerd Moellmann <gerd@gnu.org>
parents: 38422
diff changeset
1821
14687
0d4ff7e4d6a3 Use the new file names in autoloads.
Karl Heuer <kwzh@gnu.org>
parents: 14169
diff changeset
1822 (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
1823 "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
1824 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
1825
14687
0d4ff7e4d6a3 Use the new file names in autoloads.
Karl Heuer <kwzh@gnu.org>
parents: 14169
diff changeset
1826 (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
1827 "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
1828
84593
6a5b534dceee Following cal-bahai renaming, update all
Glenn Morris <rgm@gnu.org>
parents: 84554
diff changeset
1829 (autoload 'calendar-bahai-goto-date "cal-bahai"
78145
cdd1d135369b Jeff Miller <jmiller at cablespeed.com> (tiny change)
Glenn Morris <rgm@gnu.org>
parents: 77279
diff changeset
1830 "Move cursor to Baha'i date DATE.
cdd1d135369b Jeff Miller <jmiller at cablespeed.com> (tiny change)
Glenn Morris <rgm@gnu.org>
parents: 77279
diff changeset
1831 Echo Baha'i date unless NOECHO is t."
cdd1d135369b Jeff Miller <jmiller at cablespeed.com> (tiny change)
Glenn Morris <rgm@gnu.org>
parents: 77279
diff changeset
1832 t)
cdd1d135369b Jeff Miller <jmiller at cablespeed.com> (tiny change)
Glenn Morris <rgm@gnu.org>
parents: 77279
diff changeset
1833
55431
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1834 (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
1835 "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
1836 t)
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1837
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1838 (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
1839 "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
1840
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
1841 (autoload 'calendar-goto-hebrew-date "cal-hebrew"
64446
6d54ca488e15 (calendar-goto-hebrew-date)
Juri Linkov <juri@jurta.org>
parents: 64085
diff changeset
1842 "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
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-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
1846 "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
1847 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
1848
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1849 (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
1850 "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
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-goto-coptic-date "cal-coptic"
64446
6d54ca488e15 (calendar-goto-hebrew-date)
Juri Linkov <juri@jurta.org>
parents: 64085
diff changeset
1853 "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
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-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
1857 "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
1858 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
1859
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1860 (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
1861 "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
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-goto-ethiopic-date "cal-coptic"
64446
6d54ca488e15 (calendar-goto-hebrew-date)
Juri Linkov <juri@jurta.org>
parents: 64085
diff changeset
1864 "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
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-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
1868 "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
1869 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
1870
03ef030c9e75 Many functions moved to other files, some rewritten. See ChangeLog entry.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 12061
diff changeset
1871 (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
1872 "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
1873
15258
ab5975df6164 Change autoload references from cal-persian to cal-persia.
Karl Heuer <kwzh@gnu.org>
parents: 14937
diff changeset
1874 (autoload 'calendar-goto-persian-date "cal-persia"
64446
6d54ca488e15 (calendar-goto-hebrew-date)
Juri Linkov <juri@jurta.org>
parents: 64085
diff changeset
1875 "Move cursor to Persian date."
14915
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-print-persian-date "cal-persia"
14915
5a4b28f19b75 Add references to Persian calendar.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 14687
diff changeset
1879 "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
1880 t)
5a4b28f19b75 Add references to Persian calendar.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 14687
diff changeset
1881
15258
ab5975df6164 Change autoload references from cal-persian to cal-persia.
Karl Heuer <kwzh@gnu.org>
parents: 14937
diff changeset
1882 (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
1883 "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
1884
70600
b9be6d21f2ac (diary-show-all-entries): Do not refer to
Glenn Morris <rgm@gnu.org>
parents: 70598
diff changeset
1885 (autoload 'diary-show-all-entries "diary-lib"
7404
ce1457fb5ea4 Doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 7132
diff changeset
1886 "Show all of the diary entries in the diary file.
ce1457fb5ea4 Doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 7132
diff changeset
1887 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
1888 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
1889 is created."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1890 t)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1891
13649
fb670bed6222 Use new file name diary-lib.
Richard M. Stallman <rms@gnu.org>
parents: 13597
diff changeset
1892 (autoload 'mark-diary-entries "diary-lib"
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1893 "Mark days in the calendar window that have diary entries.
7404
ce1457fb5ea4 Doc fixes.
Richard M. Stallman <rms@gnu.org>
parents: 7132
diff changeset
1894 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
1895 t)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1896
13649
fb670bed6222 Use new file name diary-lib.
Richard M. Stallman <rms@gnu.org>
parents: 13597
diff changeset
1897 (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
1898 "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
1899
13649
fb670bed6222 Use new file name diary-lib.
Richard M. Stallman <rms@gnu.org>
parents: 13597
diff changeset
1900 (autoload 'insert-diary-entry "diary-lib"
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1901 "Insert a diary entry for the date 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
13649
fb670bed6222 Use new file name diary-lib.
Richard M. Stallman <rms@gnu.org>
parents: 13597
diff changeset
1904 (autoload 'insert-weekly-diary-entry "diary-lib"
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1905 "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
1906 t)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1907
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
1908
13649
fb670bed6222 Use new file name diary-lib.
Richard M. Stallman <rms@gnu.org>
parents: 13597
diff changeset
1909 (autoload 'insert-monthly-diary-entry "diary-lib"
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1910 "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
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-yearly-diary-entry "diary-lib"
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1914 "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
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-anniversary-diary-entry "diary-lib"
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1918 "Insert an anniversary diary entry for the date indicated by point."
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-block-diary-entry "diary-lib"
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1922 "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
1923 t)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1924
13649
fb670bed6222 Use new file name diary-lib.
Richard M. Stallman <rms@gnu.org>
parents: 13597
diff changeset
1925 (autoload 'insert-cyclic-diary-entry "diary-lib"
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1926 "Insert a cyclic diary entry starting at the date indicated by point."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1927 t)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1928
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
1929 (autoload 'insert-hebrew-diary-entry "cal-hebrew"
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1930 "Insert a diary entry for the Hebrew date corresponding to the date
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1931 indicated by point."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1932 t)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1933
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
1934 (autoload 'insert-monthly-hebrew-diary-entry "cal-hebrew"
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1935 "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
1936 to the date indicated by point."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1937 t)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1938
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
1939 (autoload 'insert-yearly-hebrew-diary-entry "cal-hebrew"
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1940 "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
1941 to the date indicated by point."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1942 t)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1943
14687
0d4ff7e4d6a3 Use the new file names in autoloads.
Karl Heuer <kwzh@gnu.org>
parents: 14169
diff changeset
1944 (autoload 'insert-islamic-diary-entry "cal-islam"
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1945 "Insert a diary entry for the Islamic date corresponding to the date
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1946 indicated by point."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1947 t)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1948
14687
0d4ff7e4d6a3 Use the new file names in autoloads.
Karl Heuer <kwzh@gnu.org>
parents: 14169
diff changeset
1949 (autoload 'insert-monthly-islamic-diary-entry "cal-islam"
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1950 "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
1951 to the date indicated by point."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1952 t)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1953
14687
0d4ff7e4d6a3 Use the new file names in autoloads.
Karl Heuer <kwzh@gnu.org>
parents: 14169
diff changeset
1954 (autoload 'insert-yearly-islamic-diary-entry "cal-islam"
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1955 "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
1956 to the date indicated by point."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1957 t)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1958
84593
6a5b534dceee Following cal-bahai renaming, update all
Glenn Morris <rgm@gnu.org>
parents: 84554
diff changeset
1959 (autoload 'diary-bahai-insert-entry "cal-bahai"
55431
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1960 "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
1961 indicated by point."
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1962 t)
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1963
84593
6a5b534dceee Following cal-bahai renaming, update all
Glenn Morris <rgm@gnu.org>
parents: 84554
diff changeset
1964 (autoload 'diary-bahai-insert-monthly-entry "cal-bahai"
55431
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1965 "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
1966 to the date indicated by point."
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1967 t)
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1968
84593
6a5b534dceee Following cal-bahai renaming, update all
Glenn Morris <rgm@gnu.org>
parents: 84554
diff changeset
1969 (autoload 'diary-bahai-insert-yearly-entry "cal-bahai"
55431
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1970 "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
1971 to the date indicated by point."
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1972 t)
b278cb498cc8 2004-05-08 John Wiegley <johnw@newartisans.com>
John Wiegley <johnw@newartisans.com>
parents: 54536
diff changeset
1973
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 (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
1975 "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
1976 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
1977 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
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-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
1980 "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
1981 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
1982
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
1983 (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
1984 "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
1985
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
1986 (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
1987 "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
1988 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
1989 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
1990 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
1991
26427
3b6cf16f3633 * calendar/calendar.el (calendar-remove-frame-by-deleting):
Sam Steingold <sds@gnu.org>
parents: 26329
diff changeset
1992 (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
1993 "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
1994 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
1995 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
1996 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
1997
13596
d205632cc756 (cal-tex-cursor-filofax-week): Renamed from cal-tex-cursor-week6.
Richard M. Stallman <rms@gnu.org>
parents: 13589
diff changeset
1998 (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
1999 "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
2000 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
2001 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
2002 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
2003
13596
d205632cc756 (cal-tex-cursor-filofax-week): Renamed from cal-tex-cursor-week6.
Richard M. Stallman <rms@gnu.org>
parents: 13589
diff changeset
2004 (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
2005 "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
2006 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
2007 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
2008 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
2009
13596
d205632cc756 (cal-tex-cursor-filofax-week): Renamed from cal-tex-cursor-week6.
Richard M. Stallman <rms@gnu.org>
parents: 13589
diff changeset
2010 (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
2011 "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
2012 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
2013 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
2014 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
2015
13596
d205632cc756 (cal-tex-cursor-filofax-week): Renamed from cal-tex-cursor-week6.
Richard M. Stallman <rms@gnu.org>
parents: 13589
diff changeset
2016 (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
2017 "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
2018 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
2019 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
2020 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
2021 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
2022
19974
620ed2f8250e (calendar-mode-map): Bind it to key.
Karl Heuer <kwzh@gnu.org>
parents: 19438
diff changeset
2023 (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
2024 "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
2025 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
2026 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
2027 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
2028
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
2029 (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
2030 "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
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-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
2034 "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
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
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
2037 (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
2038 "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
2039 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
2040
73518
099deb7b2cbd (cal-html-cursor-month, cal-html-cursor-year): Add autoloads for this
Glenn Morris <rgm@gnu.org>
parents: 73181
diff changeset
2041 (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
2042 "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
2043 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
2044 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
2045 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
2046
099deb7b2cbd (cal-html-cursor-month, cal-html-cursor-year): Add autoloads for this
Glenn Morris <rgm@gnu.org>
parents: 73181
diff changeset
2047 (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
2048 "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
2049 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
2050 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
2051 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
2052
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2053 (autoload 'mark-calendar-holidays "holidays"
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2054 "Mark notable days 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
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2057 (autoload 'calendar-cursor-holidays "holidays"
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2058 "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
2059 t)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2060
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2061 (defun generate-calendar-window (&optional mon yr)
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2062 "Generate the calendar window for the current date.
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2063 Or, for optional MON, YR."
82203
3d0d3af343ac (calendar-mode): Make sure displayed-(month|year) are set.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82151
diff changeset
2064 (let* ((inhibit-read-only t)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2065 (today (calendar-current-date))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2066 (month (extract-calendar-month today))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2067 (day (extract-calendar-day today))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2068 (year (extract-calendar-year today))
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2069 (today-visible
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2070 (or (not mon)
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2071 (let ((offset (calendar-interval mon yr month year)))
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2072 (and (<= offset 1) (>= offset -1)))))
60292
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
2073 (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
2074 (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
2075 (get-buffer calendar-buffer))))
82203
3d0d3af343ac (calendar-mode): Make sure displayed-(month|year) are set.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82151
diff changeset
2076 (generate-calendar (or mon month) (or yr year))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2077 (update-calendar-mode-line)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2078 (calendar-cursor-to-visible-date
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2079 (if today-visible today (list displayed-month 1 displayed-year)))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2080 (set-buffer-modified-p nil)
60292
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
2081 ;; 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
2082 ;; window displaying the calendar
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
2083 (when in-calendar-window
78464
7819402a9963 Use window-full-width-p instead of comparing frame-width and
Martin Rudalics <rudalics@gmx.at>
parents: 78216
diff changeset
2084 (if (or (one-window-p t) (not (window-full-width-p)))
60292
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
2085 ;; 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
2086 ;; line is fully visible
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
2087 (set-window-vscroll nil 0)
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
2088 ;; 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
2089 (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
2090 (sit-for 0))
49736
dd8404d4fed8 (diary-face-attrs): New custom.
Juanma Barranquero <lekktu@gmail.com>
parents: 49350
diff changeset
2091 (if (and (boundp 'font-lock-mode)
dd8404d4fed8 (diary-face-attrs): New custom.
Juanma Barranquero <lekktu@gmail.com>
parents: 49350
diff changeset
2092 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
2093 (font-lock-fontify-buffer))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2094 (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
2095 ;;; (calendar-date-is-legal-p today) ; useful for BC dates
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2096 (mark-calendar-holidays)
60292
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
2097 (and in-calendar-window (sit-for 0)))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2098 (unwind-protect
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2099 (if mark-diary-entries-in-calendar (mark-diary-entries))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2100 (if today-visible
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2101 (run-hooks 'today-visible-calendar-hook)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2102 (run-hooks 'today-invisible-calendar-hook)))))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2103
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2104 (defun generate-calendar (month year)
54128
520476f3222d *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 54071
diff changeset
2105 "Generate a three-month Gregorian calendar centered around MONTH, YEAR."
82118
baffe86b0c44 (calendar-mode-map): Move initialization into declaration.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82086
diff changeset
2106 ;; A negative YEAR is interpreted as BC; -1 being 1 BC, and so on.
baffe86b0c44 (calendar-mode-map): Move initialization into declaration.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82086
diff changeset
2107 ;; Note that while calendars for years BC could be displayed as it
baffe86b0c44 (calendar-mode-map): Move initialization into declaration.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82086
diff changeset
2108 ;; stands, almost all other calendar functions (eg holidays) would
baffe86b0c44 (calendar-mode-map): Move initialization into declaration.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82086
diff changeset
2109 ;; at best have unpredictable results for such dates.
54128
520476f3222d *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 54071
diff changeset
2110 (if (< (+ month (* 12 (1- year))) 2)
60292
b8747b7d8e2a From Matt Hodges <MPHodges@member.fsf.org>:
Glenn Morris <rgm@gnu.org>
parents: 59044
diff changeset
2111 (error "Months before January, 1 AD cannot be displayed"))
54128
520476f3222d *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 54071
diff changeset
2112 (setq displayed-month month
520476f3222d *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 54071
diff changeset
2113 displayed-year year)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2114 (erase-buffer)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2115 (increment-calendar-month month year -1)
82086
1ee19eca3bfc (generate-calendar, (generate-calendar-month): Use dotimes rather than
Glenn Morris <rgm@gnu.org>
parents: 78145
diff changeset
2116 (dotimes (i 3)
1ee19eca3bfc (generate-calendar, (generate-calendar-month): Use dotimes rather than
Glenn Morris <rgm@gnu.org>
parents: 78145
diff changeset
2117 (generate-calendar-month month year (+ 5 (* 25 i)))
1ee19eca3bfc (generate-calendar, (generate-calendar-month): Use dotimes rather than
Glenn Morris <rgm@gnu.org>
parents: 78145
diff changeset
2118 (increment-calendar-month month year 1)))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2119
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2120 (defun generate-calendar-month (month year indent)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2121 "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
2122 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
2123 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
2124 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
2125 line."
4861
924486090b27 (calendar-week-start-day): New var (autoloaded) to
Richard M. Stallman <rms@gnu.org>
parents: 4658
diff changeset
2126 (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
2127 (mod
4861
924486090b27 (calendar-week-start-day): New var (autoloaded) to
Richard M. Stallman <rms@gnu.org>
parents: 4658
diff changeset
2128 (- (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
2129 calendar-week-start-day)
924486090b27 (calendar-week-start-day): New var (autoloaded) to
Richard M. Stallman <rms@gnu.org>
parents: 4658
diff changeset
2130 7))
924486090b27 (calendar-week-start-day): New var (autoloaded) to
Richard M. Stallman <rms@gnu.org>
parents: 4658
diff changeset
2131 (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
2132 (goto-char (point-min))
924486090b27 (calendar-week-start-day): New var (autoloaded) to
Richard M. Stallman <rms@gnu.org>
parents: 4658
diff changeset
2133 (calendar-insert-indented
924486090b27 (calendar-week-start-day): New var (autoloaded) to
Richard M. Stallman <rms@gnu.org>
parents: 4658
diff changeset
2134 (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
2135 (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
2136 indent t)
924486090b27 (calendar-week-start-day): New var (autoloaded) to
Richard M. Stallman <rms@gnu.org>
parents: 4658
diff changeset
2137 (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
2138 ;; Use the first two characters of each day to head the columns.
82086
1ee19eca3bfc (generate-calendar, (generate-calendar-month): Use dotimes rather than
Glenn Morris <rgm@gnu.org>
parents: 78145
diff changeset
2139 (dotimes (i 7)
1ee19eca3bfc (generate-calendar, (generate-calendar-month): Use dotimes rather than
Glenn Morris <rgm@gnu.org>
parents: 78145
diff changeset
2140 (insert
1ee19eca3bfc (generate-calendar, (generate-calendar-month): Use dotimes rather than
Glenn Morris <rgm@gnu.org>
parents: 78145
diff changeset
2141 (let ((string
1ee19eca3bfc (generate-calendar, (generate-calendar-month): Use dotimes rather than
Glenn Morris <rgm@gnu.org>
parents: 78145
diff changeset
2142 (calendar-day-name (mod (+ calendar-week-start-day i) 7) nil t)))
1ee19eca3bfc (generate-calendar, (generate-calendar-month): Use dotimes rather than
Glenn Morris <rgm@gnu.org>
parents: 78145
diff changeset
2143 (if enable-multibyte-characters
1ee19eca3bfc (generate-calendar, (generate-calendar-month): Use dotimes rather than
Glenn Morris <rgm@gnu.org>
parents: 78145
diff changeset
2144 (truncate-string-to-width string 2)
1ee19eca3bfc (generate-calendar, (generate-calendar-month): Use dotimes rather than
Glenn Morris <rgm@gnu.org>
parents: 78145
diff changeset
2145 (substring string 0 2)))
1ee19eca3bfc (generate-calendar, (generate-calendar-month): Use dotimes rather than
Glenn Morris <rgm@gnu.org>
parents: 78145
diff changeset
2146 " "))
4861
924486090b27 (calendar-week-start-day): New var (autoloaded) to
Richard M. Stallman <rms@gnu.org>
parents: 4658
diff changeset
2147 (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
2148 (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
2149 ;; Add blank days before the first of the month
82086
1ee19eca3bfc (generate-calendar, (generate-calendar-month): Use dotimes rather than
Glenn Morris <rgm@gnu.org>
parents: 78145
diff changeset
2150 (dotimes (idummy blank-days) (insert " "))
4861
924486090b27 (calendar-week-start-day): New var (autoloaded) to
Richard M. Stallman <rms@gnu.org>
parents: 4658
diff changeset
2151 ;; 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
2152 (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
2153 (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
2154 (add-text-properties
fcbf5971fe12 (generate-calendar-month): Add help-echo to mouse-highlighted text.
Eli Zaretskii <eliz@gnu.org>
parents: 37430
diff changeset
2155 (- (point) 3) (1- (point))
fcbf5971fe12 (generate-calendar-month): Add help-echo to mouse-highlighted text.
Eli Zaretskii <eliz@gnu.org>
parents: 37430
diff changeset
2156 '(mouse-face highlight
fcbf5971fe12 (generate-calendar-month): Add help-echo to mouse-highlighted text.
Eli Zaretskii <eliz@gnu.org>
parents: 37430
diff changeset
2157 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
2158 (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
2159 (/= i last)
924486090b27 (calendar-week-start-day): New var (autoloaded) to
Richard M. Stallman <rms@gnu.org>
parents: 4658
diff changeset
2160 (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
2161 (calendar-insert-indented "" indent)))));; Go to proper spot
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2162
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2163 (defun calendar-insert-indented (string indent &optional newline)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2164 "Insert STRING at column INDENT.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2165 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
2166 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
2167 the inserted text. Value is always t."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2168 ;; Try to move to that column.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2169 (move-to-column indent)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2170 ;; If line is too short, indent out to that column.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2171 (if (< (current-column) indent)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2172 (indent-to indent))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2173 (insert string)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2174 ;; Advance to next line, if requested.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2175 (if newline
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2176 (progn
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2177 (end-of-line)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2178 (if (eobp)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2179 (newline)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2180 (forward-line 1))))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2181 t)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2182
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2183 (defun redraw-calendar ()
60322
ae2850fc74dc (redraw-calendar): Work from any buffer, not just the calendar.
Glenn Morris <rgm@gnu.org>
parents: 60292
diff changeset
2184 "Redraw the calendar display, if `calendar-buffer' is live."
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2185 (interactive)
60322
ae2850fc74dc (redraw-calendar): Work from any buffer, not just the calendar.
Glenn Morris <rgm@gnu.org>
parents: 60292
diff changeset
2186 (if (get-buffer calendar-buffer)
60568
e2cd8a11381a (calendar-redrawing): New internal variable.
Glenn Morris <rgm@gnu.org>
parents: 60528
diff changeset
2187 (with-current-buffer calendar-buffer
60649
3a754b1548d3 (calendar-redrawing): Delete.
Glenn Morris <rgm@gnu.org>
parents: 60568
diff changeset
2188 (let ((cursor-date (calendar-cursor-to-nearest-date)))
60568
e2cd8a11381a (calendar-redrawing): New internal variable.
Glenn Morris <rgm@gnu.org>
parents: 60528
diff changeset
2189 (generate-calendar-window displayed-month displayed-year)
e2cd8a11381a (calendar-redrawing): New internal variable.
Glenn Morris <rgm@gnu.org>
parents: 60528
diff changeset
2190 (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
2191
952103a61e35 (redraw-calendar): Preserve point. Reported by Matt Hodges
Glenn Morris <rgm@gnu.org>
parents: 60322
diff changeset
2192 ;;;###autoload
952103a61e35 (redraw-calendar): Preserve point. Reported by Matt Hodges
Glenn Morris <rgm@gnu.org>
parents: 60322
diff changeset
2193 (defcustom calendar-week-start-day 0
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2194 "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
2195 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
2196
952103a61e35 (redraw-calendar): Preserve point. Reported by Matt Hodges
Glenn Morris <rgm@gnu.org>
parents: 60322
diff changeset
2197 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
2198 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
2199 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
2200 movement commands will not work correctly."
952103a61e35 (redraw-calendar): Preserve point. Reported by Matt Hodges
Glenn Morris <rgm@gnu.org>
parents: 60322
diff changeset
2201 :type 'integer
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2202 ;; 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
2203 ;; 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
2204 ;; 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
2205 :initialize 'custom-initialize-default
60528
952103a61e35 (redraw-calendar): Preserve point. Reported by Matt Hodges
Glenn Morris <rgm@gnu.org>
parents: 60322
diff changeset
2206 :set (lambda (sym val)
952103a61e35 (redraw-calendar): Preserve point. Reported by Matt Hodges
Glenn Morris <rgm@gnu.org>
parents: 60322
diff changeset
2207 (set sym val)
952103a61e35 (redraw-calendar): Preserve point. Reported by Matt Hodges
Glenn Morris <rgm@gnu.org>
parents: 60322
diff changeset
2208 (redraw-calendar))
952103a61e35 (redraw-calendar): Preserve point. Reported by Matt Hodges
Glenn Morris <rgm@gnu.org>
parents: 60322
diff changeset
2209 :group 'calendar)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2210
17625
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
2211 (defcustom calendar-debug-sexp nil
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2212 "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
2213 :type 'boolean
321afd5b0bc5 Add defgroups, and use defcustom.
Richard M. Stallman <rms@gnu.org>
parents: 16099
diff changeset
2214 :group 'calendar)
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2215
82118
baffe86b0c44 (calendar-mode-map): Move initialization into declaration.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82086
diff changeset
2216 (require 'cal-menu)
baffe86b0c44 (calendar-mode-map): Move initialization into declaration.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82086
diff changeset
2217
baffe86b0c44 (calendar-mode-map): Move initialization into declaration.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82086
diff changeset
2218 (defvar calendar-mode-map
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2219 (let ((map (make-keymap)))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2220 (suppress-keymap map)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2221 (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
2222 mark-defun mark-whole-buffer mark-page
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2223 downcase-region upcase-region kill-region
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2224 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
2225 (define-key map (vector 'remap c) 'calendar-not-implemented))
82151
7b6bc42d5f2c (calendar-mode-map): Use new calendar-scroll-* names.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82140
diff changeset
2226 (define-key map "<" 'calendar-scroll-right)
7b6bc42d5f2c (calendar-mode-map): Use new calendar-scroll-* names.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82140
diff changeset
2227 (define-key map "\C-x<" 'calendar-scroll-right)
7b6bc42d5f2c (calendar-mode-map): Use new calendar-scroll-* names.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82140
diff changeset
2228 (define-key map [prior] 'calendar-scroll-right-three-months)
7b6bc42d5f2c (calendar-mode-map): Use new calendar-scroll-* names.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82140
diff changeset
2229 (define-key map "\ev" 'calendar-scroll-right-three-months)
7b6bc42d5f2c (calendar-mode-map): Use new calendar-scroll-* names.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82140
diff changeset
2230 (define-key map ">" 'calendar-scroll-left)
7b6bc42d5f2c (calendar-mode-map): Use new calendar-scroll-* names.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82140
diff changeset
2231 (define-key map "\C-x>" 'calendar-scroll-left)
7b6bc42d5f2c (calendar-mode-map): Use new calendar-scroll-* names.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82140
diff changeset
2232 (define-key map [next] 'calendar-scroll-left-three-months)
7b6bc42d5f2c (calendar-mode-map): Use new calendar-scroll-* names.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82140
diff changeset
2233 (define-key map "\C-v" 'calendar-scroll-left-three-months)
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2234 (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
2235 (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
2236 (define-key map "\e{" 'calendar-backward-month)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2237 (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
2238 (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
2239 (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
2240 (define-key map [left] 'calendar-backward-day)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2241 (define-key map [up] 'calendar-backward-week)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2242 (define-key map [right] 'calendar-forward-day)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2243 (define-key map [down] 'calendar-forward-week)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2244 (define-key map "\e}" 'calendar-forward-month)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2245 (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
2246 (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
2247 (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
2248 (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
2249 (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
2250 (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
2251 (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
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 ;; Many people are used to typing C-SPC and getting C-@.
82118
baffe86b0c44 (calendar-mode-map): Move initialization into declaration.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82086
diff changeset
2254 (define-key map [?\C-\s] 'calendar-set-mark)
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2255 (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
2256 (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
2257 (define-key map "gd" 'calendar-goto-date)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2258 (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
2259 (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
2260 (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
2261 (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
2262 (define-key map "gi" 'calendar-goto-islamic-date)
84593
6a5b534dceee Following cal-bahai renaming, update all
Glenn Morris <rgm@gnu.org>
parents: 84554
diff changeset
2263 (define-key map "gb" 'calendar-bahai-goto-date)
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2264 (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
2265 (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
2266 (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
2267 (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
2268 (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
2269 (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
2270 (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
2271 (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
2272 (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
2273 (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
2274 (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
2275 (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
2276 (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
2277 (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
2278 (define-key map "Aa" 'appt-add)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2279 (define-key map "Ad" 'appt-delete)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2280 (define-key map "S" 'calendar-sunrise-sunset)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2281 (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
2282 (define-key map " " 'scroll-other-window)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2283 (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
2284 (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
2285 (define-key map "." 'calendar-goto-today)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2286 (define-key map "o" 'calendar-other-month)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2287 (define-key map "q" 'exit-calendar)
84554
5bd5d06e4cf2 Rename all list-calendar-holidays callers to calendar-list-holidays,
Glenn Morris <rgm@gnu.org>
parents: 82365
diff changeset
2288 (define-key map "a" 'calendar-list-holidays)
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2289 (define-key map "h" 'calendar-cursor-holidays)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2290 (define-key map "x" 'mark-calendar-holidays)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2291 (define-key map "u" 'calendar-unmark)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2292 (define-key map "m" 'mark-diary-entries)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2293 (define-key map "d" 'diary-view-entries)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2294 (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
2295 (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
2296 (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
2297 (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
2298 (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
2299 (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
2300 (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
2301 (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
2302 (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
2303 (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
2304 (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
2305 (define-key map "pi" 'calendar-print-islamic-date)
84593
6a5b534dceee Following cal-bahai renaming, update all
Glenn Morris <rgm@gnu.org>
parents: 84554
diff changeset
2306 (define-key map "pb" 'calendar-bahai-print-date)
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2307 (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
2308 (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
2309 (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
2310 (define-key map "id" 'insert-diary-entry)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2311 (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
2312 (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
2313 (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
2314 (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
2315 (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
2316 (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
2317 (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
2318 (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
2319 (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
2320 (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
2321 (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
2322 (define-key map "iiy" 'insert-yearly-islamic-diary-entry)
84593
6a5b534dceee Following cal-bahai renaming, update all
Glenn Morris <rgm@gnu.org>
parents: 84554
diff changeset
2323 (define-key map "iBd" 'diary-bahai-insert-entry)
6a5b534dceee Following cal-bahai renaming, update all
Glenn Morris <rgm@gnu.org>
parents: 84554
diff changeset
2324 (define-key map "iBm" 'diary-bahai-insert-monthly-entry)
6a5b534dceee Following cal-bahai renaming, update all
Glenn Morris <rgm@gnu.org>
parents: 84554
diff changeset
2325 (define-key map "iBy" 'diary-bahai-insert-yearly-entry)
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2326 (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
2327 (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
2328 (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
2329 (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
2330 (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
2331 (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
2332 (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
2333 (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
2334 (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
2335 (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
2336 (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
2337 (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
2338 (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
2339 (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
2340 (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
2341 (define-key map "tY" 'cal-tex-cursor-year-landscape)
82118
baffe86b0c44 (calendar-mode-map): Move initialization into declaration.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82086
diff changeset
2342
baffe86b0c44 (calendar-mode-map): Move initialization into declaration.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82086
diff changeset
2343 (define-key map [menu-bar edit] 'undefined)
baffe86b0c44 (calendar-mode-map): Move initialization into declaration.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82086
diff changeset
2344 (define-key map [menu-bar search] 'undefined)
baffe86b0c44 (calendar-mode-map): Move initialization into declaration.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82086
diff changeset
2345 ;; This ignores the mouse-up event after the mouse-down that pops up the
baffe86b0c44 (calendar-mode-map): Move initialization into declaration.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82086
diff changeset
2346 ;; context menu. It should not be necessary because the mouse-up event
baffe86b0c44 (calendar-mode-map): Move initialization into declaration.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82086
diff changeset
2347 ;; should be eaten up by the menu-handling toolkit.
baffe86b0c44 (calendar-mode-map): Move initialization into declaration.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82086
diff changeset
2348 ;; (define-key map [mouse-2] 'ignore)
baffe86b0c44 (calendar-mode-map): Move initialization into declaration.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82086
diff changeset
2349
baffe86b0c44 (calendar-mode-map): Move initialization into declaration.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82086
diff changeset
2350 (easy-menu-define nil map nil cal-menu-moon-menu)
baffe86b0c44 (calendar-mode-map): Move initialization into declaration.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82086
diff changeset
2351 (easy-menu-define nil map nil cal-menu-diary-menu)
baffe86b0c44 (calendar-mode-map): Move initialization into declaration.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82086
diff changeset
2352 (easy-menu-define nil map nil cal-menu-holidays-menu)
baffe86b0c44 (calendar-mode-map): Move initialization into declaration.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82086
diff changeset
2353 (easy-menu-define nil map nil cal-menu-goto-menu)
baffe86b0c44 (calendar-mode-map): Move initialization into declaration.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82086
diff changeset
2354 (easy-menu-define nil map nil cal-menu-scroll-menu)
baffe86b0c44 (calendar-mode-map): Move initialization into declaration.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82086
diff changeset
2355
baffe86b0c44 (calendar-mode-map): Move initialization into declaration.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82086
diff changeset
2356 (define-key map [down-mouse-3]
baffe86b0c44 (calendar-mode-map): Move initialization into declaration.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82086
diff changeset
2357 (easy-menu-binding cal-menu-context-mouse-menu))
baffe86b0c44 (calendar-mode-map): Move initialization into declaration.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82086
diff changeset
2358 (define-key map [down-mouse-2]
baffe86b0c44 (calendar-mode-map): Move initialization into declaration.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82086
diff changeset
2359 (easy-menu-binding cal-menu-global-mouse-menu))
baffe86b0c44 (calendar-mode-map): Move initialization into declaration.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82086
diff changeset
2360
baffe86b0c44 (calendar-mode-map): Move initialization into declaration.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82086
diff changeset
2361 map))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2362
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2363 (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
2364 "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
2365 (interactive)
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2366 (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
2367 (with-output-to-temp-buffer (help-buffer)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2368 (princ
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2369 (format
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2370 "Calendar Mode:\nFor a complete description, type %s\n%s\n"
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2371 (substitute-command-keys
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2372 "\\<calendar-mode-map>\\[describe-mode] from within the calendar")
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2373 (substitute-command-keys "\\{calendar-mode-map}")))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2374 (print-help-return-message)))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2375
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2376 ;; Calendar mode is suitable only for specially formatted data.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2377 (put 'calendar-mode 'mode-class 'special)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2378
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2379 (defvar calendar-mode-line-format
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2380 (list
74851
4b70fa58f083 (calendar-mode-map): Switch < and >.
Chong Yidong <cyd@stupidchicken.com>
parents: 73518
diff changeset
2381 (propertize "<"
4b70fa58f083 (calendar-mode-map): Switch < and >.
Chong Yidong <cyd@stupidchicken.com>
parents: 73518
diff changeset
2382 '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
2383 'mouse-face 'mode-line-highlight
74851
4b70fa58f083 (calendar-mode-map): Switch < and >.
Chong Yidong <cyd@stupidchicken.com>
parents: 73518
diff changeset
2384 'keymap (make-mode-line-mouse-map 'mouse-1
82151
7b6bc42d5f2c (calendar-mode-map): Use new calendar-scroll-* names.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82140
diff changeset
2385 'calendar-scroll-right))
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2386 "Calendar"
31669
ec8ce5820488 (calendar-mode-line-format): Make fields
Dave Love <fx@gnu.org>
parents: 26530
diff changeset
2387 (concat
ec8ce5820488 (calendar-mode-line-format): Make fields
Dave Love <fx@gnu.org>
parents: 26530
diff changeset
2388 (propertize
ec8ce5820488 (calendar-mode-line-format): Make fields
Dave Love <fx@gnu.org>
parents: 26530
diff changeset
2389 (substitute-command-keys
ec8ce5820488 (calendar-mode-line-format): Make fields
Dave Love <fx@gnu.org>
parents: 26530
diff changeset
2390 "\\<calendar-mode-map>\\[calendar-goto-info-node] info")
74851
4b70fa58f083 (calendar-mode-map): Switch < and >.
Chong Yidong <cyd@stupidchicken.com>
parents: 73518
diff changeset
2391 '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
2392 'mouse-face 'mode-line-highlight
74851
4b70fa58f083 (calendar-mode-map): Switch < and >.
Chong Yidong <cyd@stupidchicken.com>
parents: 73518
diff changeset
2393 '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
2394 " / "
31669
ec8ce5820488 (calendar-mode-line-format): Make fields
Dave Love <fx@gnu.org>
parents: 26530
diff changeset
2395 (propertize
ec8ce5820488 (calendar-mode-line-format): Make fields
Dave Love <fx@gnu.org>
parents: 26530
diff changeset
2396 (substitute-command-keys
74851
4b70fa58f083 (calendar-mode-map): Switch < and >.
Chong Yidong <cyd@stupidchicken.com>
parents: 73518
diff changeset
2397 " \\<calendar-mode-map>\\[calendar-other-month] other")
4b70fa58f083 (calendar-mode-map): Switch < and >.
Chong Yidong <cyd@stupidchicken.com>
parents: 73518
diff changeset
2398 '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
2399 '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
2400 'keymap (make-mode-line-mouse-map
74851
4b70fa58f083 (calendar-mode-map): Switch < and >.
Chong Yidong <cyd@stupidchicken.com>
parents: 73518
diff changeset
2401 'mouse-1 'mouse-calendar-other-month))
4b70fa58f083 (calendar-mode-map): Switch < and >.
Chong Yidong <cyd@stupidchicken.com>
parents: 73518
diff changeset
2402 " / "
31669
ec8ce5820488 (calendar-mode-line-format): Make fields
Dave Love <fx@gnu.org>
parents: 26530
diff changeset
2403 (propertize
ec8ce5820488 (calendar-mode-line-format): Make fields
Dave Love <fx@gnu.org>
parents: 26530
diff changeset
2404 (substitute-command-keys
ec8ce5820488 (calendar-mode-line-format): Make fields
Dave Love <fx@gnu.org>
parents: 26530
diff changeset
2405 "\\<calendar-mode-map>\\[calendar-goto-today] today")
74851
4b70fa58f083 (calendar-mode-map): Switch < and >.
Chong Yidong <cyd@stupidchicken.com>
parents: 73518
diff changeset
2406 '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
2407 'mouse-face 'mode-line-highlight
74851
4b70fa58f083 (calendar-mode-map): Switch < and >.
Chong Yidong <cyd@stupidchicken.com>
parents: 73518
diff changeset
2408 '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
2409 '(calendar-date-string (calendar-current-date) t)
74851
4b70fa58f083 (calendar-mode-map): Switch < and >.
Chong Yidong <cyd@stupidchicken.com>
parents: 73518
diff changeset
2410 (propertize ">"
4b70fa58f083 (calendar-mode-map): Switch < and >.
Chong Yidong <cyd@stupidchicken.com>
parents: 73518
diff changeset
2411 '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
2412 '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
2413 'keymap (make-mode-line-mouse-map
82151
7b6bc42d5f2c (calendar-mode-map): Use new calendar-scroll-* names.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82140
diff changeset
2414 'mouse-1 'calendar-scroll-left)))
44369
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2415 "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
2416
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2417 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
2418 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
2419 `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
2420 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
2421 value that has the Hebrew date, the day number/days remaining in the year,
82118
baffe86b0c44 (calendar-mode-map): Move initialization into declaration.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82086
diff changeset
2422 and the ISO week/year numbers in the mode. When `calendar-move-hook' is set
baffe86b0c44 (calendar-mode-map): Move initialization into declaration.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82086
diff changeset
2423 to `update-calendar-mode-line', these mode line shows these values for the date
44369
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2424 under the cursor:
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2425
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2426 (list
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2427 \"\"
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2428 '(calendar-hebrew-date-string date)
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2429 '(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
2430 (d (calendar-day-number date))
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2431 (days-remaining
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2432 (- (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
2433 (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
2434 '(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
2435 (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
2436 (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
2437 (extract-calendar-month iso-date)
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2438 (extract-calendar-year iso-date)))
82118
baffe86b0c44 (calendar-mode-map): Move initialization into declaration.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82086
diff changeset
2439 \"\"))")
47333
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
86493
93da3d3f787e Re-fill copyright years.
Glenn Morris <rgm@gnu.org>
parents: 84593
diff changeset
2448 ;; (require 'info) will define these.
93da3d3f787e Re-fill copyright years.
Glenn Morris <rgm@gnu.org>
parents: 84593
diff changeset
2449 (declare-function Info-find-emacs-command-nodes "info" (command))
93da3d3f787e Re-fill copyright years.
Glenn Morris <rgm@gnu.org>
parents: 84593
diff changeset
2450 (declare-function Info-find-node "info"
93da3d3f787e Re-fill copyright years.
Glenn Morris <rgm@gnu.org>
parents: 84593
diff changeset
2451 (filename nodename &optional no-going-back))
93da3d3f787e Re-fill copyright years.
Glenn Morris <rgm@gnu.org>
parents: 84593
diff changeset
2452
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
2453 (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
2454 "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
2455 (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
2456 (require 'info)
13589
a2554930ea38 (calendar-goto-info-node): Don't let
Richard M. Stallman <rms@gnu.org>
parents: 13573
diff changeset
2457 (let ((where (save-window-excursion
a2554930ea38 (calendar-goto-info-node): Don't let
Richard M. Stallman <rms@gnu.org>
parents: 13573
diff changeset
2458 (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
2459 (if (not where)
38422
7a94f1c588c4 Some fixes to follow coding conventions.
Pavel Janík <Pavel@Janik.cz>
parents: 38088
diff changeset
2460 (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
2461 (let (same-window-buffer-names)
a2554930ea38 (calendar-goto-info-node): Don't let
Richard M. Stallman <rms@gnu.org>
parents: 13573
diff changeset
2462 (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
2463 (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
2464
48366
9dad713d153a Patch of Alan Shutko <ats@acm.org> by way of rms.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 47333
diff changeset
2465
9dad713d153a Patch of Alan Shutko <ats@acm.org> by way of rms.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 47333
diff changeset
2466
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2467 (defun calendar-mode ()
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2468 "A major mode for the calendar window.
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2469
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
2470 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
2471 \\<calendar-mode-map>\\[calendar-goto-info-node] from within the calendar.
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2472
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
2473 \\<calendar-mode-map>\\{calendar-mode-map}"
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2474 (kill-all-local-variables)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2475 (setq major-mode 'calendar-mode)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2476 (setq mode-name "Calendar")
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2477 (use-local-map calendar-mode-map)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2478 (setq buffer-read-only t)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2479 (setq indent-tabs-mode nil)
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2480 (update-calendar-mode-line)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2481 (make-local-variable 'calendar-mark-ring)
82203
3d0d3af343ac (calendar-mode): Make sure displayed-(month|year) are set.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82151
diff changeset
2482 (make-local-variable 'displayed-month) ;; Month in middle of window.
3d0d3af343ac (calendar-mode): Make sure displayed-(month|year) are set.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82151
diff changeset
2483 (make-local-variable 'displayed-year) ;; Year in middle of window.
3d0d3af343ac (calendar-mode): Make sure displayed-(month|year) are set.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82151
diff changeset
2484 ;; Most functions only work if displayed-month and displayed-year are set,
3d0d3af343ac (calendar-mode): Make sure displayed-(month|year) are set.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82151
diff changeset
2485 ;; so let's make sure they're always set. Most likely, this will be reset
3d0d3af343ac (calendar-mode): Make sure displayed-(month|year) are set.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82151
diff changeset
2486 ;; soon in generate-calendar, but better safe than sorry.
3d0d3af343ac (calendar-mode): Make sure displayed-(month|year) are set.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82151
diff changeset
2487 (unless (boundp 'displayed-month) (setq displayed-month 1))
3d0d3af343ac (calendar-mode): Make sure displayed-(month|year) are set.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82151
diff changeset
2488 (unless (boundp 'displayed-year) (setq displayed-year 2001))
48366
9dad713d153a Patch of Alan Shutko <ats@acm.org> by way of rms.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 47333
diff changeset
2489 (set (make-local-variable 'font-lock-defaults)
63334
e3610cf31194 (calendar-mode): Use run-mode-hooks.
Lute Kamstra <lute@gnu.org>
parents: 63221
diff changeset
2490 '(calendar-font-lock-keywords t))
e3610cf31194 (calendar-mode): Use run-mode-hooks.
Lute Kamstra <lute@gnu.org>
parents: 63221
diff changeset
2491 (run-mode-hooks 'calendar-mode-hook))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2492
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2493 (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
2494 "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
2495 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
2496 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
2497 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
2498 the STRINGS are just concatenated and the result truncated."
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2499 ;; 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
2500 ;; Mathematics by Ronald L. Graham, Donald E. Knuth, and Oren Patashnik,
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2501 ;; 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
2502 (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
2503 (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
2504 (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
2505 strings)))
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2506 (n (- length (length (apply 'concat strings))))
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2507 (m (1- (length strings)))
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2508 (s (car strings))
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2509 (strings (cdr strings))
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2510 (i 0))
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2511 (dolist (string strings)
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2512 (setq s (concat s
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2513 (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
2514 string))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2515 (setq i (1+ i)))
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2516 (substring s 0 length)))
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2517
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2518 (defun update-calendar-mode-line ()
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2519 "Update the calendar mode line with the current date and date style."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2520 (if (bufferp (get-buffer calendar-buffer))
65477
a08c0922f1c4 (calendar-for-loop): Add edebug info.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64826
diff changeset
2521 (with-current-buffer calendar-buffer
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2522 (setq mode-line-format
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2523 (calendar-string-spread
44369
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2524 (let ((date (condition-case nil
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2525 (calendar-cursor-to-nearest-date)
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2526 (error (calendar-current-date)))))
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2527 (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
2528 ? (frame-width)))
72939dbe7b7b (update-calendar-mode-line): Force mode-line update.
Richard M. Stallman <rms@gnu.org>
parents: 44084
diff changeset
2529 (force-mode-line-update))))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2530
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
2531 (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
2532 "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
2533 (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
2534 list)
31669
ec8ce5820488 (calendar-mode-line-format): Make fields
Dave Love <fx@gnu.org>
parents: 26530
diff changeset
2535 (walk-windows (lambda (w)
ec8ce5820488 (calendar-mode-line-format): Make fields
Dave Love <fx@gnu.org>
parents: 26530
diff changeset
2536 (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
2537 (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
2538 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
2539 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
2540
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 (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
2542 "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
2543 (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
2544 (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
2545 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
2546 other-calendars-buffer))
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2547 (buffer-list nil))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2548 (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
2549 (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
2550 ((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
2551 (t nil)))
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2552 (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
2553 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
2554
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2555 (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
2556 "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
2557 (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
2558 (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
2559 (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
2560 (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
2561 (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
2562 "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
2563 ;; 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
2564 ;; 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
2565 (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
2566 (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
2567 (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
2568
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 (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
2570 "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
2571 (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
2572 (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
2573 (cond
37430
a0e805e3a7f1 (diary-entry-marker, calendar-today-marker, calendar-holiday-marker): Use
Eli Zaretskii <eliz@gnu.org>
parents: 37001
diff changeset
2574 ((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
2575 (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
2576 (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
2577 (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
2578 nil)
37430
a0e805e3a7f1 (diary-entry-marker, calendar-today-marker, calendar-holiday-marker): Use
Eli Zaretskii <eliz@gnu.org>
parents: 37001
diff changeset
2579 ((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
2580 (if calendar-remove-frame-by-deleting
3b6cf16f3633 * calendar/calendar.el (calendar-remove-frame-by-deleting):
Sam Steingold <sds@gnu.org>
parents: 26329
diff changeset
2581 (delete-frame (window-frame window))
3b6cf16f3633 * calendar/calendar.el (calendar-remove-frame-by-deleting):
Sam Steingold <sds@gnu.org>
parents: 26329
diff changeset
2582 (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
2583 ((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
2584 (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
2585 (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
2586 (bury-buffer))))))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2587
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2588 (defun calendar-current-date ()
31730
719a230f8091 Docstring fixes.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 31671
diff changeset
2589 "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
2590 (let ((now (decode-time)))
e3b0c3bf4451 (calendar-current-date): Simplify by using decode-time instead
Richard M. Stallman <rms@gnu.org>
parents: 15317
diff changeset
2591 (list (nth 4 now) (nth 3 now) (nth 5 now))))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2592
5829
d266967cc1cc (calendar-mode-line-format): Change "current" to "today".
Richard M. Stallman <rms@gnu.org>
parents: 5771
diff changeset
2593 (defun calendar-cursor-to-date (&optional error)
31730
719a230f8091 Docstring fixes.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 31671
diff changeset
2594 "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
2595 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
2596 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
2597 (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
2598 (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
2599 (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
2600 (year
324bb3410cfb Fix calendar-cursor-to-date to handle starred days correctly.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 6025
diff changeset
2601 (cond
324bb3410cfb Fix calendar-cursor-to-date to handle starred days correctly.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 6025
diff changeset
2602 ((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
2603 ((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
2604 (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
2605 (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
2606 (< 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
2607 (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
2608 (if (not (looking-at " "))
82118
baffe86b0c44 (calendar-mode-map): Move initialization into declaration.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 82086
diff changeset
2609 (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
2610 (list month
62402
a7e02ef1e3d6 Replace `string-to-int' by `string-to-number'.
Juanma Barranquero <lekktu@gmail.com>
parents: 61394
diff changeset
2611 (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
2612 year))
65477
a08c0922f1c4 (calendar-for-loop): Add edebug info.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64826
diff changeset
2613 (if (and (looking-at "\\*")
a08c0922f1c4 (calendar-for-loop): Add edebug info.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64826
diff changeset
2614 (save-excursion
a08c0922f1c4 (calendar-for-loop): Add edebug info.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64826
diff changeset
2615 (re-search-backward "[^*]")
a08c0922f1c4 (calendar-for-loop): Add edebug info.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64826
diff changeset
2616 (looking-at ".\\*\\*")))
a08c0922f1c4 (calendar-for-loop): Add edebug info.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64826
diff changeset
2617 (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
2618 (if error (error "Not on a date!"))))))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2619
65477
a08c0922f1c4 (calendar-for-loop): Add edebug info.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64826
diff changeset
2620 (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
2621
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2622 ;; 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
2623 ;; 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
2624
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2625 ;;(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
2626 ;; "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
2627 ;;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
2628 ;;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
2629 ;; (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
2630 ;; (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
2631 ;; (+ approx
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2632 ;; (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
2633 ;; (>= 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
2634 ;; 1)))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2635 ;; (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
2636 ;; (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
2637 ;; (> date
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2638 ;; (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
2639 ;; (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
2640 ;; 1)))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2641 ;; (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
2642 ;; (- date
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2643 ;; (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
2644 ;; (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
2645
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2646 (defun calendar-gregorian-from-absolute (date)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2647 "Compute the list (month day year) corresponding to the absolute DATE.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2648 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
2649 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
2650 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
2651 ;; 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
2652 ;; 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
2653 ;; 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
2654 ;; (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
2655 (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
2656 (n400 (/ d0 146097))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2657 (d1 (% d0 146097))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2658 (n100 (/ d1 36524))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2659 (d2 (% d1 36524))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2660 (n4 (/ d2 1461))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2661 (d3 (% d2 1461))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2662 (n1 (/ d3 365))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2663 (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
2664 (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
2665 (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
2666 (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
2667 (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
2668 (month 1))
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2669 (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
2670 (and (< mdays day)
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
2671 (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
2672 (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
2673 (list month day year)))))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2674
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2675 (defun calendar-other-month (month year)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2676 "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
2677 (interactive (calendar-read-date 'noday))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2678 (if (and (= month displayed-month)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2679 (= year displayed-year))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2680 nil
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2681 (let ((old-date (calendar-cursor-to-date))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2682 (today (calendar-current-date)))
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2683 (generate-calendar-window month year)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2684 (calendar-cursor-to-visible-date
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2685 (cond
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2686 ((calendar-date-is-visible-p old-date) old-date)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2687 ((calendar-date-is-visible-p today) today)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2688 (t (list month 1 year)))))))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2689
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2690 (defun calendar-set-mark (arg)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2691 "Mark the date under the cursor, or jump to marked date.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2692 With no prefix argument, push current date onto marked date ring.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2693 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
2694 (interactive "P")
5829
d266967cc1cc (calendar-mode-line-format): Change "current" to "today".
Richard M. Stallman <rms@gnu.org>
parents: 5771
diff changeset
2695 (let ((date (calendar-cursor-to-date t)))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2696 (if (null arg)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2697 (progn
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
2698 (push date calendar-mark-ring)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2699 ;; 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
2700 ;; calendar, the mark ring in the calendar is one longer than
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2701 ;; in other buffers to get the same effect.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2702 (if (> (length calendar-mark-ring) (1+ mark-ring-max))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2703 (setcdr (nthcdr mark-ring-max calendar-mark-ring) nil))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2704 (message "Mark set"))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2705 (if (null calendar-mark-ring)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2706 (error "No mark set in this buffer")
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2707 (calendar-goto-date (car calendar-mark-ring))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2708 (setq calendar-mark-ring
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2709 (cdr (nconc calendar-mark-ring (list date))))))))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2710
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2711 (defun calendar-exchange-point-and-mark ()
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2712 "Exchange the current cursor position with the marked date."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2713 (interactive)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2714 (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
2715 (date (calendar-cursor-to-date t)))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2716 (if (null mark)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2717 (error "No mark set in this buffer")
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2718 (setq calendar-mark-ring (cons date (cdr calendar-mark-ring)))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2719 (calendar-goto-date mark))))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2720
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2721 (defun calendar-count-days-region ()
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2722 "Count the number of days (inclusive) between point and the mark."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2723 (interactive)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2724 (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
2725 (calendar-cursor-to-date t))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2726 (calendar-absolute-from-gregorian
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2727 (or (car calendar-mark-ring)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2728 (error "No mark set in this buffer")))))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2729 (days (1+ (if (> days 0) days (- days)))))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2730 (message "Region has %d day%s (inclusive)"
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2731 days (if (> days 1) "s" ""))))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2732
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2733 (defun calendar-not-implemented ()
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2734 "Not implemented."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2735 (interactive)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2736 (error "%s not available in the calendar"
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2737 (global-key-binding (this-command-keys))))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2738
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2739 (defun calendar-read (prompt acceptable &optional initial-contents)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2740 "Return an object read from the minibuffer.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2741 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
2742 entered item is acceptable. If non-nil, optional third arg INITIAL-CONTENTS
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2743 is a string to insert in the minibuffer before reading."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2744 (let ((value (read-minibuffer prompt initial-contents)))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2745 (while (not (funcall acceptable value))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2746 (setq value (read-minibuffer prompt initial-contents)))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2747 value))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2748
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
2749 (defun calendar-read-date (&optional noday)
31730
719a230f8091 Docstring fixes.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 31671
diff changeset
2750 "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
2751 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
2752 \(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
2753 \(month year)"
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2754 (let* ((year (calendar-read
54128
520476f3222d *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 54071
diff changeset
2755 "Year (>0): "
520476f3222d *** empty log message ***
Glenn Morris <rgm@gnu.org>
parents: 54071
diff changeset
2756 (lambda (x) (> x 0))
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2757 (int-to-string (extract-calendar-year
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2758 (calendar-current-date)))))
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2759 (month-array calendar-month-name-array)
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2760 (completion-ignore-case t)
54071
8089fbb082b9 (calendar-holidays): Doc fix.
Glenn Morris <rgm@gnu.org>
parents: 53559
diff changeset
2761 (month (cdr (assoc-string
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2762 (completing-read
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2763 "Month name: "
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2764 (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
2765 nil t)
54071
8089fbb082b9 (calendar-holidays): Doc fix.
Glenn Morris <rgm@gnu.org>
parents: 53559
diff changeset
2766 (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
2767 (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
2768 (if noday
5586959f3393 Redo the noday option for calendar-read-date.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9709
diff changeset
2769 (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
2770 (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
2771 (list month year))
5586959f3393 Redo the noday option for calendar-read-date.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9709
diff changeset
2772 (list month
5586959f3393 Redo the noday option for calendar-read-date.
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 9709
diff changeset
2773 (calendar-read (format "Day (1-%d): " last)
31669
ec8ce5820488 (calendar-mode-line-format): Make fields
Dave Love <fx@gnu.org>
parents: 26530
diff changeset
2774 (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
2775 year))))
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
2776
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2777 (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
2778 "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
2779 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
2780 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
2781 (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
2782 (if (< yr2 0) (setq yr2 (1+ yr2)))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2783 (+ (* 12 (- yr2 yr1))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2784 (- mon2 mon1)))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2785
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2786 (defvar calendar-abbrev-length 3
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2787 "*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
2788 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
2789
4861
924486090b27 (calendar-week-start-day): New var (autoloaded) to
Richard M. Stallman <rms@gnu.org>
parents: 4658
diff changeset
2790 (defvar calendar-day-name-array
23531
37ae25c77df0 Add doc strings CORRECTLY!
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 23498
diff changeset
2791 ["Sunday" "Monday" "Tuesday" "Wednesday" "Thursday" "Friday" "Saturday"]
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2792 "*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
2793 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
2794 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
2795 `calendar-day-abbrev-array'.")
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2796
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2797 (defvar calendar-day-abbrev-array
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2798 [nil nil nil nil nil nil nil]
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2799 "*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
2800 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
2801 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
2802 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
2803 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
2804 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
2805 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
2806 `calendar-abbrev-length' characters of the corresponding full name.")
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2807
4861
924486090b27 (calendar-week-start-day): New var (autoloaded) to
Richard M. Stallman <rms@gnu.org>
parents: 4658
diff changeset
2808 (defvar calendar-month-name-array
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2809 ["January" "February" "March" "April" "May" "June"
23531
37ae25c77df0 Add doc strings CORRECTLY!
Edward M. Reingold <reingold@emr.cs.iit.edu>
parents: 23498
diff changeset
2810 "July" "August" "September" "October" "November" "December"]
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2811 "*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
2812 See also the variable `calendar-month-abbrev-array'.")
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2813
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2814 (defvar calendar-month-abbrev-array
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2815 [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
2816 "*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
2817 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
2818 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
2819 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
2820 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
2821 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
2822 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
2823 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
2824 corresponding full name.")
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2825
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2826 (defun calendar-abbrev-construct (abbrev full &optional period)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2827 "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
2828 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
2829 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
2830 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
2831 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
2832 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
2833 (let (elem array name)
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2834 (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
2835 (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
2836 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
2837 (substring name 0
833b56d6e12d (list-diary-entries-hook, diary-display-hook, nongregorian-diary-listing-hook)
Glenn Morris <rgm@gnu.org>
parents: 52115
diff changeset
2838 (min calendar-abbrev-length (length name))))
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2839 elem (format "%s%s" elem (if period "." ""))
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2840 array (append array (list elem))))
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2841 (vconcat array)))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2842
48366
9dad713d153a Patch of Alan Shutko <ats@acm.org> by way of rms.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 47333
diff changeset
2843 (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
2844 `((,(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
2845 " -?[0-9]+")
ead34b521994 (facemenu-unlisted-faces): Only update after facemenu was loaded.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 48366
diff changeset
2846 . 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
2847 (,(regexp-opt
ead34b521994 (facemenu-unlisted-faces): Only update after facemenu was loaded.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 48366
diff changeset
2848 (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
2849 (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
2850 ;; 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
2851 . font-lock-comment-face)
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2852 ;; 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
2853 (,(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
2854 . 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
2855 "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
2856
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2857 (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
2858 "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
2859 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
2860 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
2861 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
2862 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
2863 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
2864 the variable `calendar-day-abbrev-array' is used."
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2865 (aref (if abbrev
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2866 (calendar-abbrev-construct calendar-day-abbrev-array
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2867 calendar-day-name-array)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2868 calendar-day-name-array)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2869 (if absolute date (calendar-day-of-week date))))
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2870
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2871 (defun calendar-make-alist (sequence &optional start-index filter abbrevs)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2872 "Make an assoc list corresponding to SEQUENCE.
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2873 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
2874 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
2875 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
2876 construct abbreviations corresponding to the elements in SEQUENCE.
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2877 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
2878 association index as the full name it represents.
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2879 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
2880 (let ((index 0)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2881 (offset (or start-index 1))
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2882 (aseq (if abbrevs (calendar-abbrev-construct abbrevs sequence)))
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2883 (aseqp (if abbrevs (calendar-abbrev-construct abbrevs sequence
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2884 'period)))
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2885 alist elem)
52232
e1debf3a5153 Edward M. Reingold <reingold@emr.cs.iit.edu>
Glenn Morris <rgm@gnu.org>
parents: 52160
diff changeset
2886 (dotimes (i (length sequence) (reverse alist))
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2887 (setq index (+ i offset)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2888 elem (elt sequence i)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2889 alist
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2890 (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
2891 (if aseq
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2892 (setq elem (elt aseq i)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2893 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
2894 index) alist)))
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2895 (if aseqp
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2896 (setq elem (elt aseqp i)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2897 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
2898 index) alist))))))
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2899
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2900 (defun calendar-month-name (month &optional abbrev)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2901 "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
2902 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
2903 variable `calendar-month-name-array', unless the optional
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2904 argument ABBREV is non-nil, in which case
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2905 `calendar-month-abbrev-array' is used."
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2906 (aref (if abbrev
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2907 (calendar-abbrev-construct calendar-month-abbrev-array
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2908 calendar-month-name-array)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2909 calendar-month-name-array)
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
2910 (1- month)))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2911
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2912 (defun calendar-day-of-week (date)
52723
f33d2cba6bb7 (increment-calendar-month, calendar-leap-year-p)
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
2913 "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
2914 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
2915 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
2916 (mod (calendar-absolute-from-gregorian date) 7))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2917
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2918 (defun calendar-unmark ()
5694
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
2919 "Delete all diary/holiday marks/highlighting from the calendar."
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2920 (interactive)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2921 (setq mark-holidays-in-calendar nil)
5694
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
2922 (setq mark-diary-entries-in-calendar nil)
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
2923 (redraw-calendar))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2924
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2925 (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
2926 "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
2927 (let ((gap (calendar-interval
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2928 displayed-month displayed-year
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2929 (extract-calendar-month date) (extract-calendar-year date))))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2930 (and (calendar-date-is-legal-p date) (> 2 gap) (< -2 gap))))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2931
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2932 (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
2933 "Return t if DATE is a valid date."
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2934 (let ((month (extract-calendar-month date))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2935 (day (extract-calendar-day date))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2936 (year (extract-calendar-year date)))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2937 (and (<= 1 month) (<= month 12)
70581
1eaae4fee224 (calendar-basic-setup): Set day to 1 in
Glenn Morris <rgm@gnu.org>
parents: 69356
diff changeset
2938 ;; (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
2939 ;; 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
2940 ;; (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
2941 ;; 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
2942 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
2943 ;; 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
2944 ;; 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
2945 ;; Note there are side effects on calendar navigation.
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2946 (<= 1 year))))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2947
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2948 (defun calendar-date-equal (date1 date2)
31730
719a230f8091 Docstring fixes.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 31671
diff changeset
2949 "Return t if the DATE1 and DATE2 are the same."
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2950 (and
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2951 (= (extract-calendar-month date1) (extract-calendar-month date2))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2952 (= (extract-calendar-day date1) (extract-calendar-day date2))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2953 (= (extract-calendar-year date1) (extract-calendar-year date2))))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2954
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2955 (defun mark-visible-calendar-date (date &optional mark)
5694
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
2956 "Mark DATE in the calendar window with MARK.
49736
dd8404d4fed8 (diary-face-attrs): New custom.
Juanma Barranquero <lekktu@gmail.com>
parents: 49350
diff changeset
2957 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
2958 MARK defaults to `diary-entry-marker'."
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
2959 (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
2960 (with-current-buffer calendar-buffer
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2961 (save-excursion
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2962 (calendar-cursor-to-visible-date date)
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2963 (setq mark
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2964 (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
2965 (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
2966 (and (facep mark) mark) ; face-name
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2967 diary-entry-marker))
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2968 (cond
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2969 ;; 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
2970 ((facep mark)
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2971 (overlay-put
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2972 (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
2973 ;; single-char
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2974 ((and (stringp mark) (= (length mark) 1))
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2975 (let ((inhibit-read-only t))
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2976 (forward-char 1)
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2977 ;; 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
2978 (insert mark)
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2979 (delete-char 1)
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2980 (forward-char -2)))
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2981 (t ;; attr list
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2982 (let ((temp-face
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2983 (make-symbol
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2984 (apply 'concat "temp-"
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2985 (mapcar (lambda (sym)
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2986 (cond
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2987 ((symbolp sym) (symbol-name sym))
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2988 ((numberp sym) (number-to-string sym))
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2989 (t sym)))
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2990 mark))))
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2991 (faceinfo mark))
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2992 (make-face temp-face)
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2993 ;; 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
2994 ;; temp-face
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2995 (while (setq faceinfo (memq :face faceinfo))
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2996 (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
2997 (setcar faceinfo nil)
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2998 (setcar (cdr faceinfo) nil))
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
2999 (setq mark (delq nil mark))
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
3000 ;; Apply the font aspects
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
3001 (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
3002 (overlay-put
eae4a82ba77a (mark-visible-calendar-date): Save excursion.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 65477
diff changeset
3003 (make-overlay (1- (point)) (1+ (point))) 'face temp-face))))))))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3004
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3005 (defun calendar-star-date ()
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3006 "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
3007 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
3008 calendar window has been prepared."
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3009 (let ((inhibit-read-only t)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3010 (modified (buffer-modified-p)))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3011 (forward-char 1)
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3012 (set (make-local-variable 'calendar-starred-day)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3013 (string-to-number
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3014 (buffer-substring (point) (- (point) 2))))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3015 ;; Insert before deleting, to better preserve markers.
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3016 (insert "**")
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3017 (forward-char -2)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3018 (delete-char -2)
68366
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3019 (forward-char 1)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3020 (restore-buffer-modified-p modified)))
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-mark-today ()
5694
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
3023 "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
3024 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
3025 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
3026 prepared."
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
3027 (mark-visible-calendar-date
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
3028 (calendar-cursor-to-date)
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
3029 calendar-today-marker))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3030
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3031 (defun calendar-date-compare (date1 date2)
31730
719a230f8091 Docstring fixes.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 31671
diff changeset
3032 "Return t if DATE1 is before DATE2, nil otherwise.
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3033 The actual dates are in the car of DATE1 and DATE2."
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3034 (< (calendar-absolute-from-gregorian (car date1))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3035 (calendar-absolute-from-gregorian (car date2))))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3036
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3037 (defun calendar-date-string (date &optional abbreviate nodayname)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3038 "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
3039 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
3040 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
3041 `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
3042 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
3043 name of the day of the week."
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3044 (let* ((dayname
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
3045 (unless nodayname
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
3046 (calendar-day-name date abbreviate)))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3047 (month (extract-calendar-month date))
52115
60ffdeba6e0e (diary-file, diary-file-name-prefix)
Glenn Morris <rgm@gnu.org>
parents: 49828
diff changeset
3048 (monthname (calendar-month-name month abbreviate))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3049 (day (int-to-string (extract-calendar-day date)))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3050 (month (int-to-string month))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3051 (year (int-to-string (extract-calendar-year date))))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3052 (mapconcat 'eval calendar-date-display-form "")))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3053
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3054 (defun calendar-dayname-on-or-before (dayname date)
31730
719a230f8091 Docstring fixes.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 31671
diff changeset
3055 "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
3056 DAYNAME=0 means Sunday, DAYNAME=1 means Monday, and so on.
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3057
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3058 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
3059 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
3060 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
3061 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
3062 (- date (% (- date dayname) 7)))
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3063
4658
a34bd3ee36ef (solar-holidays): Use new
Paul Eggert <eggert@twinsun.com>
parents: 4652
diff changeset
3064 (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
3065 "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
3066 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
3067 return the Nth DAYNAME before MONTH DAY, YEAR (inclusive).
a34bd3ee36ef (solar-holidays): Use new
Paul Eggert <eggert@twinsun.com>
parents: 4652
diff changeset
3068 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
3069
a34bd3ee36ef (solar-holidays): Use new
Paul Eggert <eggert@twinsun.com>
parents: 4652
diff changeset
3070 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
3071 (if (> n 0)
a34bd3ee36ef (solar-holidays): Use new
Paul Eggert <eggert@twinsun.com>
parents: 4652
diff changeset
3072 (+ (* 7 (1- n))
a34bd3ee36ef (solar-holidays): Use new
Paul Eggert <eggert@twinsun.com>
parents: 4652
diff changeset
3073 (calendar-dayname-on-or-before
a34bd3ee36ef (solar-holidays): Use new
Paul Eggert <eggert@twinsun.com>
parents: 4652
diff changeset
3074 dayname
a34bd3ee36ef (solar-holidays): Use new
Paul Eggert <eggert@twinsun.com>
parents: 4652
diff changeset
3075 (+ 6 (calendar-absolute-from-gregorian
a34bd3ee36ef (solar-holidays): Use new
Paul Eggert <eggert@twinsun.com>
parents: 4652
diff changeset
3076 (list month (or day 1) year)))))
a34bd3ee36ef (solar-holidays): Use new
Paul Eggert <eggert@twinsun.com>
parents: 4652
diff changeset
3077 (+ (* 7 (1+ n))
a34bd3ee36ef (solar-holidays): Use new
Paul Eggert <eggert@twinsun.com>
parents: 4652
diff changeset
3078 (calendar-dayname-on-or-before
a34bd3ee36ef (solar-holidays): Use new
Paul Eggert <eggert@twinsun.com>
parents: 4652
diff changeset
3079 dayname
a34bd3ee36ef (solar-holidays): Use new
Paul Eggert <eggert@twinsun.com>
parents: 4652
diff changeset
3080 (calendar-absolute-from-gregorian
a34bd3ee36ef (solar-holidays): Use new
Paul Eggert <eggert@twinsun.com>
parents: 4652
diff changeset
3081 (list month
a34bd3ee36ef (solar-holidays): Use new
Paul Eggert <eggert@twinsun.com>
parents: 4652
diff changeset
3082 (or day (calendar-last-day-of-month month year))
a34bd3ee36ef (solar-holidays): Use new
Paul Eggert <eggert@twinsun.com>
parents: 4652
diff changeset
3083 year))))))
a34bd3ee36ef (solar-holidays): Use new
Paul Eggert <eggert@twinsun.com>
parents: 4652
diff changeset
3084
3865
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
3085 (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
3086 "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
3087 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
3088 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
3089 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
3090
2c6883d0a1b2 * calendar.el (calendar-version): Update to 5.1. Fixed a variety
Jim Blandy <jimb@redhat.com>
parents: 3778
diff changeset
3091 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
3092 (calendar-gregorian-from-absolute
4658
a34bd3ee36ef (solar-holidays): Use new
Paul Eggert <eggert@twinsun.com>
parents: 4652
diff changeset
3093 (calendar-nth-named-absday n dayname month year day)))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3094
5694
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
3095 (defun calendar-day-of-year-string (&optional date)
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
3096 "String of day number of year of Gregorian DATE.
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
3097 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
3098 (let* ((d (or date (calendar-current-date)))
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
3099 (year (extract-calendar-year d))
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
3100 (day (calendar-day-number d))
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
3101 (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
3102 (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
3103 day year days-remaining (if (= days-remaining 1) "" "s"))))
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
3104
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
3105 (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
3106 "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
3107 (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
3108 (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
3109 (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
3110 (let ((inhibit-read-only t)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3111 (modified (buffer-modified-p)))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3112 (calendar-set-mode-line
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3113 (concat (calendar-date-string date) " (Gregorian)"))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3114 (erase-buffer)
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3115 (apply
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3116 'insert
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3117 (delq nil
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3118 (list
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3119 (calendar-day-of-year-string date) "\n"
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3120 (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
3121 (format "Julian date: %s\n"
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3122 (calendar-julian-date-string date))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3123 (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
3124 (calendar-astro-date-string date))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3125 (format "Fixed (RD) date: %s\n"
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3126 (calendar-absolute-from-gregorian date))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3127 (format "Hebrew date (before sunset): %s\n"
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3128 (calendar-hebrew-date-string date))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3129 (format "Persian date: %s\n"
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3130 (calendar-persian-date-string date))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3131 (let ((i (calendar-islamic-date-string date)))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3132 (if (not (string-equal i ""))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3133 (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
3134 (let ((b (calendar-bahai-date-string date)))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3135 (if (not (string-equal b ""))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3136 (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
3137 (format "Chinese date: %s\n"
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3138 (calendar-chinese-date-string date))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3139 (let ((c (calendar-coptic-date-string date)))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3140 (if (not (string-equal c ""))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3141 (format "Coptic date: %s\n" c)))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3142 (let ((e (calendar-ethiopic-date-string date)))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3143 (if (not (string-equal e ""))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3144 (format "Ethiopic date: %s\n" e)))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3145 (let ((f (calendar-french-date-string date)))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3146 (if (not (string-equal f ""))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3147 (format "French Revolutionary date: %s\n" f)))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3148 (format "Mayan date: %s\n"
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3149 (calendar-mayan-date-string date)))))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3150 (goto-char (point-min))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3151 (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
3152 (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
3153
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
3154 (defun calendar-print-day-of-year ()
5694
69471d331d0c (calendar-version): New function.
Richard M. Stallman <rms@gnu.org>
parents: 5272
diff changeset
3155 "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
3156 (interactive)
87170
e50a2e215441 * erc-stamp.el (erc-echo-timestamp):
David Kastrup <dak@gnu.org>
parents: 86493
diff changeset
3157 (message "%s" (calendar-day-of-year-string (calendar-cursor-to-date t))))
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3158
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
3159 (defun calendar-set-mode-line (str)
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
3160 "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
3161 (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
3162 ;; 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
3163 (width (- (nth 2 edges) (nth 0 edges))))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3164 (setq mode-line-format
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3165 (if buffer-file-name
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3166 `("-" mode-line-modified
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3167 ,(calendar-string-spread (list str) ?- (- width 6))
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3168 "---")
f148491791ae Remove unnecessary leading stars in docstrings.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 67465
diff changeset
3169 (calendar-string-spread (list str) ?- width)))))
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
3170
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
3171 (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
3172 "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
3173 (1+ (mod (1- m) n)))
957
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
3174
2619b7a9c11e entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 846
diff changeset
3175 (run-hooks 'calendar-load-hook)
628
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3176
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3177 (provide 'calendar)
ab209803a494 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
3178
65477
a08c0922f1c4 (calendar-for-loop): Add edebug info.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64826
diff changeset
3179 ;; Local variables:
a08c0922f1c4 (calendar-for-loop): Add edebug info.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64826
diff changeset
3180 ;; byte-compile-dynamic: t
a08c0922f1c4 (calendar-for-loop): Add edebug info.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64826
diff changeset
3181 ;; End:
a08c0922f1c4 (calendar-for-loop): Add edebug info.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64826
diff changeset
3182
a08c0922f1c4 (calendar-for-loop): Add edebug info.
Stefan Monnier <monnier@iro.umontreal.ca>
parents: 64826
diff changeset
3183 ;; arch-tag: 19c61596-c8fb-4c69-bcf1-7dd739919cd8
675
85fd29f25c75 *** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents: 628
diff changeset
3184 ;;; calendar.el ends here