emacs-devel
[Top][All Lists]
Advanced

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

Re: emacsclient: support `/' directory separator on w32


From: David Kastrup
Subject: Re: emacsclient: support `/' directory separator on w32
Date: Wed, 29 Nov 2006 20:29:25 +0100
User-agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.91 (gnu/linux)

Lennart Borgman <address@hidden> writes:

> David Kastrup wrote:
>
>> C-x C-f C:/dir/xxx.txt RET
>> M-x cd RET D:/woozle RET
>> C-x C-f D:/junk/ddd.txt RET
>> M-x cd RET D:poz RET      [ D:/poz or D:/woozle/poz? ]
>> C-x C-b xxx.txt RET
>> C-x C-f D:pizza RET [ D:/woozle/pizza, D:/poz/pizza,
>>                       D:/woozle/poz/pizza  or D:/pizza? ]
>
> Did not my message get through? My suggestion was when setting
> default-directory also set the working directory for the OS.

default-directory is a buffer-local variable.  I might be repeating
myself.  Changing it in one buffer does not affect other buffers.  I
have seen no argument that it would be a good idea to change this.

You are basically proposing that a (setq default-directory ... in one
buffer can affect the operation of stuff in other buffers.

If you take a look at the code for `cd', you'll see that its only
side-effect is setting the buffer-local `default-directory'.  There
are no system calls involved.

> Then GetFullPathName will do the name resolving without any problem
> using the last value for the working directory on the drive
> specified to GetFullPathName.
>
> In this case
>
> C-x C-f C:/dir/xxx.txt RET
> M-x cd RET D:/woozle RET (Sets default-directory to D:/woozle/)
> C-x C-f D:/junk/ddd.txt RET (Sets default-directory to D:/junk/)
> M-x cd RET D:poz RET   => D:/junk/poz
> C-x C-b xxx.txt RET (Sets default-directory to C:/dir/)
> C-x C-f D:pizza RET => D:/junk/pizza

I don't see how and when you are planning to call the operating
system.  `default-directory' changes in every visited buffer.  That
means that a (with-current-buffer "ddd.txt" nil) can change the
meaning of "D:xxx" in the current buffer when `default-directory' in
"ddd.txt" is "D:/plopp", and `default-directory' in the current buffer
is "C:/blubb".

The mere act of switching to a different buffer is supposed to have
such effects?

This is not sane.  We should certainly not do anything like that now,
and I severely doubt we should ever do that.

-- 
David Kastrup, Kriemhildstr. 15, 44793 Bochum




reply via email to

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