emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: init_buffer PWD fix


From: 宮下 尚:HIMI
Subject: Re: init_buffer PWD fix
Date: Thu, 25 Apr 2002 05:41:37 +0900
User-agent: T-gnus/6.15.4 (based on Oort Gnus v0.04) (revision 11) SEMI/1.14.3 (Ushinoya) FLIM/1.14.2 (Yagi-Nishiguchi) APEL/10.3 Emacs/21.1 (i386-msvc-nt5.1.2600) MULE/5.0 (SAKAKI) Meadow/1.99 Alpha1 (AWOFUCHI)

Paul Eggert <address@hidden> writes:

> Yes, in this case, Emacs will use PWD rather than the name you
> specified to the non-POSIX shell.  But this also happens on Unix
> platforms with non-POSIX shells.  It is not a problem that is specific
> to Windows.  And once we fix the bug in w32.c it will not be that
> serious a problem, since Windows Emacs will act like GNU/Linux or Unix
> Emacs in this situation.

I can't understand why you stick to "PWD" environment variable on Windows.
The information almost all of the application dose not set is so important?

On Unix, shell and lots of programs usually put "nicer" pathname to "PWD".
On Windows, most programs put "nicer" pathname to Get/SetCurrentDirectory().

Could you agree on this simple statement?
Otherwise, would you really make convenience for few applications
that set "PWD".  To make matters worse, because of such applications,
"PWD" may has wrong value, thus it may make displeasing inconvenience for
most applications that don't set "PWD".

>> > On Unix, most applications don't use $PWD; they use the working
>> > directory.  The only applications that set and use $PWD are those
>> > that care about using a "nice" name for the working directory.
>> 
>> I disagree on it.  According to my knowledge, lots of Unix applications
>> use "PWD".
>
> Some do, but most don't.  For example, GNU 'tar' doesn't, even though
> it uses getcwd (in order to implement the -C option).
>
>> Almost all of shells set "PWD" properly.  But on Windows, even
>> the standard shell program, "cmd.exe" dose not set "PWD".
>
> On Solaris 8, the standard shell program /bin/sh is not a POSIX shell,
> and it does not set PWD.  The situations are analogous.  I still don't
> see why Windows should be treated differently.

And then, why do you use getcwd() instead of "PWD" on Unix?  It's because
getcwd() normalize pathname, and it's incovenient for many users, isn't it?

But Windows never normalize pathname set by SetCurrentDirectory().  So users
would not encounter the problem if we switch to use getcwd().  And I think it's
more convenient on Windows.

  With regards,

from himi







reply via email to

[Prev in Thread] Current Thread [Next in Thread]