help-gnu-emacs
[Top][All Lists]
Advanced

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

Re: how to hide emacs 26 warnings buffer ?


From: Zhang Jun
Subject: Re: how to hide emacs 26 warnings buffer ?
Date: Tue, 24 Apr 2018 13:59:35 +0800

On Mon, Apr 23, 2018 at 11:53 AM, Emanuel Berg <moasen@zoho.com> wrote:

> Zhang Jun wrote:
>
> > I've switched to emacs 26.0.91 from 25,
> >
> > when I editing a file, emacs will create
> > '#file# backup file, but I don't have write
> > permission to the directory, emacs26 will
> > display a *warnings* buffer, I don't like
> > this buffer, prefer the warning message in
> > mini-buffer.
>
> Indeed: when you look into the tiger's eyes,
> you see ONLY your own feelings!
>
> ;; This file: http://user.it.uu.se/~embe8573/emacs-init/error.el
>
> (require 'cl-lib)
>
> ;; inhibit the debugger --
> ;; so not to have the debugger hop out
> ;; over half the screen for something that can be
> ;; communicated in 2-3 few words in the echo area
> (setq debug-on-error                 nil)
> (setq eval-expression-debug-on-error nil)
>
> ;; ignore a couple of common "errors"
> (setq debug-ignored-errors
>       '(
>         beginning-of-buffer
>         beginning-of-line
>         buffer-read-only
>         end-of-buffer
>         end-of-file
>         end-of-line
>         file-supersession
>         text-read-only
>         quit
>         ))
>
> (defvar error-buffer-name "*Errors*" "Errors log buffer.")
>
> (defun say-and-log-error (data _ fun)
>   "This error function communicates the errors in the echo area.
> It does so by means of a one-liner as to avoid being disruptive
> (while still offering condensed feedback, which often is enough).
> DATA is the error; FUN is where it occurred.
> The errors are logged in the buffer `error-buffer-name'.
> To list them, use `errors'.
> To use this function, set `command-error-function' to:
> \(lambda \(&rest args\) \(apply #'say-and-log-error args\)"
>   (if (not (member (car data) debug-ignored-errors))
>       (let*((error-str (format "%S in %S" data fun))
>             (error-buffer (get-buffer-create error-buffer-name))
>             (error-win (get-buffer-window error-buffer)) )
>         (message "%s" error-str)           ; echo the error message
>         (with-current-buffer error-buffer
>           (goto-char (point-max))
>           (insert error-str "\n") )        ; log it
>         (discard-input) )))
>
> (setq command-error-function
>       (lambda (&rest args)
>         (apply #'say-and-log-error args) ))
>
> (defun errors ()
>   "Visit the errors log buffer, `error-buffer-name'.
> See `say-and-log-error' for more on this."
>   (interactive)
>   (switch-to-buffer (get-buffer-create error-buffer-name))
>   (goto-char (point-max))
>   (recenter -1) )
>
> ;; (/ 1 0)
>
> (provide 'error)
>
> --
> underground experts united
> http://user.it.uu.se/~embe8573
>


thanks, but after install this error.el, it still display the buffer,
I checked some elisp doc and use 'advice-add' :before-util to display
"auto-save" warnings in mini-buffer.


reply via email to

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