SINGLEFILEINDEX

SINGLEFILEINDEX is a package for giving the user an alphabetical
function index on the front of any lisp file listed thru lisp.
The first page gives the filename and time of creation and the
time of the listing.  Following that (on possibly more than one
page) is N columns of function names and index numbers, where the
index number indicates the function's linear occurence within the
file.  The number of columns is a function of the length of the
longest function name and the number of functions in the file.
The the file is printed with the filename, page number, and
current function number printed at the top of every page and each
function is preceded by it's index number righ-justified on the
page.

When SINGLEFILEINDEX is loaded, LISTFILES1 is redefined to list
your files as specified above.  It uses the following variables:
FILELINELENGTH to do the right-justification and columnating;
PRINTER (default value is LPT:) as the file to open to print the
indexed version of the file; and LINESPERPAGE (default value is
58) as the number of lines on printer.  These defaults are only
used if the variables were not bound at the time SINGLEFILEINDEX
was loaded.  Note: the file being indexed does not have to be
loaded or even "noticed".

This package is similiar to the MULTIFILEINDEX package also in
LISPUSERS.  The intent, is that this SINGLEFILEINDEX be simple and fast
enough to use anytime you make a file and list it (note that
SINGLEFILEINDEX does not inform you about records, parameters, etc.
where MULTIFILEINDEX does).  MULTIFILEINDEX also works across several
files and is useful for indexing a whole "system" of files.

The function which implements this is:

singlefileindex[file;outputFile;newpageflg]
	   where FILE is the the lisp source file.  OUTPUTFILE is
	   the destination file; if its value is NIL then use the
	   globalvar PRINTER (default is LPT:) as the destination
	   file.  NEWPAGEFLG if T says to go to a new page before
	   printing the index number followed by the function
	   definition.  This puts each function definition on its
	   own page.  LISTFILES1 calls SINGLEFILEINDEX with
	   OUTPUTFILE and NEWPAGEFLG both being NIL.

Martin D. Yonke (YONKE@BBND)