bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#8920: 24.0.50; Calendar raises error with #included diary file


From: Glenn Morris
Subject: bug#8920: 24.0.50; Calendar raises error with #included diary file
Date: Sat, 25 Jun 2011 18:25:18 -0400
User-agent: Gnus (www.gnus.org), GNU Emacs (www.gnu.org/software/emacs/)

Stephen Berman wrote:

> *** /home/steve/bzr/emacs/trunk/lisp/calendar/calendar.el     2011-06-04 
> 12:27:38.000000000 +0200
> --- /home/steve/bzr/emacs/quickfixes/lisp/calendar/calendar.el        
> 2011-06-25 22:10:04.000000000 +0200
> ***************
> *** 1392,1398 ****
>            (calendar-mark-holidays)
>            (and in-calendar-window (sit-for 0)))
>       (unwind-protect
> !         (if calendar-mark-diary-entries-flag (diary-mark-entries))
>         (if today-visible
>             (run-hooks 'calendar-today-visible-hook)
>           (run-hooks 'calendar-today-invisible-hook)))))
> --- 1392,1401 ----
>            (calendar-mark-holidays)
>            (and in-calendar-window (sit-for 0)))
>       (unwind-protect
> !         (if calendar-mark-diary-entries-flag
> !         (save-selected-window
> !           (save-excursion
> !             (diary-mark-entries))))
>         (if today-visible
>             (run-hooks 'calendar-today-visible-hook)
>           (run-hooks 'calendar-today-invisible-hook)))))



I don't like this, because IIUC, this is only needed because of the:

(find-file-noselect (diary-check-diary-file) t)

in diary-mark-entries.

It should be implicit that find-file-noselect does not mess with the
window layout, and we should not need to wrap every call to it in save-*
constructs to guard against inappropriate find-file-hooks.

I've made some changes to diary-lib.el that mean there is no longer an
error in the initial example; however the calendar buffer ends up being
replaced with the diary buffer.

I didn't read in detail all that you want to do, but I think the only
way you can do it at present is by advising find-file rather than using
find-file-hook.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]