Over the past couple of days, I've been integrating X-Face: support
into a program called xmailx. For those familiar with the SunView mailtool
that comes standard with the Sun O/S, xmailx is an XView equivalent of
that. This is not to be confused with the XView mailtool that is part of
the OpenWindows DeskSet. xmailx is written and maintained by Bill Shannon,
and made available internally within Sun to the engineering department.
On trying to put uncompface support into xmailx, I became all too aware of
the problems other people have been experiencing when trying to do something
similar for their mail programs. The compface routines for uncompressing
mail messages are not nicely isolated into one or two separate files; there
are bits needed in virtually all of the files. So I generated a special
xface.c, which just contains the needed routines. This calls an xface.h, which
just contains the definitions, declarations and initialised data that is
needed. It includes xface_data.h, which is similar to the compface/data.h.
The other main change I made was for the WriteFace() routine to return a
character array with just the binary image data (suitable for using with
XCreateImage) instead of generating a blit icon data formatted buffer.
The code is in, and working and looks very nice. I'm not at liberty to say
what Bill plans to do with xmailx at this time, but I'd like to see these
three X-Face: support files as part of the generic faces distribution so that
other people don't reinvent the wheel.
I'm currently corresponding with James Ashton to try to put a more appropriate
copyright message on these files; something along the lines of the PBMplus
or xloadimage copyright message which would make it go like:
/*
* UnCompface - 48x48x1 image decompression
*
* Copyright (c) James Ashton - Sydney University - June 1990.
*
* Written 11th November 1989.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation for any purpose and without fee is hereby granted, provided
* that the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
* documentation. This software is provided "as is" without express or
* implied warranty.
*/
If James is happy with this, then I'll put these three files into the next
patch. More on this later.
And speaking of patches...
Here's patch #5 for faces v1.5. The patch itself is available from the
usual places (see below). See the installation instructions below on
how to apply this patch.
Changes made in this patch:
v1.5 - patchlevel 5 - 5th September 1991.
- Performance improvement. If the host/user file found, is a regular
file, then a check is made on that file for all valid supported
formats (not just the old Blit ikon format). If the whole faces
database[s] are arranged in this format, then there is a small
increase in performance.
- From Dan Nydick <nydick@pookie.psc.edu>
When you've configured faces to pop its window to the top of
the stack when mail arrives, I'd like it to pop itself to the
bottom when all the mail is gone (ie: when the "no mail" icon
is displayed).
[Added in via another X resource: "faces.lower", which if set to
true will do the requested lowering of the faces window. Also
check for "set lower" in the users' ~/.facerc file. Updated the
manual pages to reflect these changes.]
- From Kate Morris <morris@carcoar.Stanford.EDU>
Included a set of diffs to get faces running on an IBM RT PC
running AOS4.3 (yet another 4.3 clone).
--------
How to install this patch.
You should use Larry Wall's patch program to apply these diffs. Assuming the
patch file is called faces.patch5, then you should do the following:
cd faces_src # directory where your faces source files are.
patch -p0 <faces.patch5
make x11 # Or xview, sunview or news.
make install # You might have to be super-user.
--------
Where to get this patch.
* I've put a copy of both patch #5 and the very latest fully patched version
of faces, in the pub/faces/incoming directory on iuvax.cs.indiana.edu,
for those of you who have anon ftp capabilities. Steve, could you do your
bit with these files please, and move them to the parent directory?
* For Sun employees around the world, you can get the fully patched latest
version of faces via anon ftp from stard.aus. It (and copies of the
various faces databases held by Steve on indiana) are now in a
sub-directory under pub called faces.
* And finally both the patch and the fully patched latest version of faces
are available via the automatic mail archive server. Requests should be
sent to rb-archive-server@Aus.Sun.COM. To just get patch #5, then the
message should contain the line:
send faces patch5
Note that this patch is a uuencoded compressed file. Unpack with uudecode
and uncompress first, before applying the installation instructions given
above.
If you want the complete fully patched version of faces v1.5.5, then you
should send fifteen messages containing the lines:
send faces partn
where n = 1-15. You can do this is one message, but the archive server
processes smaller messages faster. UUCP sites out there might like to
include a path line with each message, something like:
path uunet.uu.net!hostname!user
note that this is uunet.uu.net and not just uunet. Sun.COM doesn't
recognise uunet. This is the return path the archive server will use to
send your requests to. Also UUCP sites should note that you probably have a
size limit on each message. Yet another good reason to divide these into
multiple requests.