On a Cygwin XEmacs, eshell-binary-suffixes defaults to '("") when it
should be '(".exe" ".com" ".bat" ".cmd"
"").
As a result an eshell user in a Cygwin XEmacs must use the full
filename of an external command, e.g. foo.exe
This inline predicate:
(defsubst eshell-under-windows-p ()
"Return non-nil if we are running under MS-DOS/Windows."
(memq system-type '(ms-dos windows-nt)))
returns nil in Cygwin. It would be easy to include the value of
system-type for a Cygwin build in this test, but that's not the right
thing. It's probably the case that eshell should treat a Cygwin build
as Unix sometimes and Windows others.
--
John Paul Wallington