From: Eli Zaretskii <eliz@gnu.org>
Cc: lennart.borgman.073@student.lu.se, emacs-devel@gnu.org
Subject: Re: find-library-name fails if file (with no extension) exists.
Date: Wed, 22 Nov 2006 23:56:32 +0200 [thread overview]
Message-ID: <uirh7m9gv.fsf@gnu.org> (raw)
In-Reply-To: <85r6vvmyy1.fsf@lola.goethe.zz> (message from David Kastrup on Wed, 22 Nov 2006 13:46:14 +0100)
> Cc: Eli Zaretskii <eliz@gnu.org>, emacs-devel@gnu.org
> From: David Kastrup <dak@gnu.org>
> Date: Wed, 22 Nov 2006 13:46:14 +0100
>
> > Are there any reason in those relatively simple cases that they can
> > not be solved?
>
> How would you do that? Once a path component is completed, you can
> try to do an actual stat call whenever a file _appears_ not to be
> there (and I guess that this is what happens, since `/c/my documents/'
> _is_ a valid component for further completion), but an incomplete file
> name? There is no function of the operating system for asking "is
> this a partial match with any filename"?
It looks like you never saw any real example of file-name completion
code. Perhaps you should, because there's no problem at all to solve
this. I even mentioned it: readdir coupled with fnmatch (which has
flags to become case-insensitive). Of course, MS-Windows has a native
API to do this on the system call level, but that's not an important
detail.
> And I also don't see how file-truename (which presumably is used for
> collision detection) can figure out a case-corrected path without
> doing the (slow) equivalent of `/bin/pwd'.
There are a few methods, and file-truename applies one of them on
windows-nt systems, see the code; there are other methods, some of
them better.
Again, it's a non-issue if you know that you shouldn't treat file
names as simple strings. You may think it's a very hard problem, but
it isn't.
next prev parent reply other threads:[~2006-11-22 21:56 UTC|newest]
Thread overview: 69+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-11-21 16:22 find-library-name fails if file (with no extension) exists Juanma Barranquero
2006-11-21 18:24 ` Romain Francoise
2006-11-21 19:09 ` Juanma Barranquero
2006-11-21 20:07 ` Romain Francoise
2006-11-21 21:58 ` Juanma Barranquero
2006-11-22 7:28 ` Romain Francoise
2006-11-22 12:14 ` Juanma Barranquero
2006-11-22 12:35 ` Juanma Barranquero
2006-11-22 13:54 ` Romain Francoise
[not found] ` <f7ccd24b0611220644m1d8944dq5943175c347cde3e@mail.gmail.com>
2006-11-22 19:34 ` Juanma Barranquero
2006-11-22 19:47 ` Romain Francoise
2006-11-22 20:33 ` Lennart Borgman
2006-11-22 21:02 ` Juanma Barranquero
2006-11-21 20:07 ` Eli Zaretskii
2006-11-21 20:47 ` Andreas Schwab
2006-11-21 21:04 ` Lennart Borgman
2006-11-21 21:47 ` Juanma Barranquero
2006-11-21 21:48 ` Juanma Barranquero
2006-11-21 22:23 ` David Kastrup
2006-11-21 22:57 ` Juanma Barranquero
2006-11-21 23:19 ` David Kastrup
2006-11-21 23:25 ` Lennart Borgman
2006-11-21 23:33 ` David Kastrup
2006-11-21 23:36 ` Juanma Barranquero
2006-11-22 0:16 ` Lennart Borgman
2006-11-22 0:47 ` David Kastrup
2006-11-22 0:59 ` Lennart Borgman
2006-11-22 1:04 ` David Kastrup
2006-11-22 1:27 ` Lennart Borgman
2006-11-22 1:56 ` David Kastrup
2006-11-22 4:25 ` Eli Zaretskii
2006-11-22 9:37 ` Juanma Barranquero
2006-11-22 10:05 ` David Kastrup
2006-11-22 18:44 ` Eli Zaretskii
2006-11-22 4:22 ` Eli Zaretskii
2006-11-22 10:03 ` David Kastrup
2006-11-22 12:07 ` Lennart Borgman
2006-11-22 12:46 ` David Kastrup
2006-11-22 21:56 ` Eli Zaretskii [this message]
2006-11-22 22:06 ` David Kastrup
2006-11-22 22:33 ` Eli Zaretskii
2006-11-23 19:47 ` Jan Djärv
2006-11-22 18:40 ` Eli Zaretskii
2006-11-22 19:13 ` David Kastrup
2006-11-22 22:04 ` Eli Zaretskii
2006-11-22 4:17 ` Eli Zaretskii
2006-11-21 23:34 ` Juanma Barranquero
2006-11-21 23:52 ` David Kastrup
2006-11-22 0:01 ` Juanma Barranquero
2006-11-22 0:34 ` David Kastrup
2006-11-22 0:38 ` Juanma Barranquero
2006-11-22 9:53 ` Andreas Schwab
2006-11-22 4:14 ` Eli Zaretskii
2006-11-22 9:53 ` David Kastrup
2006-11-22 18:38 ` Eli Zaretskii
2006-11-22 19:27 ` David Kastrup
2006-11-22 22:09 ` Eli Zaretskii
2006-11-22 22:18 ` David Kastrup
2006-11-22 13:16 ` Richard Stallman
2006-11-22 14:48 ` Juanma Barranquero
2006-11-24 22:49 ` Richard Stallman
2006-11-22 4:10 ` Eli Zaretskii
2006-11-22 9:35 ` David Kastrup
2006-11-22 18:43 ` Eli Zaretskii
2006-11-22 19:25 ` David Kastrup
2006-11-27 19:32 ` Stuart D. Herring
2006-11-27 19:06 ` Stuart D. Herring
2006-11-28 19:19 ` Eli Zaretskii
2006-11-21 20:06 ` Eli Zaretskii
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=uirh7m9gv.fsf@gnu.org \
--to=eliz@gnu.org \
--cc=emacs-devel@gnu.org \
--cc=lennart.borgman.073@student.lu.se \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.