[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [O] Org Clock Timer in Frame Title bug
From: |
Bastien |
Subject: |
Re: [O] Org Clock Timer in Frame Title bug |
Date: |
Sun, 29 Apr 2012 11:37:48 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.1.50 (gnu/linux) |
Hi George,
George Kettleborough <address@hidden> writes:
> Checking (listp frame-title-format) ensures there will be no error when
> calling delq, but it doesn't fix the feature. If the user's
> frame-title-format is not a list then the feature will not work for no
> apparent reason. The same thing goes for global-mode-string too, which
> the current release of org-mode modifies.
>
> For the clock and timer display features to work as intended both of
> these variables need to be lists with either a string or a list as the
> first element. Note that simply being a list is not enough, it must
> contain a string or list as first element. This format causes the
> elements of the list to be treated as mode-line-formats recursively.
`global-mode-string' and ̀frame-title-format' are list by default
and they cannot be customized. They can be manually set to a string,
but that's a mistake (okay, `global-mode-string' is a misleading name.)
> The following in both org-clock.el and org-timer.el will ensure both
> variables have the correct format to begin with:
>
> (unless (and (listp frame-title-format)
> (or (stringp (first frame-title-format))
> (listp (first frame-title-format))))
> (setq frame-title-format (list "" frame-title-format)))
>
> (unless (and (listp global-mode-string)
> (or (stringp (first global-mode-string))
> (listp (first global-mode-string))))
> (setq global-mode-string (list "" global-mode-string)))
This can go into .emacs.el for those who set those two variables to a
string... but they should not do it in the first place, right?
> It might be better to do this just once in org.el or org-install.el,
> since maybe other modules might want to put stuff in the mode-line or
> frame-title.
>
> Of course the user or another mode might edit either of the variables to
> something bad (like a symbol or string) afterwards. Maybe this should
> be done every time before clock-in/timer-start or any time we wish to
> append stuff to either of these lists?
Org cannot fix all cases where the user is setting a variable to
something that is non-standard. For this issue, it's already nice
to not produce an error when the user set `global-mode-string' and
`frame-title-format' to "" instead of ("").
Or am I overlooking something?
--
Bastien