Subject: bug#2607: 23.0.90; `system-type' test in `shell-quote-wildcard-pattern'

From: "Drew Adams" <[email-masked]>
Date: Mon, 9 Mar 2009 15:40:32 -0700

> > The code of `shell-quote-wildcard-pattern' has this test:
> > (memq system-type '(ms-dos windows-nt cygwin)).  Looking at that
> > code, the inclusion of `cygwin' here seems suspect to me.
> >  
> > The Elisp manual says only that a `system-type' of `cygwin' means
> > Emacs running on Cygwin ("type of operating system Emacs is 
> > operating on"). Dunno what that means, really, but I'm guessing
> > that such a system would use a shell, such as `bash', that treats
> > characters in file names similarly to how `bash' treats them for 
> > GNU/Linux or UNIX.
> 
> Cygwin is in the same list because Cygwin runs on Windows, and Windows
> does not allow the `"' character in file names.  It's true that Cygwin
> uses Bash as the shell, but no shell can fix what the underlying
> filesystem does not support.

OK, thanks for checking. I'm not claiming the code is wrong; I just thought it
might be.

For me, using `bash' with Cygwin, but with Emacs built natively, escaping the
chars that are handled in the UNIX part of the code makes most sense. But yes,
the `"' thing is of course true. That seems to be a separate matter.

It was mainly the set of chars for which escaping occurs that seemed to me might
better follow the UNIX model (for Cygwin). But if you've checked the code and
feel it is right, that's good enough for me.