XMAIL
Section: User Commands (1)
Updated: February 20, 1992
Index
Return to Main Contents
NAME
xmail - X11 visual interface to the mail program
SYNOPSIS
xmail
[-toolkitoptions]
[-xmailoptions]
DESCRIPTION
xmail
is an X11 window based visual interface to the standard Berkeley
Mail
program. xmail offers functionality similar to the Sunview mailtool, but with
some differences.
Users may use mouse button actions in the (top) index window to select a
message for
further processing (by pressing the left mouse button), or automatically
read the selected message (by pressing the right mouse button).
Folder specification is aided by a selection menu which can walk down through
the user's folder directory hierarchy (by pressing the right mouse button in
the Folder command button window).
A short description of each command button's function is presented in the
status window whenever the mouse cursor enters any of the xmail command button
windows. Additional help information is presented for any command button or
other part of xmail by pressing the middle mouse button while the mouse cursor
is within the window or
command button. In the case of windows which normally accept the pasting
of text via the middle mouse button, help is available while also holding
down either Shift key. Those special case windows are so indicated by the
message displayed in the status window while the mouse cursor is within those
particular windows.
Message composition and modification are provided by the user's preferred
editor (/usr/ucb/vi by default). Editor preference may be specified
using either the user's process or Mail environment variable
VISUAL,
or the xmail command line or application resource editorCommand.
Support can also be provided for displaying the content of an X-Face mail
header, should such a header string be present in the received message,
and for adding your own X-Face header to outgoing mail, if available.
Almost all of the xmail functionality depends upon the existence and
proper installation of the XMail default resources file (typically
in the directory /usr/lib/X11/app-defaults). Functionality may be
modified to some extent by the user's specification of some or all of those
resources.
OPTIONS
An unrecognized or illegal command line option specification will cause
display of a usage statement and termination of xmail.
- -toolkitoptions
-
All standard X11 toolkit options are accepted on the command line.
- -xmailoptions
-
xmail also accepts the following additional options:
-
- -buttonfont fontname
-
specifies the font to use when creating command buttons. This option overrides
the xmail resource specification "*buttonFont: fontname".
- -e
-
Sets the xmail resource specification "*expert: True". This
resource determines whether "confirm" popups will be presented
when committing changes to a folder or deleting a new message composition.
By default the resource is False, which means confirm popups will be used.
This resource may be toggled while running xmail, using the set menu
provided with the "preserve" command button. See the section on
CHANGING VARIABLES
further down in this document, or the on-line help information for the
preserve button, for additional details.
- -editorCommand <quoted command string>
-
Specifies the editor resource that xmail should use when editing a message
composition. The quoted command must be an sprintf-able format string
containing two string declarations. The first of these declarations will be
replaced with the name of the display connection for the xmail process, to
allow the edit window to appear on the correct display screen. The second
declaration will be replaced with the name of the file to be edited.
If xmail cannot locate the two separate string declarations in the command,
the command will be rejected and processing will default to the older
VISUAL
methodology. See the additional description of this feature in the
SENDING MESSAGES
section of this document.
- -f [+]foldername
-
tells Mail to start by processing the specified folder.
This is actually a Mail program option, passed to it during startup.
Unlike the regular Mail program, there is no default file for this option,
and a foldername must be included in the specification. The leading
plus sign identifies the folder file as existing within the folder
directory and is a shorthand notation for the full folder directory path name.
This feature can also be specified as an xmail resource
using the specification "*MFileName: [+]foldername".
- -fn fontname
-
- or -
- -font fontname
-
tells xmail to use the indicated font for all windows and buttons.
Different fonts can be specified for buttons, text and help, if desired, using
the other appropriate designations.
This feature can also be specified as an xmail resource
using the specification "*Font: fontname".
- -h
-
tells xmail to include the host name in the icon window when displaying
the icon. The option can also be specified as an xmail resource
using the specification "*icon*useHost: True".
- -helpfont fontname
-
specifies the font to use when displaying help text. This option overrides
the xmail resource specification "*helpFont: fontname".
- -iconGeometry [+-]XOff[+-]YOff
-
provides a command line option for specifying the preferred geometry
location for the xmail icon window. This overrides any xmail resource
specification for "*iconGeometry: [+-]XOff[+-]YOff".
- -ls
-
tells xmail to not show the last message of a folder by default. This
option is equivalent to setting the xmail resource *Show_Last to
False. If disabled, xmail (actually Mail) will display the default
(usually first) message of a folder when switching to or re-reading a
folder.
By default, xmail attempts to read the latest (or last) message of a folder.
- -n
-
tells Mail to not initialize from the system default Mail.rc file.
This option is also a Mail program option, passed on to it during
startup from xmail.
The option can also be specified as an xmail resource
using the specification "*mailopt_n: True".
- -nb
-
tells xmail to not ring the terminal bell when issuing status and
error messages. This is equivalent to setting the xmail resource
specification "*bellRing: False". The default will be to
ring the bell for error and appropriate status messages.
- -noinfo
-
tells xmail to not display the info messages in the status window
normally generated whenever the mouse cursor is moved into or out of any xmail
command button window. By default, text would be displayed to provide specific
information about the particular command button currently under the mouse
cursor. This option allows you to disable this feature, if desired.
This is equivalent to setting the xmail resource specification
"*show_Info: False".
- -nx
-
tells xmail to not include any X-Face header strings when displaying the
text of an incoming message. This is equivalent to setting the xmail resource
specification "*No_X_Hdr: True". The default will be to include
all text of the incoming message, including any X-Face header strings. Either
setting will not deter the display of the X-Face bitmap if it exists in the
message headers (provided the X_FACE option was specified during compilation).
- -rv
-
tells xmail to reverse the foreground and background colors of the icon
window when displaying the icon. The option can also be specified as an
xmail resource using the specification "*icon*reverseVideo: True".
This option or resource has no effect if the program is utilizing the
XPM
full-colored pixmap icons.
- -textfont fontname
-
specifies the font to use when writing information in text windows. This
option overrides
the xmail resource specification "*textFont: fontname".
- -u
-
tells xmail to include the user's login name in the icon window when displaying
the icon. The option can also be specified as an xmail resource
using the specification "*icon*useName: True".
- -U
-
tells Mail to convert internet style addresses into uucp format.
This option also is a Mail option, passed on to it during startup.
The option can also be specified as an xmail resource
using the specification "*mailopt_U: True".
USAGE
The xmail shell appearance is similar in layout to mailtool.
A title bar decorates the top of the shell, and carries the name and
version of the program, as well as information about the current mail folder
and its content.
Immediately below the title bar, an index window displays header
information for the current mail folder.
Message selection is indicated by a greater-than ">" symbol located
at the beginning of the header line for the particular message.
New and unread messages are indicated by "N" and "U"
characters respectively, preceding the message number.
Deleted messages not yet removed from the index list have the letter
"D" preceding the message number.
Saved messages are now marked with the letter "S", to denote the fact
that such messages in your system folder would normally disappear from that
folder
when you finally commit the changes. (Although messages in other folders
that are saved will also be marked with an "S", they do not by
default get removed from that
folder when the changes are committed. Such messages must be explicitly
deleted if so desired.)
Messages that are marked for preservation in the system folder are now marked
with the letter "P" until the folder changes are committed.
Keyboard keys can be used to scroll the index window in much the fashion of
text display programs such as more or less,
in addition to the more traditional mouse on scrollbar mechanism.
Just below the index
window, a status window displays information, status, and error messages.
As the mouse cursor is moved between the various command button windows in
the xmail
program, a short description of the particular button's function(s) is
displayed
in the status window. Moving the mouse cursor out of that command button's
window restores the default
information about obtaining help on any part of xmail.
Error and status messages are also displayed in this same status window.
The terminal bell is usually rung to draw attention to these messages.
The status bell can be disabled using a command line option or resource
specification.
Immediately below the status window and attached to it, the xmail
shell displays a panel with a selection of commonly used Mail commands.
Pressing and then releasing (also known as "clicking")
the left mouse button while the mouse cursor is within a
particular command button box invokes that Mail command.
A grip at the top right corner of the command panel permits the user to slide
the status window/command panel combination up and down in the xmail shell, to
accommodate those times when the user is reviewing a short list of longer than
average messages, or a longer list of relatively short messages.
Each button in the command panel also offers an expanded menu of choices related
to that particular command.
Pressing the right mouse button presents the user with the
expanded menu. Dragging the cursor over one of these selections
while still holding down the right mouse button causes the particular menu
selection to highlight. A description of the highlighted command's function is
also displayed in the status window. Releasing the right mouse button
while a selection is highlighted invokes that particular command.
Keyboard accelerators for these actions are indicated by appropriate entries
in the command menus. Users may take advantage of these accelerators by
holding down the Shift and/or Control key(s) prior to clicking the left mouse
button on the desired command, in lieu of raising the command popup menu.
Messages are displayed in the bottom text window of the xmail shell.
Like the index window above, scroll bars provide easy access to any portion of
the text. Keyboard keys can also be used to scroll the text window. If the
displayed message contains an X-Face header string, the content of that string
is displayed as a bitmap in the upper right-hand corner of the text window.
(This feature is a compile time option, and requires the existence of the
compface library routines, which are not supplied with the xmail sources.
See the section on X-FACE HEADERS for details on acquiring
this library.)
In addition, both the text window and index window have duplicate keyboard
definitions to augment using the
mouse on the command buttons for normal xmail command operation. Like many of
the resources for xmail, these key bindings are now declared in the application
resource file, to allow the user to modify them as desired.
Upon completion of the editing phase of a send/reply operation, the user is
presented with a completion popup window which contains areas for
specifying the
message header addressees, subject, and carbon and blind carbon copy
recipients. This information can now also be modified directly within the
message
composition, by specifying the editheaders Mail program option. This
option is normally declared within the user's .mailrc file, but can be
toggled on and off using the special Set option menu provided with
the preserve command button. (See the section on
CHANGING VARIABLES
or the on-line help
information for the preserve button for additional details.) Also present
in the
completion popup are command buttons to add one of two forms of user signature,
Re-Edit the message composition, Cancel and save, Abort, or Deliver the
message to the
indicated recipients. The pressing of these command buttons using the mouse
may also be simulated by using the keyboard meta keys and the first
letter of the particular command, with
the exception that the adding of autograph signatures is denoted by the use of
either the "S" (for upper-case Autograph Signature) or
"X"
(for the lower-case version) keys, since the "A" key
is used for effecting the Abort function. When either the Cancel, Abort,
or Deliver function is executed, the composition popup is automatically
removed from the display.
A modified mailWatch widget (ala xwatch) is used as the xmail icon window.
The mailbox flag in the icon window will be raised and mail shown inside the
box, whenever new mail arrives while the application is in its iconic state.
In the non-iconic state, the Newmail command button is highlighted
to signal new mail arrival. Clicking on the Newmail button will
reset the flag and highlighting, and deliver the new mail to your display.
Pressing the middle mouse button while the mouse cursor is within any
window or command button of
the xmail shell (in some cases while also holding down either Shift
key)
will cause help
information relating to that window (or button) to be displayed in
the (bottom) text window.
Releasing the mouse button will cause that help information to be removed.
Pressing the "?" key in the text window will cause a second page
of help information, relating to the default bindings for the keyboard keys,
to appear.
Pressing the "LineFeed" or Control_J key will cause that second help
window to be removed.
During command execution, the cursor is changed to a watch face
to indicate that xmail is busy. Upon completion of the activity, the
cursor is restored to its previous value.
ENVIRONMENT
Several process environment variables are of a special interest to xmail.
-
- DEAD
-
Normally specified in the user's .mailrc file,
this variable indicates the name of the file to use when storing dead or
canceled letters.
If unspecified, it defaults to "dead.letter" in the user's HOME directory.
- HOME
-
Defines the path to the user's home directory, and is used in determining
the complete path for mail folder and dead letter files. If unspecified,
this information will be extracted from the user's entry in the password file.
- MAILRC
-
If defined, denotes the full name of the user preferred Mail program startup
file, used to define various mail state variables. By default, Mail (and
xmail) will look for the file .mailrc, in the user's home directory.
- MBOX
-
Normally specified in the user's .mailrc file, this variable denotes the
preferred file to use when storing letters that are
no longer to be preserved in the system mail folder, and letters copied or
saved to no other specific file.
- VISUAL
-
Normally specified in the user's .mailrc file,
this variable denotes the preferred editor to use when composing messages in
xmail. This information can be overridden by specifying a value for the
editorCommand command line or resource declaration.
- XMAILER
-
If defined, points to the particular executable to be used as the Mail
program. Normally, xmail establishes connections with Mail in the default
path of the process (assumed to be at least "/bin /usr/bin /usr/ucb").
If need be, this
environment variable can be used to provide a specific path to the Mail or
other named
program. Note: xmail may not work correctly with any mail program
other than the intended Berkeley Mail program.
FOLDERS
If the right mouse button is pressed while the cursor is within the
command panel Folder button, xmail will display a menu of available
mail folders. (If the user has not set their mail folders variable,
a message so indicating will be displayed instead.)
Dragging the cursor while still holding the right mouse button down will allow
the user to highlight a particular folder name. Releasing the right button
while a name is highlighted causes a copy of that name to be written in
the command panel File window. The menu list is then unmapped.
Releasing the right button while outside
any folder selection causes the folder menu list to disappear.
Folders which are actually directories (that might possibly contain
additional folder files)
are displayed with a trailing slash (/) character. Clicking the left
mouse
button within a directory folder while still holding down the right
mouse button (also known as "expanding") causes xmail to expand
that directory and display (on a new menu level) any files found there.
Dragging the cursor over
one of these selections and releasing the right mouse button copies the
complete folder path name to the file window. This nesting of folder names
may be repeated as often as there are legitimate folder directories. Clicking
the left mouse button on an empty folder directory rings the terminal bell.
Dragging the cursor beyond one of these nested menu levels causes that menu to
disappear, without making a selection. Re-clicking the left mouse button on
the directory folder redisplays the nested menu.
Because of the methodology utilized in determining the folder list menu widget
hierarchy, certain restrictions must apply when declaring folder directories.
No folder directory name may contain an embedded period (.) or asterisk (*),
since these
items are utilized by the resource manager (and toolkit function
XtNameToWidget) to indicate the potential widget hierarchy. If a folder
directory name
exists at any level with one or more of these characters embedded in its name,
attempts to access that folder directory will result in a beep and no further
expansion.
The first request for the folder menu extracts (from Mail or the system)
the
necessary information to create the menu. Subsequent requests simply redisplay
that menu. To force xmail to recalculate the folder menu content, use the
Newmail button option which causes xmail to destroy all current folder
menus. This mechanism provides access to folders created since the startup
of xmail.
Pressing the right mouse button
on the Newmail command box will present the Newmail command menu, which has a
choice to drop the current folder list. This same option is also available
using the designated accelerator key and left mouse button on the Newmail
command button box.
As message are stored or otherwise delivered to one of the folder files, the
accessed and modified time stamps for that folder file are updated
by the system. xmail uses that information to indicate (via the addition of
a hatching pattern to the background of a particular folder button label)
when a
folder has been modified since the last time it was accessed. This feature
presents a method of indicating when new messages exists in a particular folder
file. Reading the particular folder automatically resets this indicator,
although
in some instances remotely accessed folder files (such as those on an NFS
mounted file system) may not properly or consistently update this time
information.
FONTS
Separate fonts may now be specified for mail message (and index) text,
help
message text, and for the command buttons. (See the options descriptions
for a list of the command line options to use.) You may also declare all
fonts using the resource declaration *Font: <fontname>, or the command
line option -fn <fontname> or -font <fontname>, which
cause all three fonts specifications to utilize the same font.
Previous restrictions against the use of proportional width fonts have now
been hopefully resolved. Although the result of choosing such a font may still
produce less than optimal results, the window shell should be of a reasonable
size, and the support menu entries should now be readable. Of course, no
amount of coding can overcome inappropriate font selections.
ICONIFICATION
xmail establishes access to a dummy mail folder whenever the application is
in the iconified state.
This is done to prevent potential corruption of a real mail folder, should the
user choose to read their mail from another process while xmail is running.
Because of this action, iconifying xmail always
COMMITS
changes made to the current folder, prior to switching to the dummy folder. No
confirmation for committing folder changes will occur when iconifying xmail.
The original folder being read by the user will be
automatically reinstated as current whenever xmail is again deiconified.
This action will flush any deleted messages from the index headers and renumber
the remaining messages in the folder. The last message in the folder will then
become the current message displayed (unless xmail was started with the
*Show_Last resource option disabled, in which case the first message
would be made current).
If the "current" folder was the user's system folder, any new mail
received since the iconification would be automatically included by the
re-access. If some other folder were current (or no folder, due to initial
conditions of no mail for the user), deiconification would not cause the
reading of any new mail. Under those circumstances the user must press the
Newmail command button to change to the system mail folder (and read
the new mail).
The icon window also supports an auxiliary identification mechanism,
for users that might have more than one account, possibly on more than
one machine, and that wish to be able to identify otherwise duplicate xmail
icons. Pressing the "h" key while the mouse cursor is within the icon
window will cause the icon to be tagged with the machine's hostname.
Pressing the "u" key will cause the user's login name to be displayed.
Pressing the "space" bar will clear the icon window of either name.
Changing the tag space content of the icon will also change the title of the
application for window managers. This allows the user to distinguish between
several xmail invocations from the window (or icon) selection menus of the
various window managers.
The hostname or login name addition may also be pre-selected using either
command line options or resource declarations if desired.
Iconification is typically promoted by user definable button events which are
particular to the window manager in use at the time. Pressing the National Semiconductor Corporation logo
displayed at the left of the title bar will also cause xmail to issue a window
manager request for iconification. ICCCM compliant window managers should
honor that request by iconifying the xmail application.
Pressing the "q" key while the mouse cursor is within the xmail icon
window will cause xmail to terminate. xmail also honors the
ICCCM
Window Manager protocol request
WM_DELETE_WINDOW
to terminate the xmail application.
KEYBOARD ACCELERATORS
The index and text windows support two methods of scrolling displayable
text. The use of the mouse buttons in the scrollbar region is standard.
In addition, keyboard keys have been defined in keeping with conventions
used in text display programs such as "more" and "less".
These keyboard accelerators will only be available if the resources are
declared either in the application defaults file (which must be properly
installed) or the
user adds the necessary declarations to their local default resources.
The following table lists the key definitions and their respective actions.
The abbreviation "Ctrl" means to press down and hold the Control
key while pressing the specified letter key. "Meta" likewise refers
to the meta keys (labeled "Left" and "Right" or with a
diamond symbol on Sun type-4 keyboards).
-
Key Name Action Taken
-------- -----------------------------
Ctrl V move to the next page
space move to the next page
Meta V move to the previous page
b move to the previous page
Ctrl Z scroll one line up
Return scroll one line up
j scroll one line up
Meta Z scroll one line down
k scroll one line down
- scroll one line down
' move to the beginning of file
Meta < move to the beginning of file
Meta > move to the end of file
Shift G move to the end of file
In addition to the scroll key definitions, both windows also support
keyboard accelerators for most of the command buttons. Where possible,
these keyboard keys replicate the actual commands that would be typed
if the user were running the native mail program directly. Thus, to begin
sending a mail message to some recipient, the user could press the
"m" key, and to delete a current message, the user could press the
"d" key.
Certain exceptions and additions have been made, in order to avoid conflicts
within the xmail program.
-
Key Name Command Action Taken
-------- -----------------------------
Shift A reply to all, include the current message
Shift C copy the message to the author's name
Shift F forward the current mail message
Shift M reply to a mail message
Shift N bring new mail into your system folder
Shift P send the current message to the printer
Shift R include the current message in a reply
Shift S save the message to the author's name
a reply to all recipients of a message
c copy the message to the indicated folder
d delete the current message
f read the full header of the message
i incorporate new mail without commit
m mail (compose) a new mail message
n read the next mail message
p read the previous mail message
q quit xmail, committing any changes
r read the current mail message
s save current message in specified folder
u undelete the most recently deleted message
w writes the message to the indicated file
x exit xmail, without committing changes
? displays help for these key definitions
<LF> removes help for these key definitions
RESOURCES
Most of the options and features of this version of xmail depend heavily on
the installation of the application default resources file in the proper
location (typically /usr/lib/X11/app-defaults/XMail). If this file is
not installed, xmail will still run, but only in a severely restricted manner,
and with almost none of the features mentioned in this man page.
The resource declarations were moved from the program sources to the defaults
file to allow for a greater degree of flexibility in the appearance and actions
of xmail at the discretion of the user.
xmail recognizes resource definitions for each of its component windows and
command buttons. Wherever possible, button resources have been named for the
label (or first word in the label) of the command button. (The exception
is the preserve "set" menu, whose resources are identified by the second
word in each label.)
Thus :
-
- *read
-
specifies resources for the read command button
- *save
-
specifies resources for the save command button
- *autoprint
-
specifies resources for the set autoprint command button, and
- *noautoprint
-
specifies resources for the set noautoprint command button.
Color may be added (on a color display device) to enhance
the appearance of xmail. Example resources in the application defaults file
have been left in a commented condition. They may be implemented by
uncommenting the appropriate lines in the defaults file, or
overridden by designations in the user's .Xdefaults file, or (in some
cases) by command line options.
Resources specified in the user's .Xdefaults file should be preceded with
either the xmail application or XMail Class resource identifier.
In addition to those resources named for a particular xmail command button,
the following additional resource names are recognized:
-
- *buttonFont: <fontname>
-
denotes a preferred font to use when creating the command buttons. The width
of the xmail shell, and thus its general appearance is controlled by the
font specified for buttons. If different fonts are specified for buttons and
text, and the font for text is of a larger point size than that specified for
buttons, then text in the index and text windows will most likely wrap during
display.
- *Bcc
-
controls resources for the Bcc: entry window
- *bellRing: <boolean>
-
Normally true, this boolean enables ringing of the terminal bell during
status and error message display.
- *Cc
-
controls resources for the Cc: entry window
- *commandPanel
-
controls resources for the command panel
- *customHeader
-
This resource can be used to specify additional mail headers to be included
in the headers of all outgoing messages created by the user. The information
contained in this resource
MUST
conform to the format of mail headers, namely a keyword, such as
Organization: (which must include the trailing colon character),
followed by a space character, and the text of the information. An example
custom header resource declaration would be:
-
xmail*customHeader: Organization: Your_Company_Name
- *editorCommand: <quoted command string>
-
Specifies the editor resource that xmail should use when editing a message
composition. The quoted command must be an sprintf-able format
containing two string declarations. The first of these declarations will be
replaced with the name of the display connection for the xmail process, to
allow the edit window to appear on the correct display screen. The second
declaration will be replaced with the name of the file to be edited.
If xmail cannot locate the two separate string declarations in the command,
the command will be rejected and processing will default to the older
VISUAL
methodology. See the section on
SENDING MESSAGES
for additional details.
- *expert: <boolean>
-
This boolean defines whether the xmail user requires confirmation of
folder commits or composed message deletions. Whenever an action
would make a permanent un-recoverable change to the xmail environment, a
popup confirmation window will be presented for the user, to assure that
the action should take place. These confirmations include changing a
folder when deletions have occurred, or deleting the text of a newly
composed message instead of sending it. Setting this resource to True
eliminates those confirmation popups.
- *fileWindow
-
controls resources for the file window within the command panel
- *Font
-
provides font specifications for the three optionally separate fonts used in
xmail, buttonFont, helpFont, and textFont.
- .geometry: [+-]XOff[+-]YOff
-
This resource defines the initial startup location for the xmail window.
Note the dot (.) just in front of the geometry resource name.
Users are cautioned to not specify this resource with the
wildcard (*) designation, as this would force all popup windows (help, menus,
and send/reply) to orient to that same starting location, rather than be
anchored to the intended window.
- *helpFont: <fontname>
-
denotes a preferred font to use when displaying help information.
- *icon
-
controls resources for the icon window. In addition to
specifications of foreground and background colors, it is also possible
to specify the following mailWatch widget resources :
-
- *icon*useHost: <Boolean>
-
If set to true, tells xmail to include the mail host name in the icon window
when displaying the icon. This option is now alterable at runtime by keypress
in the icon window. "h" sets the host name, "u" sets the
user name, and "space" clears either entry.
- *icon*useName: <Boolean>
-
If set to true, tells xmail to include the user login name in the icon window
when displaying the icon.
- *icon*reverseVideo: <boolean>
-
If set to true, reverses the foreground and background colors for the icon.
Setting this resource has no effect if the xmail program is utilizing the
XPM
full-colored pixmap icons.
- *icon*update: <seconds>
-
Specifies the update interval for checking new mail (default is 30 seconds).
- *icon*bell: <boolean>
-
If set to False, prevents the mailWatch widget from ringing the bell when
new mail arrives. See also the .mailrc variable setting for bell.
- *iconic: <boolean>
-
This boolean defines whether the xmail application should be started in
iconic state or not. It is highly recommended that only the application
resource identifier be used if specifying this resource.
Use of the XMail Class identifier would also constrain any
message entry windows to be started iconic, which could prove confusing
to the unaware user.
- *iconGeometry: [+-]XOff[+-]YOff
-
This resource defines an initial location for the icon, whenever the
xmail application is iconified.
- *indexWindow
-
controls resources for the index window
- *list
-
controls resources for the folder list popup window
- *mailFlag: <string>
-
is the resource which defines the icon bitmap (or
XPM
pixmap) to use when
indicating new mail. If the XPixMap compile time option was not
specified, a string
to bitmap resource converter is supplied which automatically converts
the specified string to a bitmap. If the
XPM
option was declared at compile
time, an internal conversion of string to pixmap is performed. If the
string does not define an
XPM
pixmap, an attempt is made to convert the
string to a bitmap. Thus, with the
XPM compile time option, either an
XPM
pixmap or
a standard bitmap may be declared. Without the
XPM
option, only a standard
bitmap file may be specified. In either case, if the conversion should fail,
the program would default to an appropriate internal representation.
- *mailopt_n: <boolean>
-
Normally false, this resource
duplicates the effect of the -n command line option.
- *mailopt_U: <boolean>
-
Normally false, this resource
duplicates the effect of the -U command line option.
- *menu
-
controls resources for all of the command button popup menus
- *MFileName: <foldername>
-
Normally null, this resource
duplicates the effect of the -f folder command line option.
- *noMailFlag: <string>
-
is the resource which defines the icon bitmap to use when indicating that new
mail is not available.
- *No_X_Hdr: <boolean>
-
Normally False, if set to True this resource
tells xmail to not include any X-Face header strings when displaying the
text of an incoming message. This is equivalent to specifying the xmail
command line option -nx. Either setting will not deter the display of
the X-Face bitmap if it exists in the message headers.
- *Show_Info: <boolean>
-
Normally true, this boolean enables display of command button information
messages in the status window, whenever the mouse cursor enters or leaves one of
the command button windows. Information messages are also displayed for each
of the popup sub-menus as well. Setting this resource to false prevents these
information messages from being displayed.
- *Show_Last: <boolean>
-
Normally true, this boolean enables display of the last message in a folder,
providing no other is newer or unread. Setting this resource to false causes
folder displays to start with the first (or new or unread) message.
- *statusWindow
-
controls resources for the status window
- *Subject
-
controls resources for the Subject: entry window
- *textFont: <fontname>
-
denotes a preferred font to use when creating text and index windows.
- *textWindow
-
controls resources for the text window
- *titleBar
-
controls resources for the titleBar window
- *To
-
controls resources for the To: entry window
A set of default resource definitions are provided in the
file /usr/lib/X11/app-defaults/XMail. User's may wish to include
appropriate alternate definitions in their
$HOME/.Xdefaults
file, to tailor preferences for colors and/or fonts.
SENDING MESSAGES
All send and reply operations invoke the user's preferred editor to create or
modify the message. The editor preference may be specified using either the
VISUAL
.mailrc environment specification, or the newer editorCommand resource
specification (or -editorCommand command line option).
The editorCommand resource must define a string with two sprintf-able
format declarations, one for the name of the X11 server display connection,
and one for the name of the file to be edited. The editorCommand specification
must also ensure the proper creation of an appropriate X11 window for
completing the desired editing session.
The resource may be specified on the command line, either as an option, or as
a resource manager string. It may also be specified in the user's applications
default file as an xmail resource. Examples of editorCommand specification
strings include:
-
xmail -editorCommand 'emacs -display %s -name XMail %s'
xmail -xrm '*editorCommand: xterm -display %s -e vi %s'
xmail.editorCommand: xedit -name XMail_Edits -display %s %s
xmail.editorCommand: emacs -display %s %s
xmail.editorCommand: xterm -display %s -name XMail -e vi %s
If the editorCommand resource fails to provide the required string declarations
for the display and file names, or it is not defined, xmail will default to
the older method of utilizing the information in the user or Mail process
VISUAL
environment variable.
The default editor will be vi, if no
VISUAL
(mailrc or process) environment variable definition exists.
Upon completion of the send/reply editing session, a popup window will be
displayed containing To:, Subject:, Cc:, and Bcc:
fields for the current message composition. Help is available for each of
these fields, as it is for all of xmail.
A menu of mail aliases (extracted from the user's .mailrc file) is
available for access from any of the To:, Cc:, or Bcc: windows. Pressing the
right mouse button while the mouse
cursor is in any of these input fields causes the alias names menu to be
displayed. If the user has not defined any mail aliases, the terminal bell
will be rung instead, to indicate that no alias names menu is available.
Like the File: window used to enter file and mail folder names, the
content of the send window popup fields may be modified by the user as needed.
Backspace and delete keys remove the previous character, control_W
deletes the previous word, and control_U deletes the entire
line of information. Pressing the Return key in any of these four
fields causes the cursor to automatically warp to the next field.
Users may append their Sign or sign autograph (see Mail(1))
once only to the end of the composed message text. If the user does not set
a [Ss]ign value in their .mailrc file, this version of xmail will also look in
their home directory for either a .signature or .Signature file (depending
on which of the two [Aa]utograph buttons was pressed) to append to the
message text.
Pressing the Re-Edit button allows the message to be re-edited,
while the Cancel button terminates delivery but saves any partial
composition in your dead.letter file.
Pressing the Abort button cancels delivery but does not save the
composition, while the
Deliver button causes the message to be delivered to the sendmail daemon.
The pressing of any of these command buttons may also be simulated while the
mouse cursor is anywhere within the popup window,
by using the keyboard meta keys and the first letter of the command, with
the exception that the adding of autograph signatures is denoted by the use of
either the "S" (for upper-case Autograph Signature) or
"X"
(for the lower-case version) keys, since the "A" key
is used for effecting the Abort function.
When either the Cancel, Abort,
or Deliver function is selected, the composition popup is automatically
removed from the display.
If the user attempts to deliver a message with no designated recipient or
no message body and no message Subject line specified, xmail will re-display
the completion popup, to permit the user to Re-Edit the message body,
add a Subject designation and/or recipient, or specifically Abort the
message delivery.
Mail forwarded to another user will be bracketed by a "Begin Forwarded
Message/End Forwarded Message" string
pair when using the "forward message" Send command menu option. Also
included will be a "Forwarded: Mail from ..." line in the mail header.
Reply messages will include a "In-Reply-To: Mail from ..." string
in the mail
header. Like the "Forwarded:" header described above, it will include
the name of the original sender, as well as the date the original message was
received.
If an X-Face header exists for the user, it will be inserted in the mail header
section of the outgoing message. This header must be stored in the file
.face located in the user's home directory.
Users may provide additional custom header information to be applied to all
outgoing message compositions, by using the *customHeader xmail resource
designation. Specified information must conform to the format of mail
headers as noted elsewhere in this documentation.
X-FACE HEADERS
X-Face headers are compressed bitmap images, typically of the face of the
person owning such a header. The compressed header contains only printable
characters, which allows it to be included in a mail message.
The USENIX (UNIX Users Association)
FaceSaver project is the typical
source for these bitmaps, which are compressed into X-Face header
format using the compface software tools written and distributed by
James Ashton <jaa@cs.su.oz.au>. The compface library is also included with the
distribution of the faces software, written and distributed by Rich
Burridge, and is available from the
Rich Burridge Archive Service <rb-archive-server@Aus.Sun.COM>.
EDITING RESOURCES
The editing session invoked within xmail runs as a child process of the
xmail application. As such, it does not use those resources that were declared
for the process. Resources for the editing session should be tied to the
use of the -name toolkit option in the editorCommand specification.
The default
VISUAL
mechanism invokes the vi editor in an xterm window, using the xmail Class
resource as it's name identifier. This allows message composition window
resources to be declared
using the xmail Class resource name followed by the xterm terminal resources
identifier "vt100", as in "XMail*vt100.<resource: value>".
For example, the author uses the following resource definitions in his
.Xdefaults file, to control the size and placement of message composition
windows.
-
XMail*vt100.geometry: 80x27+30+100
XMail*vt100.font: fg-22
XMail*vt100.foreground: white
XMail*vt100.background: blue
XMail*vt100.mouse: white
VARIABLES
xmail also uses the existence and value of several Mail environment
variables (defined in the user's .mailrc file) to aid in controlling
it's operation.
-
- alwaysignore
-
If set, causes xmail to ignore those header fields specified with the
ignore .mailrc environment variable, when printing messages
or when including message text in a send/reply composition. This variable
can be altered during the execution of xmail. (See the section below
on Changing Variables.)
- autoprint
-
If enabled, causes the current message text to be displayed when deleting or
undeleting messages. If not enabled, users must select or read the
desired
message. This variable can also be altered within the current xmail execution.
- bell=value
-
If defined, determines the number of times the terminal bell would be rung to
indicate the arrival of new mail. A minimum of once and a maximum of five
times is the permissible range. Whether the terminal bell rings at all when
new mail arrives is controlled by the "*icon*bell: <boolean>"
resource (or -nb command line option) described above.
- editheaders
-
Like Mail and mailtool, xmail permits the user to set and modify the outgoing
messages mail headers while composing the message, if this variable is set.
This variable can be toggled during xmail execution, using the capabilities
of the Set menu provided under the preserve command button.
- hold
-
Like mailtool, xmail sets "hold" on the user's system mail folder,
unless "nohold" has been explicitly specified in the user's
.mailrc file. This variable can also be altered during xmail execution.
- printmail=printer command
-
This variable, originally created for the Sunview mailtool, allows the user
to specify a preferred command to use when printing messages. The default
command is "lpr -p". If the user is not using Sun's version of the mail
handler, then the print mechanism will first copy the selected message to a
temporary file before printing it. This implies that the printmail command
must also remove this temporary file when the print job has been completed.
This is typically accomplished by including the -r (remove) option
when specifying the printmail command. This is the default for non-Sun
specific printing in the xmail program.
- sendmail=shell-command
-
If set, specifies an alternate procedure to use in lieu of the default
/usr/lib/sendmail for delivering mail. User supplied procedures must be
prepared to search the message file for recipients and ignore or process
unexpected options (which ultimately must be passed on to the real sendmail
program).
Some Mail variables have no effect on xmail operation, and are in fact ignored
if found to be set.
-
- replyall
-
has no effect on the meaning of commands within xmail. This prevents confusion
due to a difference between how a command is labeled, and how it reacts in use.
- cmd=<value>
-
is ignored, and is always defeated. This provides a mechanism to determine if
the pipe command is supported in the user's mail environment, and determines
the method to use when printing a message on the system printer (using the
default or user specified printmail command).
- crt=<value>
-
is ignored, and always defaults to nocrt. This prevents user specified
paging mechanisms from interfering with full message delivery to xmail.
- screen=<value>
-
The current release of xmail can safely handle up to a
maximum of 10,000 mail message in any one mail folder. Users with more than
10,000 messages in any one folder should seriously consider either creating
some additional sub-folders, or at least deleting older messages.
CHANGING VARIABLES
xmail provides a mechanism for altering the state of four of the Mail (and
one xmail specific)
environment variables used to control xmail (and Mail) operations.
The states of alwaysignore, autoprint, editheaders, hold, and
expert can now be "toggled" from a special menu attached to the
preserve command button.
Pressing the right mouse button while the
mouse pointer is within the preserve command button box presents a
menu of "set"
commands which indicate the state the variables would be changed to
if the mouse button were released while one of these commands was highlighted.
Changing the state of the variable alters the next presentation of the menu,
such that the opposite state will always be presented as the command option.
SEE ALSO
Mail(1)
BUGS
Users finding a problem in
this xmail application are encouraged to notify the author at the
indicated address. A complete (as possible) description of the problem, and
a context diff of the changes needed to fix the flaw, if available, would be
greatly appreciated. I will make every effort to fix any such bugs reported.
Send any bug reports or other requested changes to:
-
Michael C. Wagnitz M/S D3-677
National Semiconductor Corporation
2900 Semiconductor Drive Santa Clara, CA 95052-8090
Domain: michael@berlioz.nsc.com Phone: 408/721-3266
UUCP: {apple|decwrl|hplabs|sun}!nsc!berlioz.nsc.com!michael
AUTHOR
Copyright 1989, 1990, 1991, 1992 - National Semiconductor Corporation
ALL RIGHTS RESERVED
Michael Wagnitz, National Semiconductor Corporation, Santa Clara, CA
Much of the original design and insight for the development of xmail
was provided by contributions from the following authors:
The xdbx contribution by Po Cheung (po@volta.ece.utexas.edu)
-
Copyright 1989 The University of Texas at Austin
The mailWatch widget by Dan Heller (argv@sun.com)
was used as the source for the xmail icon window.
Index
- NAME
-
- SYNOPSIS
-
- DESCRIPTION
-
- OPTIONS
-
- USAGE
-
- ENVIRONMENT
-
- FOLDERS
-
- FONTS
-
- ICONIFICATION
-
- KEYBOARD ACCELERATORS
-
- RESOURCES
-
- SENDING MESSAGES
-
- X-FACE HEADERS
-
- EDITING RESOURCES
-
- VARIABLES
-
- CHANGING VARIABLES
-
- SEE ALSO
-
- BUGS
-
- AUTHOR
-
This document was created by
man2html,
using the manual pages.
Time: 19:05:20 GMT, February 02, 2023