emacs-orgmode
[Top][All Lists]
Advanced

[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



reply via email to

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