GNU bug report logs - #51132
Make sure user is doubly aware of finished complilations

Previous Next

Package: emacs;

Reported by: 積丹尼 Dan Jacobson <jidanni <at> jidanni.org>

Date: Mon, 11 Oct 2021 06:58:02 UTC

Severity: normal

Tags: wontfix

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 51132 in the body.
You can then email your comments to 51132 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#51132; Package emacs. (Mon, 11 Oct 2021 06:58:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to 積丹尼 Dan Jacobson <jidanni <at> jidanni.org>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Mon, 11 Oct 2021 06:58:02 GMT) Full text and rfc822 format available.

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

From: 積丹尼 Dan Jacobson <jidanni <at> jidanni.org>
To: bug-gnu-emacs <at> gnu.org
Subject: Make sure user is doubly aware of finished complilations
Date: Mon, 11 Oct 2021 14:50:39 +0800
(info "(emacs) Compilation"):

"While the compilation is running … the word ‘Compiling’ appears in
all mode lines."

That's good. Because "Nobody is going to sit in the Laundromat watching
the dryer spin." They'll be somewhere else doing something else. (I.e.,
they won't be staring at the *compilation* buffer.)

OK, but then it disappears when the compilation is over.

(It's like "you are about to become the proud father..." and then *poof*,
No cigar. Nothing.)

It should become "Compilation Finished" and red, and flashing, etc. you
know.

Else "who is going to remember that they had some clothes left there in
the clothes dryer?"

And when it finally comes time for save-buffers-kill-emacs, there should
be a question: "You have a Compilation buffer that you haven't even
looked at once. Surely you forgot that you had an important compilation
job. Would you like to have one last look at its results before exiting
emacs? You know it has 34 lines of genuine output that you surely forgot
about during snack time.

Don't get upset. Emacs cares about you. If you think emacs is too pushy,
then do as you would with a cronjob, Make sure your STDOUT and STDERR
don't end up in the *compilation* buffer, and make sure to exit 0 and
not 1, etc. And we here at emacs won't bother you about it next time."

emacs-version "27.1"




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51132; Package emacs. (Mon, 11 Oct 2021 08:48:02 GMT) Full text and rfc822 format available.

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

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: 積丹尼 Dan Jacobson <jidanni <at> jidanni.org>
Cc: 51132 <at> debbugs.gnu.org
Subject: Re: bug#51132: Make sure user is doubly aware of finished
 complilations
Date: Mon, 11 Oct 2021 10:46:58 +0200
積丹尼 Dan Jacobson <jidanni <at> jidanni.org> writes:

> That's good. Because "Nobody is going to sit in the Laundromat watching
> the dryer spin." They'll be somewhere else doing something else. (I.e.,
> they won't be staring at the *compilation* buffer.)
>
> OK, but then it disappears when the compilation is over.

A message is issued, and I think that's sufficient.  Closing.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




Added tag(s) wontfix. Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Mon, 11 Oct 2021 08:48:02 GMT) Full text and rfc822 format available.

bug closed, send any further explanations to 51132 <at> debbugs.gnu.org and 積丹尼 Dan Jacobson <jidanni <at> jidanni.org> Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Mon, 11 Oct 2021 08:48:03 GMT) Full text and rfc822 format available.

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51132; Package emacs. (Mon, 11 Oct 2021 09:22:02 GMT) Full text and rfc822 format available.

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

From: Kévin Le Gouguec <kevin.legouguec <at> gmail.com>
To: Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: 51132 <at> debbugs.gnu.org,
 積丹尼 Dan Jacobson <jidanni <at> jidanni.org>
Subject: Re: bug#51132: Make sure user is doubly aware of finished
 complilations
Date: Mon, 11 Oct 2021 11:21:04 +0200
Lars Ingebrigtsen <larsi <at> gnus.org> writes:

> 積丹尼 Dan Jacobson <jidanni <at> jidanni.org> writes:
>
>> That's good. Because "Nobody is going to sit in the Laundromat watching
>> the dryer spin." They'll be somewhere else doing something else. (I.e.,
>> they won't be staring at the *compilation* buffer.)
>>
>> OK, but then it disappears when the compilation is over.
>
> A message is issued, and I think that's sufficient.  Closing.

Note that you can customize compilation-finish-functions to do all sorts
of things; you can e.g. send a desktop notification:

#+begin_src elisp
(defun my/compilation-notify (buffer results)
  (require 'notifications)
  (notifications-notify :title (buffer-name buffer) :body results :timeout 0))

(add-to-list 'compilation-finish-functions 'my/compilation-notify)
#+end_src

':timeout 0' should ensure that the notification popup remains until you
dimiss it manually.

Writing a function that adds « "Compilation Finished" and red, and
flashing, etc. » to the mode-line is left as an exercise to the reader
:)




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51132; Package emacs. (Mon, 11 Oct 2021 12:18:02 GMT) Full text and rfc822 format available.

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

From: Eli Zaretskii <eliz <at> gnu.org>
To: 積丹尼 Dan Jacobson <jidanni <at> jidanni.org>
Cc: 51132 <at> debbugs.gnu.org
Subject: Re: bug#51132: Make sure user is doubly aware of finished
 complilations
Date: Mon, 11 Oct 2021 15:16:45 +0300
> From: 積丹尼 Dan Jacobson
>  <jidanni <at> jidanni.org>
> Date: Mon, 11 Oct 2021 14:50:39 +0800
> 
> (info "(emacs) Compilation"):
> 
> "While the compilation is running … the word ‘Compiling’ appears in
> all mode lines."
> 
> That's good. Because "Nobody is going to sit in the Laundromat watching
> the dryer spin." They'll be somewhere else doing something else. (I.e.,
> they won't be staring at the *compilation* buffer.)
> 
> OK, but then it disappears when the compilation is over.

It does?  Here, I see that it leaves at least 2 indications that the
compilation is complete:

  . I see "Compilation finished at <DATE> <TIME>" in the buffer
  . I see "Compilation:exit" on the mode line (all of them)

And if the compilation fails, those indication has a distinct color
that stands out.  That hardly counts as "disappearance".




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51132; Package emacs. (Mon, 11 Oct 2021 14:43:02 GMT) Full text and rfc822 format available.

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

From: Drew Adams <drew.adams <at> oracle.com>
To: Lars Ingebrigtsen <larsi <at> gnus.org>,
 積丹尼 Dan Jacobson <jidanni <at> jidanni.org>
Cc: "51132 <at> debbugs.gnu.org" <51132 <at> debbugs.gnu.org>
Subject: RE: [External] : bug#51132: Make sure user is doubly aware of
 finished complilations
Date: Mon, 11 Oct 2021 14:41:53 +0000
> > OK, but then it disappears when the compilation is over.
> 
> A message is issued, and I think that's sufficient.  Closing.

FWIW:

I agree with the OP that a progress indication
should end with an indication that the thing in
progress is finished.

AND the indication should generally be of the same
type (at least - _additional_ indications are OK).

A message "Foobarring..." should generally be
followed when done by "Foobarring...done".  And an
indication "Foobarring..." in the mode line should
generally be followed by an indication in the mode
line (e.g. "Foobarring...done").

This is just common sense, IMO.  Saying that there's
some _other_ indication somewhere else, doesn't cut
the mustard.  The "opening of the parenthesis" needs
to be followed by its closing in the same manner
(e.g. same place) - whatever that manner might be.

It shouldn't be difficult to update the mode-line
indication to add "...done".  And the first user
action can erase that indication.  (Ideally, a user
action might cause such a mode-line message to be
copied to `*Messages*' or some other log, if there
is no other progress indication than that in the
mode line.

I see no reason for the justification of won't-fix
that just because there's an echo-area message that
the process is done there should be no mode-line
indication as well.

Just one opinion.

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51132; Package emacs. (Mon, 11 Oct 2021 14:45:01 GMT) Full text and rfc822 format available.

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

From: Drew Adams <drew.adams <at> oracle.com>
To: Kévin Le Gouguec <kevin.legouguec <at> gmail.com>, Lars
 Ingebrigtsen <larsi <at> gnus.org>
Cc: "51132 <at> debbugs.gnu.org" <51132 <at> debbugs.gnu.org>,
 積丹尼 Dan Jacobson <jidanni <at> jidanni.org>
Subject: RE: [External] : bug#51132: Make sure user is doubly aware of
 finished complilations
Date: Mon, 11 Oct 2021 14:44:21 +0000
> > A message is issued, and I think that's sufficient.  Closing.
> 
> Note that you can customize compilation-finish-functions to do all
> sorts of things; you can e.g. send a desktop notification:

Fine.  But by default Emacs should generally pair
notification of starting/continuing progress with
notification of finishing - in the _same manner_,
at a minimum.

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51132; Package emacs. (Mon, 11 Oct 2021 16:04:02 GMT) Full text and rfc822 format available.

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

From: Eli Zaretskii <eliz <at> gnu.org>
To: Drew Adams <drew.adams <at> oracle.com>
Cc: larsi <at> gnus.org, 51132 <at> debbugs.gnu.org, jidanni <at> jidanni.org
Subject: Re: bug#51132: [External] : bug#51132: Make sure user is doubly aware
 of finished complilations
Date: Mon, 11 Oct 2021 19:03:17 +0300
> From: Drew Adams <drew.adams <at> oracle.com>
> Date: Mon, 11 Oct 2021 14:41:53 +0000
> Cc: "51132 <at> debbugs.gnu.org" <51132 <at> debbugs.gnu.org>
> 
> A message "Foobarring..." should generally be
> followed when done by "Foobarring...done".  And an
> indication "Foobarring..." in the mode line should
> generally be followed by an indication in the mode
> line (e.g. "Foobarring...done").

But that's exactly what Emacs does.  Did you try to invoke
"M-x compile" and see what happens on display when it finishes?




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51132; Package emacs. (Mon, 11 Oct 2021 16:05:01 GMT) Full text and rfc822 format available.

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

From: Eli Zaretskii <eliz <at> gnu.org>
To: Drew Adams <drew.adams <at> oracle.com>
Cc: larsi <at> gnus.org, 51132 <at> debbugs.gnu.org, jidanni <at> jidanni.org,
 kevin.legouguec <at> gmail.com
Subject: Re: bug#51132: [External] : bug#51132: Make sure user is doubly aware
 of finished complilations
Date: Mon, 11 Oct 2021 19:03:57 +0300
> Resent-From: Drew Adams <drew.adams <at> oracle.com>
> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
> Resent-CC: bug-gnu-emacs <at> gnu.org
> Resent-Sender: help-debbugs <at> gnu.org
> From: Drew Adams <drew.adams <at> oracle.com>
> Date: Mon, 11 Oct 2021 14:44:21 +0000
> Accept-Language: en-US
> Cc: "51132 <at> debbugs.gnu.org" <51132 <at> debbugs.gnu.org>,
>  積丹尼 Dan Jacobson <jidanni <at> jidanni.org>
> 
> > > A message is issued, and I think that's sufficient.  Closing.
> > 
> > Note that you can customize compilation-finish-functions to do all
> > sorts of things; you can e.g. send a desktop notification:
> 
> Fine.  But by default Emacs should generally pair
> notification of starting/continuing progress with
> notification of finishing - in the _same manner_,
> at a minimum.

It does.  PLEASE try this before you post.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51132; Package emacs. (Mon, 11 Oct 2021 16:22:02 GMT) Full text and rfc822 format available.

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

From: Drew Adams <drew.adams <at> oracle.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: "larsi <at> gnus.org" <larsi <at> gnus.org>,
 "51132 <at> debbugs.gnu.org" <51132 <at> debbugs.gnu.org>,
 "jidanni <at> jidanni.org" <jidanni <at> jidanni.org>,
 "kevin.legouguec <at> gmail.com" <kevin.legouguec <at> gmail.com>
Subject: RE: bug#51132: [External] : bug#51132: Make sure user is doubly aware
 of finished complilations
Date: Mon, 11 Oct 2021 16:21:02 +0000
> > > > A message is issued, and I think that's sufficient.  Closing.
> > >
> > > Note that you can customize compilation-finish-functions
> > > to do all sorts of things; you can e.g. send a desktop 
> > > notification:
> >
> > Fine.  But by default Emacs should generally pair
> > notification of starting/continuing progress with
> > notification of finishing - in the _same manner_,
> > at a minimum.
> 
> It does.  PLEASE try this before you post.

PLEASE read what I wrote.  I replied to a claim
that it's sufficient to issue a message, to end
a mode-line in-progress message.

And then to a claim that it's sufficient that
users can customize, to work around such a bug.

Whether there is in fact such a lack/bug is
something else.

It's the justifications for closing that were
misguided - and they did NOT say that there is
a mode-line indication (as you've pointed out).
Save your PLEAS for them.

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51132; Package emacs. (Mon, 11 Oct 2021 16:33:01 GMT) Full text and rfc822 format available.

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

From: Eli Zaretskii <eliz <at> gnu.org>
To: Drew Adams <drew.adams <at> oracle.com>
Cc: larsi <at> gnus.org, 51132 <at> debbugs.gnu.org, jidanni <at> jidanni.org,
 kevin.legouguec <at> gmail.com
Subject: Re: bug#51132: [External] : bug#51132: Make sure user is doubly aware
 of finished complilations
Date: Mon, 11 Oct 2021 19:31:42 +0300
> From: Drew Adams <drew.adams <at> oracle.com>
> CC: "kevin.legouguec <at> gmail.com" <kevin.legouguec <at> gmail.com>,
>         "larsi <at> gnus.org"
> 	<larsi <at> gnus.org>,
>         "51132 <at> debbugs.gnu.org" <51132 <at> debbugs.gnu.org>,
>         "jidanni <at> jidanni.org" <jidanni <at> jidanni.org>
> Date: Mon, 11 Oct 2021 16:21:02 +0000
> 
> > > > > A message is issued, and I think that's sufficient.  Closing.
> > > >
> > > > Note that you can customize compilation-finish-functions
> > > > to do all sorts of things; you can e.g. send a desktop 
> > > > notification:
> > >
> > > Fine.  But by default Emacs should generally pair
> > > notification of starting/continuing progress with
> > > notification of finishing - in the _same manner_,
> > > at a minimum.
> > 
> > It does.  PLEASE try this before you post.
> 
> PLEASE read what I wrote.  I replied to a claim
> that it's sufficient to issue a message, to end
> a mode-line in-progress message.

How is it useful to ask for something that already happens?  Even if
Lars didn't mention it?  It just adds noise.

> Whether there is in fact such a lack/bug is
> something else.

Please make a point of looking at the actual behavior before you join
a discussion.  If you want to help the discussion to be constructive.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51132; Package emacs. (Mon, 11 Oct 2021 16:42:02 GMT) Full text and rfc822 format available.

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

From: Drew Adams <drew.adams <at> oracle.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: "larsi <at> gnus.org" <larsi <at> gnus.org>,
 "51132 <at> debbugs.gnu.org" <51132 <at> debbugs.gnu.org>,
 "jidanni <at> jidanni.org" <jidanni <at> jidanni.org>
Subject: RE: bug#51132: [External] : bug#51132: Make sure user is doubly aware
 of finished complilations
Date: Mon, 11 Oct 2021 16:13:30 +0000
> > A message "Foobarring..." should generally be
> > followed when done by "Foobarring...done".  And an
> > indication "Foobarring..." in the mode line should
> > generally be followed by an indication in the mode
> > line (e.g. "Foobarring...done").
> 
> But that's exactly what Emacs does.  Did you try to invoke
> "M-x compile" and see what happens on display when it finishes?

I'm not QAing whether the bug description is
accurate.  IF it's accurate then it's a bug,
IMHO.  That's all.

I replied to this:

>> OK, but then it disappears when the compilation is over.
> A message is issued, and I think that's sufficient.  Closing.
    ^^^^^^^                        ^^^^^^^^^^^^^^^^^

IMO, it's NOT sufficient that a message (echo
area) be issued, to finish an indication in
the mode line.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51132; Package emacs. (Mon, 11 Oct 2021 16:46:01 GMT) Full text and rfc822 format available.

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

From: Drew Adams <drew.adams <at> oracle.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: "larsi <at> gnus.org" <larsi <at> gnus.org>,
 "51132 <at> debbugs.gnu.org" <51132 <at> debbugs.gnu.org>,
 "jidanni <at> jidanni.org" <jidanni <at> jidanni.org>,
 "kevin.legouguec <at> gmail.com" <kevin.legouguec <at> gmail.com>
Subject: RE: bug#51132: [External] : bug#51132: Make sure user is doubly aware
 of finished complilations
Date: Mon, 11 Oct 2021 16:44:28 +0000
> > > > > Note that you can customize compilation-finish-functions
> > > > > to do all sorts of things; you can e.g. send a desktop
> > > > > notification:
> > > >
> > > > Fine.  But by default Emacs should generally pair
> > > > notification of starting/continuing progress with
> > > > notification of finishing - in the _same manner_,
> > > > at a minimum.
> > >
> > > It does.  PLEASE try this before you post.
> >
> > PLEASE read what I wrote.  I replied to a claim
> > that it's sufficient to issue a message, to end
> > a mode-line in-progress message.
> 
> How is it useful to ask for something that already happens?
> Even if Lars didn't mention it?  It just adds noise.

A policy that a message is sufficient to end a
mode-line in-progress indication is misguided.

I responded to the claim that it's sufficient.
Setting this policy straight is important.

> > Whether there is in fact such a lack/bug is
> > something else.
> 
> Please make a point of looking at the actual behavior before you join
> a discussion.  If you want to help the discussion to be constructive.

Tell that to Lars, who apparently took it as
given that the behavior described in the bug
report was accurate.

Based on Lars's apparent agreement with the
description, and his defense of it, I assumed
the same and spoke (only) to that misguided
defense.

Save your criticism of lack of QA for the guy
who apparently closed the bug without "looking
at the actual behavior" - and in fact defended
the _reported_ behavior as "sufficient".




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51132; Package emacs. (Tue, 12 Oct 2021 08:02:01 GMT) Full text and rfc822 format available.

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

From: 積丹尼 Dan Jacobson <jidanni <at> jidanni.org>
To: Drew Adams <drew.adams <at> oracle.com>
Cc: Eli Zaretskii <eliz <at> gnu.org>,
 "51132 <at> debbugs.gnu.org" <51132 <at> debbugs.gnu.org>,
 "larsi <at> gnus.org" <larsi <at> gnus.org>,
 "kevin.legouguec <at> gmail.com" <kevin.legouguec <at> gmail.com>
Subject: Re: bug#51132: [External] : bug#51132: Make sure user is doubly
 aware of finished complilations
Date: Tue, 12 Oct 2021 16:01:15 +0800
All I know is in emacs-version "27.1"
I first chopped up the *scratch* buffer
C-x 2 C-x 3 C-x 2 C-x 3...
then did M-x compile, running "date" which finished right away,
but none of the *scratch* buffers had anything in their modeline
about it anymore at that point.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51132; Package emacs. (Tue, 12 Oct 2021 08:05:02 GMT) Full text and rfc822 format available.

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

From: 積丹尼 Dan Jacobson <jidanni <at> jidanni.org>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 51132 <at> debbugs.gnu.org
Subject: Re: bug#51132: Make sure user is doubly aware of finished
 complilations
Date: Tue, 12 Oct 2021 16:04:04 +0800
EZ>   . I see "Compilation:exit" on the mode line (all of them)

Well in emacs-version "27.1" the Compilation:exit is only in the
*compilation* buffer's modeline. That's all I know.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51132; Package emacs. (Tue, 12 Oct 2021 14:01:03 GMT) Full text and rfc822 format available.

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

From: Eli Zaretskii <eliz <at> gnu.org>
To: 積丹尼 Dan Jacobson <jidanni <at> jidanni.org>
Cc: larsi <at> gnus.org, 51132 <at> debbugs.gnu.org, drew.adams <at> oracle.com,
 kevin.legouguec <at> gmail.com
Subject: Re: bug#51132: [External] : bug#51132: Make sure user is doubly
 aware of finished complilations
Date: Tue, 12 Oct 2021 16:59:47 +0300
> From: 積丹尼 Dan Jacobson <jidanni <at> jidanni.org>
> Cc: Eli Zaretskii <eliz <at> gnu.org>,  "kevin.legouguec <at> gmail.com"
>  <kevin.legouguec <at> gmail.com>,  "larsi <at> gnus.org" <larsi <at> gnus.org>,
>   "51132 <at> debbugs.gnu.org" <51132 <at> debbugs.gnu.org>
> Date: Tue, 12 Oct 2021 16:01:15 +0800
> 
> All I know is in emacs-version "27.1"
> I first chopped up the *scratch* buffer
> C-x 2 C-x 3 C-x 2 C-x 3...
> then did M-x compile, running "date" which finished right away,
> but none of the *scratch* buffers had anything in their modeline
> about it anymore at that point.

Then you have been amply punished for preventing yourself from seeing
anything useful in that session.  Try turning off
truncate-partial-width-windows.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51132; Package emacs. (Tue, 12 Oct 2021 14:01:03 GMT) Full text and rfc822 format available.

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

From: Eli Zaretskii <eliz <at> gnu.org>
To: 積丹尼 Dan Jacobson <jidanni <at> jidanni.org>
Cc: 51132 <at> debbugs.gnu.org
Subject: Re: bug#51132: Make sure user is doubly aware of finished
 complilations
Date: Tue, 12 Oct 2021 17:00:23 +0300
> From: 積丹尼 Dan Jacobson <jidanni <at> jidanni.org>
> Cc: 51132 <at> debbugs.gnu.org
> Date: Tue, 12 Oct 2021 16:04:04 +0800
> 
> EZ>   . I see "Compilation:exit" on the mode line (all of them)
> 
> Well in emacs-version "27.1" the Compilation:exit is only in the
> *compilation* buffer's modeline. That's all I know.

Which is great, and you should see it.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51132; Package emacs. (Tue, 12 Oct 2021 15:18:02 GMT) Full text and rfc822 format available.

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

From: Kévin Le Gouguec <kevin.legouguec <at> gmail.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 51132 <at> debbugs.gnu.org,
 積丹尼 Dan Jacobson <jidanni <at> jidanni.org>
Subject: Re: bug#51132: Make sure user is doubly aware of finished
 complilations
Date: Tue, 12 Oct 2021 17:16:47 +0200
Eli Zaretskii <eliz <at> gnu.org> writes:

>> From: 積丹尼 Dan Jacobson <jidanni <at> jidanni.org>
>> Cc: 51132 <at> debbugs.gnu.org
>> Date: Tue, 12 Oct 2021 16:04:04 +0800
>> 
>> EZ>   . I see "Compilation:exit" on the mode line (all of them)
>> 
>> Well in emacs-version "27.1" the Compilation:exit is only in the
>> *compilation* buffer's modeline. That's all I know.
>
> Which is great, and you should see it.

Unless the *compilation* buffer's mode-line is not visible, either
because of excessive window splitting (as hinted by Dan's other
message), or because one buried the buffer before the process
terminates, which one might very well do if it's a long-running process
with no interesting output except the final diagnosis.

(I'm confused by your earlier statement, when you say "all of them": do
you see "Compilation:exit" in the mode-line of *all* buffers?  On my
end, as Dan describes, that only shows up in the *compilation* buffer's
mode-line)

I think I can see how the current state of affairs makes it possible to
forget to check out a compilation result if the buffer is buried (or if
its mode-line is not completely visible):

- the "[Compiling]" mode-line indicator in other buffers disappears once
  the process terminates,

- the "Compilation finished/exited" message can be clobbered almost
  immediately by many things (e.g. navigation commands that push the
  mark, digit arguments, C-g).

Dan's suggestion to have (an option to have) an indicator in every
mode-line that disappears when you focus the *compilation* buffer makes
sense IMO.  It's not unlike erc-track's mode-line indicators AFAICT.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51132; Package emacs. (Tue, 12 Oct 2021 16:12:02 GMT) Full text and rfc822 format available.

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

From: Eli Zaretskii <eliz <at> gnu.org>
To: Kévin Le Gouguec <kevin.legouguec <at> gmail.com>
Cc: 51132 <at> debbugs.gnu.org, jidanni <at> jidanni.org
Subject: Re: bug#51132: Make sure user is doubly aware of finished
 complilations
Date: Tue, 12 Oct 2021 19:11:37 +0300
> From: Kévin Le Gouguec <kevin.legouguec <at> gmail.com>
> Cc: 積丹尼 Dan Jacobson <jidanni <at> jidanni.org>,
>   51132 <at> debbugs.gnu.org
> Date: Tue, 12 Oct 2021 17:16:47 +0200
> 
> (I'm confused by your earlier statement, when you say "all of them": do
> you see "Compilation:exit" in the mode-line of *all* buffers?

No, all of the mode lines of the windows that show the *Compilation*
buffer, of course.  When you do something that jidanni does:

   C-x 2 C-x 3 C-x 2 C-x 3...

then you will have many *Compilation* buffers, right?

> I think I can see how the current state of affairs makes it possible to
> forget to check out a compilation result if the buffer is buried (or if
> its mode-line is not completely visible):
> 
> - the "[Compiling]" mode-line indicator in other buffers disappears once
>   the process terminates,
> 
> - the "Compilation finished/exited" message can be clobbered almost
>   immediately by many things (e.g. navigation commands that push the
>   mark, digit arguments, C-g).

(That message gets written into the *Compilation* buffer, not in the
echo-area.  So it never gets clobbered by anything, except another
compilation.)

Anyway, we are talking about a user who (mis-)configures his windows
so that nothing useful is visible on the mode line, then buries the
*Compilation* buffer (since the compilation he launches doesn't
interest him at all, right?), and then, when he finally wants to know
what happened there, doesn't even consider to look back in that buried
buffer?  Is that the situation?  And we are supposed to tweak Emacs to
cater to such hypothetical users? why?

> Dan's suggestion to have (an option to have) an indicator in every
> mode-line that disappears when you focus the *compilation* buffer makes
> sense IMO.

This request has been considered and denied, both by Lars and myself.
I see no reason to make yet another, 3rd indication, especially since
every indication can be ignored if the user really wants to ignore it,
exactly like the existing 2 indications are ignored.  Not say anything
about the bad karma of adding unnecessary stuff to the mode line,
where space is at premium since long ago.  Thanks, but no, thanks.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51132; Package emacs. (Tue, 12 Oct 2021 18:25:01 GMT) Full text and rfc822 format available.

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

From: Kévin Le Gouguec <kevin.legouguec <at> gmail.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 51132 <at> debbugs.gnu.org, jidanni <at> jidanni.org
Subject: Re: bug#51132: Make sure user is doubly aware of finished
 complilations
Date: Tue, 12 Oct 2021 20:24:22 +0200
Eli Zaretskii <eliz <at> gnu.org> writes:

> No, all of the mode lines of the windows that show the *Compilation*
> buffer, of course.  When you do something that jidanni does:
>
>    C-x 2 C-x 3 C-x 2 C-x 3...
>
> then you will have many *Compilation* buffers, right?

I'm assuming that Dan would keep at most _one_ window displaying the
*compilation* buffer.

>> - the "Compilation finished/exited" message can be clobbered almost
>>   immediately by many things (e.g. navigation commands that push the
>>   mark, digit arguments, C-g).
>
> (That message gets written into the *Compilation* buffer, not in the
> echo-area.  So it never gets clobbered by anything, except another
> compilation.)

Apologies for being unclear; I was referring to the message that is
printed in the echo-area by compilation-handle-exit.  AFAIK, when the
*compilation* buffer is e.g. buried, that is one of the two visible
signs that tell the user that the process has finished, the other being
the disappearance of "[Compiling]" in the mode-line.

> Anyway, we are talking about a user who (mis-)configures his windows
> so that nothing useful is visible on the mode line, then buries the
> *Compilation* buffer (since the compilation he launches doesn't
> interest him at all, right?), and then, when he finally wants to know
> what happened there, doesn't even consider to look back in that buried
> buffer?  Is that the situation?

The situation, as it happened to me a couple of times before learning
about compilation-finish-functions, was:

1. run some background process in a *compilation* buffer,

2. bury the buffer because I know the result will not be available for a
   couple of minutes or hours,

3. work on completely unrelated matters in the meantime, in the same
   Emacs session,

4. miss both hints that the process has finished and the result I want
   is available (if I spend 5 minutes reading something in a web
   browser, then I won't notice the _absence_ of "[Compiling]" in the
   mode-lines when coming back to Emacs; as for the message in the
   echo-area, see above),

5. consider I have finished working on the unrelated matters, and close
   Emacs,

6. bang my head on the desk out of frustration and self-loathing.

>                                  And we are supposed to tweak Emacs to
> cater to such hypothetical users? why?

> This request has been considered and denied, both by Lars and myself.
> I see no reason to make yet another, 3rd indication, especially since
> every indication can be ignored if the user really wants to ignore it,
> exactly like the existing 2 indications are ignored.  Not say anything
> about the bad karma of adding unnecessary stuff to the mode line,
> where space is at premium since long ago.  Thanks, but no, thanks.

That's perfectly fine as far as I am concerned; and that's also why my
original contribution to the discussion was pointing Dan to
compilation-finish-functions, where he hopefully can design an
indication that will be tailored to his needs and not so easily ignored.

My second contribution to the discussion was obviously unneeded and I
apologize for the time that was wasted.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51132; Package emacs. (Wed, 20 Oct 2021 01:19:02 GMT) Full text and rfc822 format available.

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

From: 積丹尼 Dan Jacobson <jidanni <at> jidanni.org>
To: Kévin Le Gouguec <kevin.legouguec <at> gmail.com>
Cc: Eli Zaretskii <eliz <at> gnu.org>, 51132 <at> debbugs.gnu.org
Subject: Re: bug#51132: Make sure user is doubly aware of finished
 complilations
Date: Wed, 20 Oct 2021 09:09:51 +0800
> Try turning off truncate-partial-width-windows

>> Anyway, we are talking about a user who (mis-)configures his windows
>> so that nothing useful is visible on the mode line,

All I know is I was using emacs -Q.

>> C-x 2 C-x 3 C-x 2 C-x 3...
>> then you will have many *Compilation* buffers, right?

No. Many *scratch* buffers, as shown by the steps I posted.

KLG> I'm assuming that Dan would keep at most _one_ window displaying the
KLG> *compilation* buffer.

>> then buries the *Compilation* buffer (since the compilation he
>> launches doesn't interest him at all, right?), and then, when he
>> finally wants to know what happened there, doesn't even consider to
>> look back in that buried buffer? Is that the situation?

Correct: no reason to keep staring at a half-hour long boring
compilation when there is lots of email to reply to, etc. Before long
that buffer is no longer one of the many still on the screen.

But think about it like a file you were editing and hadn't yet saved
before exiting emacs. Emacs correctly asks you about it upon exit.

Maybe (info "(emacs) Compilation") should mention:
"Like KLG says, it is extremely easy to forget you had a lengthy compile
job running, and ...

KLG> 5. consider I have finished working on the unrelated matters, and close
KLG>    Emacs,

KLG> 6. bang my head on the desk out of frustration and self-loathing.

... therefore perhaps consider wrapping your compile jobs in a nohup(1)
statement, perhaps with a tail -f nohup.out to simulate traditional
compile-mode output. Example: ..."




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51132; Package emacs. (Wed, 20 Oct 2021 06:10:02 GMT) Full text and rfc822 format available.

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

From: Kévin Le Gouguec <kevin.legouguec <at> gmail.com>
To: 積丹尼 Dan Jacobson <jidanni <at> jidanni.org>
Cc: Eli Zaretskii <eliz <at> gnu.org>, 51132 <at> debbugs.gnu.org
Subject: Re: bug#51132: Make sure user is doubly aware of finished
 complilations
Date: Wed, 20 Oct 2021 08:09:35 +0200
積丹尼 Dan Jacobson <jidanni <at> jidanni.org> writes:

> Maybe (info "(emacs) Compilation") should mention:
> "Like KLG says, it is extremely easy to forget you had a lengthy compile
> job running, and ...
>
> KLG> 5. consider I have finished working on the unrelated matters, and close
> KLG>    Emacs,
>
> KLG> 6. bang my head on the desk out of frustration and self-loathing.
>
> ... therefore perhaps consider wrapping your compile jobs in a nohup(1)
> statement, perhaps with a tail -f nohup.out to simulate traditional
> compile-mode output. Example: ..."

That, or maybe advertise compilation-finish-functions more?  Promote it
to a defcustom, keep it nil by default, add some :options, such as:

- a function that calls notifications-notify,
- a function that saves the buffer; serving suggestion:

(defun compilation-save-buffer (buffer _results)
  ;; TODO:
  ;; - better path-separator escaping?
  ;; - give user more control over directory?
  ;; - give user more control over filename?
  ;; - use write-file and mark buffer as "unsaved"?
  (let* ((cmd (string-replace "/" "-"
                              (with-current-buffer buffer compile-command)))
         (time (format-time-string "%F-%T")))
    (with-current-buffer buffer
      (write-region (point-min) (point-max) (format "%s-%s.log" time cmd)))))

… and document it in (info "(emacs) Compilation").


I wouldn't mind working on a patch, if the above sounds appealing.  I'm
a bit swamped these days, but from our discussion I understand that this
wouldn't exactly be a high-priority feature anyway :)




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51132; Package emacs. (Fri, 22 Oct 2021 12:33:01 GMT) Full text and rfc822 format available.

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

From: 積丹尼 Dan Jacobson <jidanni <at> jidanni.org>
To: Kévin Le Gouguec <kevin.legouguec <at> gmail.com>
Cc: Eli Zaretskii <eliz <at> gnu.org>, 51132 <at> debbugs.gnu.org
Subject: Re: bug#51132: Make sure user is doubly aware of finished
 complilations
Date: Fri, 22 Oct 2021 20:32:12 +0800
>>>>> "KLG" == Kévin Le Gouguec <kevin.legouguec <at> gmail.com> writes:

KLG> … and document it in (info "(emacs) Compilation").

Yes, (info "(emacs) Compilation") needs to mention "It is easy to close
emacs without remembering you had compilation results. Therefore
consider..."




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sat, 20 Nov 2021 12:24:07 GMT) Full text and rfc822 format available.

This bug report was last modified 2 years and 151 days ago.

Previous Next


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