Subject: Re: bug#62096: 30.0.50; find-dired, dired-goto-file and spaces

From: Daniel Martín <[email-masked]>
Date: Fri, 10 Mar 2023 21:48:04 +0100

Manuel Giraud via "Bug reports for GNU Emacs, the Swiss army knife of
text editors" <[email-masked]> writes:

> Ok, so commenting the string-replace at dired.el:3529 in
> 'dired-goto-file-1' (ie. not replacing " " with "\\ ") does the trick
> for me...
>
> That being said those are here for a reason.  It might be a difference
> between OpenBSD's find and the GNU one (I don't know for Windows).

This bug also affects macOS.  After reading the code I'd say that, even
on GNU/Linux, there are probably other corner cases where
dired-goto-file would fail:

;; FIXME: to fix this for embedded control characters etc, we
;; should escape everything that `ls -b' does.
(setq str (string-replace " " "\\ "  str)
      str (string-replace "\t" "\\t" str)
      str (string-replace "\n" "\\n" str))

For example, on GNU/Linux, ls -b outputs:

vacation\ 2022

while on macOS it outputs:

vacation 2022