emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Why does signaling an error not call set-message-function?


From: Mario Lang
Subject: Re: Why does signaling an error not call set-message-function?
Date: Tue, 05 Apr 2022 14:05:00 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1.50 (gnu/linux)

Eli Zaretskii <eliz@gnu.org> writes:

>> From: Mario Lang <mlang@blind.guru>
>> Date: Tue, 05 Apr 2022 10:01:58 +0200
>> 
>> Hi.
>> 
>> I just realized that only a certain type of message goes through
>> `set-message-function'.  In particular, things like
>> 
>> (signal 'end-of-buffer nil)
>> 
>> write to the echo area but do not trigger set-message-function.
>> 
>> This is a bit unexpected.  Is there an equivalent hook for
>> error messages going to the echo area?
>
> (set-message-function _does_ affect echo-area messages, just not any
> kind of them.)

OK, point taken.

> Are you sure it is a good idea to allow running arbitrary Lisp when
> Emacs wants to signal an error?

My motivation is that I am trying to redirect echo area messages to an
external display.  Why?  Think of it like Emacspeak for braille users.
When I press M-< "Mark set" is displayed,
but if I press cursor up, "Beginning of buffer" is not.
This seems arbitrary.  I realize that signals which pop up the
debugger / backtrace might be problematic to interfere with, but...
The messages from `user-error' and those error symbols which only
display an echo area message should be easier to programmatically see IMO.

-- 
CYa,
  ⡍⠁⠗⠊⠕



reply via email to

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