Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!tut.cis.ohio-state.edu!flash.alliant.com!sdr From: sdr@flash.alliant.com (Stephen D. Rogers) Newsgroups: gnu.emacs Subject: Re: Emacs Lisp Archives -- organization Message-ID: <8906232104.AA01548@flash.> Date: 23 Jun 89 21:04:06 GMT Sender: daemon@tut.cis.ohio-state.edu Distribution: gnu Organization: GNUs Not Usenet Lines: 110 >>From: sdr@flash.Alliant.COM (Stephen D. Rogers) >From: dsill@relay.nswc.navy.mil == More on the author id == >>It would also be worthwhile to provide an AUTHORS file for the archive, >>which provided a cross reference of author id, name, and e-mail address. >>For example, >> >> sdr "Stephen D. Rogers" srogers@graphics.alliant.com > >Oops, I thought the author's ID would be his login name. Otherwise, a >good idea. It would be, unless someone with that login name has already submitted something to the archive. Remember, in that case I suggested that we tack a digit onto the login name. For example, someone else with the login name `sdr' might submit something to the archive, and would have to be known as `sdr1'. Their entry in the AUTHORS file might look like this, sdr1 "Stefan D. Roland" sdr@somewhere.com I called the first field an author id because sometimes it isn't the author's login name (because of the digit tacked on). == Extensions and shar/patch pieces == >>One last thought: If file name length is an issue, perhaps the author >>specification should be an additional directory level, rather than >>a prefix. For example, >> >> (autoload 'shell-mode "mode/sdr1/shell") > >I suppose it is. I'd like to keep all names at or below 14 characters >(13 for .el files to prevent conflict with the corresponding .elc >file.) for SysV folks. Should I even try to indicate the type of the >file using an extension? How about .el (elisp), .shar (shar archive), >.pat (diffs intended for patch)? Some extensions I have seen in use: .el (elisp), .shar (shar archive), .patch (diffs intended for patch), .Z (compress). It seems like shar archives often come in numbered pieces, and patches are numbered too. So, you could put the pieces in a `shar' or `patch' subdirectory. Again, this makes it easier to live with restrictions on file name length. For example, mode/sdr1/shell/shar/01 mode/sdr1/shell/shar/02 ... mode/sdr1/shell/shar/10 The leading zeroes make things sort properly. Just as an aside, people without file name length restrictions could easily transform these kinds of pathnames. For example, sdr1/shell ==> sdr1-shell shar/01 ==> 01.shar yielding mode/sdr1/shell/shar/01 ==> mode/sdr1-shell/01.shar The archive could easily provide scripts to do this. Even better, if the archive was maintained on a machine that didn't have file name length restrictions, we could provide scripts to transform the other way (to limited length names). == If we didn't embed author id in package pathname... another way == >>Maybe better: we should just add the digit to the package name as >>an extension. For example, >> >> (autoload 'shell-mode "mode/shell.1") >> >>In this case, the first field in the AUTHORS file should be the >>relative package name instead of the author id. > >You lost me here. Could you explain that differently? > >-Dave Sill > dsill@relay.nswc.navy.mil > elisp archive coordinator Lets see... I hope you don't mind, but I've thought of a slightly better way, so I'll just describe that. I would rather have the author id embedded in the package pathname, but if it wasn't, then we would need to worry about package name collisions. To resolve them, we could tack a number onto the end of the package name. For example, (autoload 'shell-1-mode "mode/shell-1") (autoload 'shell-2-mode "mode/shell-2") sets up to load two different shell mode packages. Then, we would need a PACKAGES file which provided a cross reference between package names and the package's author. The first field would be the package name, and the second would be the author id. For example, shell-1 sdr1 says that author `sdr1' wrote shell-1. By referring to the AUTHORS file, we know that sdr1 is "Stefan D. Roland", and so forth. Again, I would rather have the author id embedded in the package pathname. Stephen D. Rogers srogers@graphics.alliant.com Alliant Computer Systems (508)486-4844 One Monarch Drive Littleton, MA 01460