Subject: RE: B19; supporting a DOS-path such as C:\a\b\c;C:\d\e\f;D:\g\h
From: [email-masked] (Bob McGowan)

15 May 1998 15:00:26 -0700
Message-ID: <[email-masked]>
Mime-Version: 1.0
Content-Type: text/plain
To: "[email-masked]'" <[email-masked]>

-----Original Message-----
From: [email-masked] [mailto:[email-masked]]
Sent: Wednesday, May 13, 1998 2:32 PM
To: [email-masked]
Subject: B19; supporting a DOS-path such as C:\a\b\c;C:\d\e\f;D:\g\h

> Cygnus Folks,
> 
> Let me first say that I like using bash on windows (cmd.exe makes me
> insane). Naturally, bash uses a Unix-style PATH for finding things.

My sentiments, exactly.

> However, when bash runs "native" Windows applications these see a
> Unix-style PATH but expect a DOS style path. An example of this would
be
> 'nmake', or the Microsoft Tools (C compiler, linker, etc).
> 

Too bad you have to go "native", but I know what you mean...

> After checking the sourcecode, it seems as if src/bash/general.c lines
> 881 & 883 is where the magic happens (i.e., splitting on ':'). What
> about allowing an environment variable that controls what character is
> used to split the PATH?
> 
> A question at hand is if the implementation of "open" and friends in
> cygwin32.dll understand DOS-style paths - but they might do that, so
it
> should work.
> 
> Any feedback on this one?

I have (and it is still available at one or more of the big DOS
archives)
a tool set and ksh compatible shell for DOS (16 bit and 32bit with DOS
extender).  The author of this shell introduced an interesting feature,
which perhaps could be used in bash.  He modified the shell to read a
special setup file that contained a list DOS command names.  If I
remember
correctly, when the shell saw one of these names, it did no command line
changes or substitutions but simply passed the whole line to cmd.com
with
the /c option.  It has been a while since I used it and I do not for
sure
recall if there may have been _some_ processing of the line (for $var's
and backticks at least) but in general if backslashes were seen they
were
left as is and if forward slashes were used in a path, they were
translated
to backslashes.

You get the general idea, though, that the shell was changed to allow
the
co-existence of both types of commands.  Maybe this could also work for
bash
with the cygwin dll?

---
Bob McGowan
i'm:  bob dot mcgowan at artecon dot com
-
For help on using this list (especially unsubscribing), send a message to
"[email-masked]" with one line of text: "help".