GNU bug report logs - #19495
25.0.50; `message` -- optional argument to suppress echo area display

Previous Next

Package: emacs;

Reported by: Keith David Bershatsky <esq <at> lawlist.com>

Date: Sat, 3 Jan 2015 17:51:02 UTC

Severity: wishlist

Tags: wontfix

Found in version 25.0.50

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 19495 in the body.
You can then email your comments to 19495 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#19495; Package emacs. (Sat, 03 Jan 2015 17:51:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Keith David Bershatsky <esq <at> lawlist.com>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Sat, 03 Jan 2015 17:51:02 GMT) Full text and rfc822 format available.

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

From: Keith David Bershatsky <esq <at> lawlist.com>
To: bug-gnu-emacs <at> gnu.org
Subject: 25.0.50; `message` -- optional argument to suppress echo area display
Date: Sat, 03 Jan 2015 09:50:08 -0800
As a feature request, the Emacs team may wish to consider adding an optional argument to the `message` function to permit suppression of the message being displayed in the echo area.

In my particular use case, there are certain process output strings that I prefer having printed to the `*Messages*` buffer -- instead of a dedicated process output buffer.

(defun rsync-process-filter (proc string)
  (when (not (or
      (string-match "files...\r" string)
      (string-match "files to consider\n" string)))
    (message "%s" string)))

The above example also displays in the echo area, which makes using interactive commands problematic while the ongoing process continues to print messages.  Each time a new message is generated by the ongoing process, the interactive prompt and potential minibuffer completions get erased by the message -- e.g., `execute-extended-command` or `switch-to-buffer-other-window`.

The following is my workaround:

(defun rsync-process-filter (proc string)
  (let ((inhibit-read-only t))
    (when (not (or
        (string-match "files...\r" string)
        (string-match "files to consider\n" string)))
      (with-current-buffer (get-buffer-create "*Messages*")
        (goto-char (point-max))
        (insert string)))))

Here are links to a couple of threads regarding this issue:

http://superuser.com/questions/669701/emacs-disable-some-minibuffer-messages

http://emacs.stackexchange.com/questions/5959/send-process-output-to-messages-buffer-but-bypass-the-echo-area

Thanks,

Keith

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


In GNU Emacs 25.0.50.1 (x86_64-apple-darwin10.8.0, NS appkit-1038.36 Version 10.6.8 (Build 10K549))
 of 2014-10-01 on MP.local
Repository revision: 117996 dmantipov <at> yandex.ru-20141001132108-zdsxru2390mqyjlu
Windowing system distributor `Apple', version 10.3.1038
Configured using:
 `configure --with-ns'

Configured features:
ACL LIBXML2 ZLIB

Important settings:
  locale-coding-system: utf-8-unix

Major mode: Fundamental

Minor modes in effect:
  sd-mode: t
  sb-mode: t
  tb-mode: t
  shell-dirtrack-mode: t
  cm-mode: t
  frame-bufs-mode: t
  bc-mode: t
  ds-mode: t
  ml-mode: t

Recent input:
s-a <backspace> s-s <escape> x e m a c s <backspace> 
<backspace> <backspace> <backspace> <backspace> r e 
p o r t - e m a c s <tab> b u g <tab> <return>

Recent messages:
Emacs -[q] | [d]efault.  (2) seconds
Emacs -[q] | [d]efault.  (1) seconds
Emacs -[q] | [d]efault.  (0) seconds
The default.
Loading /Users/HOME/.0.data/.0.emacs/.0.lisp/lawlist-test.el (source)...done
Loading /Users/HOME/.0.data/.0.emacs/.0.lisp/init.el (source)...done
Wrote /Users/HOME/.0.data/.0.emacs/.lock
Mark set [2 times]
Saving file /Users/HOME/.0.data/.0.emacs/.scratch...
Wrote /Users/HOME/.0.data/.0.emacs/.scratch

Load-path shadows:
/Users/HOME/.0.data/.0.emacs/.0.wl/md4 hides /Users/HOME/.0.data/.0.emacs/Emacs_10_01_2014.app/Contents/Resources/lisp/md4
/Users/HOME/.0.data/.0.emacs/.0.wl/hex-util hides /Users/HOME/.0.data/.0.emacs/Emacs_10_01_2014.app/Contents/Resources/lisp/hex-util
/Users/HOME/.0.data/.0.emacs/.0.wl/sasl hides /Users/HOME/.0.data/.0.emacs/Emacs_10_01_2014.app/Contents/Resources/lisp/net/sasl
/Users/HOME/.0.data/.0.emacs/.0.wl/sasl-ntlm hides /Users/HOME/.0.data/.0.emacs/Emacs_10_01_2014.app/Contents/Resources/lisp/net/sasl-ntlm
/Users/HOME/.0.data/.0.emacs/.0.wl/sasl-digest hides /Users/HOME/.0.data/.0.emacs/Emacs_10_01_2014.app/Contents/Resources/lisp/net/sasl-digest
/Users/HOME/.0.data/.0.emacs/.0.wl/sasl-cram hides /Users/HOME/.0.data/.0.emacs/Emacs_10_01_2014.app/Contents/Resources/lisp/net/sasl-cram
/Users/HOME/.0.data/.0.emacs/.0.wl/ntlm hides /Users/HOME/.0.data/.0.emacs/Emacs_10_01_2014.app/Contents/Resources/lisp/net/ntlm
/Users/HOME/.0.data/.0.emacs/.0.wl/hmac-md5 hides /Users/HOME/.0.data/.0.emacs/Emacs_10_01_2014.app/Contents/Resources/lisp/net/hmac-md5
/Users/HOME/.0.data/.0.emacs/.0.wl/hmac-def hides /Users/HOME/.0.data/.0.emacs/Emacs_10_01_2014.app/Contents/Resources/lisp/net/hmac-def
/Users/HOME/.0.data/.0.emacs/.0.wl/rfc2368 hides /Users/HOME/.0.data/.0.emacs/Emacs_10_01_2014.app/Contents/Resources/lisp/mail/rfc2368
/Users/HOME/.0.data/.0.emacs/.0.wl/utf7 hides /Users/HOME/.0.data/.0.emacs/Emacs_10_01_2014.app/Contents/Resources/lisp/gnus/utf7
/Users/HOME/.0.data/.0.emacs/.0.wl/smime hides /Users/HOME/.0.data/.0.emacs/Emacs_10_01_2014.app/Contents/Resources/lisp/gnus/smime
/Users/HOME/.0.data/.0.emacs/.0.wl/pgg hides /Users/HOME/.0.data/.0.emacs/Emacs_10_01_2014.app/Contents/Resources/lisp/obsolete/pgg
/Users/HOME/.0.data/.0.emacs/.0.wl/pgg-pgp5 hides /Users/HOME/.0.data/.0.emacs/Emacs_10_01_2014.app/Contents/Resources/lisp/obsolete/pgg-pgp5
/Users/HOME/.0.data/.0.emacs/.0.wl/pgg-pgp hides /Users/HOME/.0.data/.0.emacs/Emacs_10_01_2014.app/Contents/Resources/lisp/obsolete/pgg-pgp
/Users/HOME/.0.data/.0.emacs/.0.wl/pgg-parse hides /Users/HOME/.0.data/.0.emacs/Emacs_10_01_2014.app/Contents/Resources/lisp/obsolete/pgg-parse
/Users/HOME/.0.data/.0.emacs/.0.wl/pgg-gpg hides /Users/HOME/.0.data/.0.emacs/Emacs_10_01_2014.app/Contents/Resources/lisp/obsolete/pgg-gpg
/Users/HOME/.0.data/.0.emacs/.0.wl/pgg-def hides /Users/HOME/.0.data/.0.emacs/Emacs_10_01_2014.app/Contents/Resources/lisp/obsolete/pgg-def

Features:
(shadow mime-setup mail-mime-setup semi-setup mime-image modb-legacy
modb-standard elmo-imap4 emacsbug lawlist-desktop frameset lawlist-bk
lawlist-arc lawlist-colors reporter load-theme-buffer-local lawlist-dv
lawlist-mc rect lawlist-ztree lawlist-wl w3m-load mime-w3m w3m
browse-url doc-view jka-compr image-mode w3m-hist w3m-fb bookmark-w3m
w3m-ems mule-util w3m-ccl w3m-favicon w3m-image w3m-proc w3m-util
elmo-nntp wl-demo rfc2368 wl-spam elmo-spam elsp-header elsp-generic
wl-fldmgr wl-score smtp sasl sasl-anonymous sasl-login sasl-plain
wl-news wl-address pldap wl-thread wl-action wl wl-e21 wl-draft
wl-template wl-summary wl-refile wl-message wl-mime pgg mime-pgp
mime-play filename mime-edit eword-encode pgg-parse pccl pccl-20 ccl
pgg-def signature sendmail elmo-mime mmelmo-buffer mmelmo-imap
mime-view mime-conf calist semi-def mmimap mime-parse mmbuffer
wl-highlight elmo-filter elmo-multi wl-folder wl-util crm pp elmo-pop3
elmo-net elmo-cache elmo-map elmo-dop elmo-flag elmo-localdir wl-vars
elmo elmo-signal elmo-msgdb modb modb-generic modb-entity mime
mmgeneric elmo-util emu invisible inv-23 poem poem-e20 poem-e20_3 utf7
eword-decode mel mime-def alist std11 mcharset mcs-20 mcs-e20 pces
pces-e20 pces-20 broken pcustom elmo-date elmo-vars path-util poe pym
static product wl-version elmo-version apel-ver luna lawlist-vr-hr
eldoc lawlist-dired tramp-sh lawlist-ws disp-table lawlist-calc
lawlist-flyspell lawlist-yas lawlist-elisp lawlist-tex-mode skeleton
compare-w lawlist-txt-mode lawlist-tabbar lawlist-github ido view
vc-git vc vc-dispatcher tramp tramp-compat tramp-loaddefs trampver
shell thingatpt time-stamp log-view log-edit message mml mml-sec
mm-decode mm-bodies mm-encode gmm-utils mailheader pcvs-util add-log
help-mode grep compile find-lisp epa epg epg-config ediff-merg
ediff-wind ediff-diff ediff-mult ediff-help ediff-init ediff-util
ediff ert ewoc debug eieio-base diff-mode conf-mode autorevert
filenotify lorg-calendar org-element lorg-search org-agenda
context-menu dired-read-filename dired lawlist-toodledo url-http tls
url-auth url-gw url url-proxy url-privacy url-expand url-methods
url-history url-cookie url-domsuf url-util url-parse auth-source eieio
eieio-core password-cache url-vars mailcap json xml lawlist-org
lawlist-calendar org byte-opt bytecomp byte-compile cconv org-macro
org-footnote org-pcomplete pcomplete org-list org-faces org-entities
noutline outline org-version ob-emacs-lisp ob ob-tangle org-src ob-ref
ob-lob ob-table ob-keys ob-exp ob-comint ob-core ob-eval org-compat
org-macs org-loaddefs cal-menu calendar cal-loaddefs format-spec
lawlist-frame lawlist-cm lawlist-bbdb gnus gnus-ems nnheader gnus-util
mail-utils wid-edit mail-parse rfc2231 rfc2047 rfc2045 ietf-drums
mm-util mail-prsvr mailabbrev mail-extr rfc822 cl timezone
lawlist-grep lawlist-compile rx comint ansi-color ring
lawlist-frame-bufs advice derived lawlist-init pcase help-fns cl-macs
gv easy-mmode edmacro kmacro cl-loaddefs cl-lib savehist server
ps-print ps-def lpr find-func saveplace easymenu time-date tooltip
electric uniquify ediff-hook vc-hooks lisp-float-type mwheel ns-win
tool-bar dnd fontset image regexp-opt fringe tabulated-list newcomment
elisp-mode lisp-mode prog-mode register page menu-bar rfn-eshadow
timer select scroll-bar mouse jit-lock font-lock syntax facemenu
font-core frame cham georgian utf-8-lang misc-lang vietnamese tibetan
thai tai-viet lao korean japanese hebrew greek romanian slovak czech
european ethiopic indian cyrillic chinese case-table epa-hook
jka-cmpr-hook help simple abbrev minibuffer nadvice loaddefs button
faces cus-face macroexp files text-properties overlay sha1 md5 base64
format env code-pages mule custom widget hashtable-print-readable
backquote make-network-process cocoa ns multi-tty emacs)

Memory information:
((conses 16 1327172 86464)
 (symbols 48 62533 0)
 (miscs 40 115 254)
 (strings 32 145131 28469)
 (string-bytes 1 4682371)
 (vectors 16 33578)
 (vector-slots 8 697554 29069)
 (floats 8 1031 285)
 (intervals 56 4205 144)
 (buffers 976 11))




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#19495; Package emacs. (Fri, 02 Aug 2019 20:18:02 GMT) Full text and rfc822 format available.

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

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Keith David Bershatsky <esq <at> lawlist.com>
Cc: 19495 <at> debbugs.gnu.org
Subject: Re: bug#19495: 25.0.50; `message` -- optional argument to suppress
 echo area display
Date: Fri, 02 Aug 2019 22:17:45 +0200
Keith David Bershatsky <esq <at> lawlist.com> writes:

> As a feature request, the Emacs team may wish to consider adding an
> optional argument to the `message` function to permit suppression of
> the message being displayed in the echo area.
>
> In my particular use case, there are certain process output strings
> that I prefer having printed to the `*Messages*` buffer -- instead of
> a dedicated process output buffer.

[...]

> The following is my workaround:
>
> (defun rsync-process-filter (proc string)
>   (let ((inhibit-read-only t))
>     (when (not (or
>         (string-match "files...\r" string)
>         (string-match "files to consider\n" string)))
>       (with-current-buffer (get-buffer-create "*Messages*")
>         (goto-char (point-max))
>         (insert string)))))

(I'm going through old bug reports that unfortunately have not received
any responses yet.)

I kinda don't think extending `message' in this way would be ideal.
Currently, `message' is pretty simple to understand, and to change it to
not actually message anything (in some circumstances) would be
confusing.  Doing this in the way you've done in the workaround seems
like a better idea.

So I'm closing this as a "wontfix".

-- 
(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. (Fri, 02 Aug 2019 20:18:02 GMT) Full text and rfc822 format available.

bug closed, send any further explanations to 19495 <at> debbugs.gnu.org and Keith David Bershatsky <esq <at> lawlist.com> Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Fri, 02 Aug 2019 20:18:02 GMT) Full text and rfc822 format available.

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#19495; Package emacs. (Sun, 04 Aug 2019 19:51:03 GMT) Full text and rfc822 format available.

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

From: Juri Linkov <juri <at> linkov.net>
To: Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: Keith David Bershatsky <esq <at> lawlist.com>, 19495 <at> debbugs.gnu.org
Subject: Re: bug#19495: 25.0.50; `message` -- optional argument to suppress
 echo area display
Date: Sun, 04 Aug 2019 22:14:17 +0300
>> As a feature request, the Emacs team may wish to consider adding an
>> optional argument to the `message` function to permit suppression of
>> the message being displayed in the echo area.
>>
>> In my particular use case, there are certain process output strings
>> that I prefer having printed to the `*Messages*` buffer -- instead of
>> a dedicated process output buffer.
>
> [...]
>
>> The following is my workaround:
>>
>> (defun rsync-process-filter (proc string)
>>   (let ((inhibit-read-only t))
>>     (when (not (or
>>         (string-match "files...\r" string)
>>         (string-match "files to consider\n" string)))
>>       (with-current-buffer (get-buffer-create "*Messages*")
>>         (goto-char (point-max))
>>         (insert string)))))
>
> (I'm going through old bug reports that unfortunately have not received
> any responses yet.)
>
> I kinda don't think extending `message' in this way would be ideal.
> Currently, `message' is pretty simple to understand, and to change it to
> not actually message anything (in some circumstances) would be
> confusing.  Doing this in the way you've done in the workaround seems
> like a better idea.

Emacs 25 introduced a new variable 'inhibit-message' to suppress echo area display.

> So I'm closing this as a "wontfix".

This feature request was dated Jan 2015, and a new feature implemented
independently was added on Apr 2015.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Mon, 02 Sep 2019 11:24:05 GMT) Full text and rfc822 format available.

This bug report was last modified 4 years and 231 days ago.

Previous Next


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