830 |
@noindent |
@noindent |
831 |
on the last Monday of every month. |
on the last Monday of every month. |
832 |
|
|
833 |
The generality of sexp diary entries lets you specify any diary entry |
The generality of sexp diary entries lets you specify any diary |
834 |
that you can describe algorithmically. A sexp diary entry contains an |
entry that you can describe algorithmically. A sexp diary entry |
835 |
expression that computes whether the entry applies to any given date. |
contains an expression that computes whether the entry applies to any |
836 |
If its value is non-@code{nil}, the entry applies to that date; |
given date. If its value is non-@code{nil}, the entry applies to that |
837 |
otherwise, it does not. The expression can use the variable @code{date} |
date; otherwise, it does not. The expression can use the variable |
838 |
to find the date being considered; its value is a list (@var{month} |
@code{date} to find the date being considered; its value is a list |
839 |
@var{day} @var{year}) that refers to the Gregorian calendar. |
(@var{month} @var{day} @var{year}) that refers to the Gregorian |
840 |
|
calendar. |
841 |
|
|
842 |
|
The sexp diary entry applies to a date when the expression's value |
843 |
|
is non-@code{nil}, but some values have more specific meanings. If |
844 |
|
the value is a string, that string is a description of the event which |
845 |
|
occurs on that date. The value can also have the form |
846 |
|
@code{(@var{mark} . @var{string})}; then @var{mark} specifies how to |
847 |
|
mark the date in the calendar, and @var{string} is the description of |
848 |
|
the event. If @var{mark} is a single-character string, that character |
849 |
|
appears next to the date in the calendar. If @var{mark} is a face |
850 |
|
name, the date is displayed in that face. If @var{mark} is |
851 |
|
@code{nil}, that specifies no particular highlighting for the date. |
852 |
|
|
853 |
Suppose you get paid on the 21st of the month if it is a weekday, and |
Suppose you get paid on the 21st of the month if it is a weekday, and |
854 |
on the Friday before if the 21st is on a weekend. Here is how to write |
on the Friday before if the 21st is on a weekend. Here is how to write |
945 |
@var{month}, @var{year}.) |
@var{month}, @var{year}.) |
946 |
@end table |
@end table |
947 |
|
|
948 |
|
All the functions documented above take an optional argument |
949 |
|
@var{mark} which specifies how to mark the date in the calendar display. |
950 |
|
If one of these functions decides that it applies to a certain date, |
951 |
|
it returns a value that contains @var{mark}. |
952 |
|
|
953 |
@node Appt Customizing |
@node Appt Customizing |
954 |
@section Customizing Appointment Reminders |
@section Customizing Appointment Reminders |
955 |
|
|