bug#2199: 23.0.60; calendar marks and font-lock-mode

Stephen Berman <[email protected]>
Newsgroups gmane.emacs.bugs,gmane.emacs.pretest.bugs
Message-ID <[email protected]>
The issue seems to be more complicated than I thought.  Calendar marks
are displayed with strings instead of faces not only when Calendar is
invoked from a buffer in which font-lock-mode is nil (e.g. in
Fundamental mode), as in my OP, but also in the following case:

Let ~/.emacs consist of the following four sexps:

(add-hook 'today-visible-calendar-hook 'calendar-mark-today)
(setq calendar-mark-diary-entries-flag t)
(setq calendar-mark-holidays-flag t)
(appt-activate 1)

Also, let ~/diary contain entries for today (either date or day).

Now start Emacs like this:

$ emacs --daemon
$ emacsclient -c

The frame that now opens displays the *scratch* buffer only (the diary
is not displayed), in which font-lock-mode is t.  Nevertheless, after
`M-x calendar' the Calendar displays string marks rather than faces.

There are two additional oddities: 
(i) Typing `q' in the *Calendar* buffer does nothing -- but on the next
keystroke, whatever it is, the *Calendar* buffer does disappear. 
(ii) `M-x diary' correctly displays today's diary entries, but the mode
line consists of the string "---Diar---", rather than the expected
"-----------------Diary for Thursday, February 5, 2009-----------------"

Note that if I start Emacs simply by invoking `emacs' (still with the
above ~/.emacs), then everything is as expected: the frame is vertically
split, above the splash screen, below today's diary entries, and `M-x
calendar' displays the Calendar with faces.

Note, too, that if instead of `emacs --daemon' I invoke Emacs with
`emacs -nw -f server-start' (still with the above ~/.emacs), then in the
terminal display the frame is vertically split, above *scratch*, below
today's diary entries, and `M-x calendar' displays the Calendar with
faces (likewise in the X11 frame opened by `emacsclient -c').

Finally, if I comment out "(appt-activate 1)" in the above ~/.emacs,
then start Emacs with `emacs --daemon' and `emacsclient -c', then the
behavior is as in my OP: Calendar marks are displayed with strings
instead of faces only when Calendar is invoked from a buffer in which
font-lock-mode is nil (e.g. in Fundamental mode)

Steve Berman
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.