GNU bug report logs - #10598
24.0.92; run dired-do-async-shell-command on multiple files individually

Previous Next

Package: emacs;

Reported by: "Roland Winkler" <winkler <at> gnu.org>

Date: Wed, 25 Jan 2012 10:19:01 UTC

Severity: normal

Merged with 11815

Found in versions 24.0.92, 24.1

Done: Juri Linkov <juri <at> jurta.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: "John Wiegley" <johnw <at> newartisans.com>
Subject: bug#11815: closed (Re: bug#10598: 24.0.92; run dired-do-async-shell-command
 on multiple files individually)
Date: Tue, 17 Jul 2012 18:49:02 +0000
[Message part 1 (text/plain, inline)]
Your bug report

#10598: 24.1; Confusing behavior of & in Dired

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to 11815 <at> debbugs.gnu.org.

-- 
10598: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=10598
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Juri Linkov <juri <at> jurta.org>
To: "Roland Winkler" <winkler <at> gnu.org>
Cc: 10598-done <at> debbugs.gnu.org
Subject: Re: bug#10598: 24.0.92;
	run dired-do-async-shell-command on multiple files individually
Date: Tue, 17 Jul 2012 21:41:08 +0300
> Thanks a lot, this looks great to me (and also works for me as expected).

Thanks, installed and closed.

> It would be good if the info node "(emacs)Shell Commands in Dired"
> will be updated, too.

A NEWS entry for this change has no "---" indication that means
it should be documented in the manual before the next release when
the functionality is stabilized and there are no more code changes.

[Message part 3 (message/rfc822, inline)]
From: "John Wiegley" <johnw <at> newartisans.com>
To: bug-gnu-emacs <at> gnu.org
Subject: 24.1; Confusing behavior of & in Dired
Date: Fri, 29 Jun 2012 03:29:25 -0500
If I mark several files in dired and press !, I can execute:

    rsync -av * jw:/srv/ftp/pub

I can also run:

    rsync -av * jw:/srv/ftp/pub &

But if I type &, I cannot run:

    rsync -av * jw:/srv/ftp/pub

Because this is equivalent to:

    rsync -av * jw:/srv/ftp/pub * &

It actually decribes this behavior in the docstring: with the & command, if no
& appears at the end of the line (which makes little sense, since I pressed &
to indicate it was asynchronous), Dired adds "* &".  ??

I think that the following equivalence should hold:

    ! COMMAND & == & COMMAND

The fix is simply to change the two lines in `dired-do-async-shell-command'
which append " *" to the end of the line to read:

  (unless (string-match "[ \t][*?][ \t]" command)
    (setq command (concat command " *")))

Thanks,
  John

In GNU Emacs 24.1.1 (x86_64-apple-darwin11.4.0, Carbon Version 1.6.0 AppKit 1138.47)
 of 2012-06-28 on vulcan.local



This bug report was last modified 12 years and 362 days ago.

Previous Next


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