From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Thien-Thi Nguyen Newsgroups: gmane.emacs.devel Subject: Re: loaddefs.el filenames as seen by `update-file-autoloads' Date: Mon, 12 May 2003 20:41:04 -0400 Sender: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Message-ID: References: <200305122305.h4CN5EGw009946@rum.cs.yale.edu> Reply-To: ttn@glug.org NNTP-Posting-Host: main.gmane.org X-Trace: main.gmane.org 1052786510 19158 80.91.224.249 (13 May 2003 00:41:50 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Tue, 13 May 2003 00:41:50 +0000 (UTC) Cc: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Tue May 13 02:41:47 2003 Return-path: Original-Received: from quimby.gnus.org ([80.91.224.244]) by main.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 19FNrX-0004ys-00 for ; Tue, 13 May 2003 02:41:47 +0200 Original-Received: from monty-python.gnu.org ([199.232.76.173]) by quimby.gnus.org with esmtp (Exim 3.12 #1 (Debian)) id 19FNyB-0005CX-00 for ; Tue, 13 May 2003 02:48:40 +0200 Original-Received: from localhost ([127.0.0.1] helo=monty-python.gnu.org) by monty-python.gnu.org with esmtp (Exim 4.10.13) id 19FNsf-00068K-09 for emacs-devel@quimby.gnus.org; Mon, 12 May 2003 20:42:57 -0400 Original-Received: from list by monty-python.gnu.org with tmda-scanned (Exim 4.10.13) id 19FNs7-0005UG-00 for emacs-devel@gnu.org; Mon, 12 May 2003 20:42:23 -0400 Original-Received: from mail by monty-python.gnu.org with spam-scanned (Exim 4.10.13) id 19FNr3-00053r-00 for emacs-devel@gnu.org; Mon, 12 May 2003 20:41:20 -0400 Original-Received: from colo.agora-net.com ([207.245.84.69]) by monty-python.gnu.org with esmtp (Exim 4.10.13) id 19FNqt-0004UK-00 for emacs-devel@gnu.org; Mon, 12 May 2003 20:41:07 -0400 Original-Received: from ttn by colo.agora-net.com with local (Exim 3.34 #1) id 19FNqq-0004xY-00; Mon, 12 May 2003 20:41:04 -0400 Original-To: monnier+gnu/emacs@rum.cs.yale.edu In-reply-to: <200305122305.h4CN5EGw009946@rum.cs.yale.edu> (monnier+gnu/emacs@rum.cs.yale.edu) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1b5 Precedence: list List-Id: Emacs development discussions. List-Help: List-Post: List-Subscribe: , List-Archive: List-Unsubscribe: , Errors-To: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Xref: main.gmane.org gmane.emacs.devel:13813 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:13813 From: "Stefan Monnier" Date: Mon, 12 May 2003 19:05:14 -0400 Any reason why it's upcased ? Is it just the tradition under VMS ? i don't know about the internals of other programs under vms, but yes, traditionally (Richard Levitte's work) emacs has upcased filenames. i suppose there may be code that relies on this behavior by now. one notable exception is the buffer name -- that is downcased. At least under Emacs, the tradition is rather to use lowercase for most file names, so it would make more sense to downcase (and most places where we want to ignore case, we downcase rather than upcase, your code below being a prime example). ok. Also it would be better to do what W32 does: preserve capitalization. Is that possible ? a directory listing from the command line shows filenames all uppercase, so upcasing everything internally is indeed preserving capitalization. (this possibility is the current reality.) perhaps i misunderstand you. I'd rather use file-name-equal. thanks for the tip -- will check it out. i'm working from 21.2 release at the moment, will move to 21.3 after "make bootstrap" (actually "mms bootstrap") works. Admittedly, since loaddefs.el is still under CVS control and is hence shared between all kinds of systems, it might be better to just systematically downcase, independently from the system in use. yes, this is one important factor that i didn't mention: future harmonization of build process, including supporting "make bootstrap" from fresh cvs checkout. Hold it. What about the file name in the (autoload ...) form ? the cvs loaddefs.el uses lowercase. the change i proposed would maintain that convention. this is possible because under vms, `expand-file-name' upcases (and practically everything filesystem related passes through that function at some point -- sometimes multiply!). Since the `autoload' might be used on case-sensitive systems, it needs to have the right capitalization (now there's an example where preserving capitalization in filenames (even if you ignore it) is beneficial). well, unixoids are case-sensitive. we sidestep the problem there by adhering in practice to lowercase filenames that moreover are unique amongst themselves w/o regard to case. the proposed change is not for all systems, but only those that are vms-like. > changing `load-name' instead of making the comparison case-insensitive > means loaddefs.el will have lowercased frags (under vms), a change that > is transparent to `expand-file-name'. is this ok? other ideas? I don't understand your references to expand-file-name. Could you lay out what you mean ? here is an example under vms: (expand-file-name "foo.el") => "AXPA:[TTN.EMACS.EMACS212_3]FOO.EL" because autoloading eventually triggers loading which eventually uses `expand-file-name', we don't need to store "FOO.EL" in loaddefs.el to actually access "FOO.EL" on disk; "foo.el" is sufficient (under vms). thi