The echo area is empty most of the time, which makes me think that I could use it to display some information. For example, org-clock
displays the current task, the remaining time and the total elapsed time on the modeline. This information is not really readable there (the modeline can be rather short), is repeated on each modeline (because it applies to the whole emacs session), and is not that useful that I'm willing to sacrifice some precious modeline space for it. On the other hand, it could appear in the echo area when there is nothing else to display here.
Is there a canonical way of achieving this? I have thought of hacking an insert function in minibuffer-inactive-mode-hook
(but it doesn't work reliably, for example the message disappears as soon as the echo area is used again), or spamming non-logged messages (but this will be mess with other uses of the echo area and the minibuffer).
A poor-man version of this would use idle timers, but the echo area can be empty without emacs being idle (for example when inputting some text).
*Echo Area 0*
or*Echo Area 1*
and these are "normal" buffers. It should be posible to patch Emacs so as to provide maybe a hook run whenever these buffers are "flushed" (or are displayed and empty), so that this functionality can be implemented efficiently and reliably. – Stefan Feb 26 '15 at 16:05