Phone book

This archive contains a number of small programs which manage a small database of phone numbers and addresses like a rolodex style program. These programs are intended to be used from the command line.


phone -- Look up a phone number or address

The phone program is a program which takes a list of names. The names need not be complete, just a substring of the full name.

The phone entry for all names matching any of the arguments are displayed.


birthday -- Generate birthday list

The birthday program generates a list of birthdays suitable for certain calendar programs.


chkphone -- Check the phone book for certain errors

The chkphone program checks the database for certain irregularities. This includes such things as repeated names, repeated field names, etc.


srtphone -- Print a sorted phonebook

The srtphone program sorts the phone book for printing. If you list any arguments, these are taken to be names which show up in the Lists field.

This takes a set of optional parameters.


txt2ps -- Convert a text file to PostScript

The txt2ps program converts a simple text file to a very simple PostScript file. Don't expect miracles.


phone2html -- Convert the phone book to HTML

The phone2html program converts the phone book into a series of web pages.


format -- A description of the database format

The phone.dat file is a simple text database stored in the user's ~/Notes/ directory. The phone program converts this file into a DBM file for slightly better performance.

The phone.dat file consists of comment lines (starting with "#"), blank lines (which are also ignored), names and values (e.g. Name=Dave Regan), and record separators (%%).

The field names are well defined although it is fairly straightforward to add additional names.

Field nameDescription
Name The name of the individual Sometimes a husband/wife/children are combined here, especially when there is no distinguishing information such as Birthdate.
SortAs Use this string instead of the name when sorting this entry.
ResidenceName The name of the residence, such as: Mr. and Mrs. soandso and Family
This is used for mailings. This title will be used in preference to the name for mailing labels. Note that the labels are only generated based upon other information. It is somewhat arbitrary which entry this goes on.
InResidence Indicates the residence that this person resides in. A good place to look for an address if needed.
Lists A list of which mailing lists this entry is for. Lists defined so far:
  • XMAS Christmas list
  • NORMAL Home phone book
  • NoList Don't print this entry
  • WORK Work phonebook
If a Lists entry isn't defined, assume that it is in the NORMAL category. You can make your own lists at will.
Phone Phone number
WorkPhone Work phone number
CellPhone Cellular phone number
Fax Fax phone number
Modem Modem phone number
Pager Pager phone number
E-mail E-mail address
WorksAt Name(s) of places the person works
Address1 First line of an address
Address2 Second line of an address
Anniversary Date of wedding anniversary
Birthday Date of birthday
Comment1 Arbitrary comments
Comment2 Arbitrary comments
Reference A reference as to why I know this person