[Back to TkGoodStuff] TkGoodStuff Biff

TkGoodStuff Biff

Description

The Biff client is a new-mail notification utility. It can display an icon indicating the presence or absence of new mail, a text message indicating "No Mail"/"New Mail", or both. At a set interval Biff looks for unread material in your mail spool file (or whatever file you define), and flags the presence of new mail by beeping and changing the color of the icon and label. If you like, it will also post a notice (dialog box) on the screen with the sender and subject of the new messages.

Clicking mouse button 1 on the Biff button launches your mailer program (the button stays depressed and inoperative until you exit the mailer program). Button 3 gives you a list of your messages. Button 2 instructs Biff to regard as old mail any mail currently in the file. (displaying an "unlit" new mail icon and/or the label "(ignored)"), and to wait until you get yet more mail before notifying you.

Note for those who experience problems: You can choose between two methods of testing for new mail: "atime" and "filesize" (the variable "Biff_method" holds the name of the chosen method, "atime" by default). With the method "atime", Biff decides that there's new mail when the file has been modified when or after it has last been accessed (its mtime is no less than its atime). With the method "filesize", Biff decides that there's new mail when the size of the file grows, and that there's no new mail when it is zero or when it shrinks. The "atime" method is better for those who keep old mail in their spool file. The "filesize" method is better for those who normally regard all mail in the spool file as new mail. (It is straightforward, if you know tcl, to add more methods in the file Biff_tcl; if you write one, please send it to me.)

Invocation and Variables

To invoke Biff, include in your ~/.tkgoodstuffrc:
Client Biff
To set the variable XXXX to the value YYYY, in your ~/.tkgoodstuffrc, include the line:
set XXXX YYYY
Here are the variables relating to Biff and their default values (notes: (i) $XXX means: the value of our variable XXX; (ii) "$env(XXXX)" means: the value of the environment variable XXXX):

Variable Function Possible Values Default
Biff_user (Helps define other variables) any username $env(USER)
Biff_file The file to look at for new mail any filename {/usr/spool/mail/$Biff_user}
Biff_mailer Which program to launch to read the mail any unix command exmh
Biff_update_interval Time between mail checks number of seconds 60
Biff_update_offset time between program execution and first mail check number of seconds 1
Biff_vigilance_interval Time between mail checks at times of heightened vigilance (see PopImap ) number of seconds 5
Biff_vigilance_offset time between vigilance heightening and first mail check number of seconds 5
Biff_vigilance_duration time of heightened vigilance number of seconds 30
Biff_method How to check for new mail (see above). atime/filesize atime
Biff_frm Whether to automatically list newly arrived messages in a dialog 1/0 0
Biff_frm_command What command gives us such a list any unix command {frm -s new $Biff_user}
Biff_nolabel Omit label on button 1/0 0
Biff_nobeep Don't beep 1/0 0
Biff_nomail_image Icon indicating no mail any icon file that your wish interpreter understands $images/flagdown
Biff_newmail_image Icon indicating new mail any icon file that your wish interpreter understands $images/flagup
Biff_newmail_foreground
Biff_newmail_background
Biff_nomail_foreground
Biff_nomail_background
Colors for icons. Foreground works only with bitmaps. (standard) chartreuse1
$TKGbuttonbackground
$TKGbuttonforeground
$TKGbuttonbackground

Sep 14, 1995. Mark Crimmins markcrim@umich.edu

[Back to TkGoodStuff]