[comp.emacs] New Improved Elisp Directory, part 0 of 3

dsill@RELAY-NSWC.NAVY.MIL (Dave Sill) (12/23/88)

I know, I know, you're all saying to yourselves "Not again, he just
posted one of those."  Please bear with me.

I wasn't really pleased with way I was doing the directory before.  I
just had too much information to try to squeeze into 80 columns.  I
had originally wanted to have date field, but there just wasn't enough
room.  I was getting fed up with having to leave info out and
abbreviating all over the place.  The last straw, though, was a letter
from Mark Ardis (thanks Mark) that suggested moving the description
into the first 80 columns since it's more frequently used than the
author or address. He also suggested adding a date field.

So I gave it some thought and decided to totally rework the whole
thing.  I figured the most flexible and easiest to maintain approach 
would be to put the info in a flat database and use something like awk
to generate a readable report.  So that's what I did.

The database consists of newline separated records with vertical-bar
separated fields.  I wrote a simple awk/shell script to generate the
Directory in the new format.  My plans are to distribute the script,
database, and directory once now, and to periodically send out updated
copies of the datafile.  That will minimize the amount of net traffic
and allow you to fiddle around with the format script if you don't
like my layout or perhaps write other scripts or elisp functions to
work with the database.

The database now contains two new fields: date and version.  Date is
either the date of last modification as given in the code or the date
it was posted.  The version is, of course, the version of the code as
listed by the author.  Which reminds me...

I'd like to make a request of contributors to the pool of free elisp.
It would be very helpful to all if you'd put a short header at the
beginning of any code you produce, not matter how small, simple, or
obvious you think it is.  Such a header should contain:

	Name: the name of your product
	Author: your name and net address and/or snail address
	Date: date of release or last modification
	Version: major version number and patch level
	Description: what it does and any other info

As always, I'm open to suggestions.  And, please, keep that code a
comin'!

wjc@ho5cad.ATT.COM (Bill Carpenter) (12/29/88)

In article <33803@bbn.COM> dsill@RELAY-NSWC.NAVY.MIL (Dave Sill) writes:
> I'd like to make a request of contributors to the pool of free elisp.
> It would be very helpful to all if you'd put a short header at the
> beginning of any code you produce, not matter how small, simple, or
> obvious you think it is.  Such a header should contain:
>
>	   Name: the name of your product
>	   Author: your name and net address and/or snail address
>	   Date: date of release or last modification
>	   Version: major version number and patch level
>	   Description: what it does and any other info

I'd like to suggest one elaboration.  For "name", please use the name
of the file where you imagine it ought to reside.  As an unofficial
keeper of things locally, I often grab what look like useful items
even if I figure I won't use them personally.  If they don't have a
suggested filename, I make one up.  The only trouble is that if
updates come in or if the package becomes part of the official
GNUemacs distribution, I might not be alert enough to realize it's
something I already have someplace.  Of course, this leaves lots of
litter around in my local elisp directory.

Here are some further nice things about filenames:

1.  Avoid filenames the same as those already under $GNU/lisp, even if
you intend your stuff as a complete replacement.  Since I let others
fish around in my local elisp directory, I'd prefer to not surprise
them by pre-empting any standard stuff.

2.  Just like $GNU/lisp, please use filenames that are 13 or fewer
characters when you include the ".el".  More than once yours truly has
zapped the source file by byte-compiling something that happened to
already be 14 characters.  Sure made me feel smart.

Thanks a heap, and thanks for the heaps (of elisp)!
--
--
   Bill Carpenter         att!ho5cad!wjc  or  attmail!bill