emacs-devel
[Top][All Lists]
Advanced

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

Re: find-library-name fails if file (with no extension) exists.


From: David Kastrup
Subject: Re: find-library-name fails if file (with no extension) exists.
Date: Wed, 22 Nov 2006 11:03:42 +0100
User-agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.90 (gnu/linux)

Eli Zaretskii <address@hidden> writes:

>> From: David Kastrup <address@hidden>
>> Date: Wed, 22 Nov 2006 01:47:53 +0100
>> Cc: Juanma Barranquero <address@hidden>, Emacs Devel <address@hidden>
>> 
>> You can't decide that two file names might indicate the same file
>> without doing an actual file operation.  You can't decide whether
>> writing a file would conflict with an existing file without actually
>> doing the write (and asking the operating system to fail in case the
>> file exists).  You can't really base any decision on existing file
>> names.  As a rule of thumb, if there is a possibility for a race
>> condition, there is a possibility for filename aliasing trouble.  And
>> not every potential race condition is a problem.
>
> The same trouble exists with hard links.

No.  With a hard link you _can_ decide whether writing a file would
conflict with an existing file without actually doing the write by
looking at the existing file names in the current directory.

>> Things like file name completion are simply something which is
>> impossible to get right.
>
> Really?  Then how come this has been satisfactorily solved several
> times already, both in Emacs and in ports of Bash?

It has?

So why do I get "No Match" when typing

C-x C-f /c/my docu <TAB>

when there is a directory

/c/My Documents/

and opening

/c/my documents/test.tex

works.  And why doesn't Emacs realize that it already has this file
open when I now do

C-x C-f /c/My Documents/test.tex RET

and opens another buffer for it?

I don't see this as a satisfactory solution.

-- 
David Kastrup, Kriemhildstr. 15, 44793 Bochum




reply via email to

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