GNU bug report logs - #36803
27.0.50; Update mode-line of every window when compilation ends

Previous Next

Package: emacs;

Reported by: Kévin Le Gouguec <kevin.legouguec <at> gmail.com>

Date: Wed, 24 Jul 2019 21:23:02 UTC

Severity: normal

Found in version 27.0.50

Done: Stefan Monnier <monnier <at> iro.umontreal.ca>

Bug is archived. No further changes may be made.

Full log


Message #62 received at 36803 <at> debbugs.gnu.org (full text, mbox):

From: Stefan Monnier <monnier <at> iro.umontreal.ca>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 36803 <at> debbugs.gnu.org, larsi <at> gnus.org, kevin.legouguec <at> gmail.com
Subject: Re: bug#36803: 27.0.50; Update mode-line of every window when
 compilation ends
Date: Sat, 27 Jul 2019 08:46:35 -0400
> Yes.  And if you add to the recipe yet another, unrelated buffer
> displayed in the 4th window, then its mode line will also show
> "Compiling" if that buffer is not the current buffer when "M-x
> compile" is invoked.

Yes, with 100 windows, 98 of them will stay stale.

> And that brings me right back to the beginning.  In response to my
> original question, you said:
>
>> Hmm... AFAIK the "process status" normally only indicates the status of
>> the process running in the buffer to which this mode line belongs.
>> Which is why I made the change to only bset_update_mode_line rather than
>> set the global update_mode_lines.
>
> This is true only if the process status is modified via
> mode-line-process, which is a buffer-local variable.  If a Lisp
> program modifies the mode line directly, the result will be global.
> That's what compile.el does via compilation-in-progress, but the most
> basic operation is simply to add %s to mode-line-format (or to
> header-line-format or even to frame-title-format).

That's not a problem: %s only shows the status *of the process in the
current buffer*: the status of a process in buffer A is never
reflected in the %s part of the mode-line of other buffers, which is why
the sentinel code only causes a mode-line update for the process's buffer.


        Stefan





This bug report was last modified 6 years and 28 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.