Mailing-List: contact cygwin-help@sourceware.cygnus.com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe@sources.redhat.com>
List-Archive: <http://sources.redhat.com/ml/cygwin/>
List-Post: <mailto:cygwin@sources.redhat.com>
List-Help: <mailto:cygwin-help@sources.redhat.com>, <http://sources.redhat.com/ml/#faqs>
Sender: cygwin-owner@sources.redhat.com
Delivered-To: mailing list cygwin@sources.redhat.com
Date: Tue, 2 Oct 2001 13:44:19 -0400
From: Christopher Faylor <cgf@redhat.com>
To: cygwin@cygwin.com
Subject: Re: bash 2.04 can't complete ~/name if $HOME set to c:/users/foo?
Message-ID: <20011002134419.E12071@redhat.com>
Reply-To: cygwin@cygwin.com
Mail-Followup-To: cygwin@cygwin.com
References: <5.1.0.14.2.20011001192343.00a74568@pop.atg.com> <5.1.0.14.2.20011001192343.00a74568@pop.atg.com> <5.1.0.14.2.20011002102745.00a6df08@pop.atg.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <5.1.0.14.2.20011002102745.00a6df08@pop.atg.com>
User-Agent: Mutt/1.3.21i

On Tue, Oct 02, 2001 at 10:33:36AM -0400, Matt Landau wrote:
>At 05:37 AM 10/2/2001, David Starks-Browning wrote:
>>If your non-Cygwin application (like Emacs) requires HOME be set in a
>>non-Cygwin way, then don't start emacs from your Cygwin bash shell.
>>
>>If you must invoke your emacs command from the Cygwin bash shell, you
>>could put the emacs command in a windows .bat file, and invoke that
>>file from Cygwin bash.  In the .bat file, your HOME variable should be
>>set the way Emacs needs it.
>>
>>Hope this helps.
>
>Let me clarify the problem.
>
>Emacs doesn't care what $HOME is set to, it cares what path it sees on
>the command line.  The issue is that bash, by default, expands
>~/filename to a posix-style path, resulting in commands like "emacs
>/c/users/matt/.bashrc", which doesn't work for any non-Cygwin program.
>
>Saying "don't run non-Cygwin programs from bash" isn't a thrilling
>answer; an interactive shell is most useful when you can use it as your
>shell for *everything*.

It may not be a thrilling answer but it is certainly a reasonable answer
in a mailing list called cygwin@cygwin.com.

I am a little confused by this thread, however, if you set the HOME
environment variable to a unix-style path, cygwin is supposed to set it
back to MS-DOS format prior to executing a non-cygwin application.  So,
the simple solution seems to be that you should just use cygwin paths.

It is unlikely that anyone who is working on cygwin development, a large
part of which is devoted to providing unix path handling, is going to be
overly interested in modifying bash to handle MS-DOS paths.

So, as has been suggested elsewhere, the best solution is to inspect the
bash source code and provide a fix.  I can't speak for anyone else but I
know that I, personally, have no interest in making bash work with
MS-DOS paths.

cgf

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

