xlbiff - mailbox message previewer for X
xlbiff [ -option ... ]
The xlbiff program lurks in the background, watching your mailbox file,
waiting for new mail. When mail arrives, it invokes the MH scan(1)
command and pops up a window with the results. Clicking the left mouse
button anywhere in this window makes it go away. The window will also
disappear if iconified or if the mailbox size drops to zero.
Xlbiff accepts all of the standard X Toolkit command line options along
with the additional options listed below:
-help This option indicates that a brief summary of the allowed
options should be printed on standard output.
-bottom This option tells xlbiff to realize/unrealize() the output
window instead of using XtPopup/down(). This has the effect of
causing the window manager to reposition the window each time
it pops up, and is useful for when you specify negative Y
coordinates, ie, at the bottom of the screen. Running xlbiff
in this situation without -bottom would cause new lines to run
off the bottom edge of the screen.
+bottom Opposite of -bottom.
This option specifies the name of the file which should be
monitored. By default, it watches /usr/spool/mail/username,
where username is your login name.
This option specifies the maximum height, in lines of text, of
the xlbiff window. The default is 20.
This option specifies the maximum width, in characters, of the
xlbiff window. The default is 80.
If this option is set, xlbiff will reset the screen saver when
new mail comes in. This is useful if you're doing something
near your workstation but not on it.
Opposite of -resetSaver.
This option specifies the frequency in seconds at which xlbiff
should update its display. The default is 15 seconds.
Number of seconds to wait before popping window back down.
This option can be used to monitor events of non-lasting
importance, such as syslog or UUCP queues. The default value
of 0 disables the fade option.
This option specifies a keyboard LED to light up when there is
mail waiting in the file. The default is zero (do not light a
This option indicates that the LED should be turned off when
xlbiff is popped down. Ordinarily the LED stays lit to remind
one of awaiting mail. This option has no effect if the -led
option is disabled.
Opposite of -ledPopdown.
This option specifies the number of seconds to wait before re-
posting the mail window after you acknowledge it, and it still
contains the same mail. The default is 0 (no refresh). A
useful value for this is 1800 (30 minutes).
Specifies the command to invoke when the the mailer() action is
activated, eg, "xterm -e elm" or "inc". By default this is
bound to the second mouse button. Invoking this action will
pop down the main window. When the command exits, it will pop
up again. Due to mailbox consistency considerations, the
mailerCommand should not exit before it is finished with the
mailbox, i.e. it should not be run in the background.
There is no default mailerCommand.
Specifies a shell command to be executed to list the contents
of mailbox file. The specified string value is used as the
argument to a system(3) call and may therefore contain i/o
redirection. The command's stdout is used to generate the
window. Internally, the command is generated as
sprintf(buf, scanCommand, file, columns)
so a %s and %d respectively in scanCommand will generate the
values of file and columns. The default scanCommand is
scan -file %s -width %d
Specifies a shell command to be executed to check for new mail
(or some other condition) rather than simply examining the size
of the mail file. The specified string value is used as the
argument to a popen(3) call, and the output generated is
important. Like xbiff, an exit status of 0 indicates that a
change in condition demands a new evaluation of scanCommand and
subsequent popup, 1 indicates no change in status, and 2
indicates that the condition has been cleared and the xlbiff
window should pop down. By default, no shell command is
This option may be useful to monitor logins (by checking update
times of /etc/utmp), when using POP or other custom maildrop
mechanisms, and so forth.
Similarly to scanCommand, the checkCommand is generated
sprintf(buf, checkCommand, file, previous)
previous is the numeric value output by the last time
checkCommand was run, or zero the first time. This is useful
for allowing the checkCommand to maintain state in a primitive
fashion. For instance, a checkCommand such as
compare_size %s %d
would "do the right thing" if compare_size were a script such
NEWSIZE=`wc -c <$1`
if [ $NEWSIZE -ne $2 ]; then
if [ $NEWSIZE -eq 0 ]; then
The author of xlbiff uses this facility to keep track of
several maildrops with one command. See the Bcheck and Bscan
This option specifies how loud the bell should be rung when new
mail comes in.
The following standard X Toolkit command line arguments are commonly
used with xlbiff:
This option specifies the X server to contact.
This option specifies the preferred position of the scan
This option specifies the color to use for the background of
This option specifies the color to use for the foreground of
This option specifies a resource string to be used. This is
especially useful for setting resources that do not have
separate command line options.
The application class name is XLbiff. It understands all of the core
resource names and classes as well as:
bottom (class Bottom)
Same as the -bottom option.
file (class File)
Same as the -file option.
mailerCommand (class MailerCommand)
Same as the -mailerCommand option.
scanCommand (class ScanCommand)
Same as the -scanCommand option.
checkCommand (class CheckCommand)
Same as the -checkCommand option.
resetSaver (class ResetSaver)
Same as the -resetSaver option.
update (class Interval)
Same as the -update option.
fade (class Fade)
Same as the -fade option.
columns (class Columns)
Same as the -columns option.
rows (class Rows)
Specifies the maximum height, in lines, of the xlbiff window.
The default is 20.
led (class Led)
Same as the -led option.
ledPopdown (class LedPopdown)
Same as the -ledPopdown option.
refresh (class Refresh)
Same as the -refresh option.
sound (class Sound)
Specify a command to be run in place of a bell when new mail
arrives. For example, on a Sun Sparc you might use:
*sound: /usr/demo/SOUND/play -v %d /usr/demo/SOUND/sounds/doorbell.au
The command is generated internally with sprintf, so the
characters ``%d'' will be replaced with the numeric value of
the volume resource.
volume (class Volume)
Same as the -volume option.
Xlbiff provides the following actions for use in event translations:
This action causes the window to vanish.
exit() This action causes xlbiff to exit.
The default translations are
DISPLAY is used to get the default host and display number.
default mail file to check.
specifying dimensions in -geometry causes badness.
The led option does not work on Suns before SunOS 4.1/X11R5.
Ed Santiago, email@example.com
Xlbiff took shape around the xgoodbye sample program in the O'Reilly X
Toolkit Intrinsics Programming Manual. A lot of code was stolen from
xbiff, including this man page. Thanks also to Stephen Gildea
(firstname.lastname@example.org) for the many, many contributions that made
xlbiff grow from a midnight hack to a more mature product.
2 June 1994 XLBIFF(1x)