Re: Temporarily suppress all error messages

"Viktor T. Toth" <[email protected]> Thu, 21 May 2026 01:36:21 -0400
Newsgroups gmane.comp.mathematics.maxima.general
Message-ID <[email protected]>
On Linux/UNIX, maxima-init.lisp (also maxima-init.mac ) would be in your 
home directory, under ~/.maxima . Not sure about  Windows, somewhere 
under %USERPROFILE%\AppData\Local\maxima maybe? That would be my guess.


Viktor



On 2026-05-20 15:26, Astrea Drifter wrote:
> Leo,
> I don't seem to have a maxima-init.lisp file. If I'm meant to create 
> one, where should I put it?
> Alternatively, could this be entered into the terminal? This looks 
> like a single command, just a longer one, which makes me wonder if it 
> could be made to work there by putting :lisp before (defun and maybe 
> condensing it to a single line.
>
> Astrea
>
> On Wed, May 20, 2026 at 8:25 AM Leo Butler <[email protected]> 
> wrote:
>
>     Hello,
>
>     You can also add this to your maxima-init.lisp file:
>
>      (defun mtell (&rest l)
>       (let ((*print-base* 10))
>        (apply #'mformat *error-output* l)))
>
>     This will direct all MTELL output to *ERROR-OUTPUT* rather than
>     *STANDARD-OUTPUT*. Combined with re-binding *ERROR-OUTPUT*, this
>     should
>     muffle >95% of the messages you might see otherwise.
>
>     The (dis)advantage of this suggestion is that error messages are
>     stored
>     in an output stream, so you can inspect them via:
>
>     get_output_stream_string (?\*error\-output\*);
>
>     from the Maxima command line.
>
>     Best regards,
>     Leo
>
>
>     On Tue, May 19 2026, Astrea Drifter <[email protected]> wrote:
>
>     > Leo,
>     > I am indeed using the most recent version of Maxima (5.49) and I
>     do the
>     > terminal most of the time. (If I ever use anything else, it's
>     XMaxima). So
>     > the Lisp command you mentioned is workable for me!
>     >
>     > Michel,
>     > I tried out your version of the command, and it seems to do well in
>     > suppressing the "not enough parentheses", "too many
>     parentheses", and
>     > "expected n arguments but got k" sorts of messages, and these
>     are the ones
>     > which I get very often and which I was having trouble
>     suppressing. Not only
>     > that, but the command also interacts with my syntax (which
>     involves the
>     > double-quotes and the user-defined nofix "~" along with a whole
>     bunch of
>     > stuff in my preamble) in a way that causes it to print output
>     lines with
>     > empty brackets on them, which is exactly what I was hoping for
>     it to do in
>     > these cases!
>     >
>     > So this command seems like the perfect help for my use case, and
>     I've
>     > included it in my preamble. I might post again if I encounter
>     any issues
>     > with it that I can't fix, but as near as I can tell it seems
>     like it will
>     > work nicely.
>     >
>     > Thank you all so much for your help!
>     > Astrea
>     >
>     > On Tue, May 19, 2026 at 9:39 AM Leo Butler
>     <[email protected]> wrote:
>     >
>     >> If you are using a recent version of maxima, you can do the
>     following at
>     >> the terminal:
>     >>
>     >> :lisp(setf *error-output* (make-output-string-stream))
>     >>
>     >> Alternatively, you can save the line
>     >>
>     >> (setf *error-output* (make-output-string-stream))
>     >>
>     >> in a start-up file (e.g. maxima-init.lisp) and make sure it
>     gets loaded
>     >> at start-up.
>     >>
>     >> Explanation: in recent versions of Maxima, errors and warnings are
>     >> printed to the output stream *ERROR-OUTPUT*. That can be
>     rebound to a
>     >> "string stream", which results in the diversion of the error
>     messages to
>     >> a sink.
>     >>
>     >> Best regards,
>     >> Leo
>     >>
>     >>
>     >> On Tue, May 19 2026, Michel Talon <[email protected]> wrote:
>     >>
>     >> > Le 19/05/2026 à 04:52, Astrea Drifter a écrit :
>     >> >>
>     >> >> While searching for solutions, I found a thread where the
>     following
>     >> >> commands were recommended to turn off error and warning messages
>     >> >> respectively, and these seemed well suited for the use case
>     of that
>     >> >> thread's op:
>     >> >> :lisp (defun merror(&rest foo) nil)
>     >> >> :lisp (defun mtell (&rest foo) nil)
>     >> >>
>     >> >> Unfortunately, while I have some experience with Maxima, I know
>     >> >> nothing at all about Lisp.
>     >> >
>     >> > A little pedagogy: a lot of errors in maxima trigger the function
>     >> > merror, which outputs the appropriate error message. In lisp
>     you can
>     >> > redefine any function, so when doing  (defun merror(&rest
>     foo) nil)
>     >> > you are just redefining merror to produce nil, for whatever
>     arguments
>     >> > you feed merror with (&rest foo). Idem for mtell which is
>     triggered by
>     >> > less severe problems. But this does not work for your use
>     case because
>     >> > the error is produced at the level of the parser (nparse.lisp) in
>     >> > which errors do not call merror or mtell, but just use the lisp
>     >> > function format to output a message.
>     >> >
>     >> > (format t (intl:gettext "incorrect syntax: ")) line 122 of
>     nparse.lisp
>     >> >
>     >> > followed by some more complex stuff to output the cause of
>     the error,
>     >> > here ~ is not an infix operator ...
>     >> >
>     >> > Since you probably don't want to redefine lisp functions, i
>     don't see
>     >> > how to mute this error message.
>     >>
>     >> --
>     >> ---
>     >> Best regards,
>     >> Dr Butler
>     >> _______________________________________________
>     >> Maxima-discuss mailing list
>     >> [email protected]
>     >> https://lists.sourceforge.net/lists/listinfo/maxima-discuss
>     >>
>
>     -- 
>     ---
>     Best regards,
>     Dr Butler
>
>
>
> _______________________________________________
> Maxima-discuss mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/maxima-discuss

_______________________________________________
Maxima-discuss mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/maxima-discuss