unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Juri Linkov <juri@linkov.net>
To: Eli Zaretskii <eliz@gnu.org>
Cc: 40774@debbugs.gnu.org, larsi@gnus.org, ndame@protonmail.com
Subject: bug#40774: Error messages shouldn't be hidden when the user is idle
Date: Tue, 14 Dec 2021 10:35:13 +0200	[thread overview]
Message-ID: <86ee6f4mqe.fsf@mail.linkov.net> (raw)
In-Reply-To: <83o85kl2aq.fsf@gnu.org> (Eli Zaretskii's message of "Mon, 13 Dec 2021 21:42:21 +0200")

>> > Isn't there some Lisp-visible effect of that, like that the echo-area
>> > will appear empty after the assignment?  If so, then the
>> > clear-message-function was previously running with the echo-area
>> > buffer nil, but now it won't.
>>
>> clear-message-function is not intended to do anything with the echo-area.
>> Its purpose is to notify a subscriber that the message is going to be cleared,
>> so the subscriber can e.g. clear the message from the minibuffer, etc.
>> When the subscriber needs to affect the echo-area, it's the purpose
>> of the proposed return value not to clear the echo-area when the subscriber
>> asks so via the return value.
>
> So there will be some effect of this reordering, if some
> clear-message-function does something that you say it shouldn't.

Of course, when authors decide to shoot themselves in the foot,
we can't prevent this.

>> > I gave an example of how using this for that purpose could be a
>> > problem, and you responded only to that example.  But the problem that
>> > bothers me is much more general, and you are silent about that larger
>> > problem.
>> >
>> > I'm asking once again: aren't we trying to use echo-area messages or
>> > minibuffer messages displayed in the mini-window for a job that they
>> > weren't intended to do: showing large amounts of messages at the same
>> > time?
>>
>> Sorry, I still don't understand what do you mean.  What large amounts
>> of messages?  At what the same time?  This is completely unclear.
>> Maybe if you give an example, this could help to understand.
>
> This whole discussion started from a request to be able to accumulate
> messages in the echo-area so that the user who is away could see them
> all when he/she comes back from whatever took him/her away.  There
> could be quite a lot of messages accumulated during that period, and
> the request was to leave them all on display.  For which you proposed
> to use clear-message-function in a way that doesn't actually clear
> them.
>
> Is the above an accurate description and summary of what is being
> proposed here?  If so, is it now clear what kind of job I think
> display of echo-area messages was never designed to support?

Thanks for explanation, now it's clear where is the misunderstanding.

Actually, the patch for clear-message-function here is unrelated
to the feature that uses set-message-function to accumulate messages
and doesn't use clear-message-function.

The feature here is intended for users who want to always leave
the last displayed message in the echo-area, and never clear it.
It will be possible even to do this conditionally.

For example, when the user wants to leave the message
"Compilation finished" displayed in the echo area even
during navigation in the buffer or when the user types text.
Normally such message will be cleared on any key press,
and thus the user will miss it.  But with such configuration
the user won't miss the message even while using self-inserting
or navigation keys when the message is displayed:

  (setq clear-message-function
        (lambda ()
          (when (string-match-p "^Compilation" (current-message))
            'dont-clear-message)))





  reply	other threads:[~2021-12-14  8:35 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-22 16:21 bug#40774: Error messages shouldn't be hidden when the user is idle ndame via Bug reports for GNU Emacs, the Swiss army knife of text editors
2020-04-22 16:27 ` Drew Adams
2020-04-22 16:38   ` ndame via Bug reports for GNU Emacs, the Swiss army knife of text editors
2020-04-22 17:08     ` Drew Adams
2020-04-22 17:35       ` ndame via Bug reports for GNU Emacs, the Swiss army knife of text editors
2020-04-22 16:44 ` Eli Zaretskii
2020-04-22 17:38   ` ndame via Bug reports for GNU Emacs, the Swiss army knife of text editors
2020-04-22 18:11     ` Eli Zaretskii
2020-04-22 18:21       ` ndame via Bug reports for GNU Emacs, the Swiss army knife of text editors
2020-04-22 18:26         ` Eli Zaretskii
2020-04-22 18:43           ` ndame via Bug reports for GNU Emacs, the Swiss army knife of text editors
2020-04-22 18:47             ` Eli Zaretskii
2020-04-22 18:53               ` ndame via Bug reports for GNU Emacs, the Swiss army knife of text editors
2020-04-22 19:06                 ` Eli Zaretskii
2020-04-22 19:10                   ` ndame via Bug reports for GNU Emacs, the Swiss army knife of text editors
2020-04-22 19:25                     ` Eli Zaretskii
2020-04-22 19:35                       ` ndame via Bug reports for GNU Emacs, the Swiss army knife of text editors
2020-04-23  5:58                       ` ndame via Bug reports for GNU Emacs, the Swiss army knife of text editors
2020-04-23 22:16                         ` Juri Linkov
2020-08-20 13:41                           ` Lars Ingebrigtsen
2021-12-05 18:54                             ` Juri Linkov
2021-12-05 19:49                               ` Eli Zaretskii
2021-12-05 20:50                               ` Lars Ingebrigtsen
2021-12-05 21:29                                 ` Juri Linkov
2021-12-06  5:49                                   ` Lars Ingebrigtsen
2021-12-06  9:31                                     ` Juri Linkov
2021-12-07 20:51                                       ` Lars Ingebrigtsen
2021-12-08 12:25                                         ` Eli Zaretskii
2021-12-08 19:21                                           ` Juri Linkov
2021-12-08 20:01                                             ` Eli Zaretskii
2021-12-12 19:19                                               ` Juri Linkov
2021-12-12 19:49                                                 ` Eli Zaretskii
2021-12-12 20:18                                                   ` Juri Linkov
2021-12-13 16:48                                                     ` Eli Zaretskii
2021-12-13 18:50                                                       ` Juri Linkov
2021-12-13 19:42                                                         ` Eli Zaretskii
2021-12-14  8:35                                                           ` Juri Linkov [this message]
2021-12-14 13:19                                                             ` Eli Zaretskii
2021-12-14 20:54                                                               ` Juri Linkov
2021-12-15 12:41                                                                 ` Eli Zaretskii
2022-04-23 15:17                                                     ` Lars Ingebrigtsen
2021-12-08 19:18                                         ` Juri Linkov
2020-04-22 22:05 ` Juri Linkov
2020-04-23  4:38   ` ndame via Bug reports for GNU Emacs, the Swiss army knife of text editors

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=86ee6f4mqe.fsf@mail.linkov.net \
    --to=juri@linkov.net \
    --cc=40774@debbugs.gnu.org \
    --cc=eliz@gnu.org \
    --cc=larsi@gnus.org \
    --cc=ndame@protonmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).