Clarification: it works when "&wait" is changed to "& wait" and the two instances of "&" are changed to "& ".
Indeed, "& wait" works with fish. For the function to work with multiple files selected, "&" must be changed to "& ".
From: Lycomedes 1814 <lycomedes1814@yandex.com>
Date: Thu, 18 May 2023 20:12:45 +0200
1. Use fish as your system shell.
2. Use dired-do-async-shell-command on any file, and type e.g. mpv.
Fish interprets "&wait" as part of the file name, so mpv returns: "[file] Cannot open file '027.wav&wait':
No such file or directory."
Solution:
In the function dired-shell-stuff-it, replace "&wait" with "& ". Then fish interprets the command
correctly.
But the "wait" part is there for a reason, so simply removing it is
hardly TRT.
What if we use " & wait" instead, i.e. add a space between & and
"wait"? does the command then work correctly with fish?