GNU bug report logs - #67972
Use *command (&)* instead of shell-command-buffer-name(-async)

Previous Next

Package: emacs;

Reported by: Nafiz Islam <nafiz.islam1001 <at> gmail.com>

Date: Fri, 22 Dec 2023 18:37:02 UTC

Severity: normal

To reply to this bug, email your comments to 67972 AT debbugs.gnu.org.

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#67972; Package emacs. (Fri, 22 Dec 2023 18:37:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Nafiz Islam <nafiz.islam1001 <at> gmail.com>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Fri, 22 Dec 2023 18:37:02 GMT) Full text and rfc822 format available.

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

From: Nafiz Islam <nafiz.islam1001 <at> gmail.com>
To: bug-gnu-emacs <at> gnu.org
Subject: Use *command (&)* instead of shell-command-buffer-name(-async)
Date: Fri, 22 Dec 2023 12:31:24 -0500
[Message part 1 (text/plain, inline)]
The buffer name for the shell-command or async-shell-command would be much
more useful if they were given the name of the command being executed.

I started working a bit on a patch for that, but it's just code changes
right now. Here's a preview of what I mean.

@@ -4252,12 +4252,6 @@ undo-outer-limit-truncate

 ;;;; Shell commands

-(defconst shell-command-buffer-name "*Shell Command Output*"
-  "Name of the output buffer for shell commands.")
-
-(defconst shell-command-buffer-name-async "*Async Shell Command*"
-  "Name of the output buffer for asynchronous shell commands.")
-
 (defvar shell-command-history nil
   "History list for some commands that read shell commands.

@@ -4671,7 +4660,8 @@ shell-command
  ;; Output goes in a separate buffer.
  (if (string-match "[ \t]*&[ \t]*\\'" command)
     ;; Command ending with ampersand means asynchronous.
-            (let* ((buffer (get-buffer-create
+            (let* ((shell-command-buffer-name-async (concat "*" command
"*"))
+                   (buffer (get-buffer-create
                             (or output-buffer
shell-command-buffer-name-async)))
                    (bname (buffer-name buffer))
                    (proc (get-buffer-process buffer))
@@ -4942,7 +4932,8 @@ shell-command-on-region
        shell-command-default-error-buffer
        t
        (region-noncontiguous-p))))
-  (let ((error-file
+  (let ((shell-command-buffer-name (concat "*" command "*"))
+        (error-file
  (if error-buffer
      (make-temp-file
       (expand-file-name "scor"
[Message part 2 (text/html, inline)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#67972; Package emacs. (Fri, 22 Dec 2023 19:20:01 GMT) Full text and rfc822 format available.

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

From: Eli Zaretskii <eliz <at> gnu.org>
To: Nafiz Islam <nafiz.islam1001 <at> gmail.com>
Cc: 67972 <at> debbugs.gnu.org
Subject: Re: bug#67972: Use *command (&)* instead of
 shell-command-buffer-name(-async)
Date: Fri, 22 Dec 2023 21:18:23 +0200
> From: Nafiz Islam <nafiz.islam1001 <at> gmail.com>
> Date: Fri, 22 Dec 2023 12:31:24 -0500
> 
> The buffer name for the shell-command or async-shell-command would be much more useful if they
> were given the name of the command being executed.
> 
> I started working a bit on a patch for that, but it's just code changes right now. Here's a preview of
> what I mean.

Instead of removing the default name, why not add one more possible
value to async-shell-command-buffer, which will do what you want?
Then users who are interested in this behavior could customize
async-shell-command-buffer to that new value.

Thanks.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#67972; Package emacs. (Sat, 23 Dec 2023 05:43:04 GMT) Full text and rfc822 format available.

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

From: Nafiz Islam <nafiz.islam1001 <at> gmail.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 67972 <at> debbugs.gnu.org
Subject: Re: bug#67972: Use *command (&)* instead of
 shell-command-buffer-name(-async)
Date: Fri, 22 Dec 2023 14:39:55 -0500
[Message part 1 (text/plain, inline)]
That is a good idea. They could take a string or a symbol with a default
string value.
The variables shell-command-buffer-name(-async) could be declared as
defcustom instead of defconst.

On Fri, Dec 22, 2023 at 2:18 PM Eli Zaretskii <eliz <at> gnu.org> wrote:

> > From: Nafiz Islam <nafiz.islam1001 <at> gmail.com>
> > Date: Fri, 22 Dec 2023 12:31:24 -0500
> >
> > The buffer name for the shell-command or async-shell-command would be
> much more useful if they
> > were given the name of the command being executed.
> >
> > I started working a bit on a patch for that, but it's just code changes
> right now. Here's a preview of
> > what I mean.
>
> Instead of removing the default name, why not add one more possible
> value to async-shell-command-buffer, which will do what you want?
> Then users who are interested in this behavior could customize
> async-shell-command-buffer to that new value.
>
> Thanks.
>
[Message part 2 (text/html, inline)]

This bug report was last modified 1 year and 180 days ago.

Previous Next


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