2.9BSD/usr/contrib/notes/doc/4


.ch "Other Notesfile Utilities"

	The notesfile distribution includes utility programs to
provide hard copy output,
additional interfaces to user programs,
and
statistics.
They are described below.

.se "Hard Copy Output"

	The program "nfprint" sends to standard output a nicely formatted listing of
the notesfile in its command line.
Its format is:

	nfprint [-lnn] [-p] topic [ note# ] [ note#-note# ] [ ... ]

The "-l" option specifies an alternate page size (the default is
66).
The optional note number list specifies that only certain notes of the notesfile
are to be printed.  The list can specify individual notes and ranges.
The notes are printed in the order specified.

.se "Piped Insertion of Notes"

	The nfpipe program enters text from the standard input into a
notesfile:

	nfpipe topic [-t title] [ -d ] [ -a ]

The -t option allows specification of a title.  The -d and -a options
specify the director and anonymous flags respectively (if available).
If no title is specified, one is manufactured from the first line
of the note.

.se "User Subroutines"

	The nfcomment subroutine is callable from a user's C program. It
allows any user program to enter text into a notesfile:

	nfcomment (nfname, text, title, DIRFLAG, ANONFLAG)

.KS
.br
The parameters are:
.br
.ls 1
	char *nfname;	/* name of notesfile */
.br
	char *text;	/* null terminated text to be entered */
.br
	char *title;	/* if non-null, title of note */
.br
	int DIRFLAG;	/* != 0 -> director flag on (if allowed) */
.br
	int ANONFLAG;	/* != 0 -> anonymous note (if allowed) */
.br
.ls
.KE

	If the *text pointer is NULL, the text of the note will be read
from standard input.
If no title is specified the subroutine will manufacture a title
from the first line of the note.
This routine is useful for error reports, user comments
about programs, and automatic logging of statistics or internal states.

	This routine can be loaded with a C program by specifying `-lnfcom'
on the `cc' command line.

.se "Statistics"

	The notesfile system keeps statistics on where notes and responses
originate, the number of network accesses, duplications and orphaned 
responses.
Combined with the use of the log maintained by the notesfile
networking software,
monitoring notesfile traffic is
quite easy.

	The -s option specifies that only a summary is to be produced,
skipping the individual reports.
Wildcard constructs with '*', '?', '[', and ']' are
recognized by nfstats.
Invoke the statistics program with:

		nfstats [ -s ] topic1 [ ... ]

Typical output is:

.KS
.nf
.ls 1
             rbenotes on uiucdcs at  6:24 pm  May  7, 1982
                	NOTES	RESPS	TOTALS
Local Reads     	359	115	474
Local Written   	53	55	108
Networked in    	0	0	0
Networked out   	0	0	0
Network Dropped 	0	0	0
Network Transmissions: 0   Network Receptions: 0
Orphaned Responses Received: 0    Entries into notefile: 109
Total time in notefile:    66.57 minutes  Average Time/entry:   0.61 minutes
Created at 10:04 pm  May  5, 1982, Used on 3 days
.ls
.fi
.KE

	A combined set of statistics is produced at the end of listings
of more than one notesfile.
The statistics are largely self explanatory.

.se "Checking for new notes"

	The checknotes program checks if there are new notes.
The exit code is arranged to make the program useful in shell scripts:
0 (TRUE) is there are new notes, 1 (FALSE) otherwise.

	Use the "-q" option to receive a message

		There are new notes

if one or more of the notesfiles have notes/responses written since
the user's last entry time into that notesfile.

	The "-n" option is similar to the "-q" option, with the exception
that it yields output when there are no new notes. The output
of checknotes with the "-n" option is:

		There are no new notes

	Use "-v" to print the name of each notesfile with new 
notes/responses. The "-s" option is suited for use conditional
expressions in shell scripts; no output is generated by this option.