--- Begin Message ---
Subject: |
23.0.60; buggy diary-float function? |
Date: |
Sun, 15 Jun 2008 21:07:12 +0200 |
Hello!
The documentation does not explicitly tell it's possible to do this:
&%%(diary-float 11 4 4) American Thanksgiving
The 11 specifies November (the eleventh month), the 4 specifies Thursday
(the fourth day of the week, where Sunday is numbered zero), and the
second 4 specifies the fourth Thursday (1 would mean "first," 2 would
mean "second," -2 would mean "second-to-last," and so on). The month
can be a single month or a list of months. Thus you could change the
11 above to `'(1 2 3)' and have the entry apply to the last Thursday of
January, February, and March. If the month is `t', the entry applies
to all months of the year.
Each of the standard sexp diary entries takes an optional parameter
specifying the name of a face or a single-character string to use when
marking the entry in the calendar. Most generally, sexp diary entries
can perform arbitrary computations to determine when they apply. *note
()Sexp Diary Entries::.
so I thought it would work, but I am told it does not work to prepare
diary entries for all Thursdays of a particular month:
Bad sexp at line 3 in ~/diary: (diary-float 6 4 t) [14 times]
Bad sexp at line 4 in ~/diary: (diary-float 6 t 3) [92 times]
Bad sexp at line 5 in ~/diary: (diary-float 6 '(1 2 3 4 5) 1) [92 times]
Bad sexp at line 6 in ~/diary: (diary-float 6 '(0 1 2 3 4) 0) [92 times]
I used lines #3 and #4 because some calendar functions swap arguments
when used in European mood.
In GNU Emacs 23.0.60.1 (powerpc-apple-darwin8.11.0, X toolkit, Xaw3d
scroll bars)
of 2008-06-15 on Latsche.local
Windowing system distributor `The XFree86 Project, Inc', version
11.0.40400000
configured using `configure '--without-sound' '--without-pop' '--
with-dbus' '--with-libotf' '--with-x-toolkit=athena' '--enable-
locallisppath=/Library/Application Support/Emacs/calendar23:/Library/
Application Support/Emacs/caml:/Library/Application Support/Emacs:/sw/
share/emacs21/site-lisp/elib' 'PKG_CONFIG_PATH=/sw/lib/freetype219/
lib/pkgconfig:/sw/lib/fontconfig2/lib/pkgconfig:/sw/lib/qt4-x11/lib/
pkgconfig:/sw/lib/pkgconfig:/sw/share/pkgconfig:/usr/lib/pkgconfig:/
usr/local/lib/pkgconfig:/usr/X11R6/lib/pkgconfig' 'CFLAGS=-ggdb -
gfull -H -Wno-pointer-sign -bind_at_load -pipe -fPIC -mcpu=7450 -
mtune=7450 -mno-powerpc64 -O0 -mpim-altivec -ftree-vectorize -fno-
crossjumping' 'CPPFLAGS=-no-cpp-precomp -I/sw/include -I/usr/local/
include -idirafter /usr/X11R6/include' 'LDFLAGS=-bind_at_load -
dead_strip -multiply_defined suppress -L/sw/lib/ncurses -L/sw/lib -L/
usr/local/lib -L/usr/X11R6/lib''
Important settings:
value of $LC_ALL: nil
value of $LC_COLLATE: nil
value of $LC_CTYPE: de_DE.UTF-8
value of $LC_MESSAGES: nil
value of $LC_MONETARY: nil
value of $LC_NUMERIC: nil
value of $LC_TIME: nil
value of $LANG: de_DE.UTF-8
value of $XMODIFIERS: nil
locale-coding-system: utf-8-unix
default-enable-multibyte-characters: t
Major mode: Info
Minor modes in effect:
show-paren-mode: t
display-time-mode: t
tooltip-mode: t
tool-bar-mode: t
mouse-wheel-mode: t
file-name-shadow-mode: t
global-font-lock-mode: t
font-lock-mode: t
blink-cursor-mode: t
global-auto-composition-mode: t
auto-composition-mode: t
auto-encryption-mode: t
auto-compression-mode: t
column-number-mode: t
line-number-mode: t
transient-mark-mode: t
--
Greetings
Pete
Zukunft statt Zustand!
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#422: 23.0.60; buggy diary-float function? |
Date: |
Sun, 15 Jun 2008 22:35:27 -0400 |
User-agent: |
Gnus (www.gnus.org), GNU Emacs (www.gnu.org/software/emacs/) |
Peter Dyballa wrote:
> Bad sexp at line 3 in ~/diary: (diary-float 6 4 t) [14 times]
> Bad sexp at line 4 in ~/diary: (diary-float 6 t 3) [92 times]
> Bad sexp at line 5 in ~/diary: (diary-float 6 '(1 2 3 4 5) 1) [92 times]
> Bad sexp at line 6 in ~/diary: (diary-float 6 '(0 1 2 3 4) 0) [92 times]
The documentation says the MONTH parameter can be a list or t.
It does not say that any of the other parameters can be.
You could use eg:
%%(and (= (calendar-day-of-week date) 4)
(= (calendar-extract-month date) 6)) Thursday in June
--- End Message ---