# Format of this file:
#  --
#  variable-name (case sensitive)
#  flags (see note below)
#  default-value (omit if readonly)
#  number-of-values (omit if not multivalue)
#  value-label (omit if not multivalue)
#  value-description (omit if not multivalue, may be multi-line)
#  %% (repeat this and above two fields for number-of-values, omit otherwise)
#  prompt ("NULL" if inapplicable)
#  description (multi-line)
#  %%
#
# flags may be any -combination- of:
#    tty, fullscreen, gui, readonly, boolean,
#    string, multivalue, numeric, permanent
#
# default-value may be any of:
#    "NONE" or "FALSE" (to leave unset -- "FALSE" for booleans only!)
#    "TRUE" (to set as boolean only)
#    "*" (value is supplied from environment or internally)
#    any string (or comma-separated list for multivalues)
#    a conditional (is_gui, is_shell, redirect, etc. -- booleans only!)
#    a ternary expression (is_gui?true:false)
#
#  Note that the ternary conditional scheme above means that setting
#  a default value to a string that matches one of the conditionals
#  (e.g. "is_gui") is impossible.  Ternary conditionals may omit the
#  false case, and may use other defaults as their true/false cases,
#  e.g. "is_gui?*" is equivalent to "*" when is_gui, otherwise empty.
#  An omitted false case is not the same as "NONE".  Multivalues may
#  have a comma-separated list of ternaries.
#
#  If a variable is boolean and string/multivalue, the first word on the
#  line indicates the default boolean condition and the rest of the line
#  indicates the value assumed when the variable is set (boolean TRUE).
#  "gui compose" means that if the program is running in gui mode, then
#  "compose" is the default value.
#  If the first word is NONE instead of FALSE, no value is assumed.
#
#  If the first word is "*", the rest of the line may indicate a value to
#  be used when no other value can be determined.  This will not override
#  variables that are "set" internally, but WILL override internal values
#  that are used as defaults for "unset" variables (e.g. DEF_PROMPT).
#
# NOTE: backslash-newline-newline is used below to kluge trailing spaces.

Version 2.1b
Version 2.1

--
alwaysignore
tty fullscreen gui boolean multivalue
# default values:
NONE
# number of multi-values in variable:
4
# list the values:
forward
Discard ignored headers when forwarding messages.
%%
include
Discard ignored headers when including a message in your composition.
%%
pipe
Discard ignored headers when passing a message to an external program.
%%
printer
Discard ignored headers when printing messages.
%%
Conditions:
If set with no value, the mail headers set by the ignore command are
always ignored.  Normally, ignored headers are not ignored when
sending messages to the printer, or when interpolating messages into
letters.  Setting alwaysignore will ignore those headers even in these
situations.  No headers can be ignored during updates or when using
the save command.  This is to prevent the user from inadvertently
ignoring headers that are required internally by Z-Mail and other mail
systems.
%%

--
ask
tty fullscreen gui boolean
TRUE
NULL
Prompt for a subject when composing outgoing messages.  When using
the "edit headers" mode, causes an empty Subject: header line to be
placed in the editor file.  See also "edit_hdrs".
%%

--
askcc
tty fullscreen gui boolean
is_gui
NULL
Prompt for a list of Carbon Copy recipients whenever sending mail.
When using the "edit headers" mode, causes an empty Cc: header line
to be placed in the editor file.  See also "edit_hdrs".
%%

--
attach_types
tty fullscreen gui string
NONE
File Name:
This variable specifies a file where encoding keys and file types for
attachments are defined.  Your system has a default file with some of
these definitions.  The file named by "attach_types" may give
alternate or additional encodings and types.

The command "detach -rehash" must be used to reload the attachment
type definitions if you either change the value of "attach_types" or
modify the file while Z-Mail is running.
%%

--
autodismiss
gui multivalue
# default values:
buttons print save sort templates
# number of multi-values
8
# list each multi-value
buttons
Close the Buttons and Functions dialog after installing a button.
%%
compose
Close the Compose window after sending or cancelling a message.
%%
folder
Close the Folder Manager after changing folders.
%%
message
Close the Message Display window when the displayed message is
deleted, unless "autoprint" is set and another message to display can
be found.  Note that one of "show_deleted" or "autoprint" must be set
in order for the Message window to remain open when the displayed
message is deleted.
%%
print
Close the Print Messages dialog after printing.
%%
save
Close the Folder Manager after saving.
%%
sort
Close the Custom Sort dialog after sorting.
%%
templates
Close the Form Templates dialog after selecting a template.
%%
Conditions:
In GUI mode, automatically dismiss (close) selected windows after
performing an operation.  Setting "autodismiss" without giving any
conditions is equivalent to setting all the possible conditions.  If
"autoiconify" is also set, it may override one or more of the
conditions for "autodismiss".
%%

--
autodisplay
gui boolean string
FALSE
Keywords:
This variable may be set to a space- or comma-separated list of
attachment type keywords.  If a message is received that contains
an attachment of one of the listed types, that attachment is
automatically displayed when the message is read.

Autodisplay is performed only in GUI mode.  To display a message
without automatically displaying its attachments, type its number
(and only its number) in the Command: field of the main window and
press return.
%%

--
autoedit
tty fullscreen gui boolean multivalue
FALSE
2
new
Invoke the editor when composing new messages.
%%
reply
Invoke the editor when replying to messages.
%%
Conditions:
Automatically enter your editor of choice when composing outgoing
messages.  If set, but not to any values, the editor is always started
when a composition is begun.  Otherwise, the editor is started only in
the specified circumstances.
%%

--
autoformat
gui boolean
FALSE
NULL
Automatically format messages in the composition window according to
the width of the window.  This allows you to type text without
pressing RETURN at the ends of lines.  Z-Mail will figure out where to
"wrap" the lines based on the width of the window.  It is usually
recommended that you have a window width of no more than 80 characters
when using autoformat since it is not possible to know what the width
of the recipient's message-reading window will be (but 80 columns is a
reasonable guess).  Messages with lines that are too long are
difficult to read when the display window is not wide enough, and are
especially hard to read on standard character-based displays.

After you compose a message, autoformat may alter it to look slightly
different from what you saw on the screen.  When precise line-wrapping
is important, you are encouraged to manually insert newlines into the
text rather than rely on the formatting characteristics of autoformat.

When the variable "wrapcolumn" is set, autoformat alters the text to
wrap at a number of columns equal to the value of wrapcolumn.  This
is useful for reformatting your text to 80 columns or less even when
your editor window is wider than 80 characters.  However, the change
between what you saw on the screen and the message as sent may be
considerable.  This is provided for compatibility with older versions
of Z-Mail, and should be used with care.  Note that in GUI mode, both
autoformat and wrapcolumn must be set before wrapcolumn is used.

Autoformat is not used in Z-Mail's character mode.
%%

--
autoiconify
gui multivalue
# default values:
compose
# number of options
2
# list the options, each separated by "%%"
compose
Iconify the Compose window after sending or cancelling a message.
%%
message
Iconify the Message Display window when the displayed message is deleted,
unless "autoprint" is set and another message to display can be found.
%%
Conditions:
In GUI mode, automatically iconify selected windows after performing
an operation.  If both "autodismiss" and "autoiconify" are set for a
particular window, the window will be iconified.  Setting "autoiconify"
without any specific conditions is equivalent to setting all of the
possible conditions.
%%

--
autoinclude
tty fullscreen gui boolean
FALSE
NULL
When replying to mail, a copy of the message being replied to
is automatically inserted into your message body, indented by
the string described by "indent_str".
%%

--
autoprint
tty fullscreen gui boolean
is_gui
NULL
Automatically display the next message on the list when a message
is deleted.
%%

--
auto_route
tty fullscreen gui boolean string
NONE
Host/Path:
Remove redundant UUCP hostnames when replying to messages.  If set
(but not to a text string), all the recipients in a message that is
being replied to will be routed through the path back to the original
author.  If auto_route is set to a specific pathname (host names
separated by `!'s), all addresses in the reply will have this route
prepended before redundant hosts are removed.  This variable is
normally set by the system administrator if it is needed.
%%

--
autosign
tty fullscreen gui boolean string
FALSE ~/.signature
Filename:
Append a signature to outgoing mail.  If this variable is set, but not
to a string, then the file .signature in your home directory is used.
If set to a string beginning with a backslash -- \like this -- or
enclosed in square braces -- [like this] -- then these strings (minus
the backslash or square braces) are added directly to the message
instead of being treated as file names.
%%

--
autosign2
tty fullscreen gui string
NONE
Addr:File:
This alternate signature is available for special cases where a
signature different than the regular "autosign" is desired.  The
format for this variable is:

 autosign2 = "address1, address2, ... : signature"

where address1, address2, ... may be specific users' addresses
or may have the forms:

  !hostname     any user at the named host (usually your own)
  @domain       any user in the given domain (e.g. @z-code.com)

and the signature is the same as described for "autosign".  Note that
"autosign" must also be set in order for "autosign2" to work.

If a list of addresses is given (terminated by a colon), then all
recipients of the message must match the list of addresses in
autosign2; otherwise, the signature in "autosign" is used instead.  If
all addresses match but the "autosign2" signature is empty (no
signature follows the colon), then the message is not signed.
%%

--
cdpath
tty fullscreen gui string
NONE
Path:
If set to a string of pathnames separated by spaces, this variable is
used in searching for a directory when the cd command is issued.  The
current directory is always searched before searching directories
listed in "cdpath".
%%

--
cmd_help
tty fullscreen gui string permanent
*
Path:
This variable gives the path name of the general help file, which is
read by the help command.  This variable is normally reset only in the
system initialization files, when the default location of the help
file has changed.  If an unset is attempted, this variable is
automatically restored to its default value.

The value of this variable is not saved when .zmailrc is written.
%%

--
colors_db
gui string
~/.zmcolors
File:
The Colors dialog allows you to change the colors of objects in the
graphical user interface.  When you want to reuse the colors you have
chosen for the next time you use Z-Mail, you must save the changes to
some file first.  This may be any file you like, but the file from which
Z-Mail retreives color settings is identified by the value of "colors_db".
Therefore, you can use different color schemes by saving color settings
to number of different files and then setting colors_db to any one of
them for each scheme you want to use.
%%

--
complete
tty fullscreen gui boolean string
FALSE \E\CD
Characters:
The first character of the value of complete is used as the
"completion character".  If complete is set, but not to a value, the
escape (ESC) character is used as the default.  Completion is
currently supported only for file names.  The escape character is
treated specially by many GUI mode window managers, so completion may
not operate normally in the GUI mode unless "complete" is set to some
other character.

The second character of the value of complete is used as the
completion listing character.  When this character is typed, the
possible completions will be printed, and Z-Mail will prompt again
with the original prefix.  This feature is used only in the line mode
interface of Z-Mail.

If complete is set to only a single character, completion listing is
disabled; if it is set with no value, Ctrl-D is used as the default
listing character.  If both the completion and listing characters are
the same, Z-Mail will complete if possible and (in line mode only)
produce a listing if the completion is not unique.
%%

--
crt
tty fullscreen gui numeric permanent
NONE 18
Lines:
The number of lines a message must have for 'pager' to be invoked.
Used only in the command line and full-screen fullscreen interfaces.
%%

--
crt_win
gui numeric permanent
NONE 6
Lines:
Set to the initial number of lines of the Message Display window.
Changing "crt_win" after the Message Display window has been opened
will not change the size of the window.
%%

--
cwd
tty fullscreen gui readonly string
Directory:
The current working directory.  Files and folders that do not have
full path names (beginning with a `/', `+', or `~' character) are read
from or written to this directory.

The value of this variable is not saved when .zmailrc is written.
%%

--
date_received
tty fullscreen gui boolean
FALSE
NULL
When message headers are printed, the dates and times normally shown
are those when the sender sent the messages.  If this variable is set,
then the dates displayed are the dates when the messages were
received.  This also affects date sorting in the line and curses
modes.
%%

--
dead
tty fullscreen gui string
* ~/dead.letter
Filename:
Names the file to use instead of dead.letter when saving an outgoing
message that has been interrupted or that otherwise fails to be sent.
Your Mail Transport Agent may also save a copy of messages that failed
to deliver.

Also see the variable "nosave", which allows you to turn off the saving
of dead letters by Z-Mail.  (This would not affect the transport agent.)
%%

--
deletesave
tty fullscreen gui boolean
FALSE
NULL
Specifies that `saved' messages should be deleted when the folder is
updated.  This is the default behavior in the system mailbox, but in
other folders, `saved' messages are not normally deleted.  Messages
that have been preserved with the "preserve" command are not affected
by "deletesave".  If both "keepsave" and "deletesave" are set, only
"keepsave" is used, so `saved' messages will not be deleted.
%%

--
detach_dir
tty fullscreen gui string
* +detach.dir
Pathname:
The pathname of the directory to use for temporary files when detaching
and displaying attachments of messages you have received.  This path is
used by the "detach -display" command and when displaying attachments
from the Message Display Window in GUI mode.

Attachment temporary files are deleted when the folder from which they
were detached is updated.
%%

--
domain_route
tty fullscreen gui boolean string
NONE
Host/Path:
Specifies that addresses containing a fully-qualified domain should be
short-circuited to mail directly to the rightmost fully-qualified
domain.  If set boolean (not to a string), only short-circuiting is
done.  If set to a string, the address is rewritten to UUCP form and
the value of the variable is prepended.  This variable is normally
set by the system administrator if and when it is needed.
%%

--
dot
tty fullscreen boolean
FALSE
NULL
Causes Z-Mail to accept "." on a line by itself to send an outgoing
message.  This is not used in the GUI mode.
%%

--
dot_lock
tty fullscreen gui boolean
FALSE
NULL
Causes Z-Mail to create a lock file when updating the system mailbox.
This is necessary if your system mail directory is NFS mounted, to
assure that Z-Mail and other programs such as the MTA are synchronized.
%%

--
edit_hdrs
tty fullscreen gui boolean
FALSE
NULL
Allow the headers of messages to be edited using your editor.  When
set, the "To:", "Cc:", "Subject:" lines and other headers appear in
the same text area as the body of the message you are composing.
%%

--
editor
tty fullscreen gui string
* vi
Editor:
Specifies the editor you prefer to use when the editing outgoing
messages.  Default is the value of the environment string EDITOR or
the variable "visual".  This editor is not used in GUI mode unless
"visual" is not set.
%%

--
escape
tty fullscreen gui string permanent
~
Character:
The escape character to begin extended editing commands when composing
outgoing messages in the line mode or fullscreen interfaces.
%%

--
fignore
tty fullscreen gui string
NONE
Patterns:
This variable is tested when filename completion is used (see the
variable "complete" for details).  The value of fignore may be a list
of filename extensions (".c", ".o", etc.), a list of filename patterns
containing metacharacters (*?{}[]), or a mixture of the two.  Each
element in the list must be separated from the others by a space.
When a filename completion occurs, any filenames with the extensions
listed in fignore, or matching the patterns given there, will be
omitted from the completion.
%%

--
folder
tty fullscreen gui string permanent
* ~/Mail
Pathname:
Pathname to the directory where personal folders are kept.  This path
is used by various commands to expand the `+' metacharacter.  `~/Mail'
is the default expansion of `+'.
%%

--
fonts_db
gui string
~/.zmfonts
File:
The Fonts and Labels dialog allows you to change the fonts used by
various objects in the graphical user interface.  You may also set
the Label strings of objects as well.  When you want to reuse the
font settings you have made for the next time you use Z-Mail, you
must save the changes to some file.  This may be any file you like,
but the file from which Z-Mail retreives settings is identified by
the value of "fonts_db".  Therefore, you can use different schemes
by saving these settings to number of different files and then
setting fonts_db to any one of them for each scheme you want to use.
%%

--
fortunates
tty fullscreen gui string
NONE
Users:
Lists the addresses of persons who receive fortunes appended to
outgoing mail when fortune is set.  The format of the address list is
the same as for the variable "autosign2".
%%

--
fortune
tty fullscreen gui boolean string
FALSE *
Flag:
If fortune is set, a random fortune is appended to the end of all
outgoing mail.  By default, "fortune -s" (short fortunes) is used.
The "fortunates" variable can be used to control which recipients
receive random fortunes and which do not.

Some systems do not provide random fortunes.  In this case, this
variable may be set to the name of a program whose standard output
will be appended to the message.
%%

--
fullscreen_help
tty fullscreen boolean string
FALSE display save mail reply next-msg back-msg screen-next screen-back
Commands:
This variable may be set to a space-separated list of fullscreen mode
command names (see the "bind" command for the possible choices).  If
set but without a value, a default list established by your Z-Mail
maintainer is used.  A summary of the bindings for the listed commands
is displayed as a menu on the fullscreen mode screen.
%%

--
gui_help
gui string permanent
is_gui?*:NONE
Path:
Location of the help file for the graphical user interface mode.

The value of this variable is not saved when .zmailrc is written.
%%

--
hangup
tty fullscreen gui boolean
FALSE
NULL
If this variable is set, Z-Mail updates all open folders when its
connection to a terminal (or to the X server in GUI mode) is lost.  As
usual, Z-Mail attempts to load any new mail that has arrived in each
folder before it updates that folder.

CAUTION:  In the event of an error, Z-Mail cannot request that the
user confirm any action, because user input is disabled by the loss of
the connection.  It thus is not possible for Z-Mail to guarantee that
update on hangup is non-destructive.

If "hangup" is not set, Z-Mail exits on lost connection and leaves a
temporary copy of each writable folder in the "tmpdir" directory (in
your home directory if "tmpdir" is not set).
%%

--
hdr_format
tty fullscreen gui string permanent
* %25f %7d (%l/%c) \"%s\"
Format:
This variable controls the format of the header summaries displayed.
When printing the summaries, this variable is evaluated and each
character in the string is duplicated unless a `%' character is
encountered.  `%' introduces an abbreviation for one of the headers of
the message.

    %a  address of the author
    %c  number of characters (bytes) in the message
    %d  date and time of the message (see "date_received" variable)
    %f  "From" field (author name and address)
    %i  the message-id (sometimes not available)
    %l  number of lines in the message
    %M  month name from the message date
    %m  month number from the message date
    %N  day of the month (number)
    %n  name of the author
    %s  subject of the message
    %t  "To" field (recipients of the message)
    %T  time of the message (see "mil_time" variable)
    %u  user name (login) of the sender of the message
    %W  day of the week (Sun, Mon, etc.) of the message date
    %Y  year of the message date
    %y  year, last 2 digits only
    \n  a newline
    \t  a tab
%%

--
history
tty fullscreen numeric
NONE
Number:
This variable is set to the number of commands the shell interface
will remember.  It is just like the history variable used in `csh'.
%%

--
hold
tty fullscreen gui boolean
TRUE
NULL
Normally, on termination of Z-Mail, messages that have been read in
the system mailbox are saved in your personal mailbox.  Setting "hold"
prevents this from happening, so the messages remain in the system
mailbox to which they are delivered.
%%

--
home
tty fullscreen gui string
*
Directory:
Names your home directory.  You should not need to change this.

The value of this variable is not saved when .zmailrc is written.
%%

--
hostname
tty fullscreen gui string
*
Hostname:
The name of your machine.  This is set automatically from the list
of hostnames in your operating system.  You should not need to
change this, unless the first name in the list is not the preferred
name for use in your return address on outgoing messages.  In that
event, you may wish to change the order of the names.

The value of this variable is not saved when .zmailrc is written.
%%

--
ignore_bang
tty fullscreen boolean
FALSE
NULL
Ignore `!' as a history reference.  Note that this severely limits
use of the "cmd" facility, which depends upon history references for
argument substitutions.
%%

--
ignoreeof
tty fullscreen boolean string
NONE
Command:
Ignores Ctrl-D as a command to exit.  If set to a string, that string
is executed as a command when Ctrl-D is typed.  This does not apply
in the GUI or fullscreen modes.
%%

--
indent_str
tty fullscreen gui string
>\

String:
When including messages into the text of a letter you are editing,
each line of the included messages is preceded by the value of
"indent_str".  If this is not set, the message body is indented by the
string "> ".
%%

--
index_dir
tty fullscreen gui string
* +index.dir
Pathname:
The pathname of the directory where external folder index files are to
be kept.  This path is used by "update -external" (and other commands)
to create the external index file for a folder.

If a complete pathname is not given, the name of the folder directory
(abbreviated as "+" (plus), see the "folder" variable) is prepended.
If index_dir is not set or is an empty string, then the directory
"+index.dir" is used for external index files.  The name of the index
file within the index directory is the same as the name of the folder.
If the index directory and the directory containing the folder are
the same (e.g. index_dir is set to "+") then the index file name is
the folder name with ".ix" appended.  On systems with file name length
limits, the folder name is truncated before appending ".ix".

Index files can be used to save the state of a read-only folder or to
"checkpoint" a writable folder.  An index is created automatically if
you update a folder when you do not have permission to write to the
folder file itself.  For writable folders, an index may be created
within the folder file, so an external index is not normally used.
However, "update -external" may be used to create an external index
as a checkpoint.  See also the "index_size" variable.

External index files are removed by "rmfolder -x foldername", or
when the folder itself is removed by "rmfolder foldername", or (for
writable folders only) when all messages have been deleted and the
folder is updated.
%%

--
index_size
tty fullscreen gui boolean numeric
TRUE 5
Size to Index:
The size (in tens of messages) that a folder must reach before an
index of the folder is automatically created.  For example, a value
of 5 (five) would cause an index to automatically be created for
any folder of 50 (fifty) or more messages.  Note that an index is
created only when a folder is updated.  If a folder is opened and
closed without update, no index will be created regardless of the
folder's size.

Indices speed up opening of large folders by saving, in one place,
the information that would otherwise have to be read separately from
each message.  For smaller folders, however, an index may not be
desired.  Set index_size according to your preference for automatic
index creation.  A value of 0 (zero) or boolean true (set, but no
numeric value) means that all folders should be indexed, regardless
of size.  If index_size is not set, folders are not automatically
indexed.

A folder index may be either internal (stored in the folder along
with the messages) or external (stored in a separate file).  An
internal index is used for writable folders, and an external index
for read-only folders.  See the variable "index_dir" for details
about external folder index files.  It is possible for a folder to
have both an internal and an external index, in which case the
internal index is used first.  The external index is referred to
only if the internal index is incomplete or if the sorting order
of the external index is different.

Note that the index of a folder opened in read-only mode (by the
"-readonly" option when starting Z-Mail or when using the "folder"
command) is not normally updated.  However, if index_size is set
and the folder is large enough, an external index file is created
when the read-only folder is updated or closed, even if the file
already has an index.  An index is created automatically if you
update a folder when you do not have permission to write to the
folder file itself.

Indexing is suppressed by "update -noindex" or "close -noindex".
%%

--
intr_level
gui numeric
5
Level:
When commands or other operations take a long time to complete, Z-Mail
sometimes posts a "task meter" that provides feedback about how much of
the job is done.  The task meter also provides the ability to stop some
tasks in progress.  If you start a long, time-consuming process, you
can stop it with a mouse click instead of having to wait for it to
complete.

Rather than having the meter posted for each operation, Z-Mail tries to
choose those operations that "take a long time," so you aren't bothered
by excessive popping up and down of these dialogs.  However, some
computers are faster than others, so it is not always possible to
accurately guess how long a particular task may take.  Furthermore,
people's expectations differ.  Therefore, the value of "intr_level" can
be set to some value that suits your tastes.  The name indicates that
this is the level at which you wish to be given the opportunity to
interrupt an activity before it completes.

The value is loosely based on the number of messages or size of the
file that will be affected by the task.  A good estimate would be
about 10 messages per intr_level increment.  So, for example, if
intr_level were set to 5 and you were to search for a pattern from a
folder with 50 or more messages, a task meter would pop up and provide
feedback for how much of the task was complete.  If there were less
than 50 messages, the task meter would not pop up.

The task meter may also pop up when loading or updating folders.  In
this case, Z-Mail's guess is based on the size of the folder in bytes
rather than on the number of messages.

The drawback to the task meter is that performance may drop due to the
frequent redisplaying of the task window.  If you desire a noticeable
increase in speed, you might want to consider turning it off
completely.  You can turn it off by setting intr_level to 0.
%%

--
in_reply_to
tty fullscreen gui boolean string
NONE
String:
This variable may be set to a string that will complete the
"In-Reply-To:" header when responding to mail.  The format of this
string is identical to that for the variable "hdr_format".
%%

input
tty fullscreen gui readonly string
Message list:
When a user-defined function appears in a pipeline, this variable is
set to the list of messages that are piped to that function.  If the 
function does not appear as part of a pipeline, "input" is not set.
%%

--
keepsave
tty fullscreen gui boolean
FALSE
NULL
`Saved' messages are normally deleted when the system mailbox is
updated.  If "keepsave" is set, `saved' messages are not deleted in
this way.  In other folders, `saved' messages are not deleted unless
"deletesave" is set.  Setting "keepsave" protects `saved' messages
from deletion in any folder, even if "deletesave" is also set.  See
also "hold".
%%

--
known_hosts
tty fullscreen gui string
NONE
Host list:
Used in conjunction with the variable "auto_route", this variable is
set to a list of hosts, separated by spaces, tabs, and/or commas, and
describes the hosts with whom you know your machine shares UUCP
connections.  This is normally set by the system administrator if and
when it is needed.
%%

--
logfile
tty fullscreen gui string
NONE ~/mail.log
Filename:
Set to a filename which logs the headers of outgoing messages.  The
message body of the message is not logged in the way that it is for
the "record" filename.  The logfile can be read as a folder to scan
for confirmation that messages have been sent.  If both "logfile" and
"record" are set, then the logfile and the record files will match.
In this case, the record file can be quickly scanned by loading the
log file instead.
%%

--
mail_icon
gui string
NONE
Filename:
Names a file containing an alternate pixmap to use when the GUI main
window is iconified.  Changing this variable after the program is
started will not affect the icon.
%%

--
main_panes
gui multivalue
# default values:
status,folder,messages,buttons,output,command
# number of multi-values in variable:
6
# list the values:
status
The message area that displays the status of the currently active folder.
%%
folder
The area that contains the text field where the current folder is specified.
%%
messages
The list message summaries (headers).
%%
buttons
The main panel where the user-defined buttons are displayed.
%%
output
The multi-line text area that displays various non-critical output messages.
%%
command
The text field where Z-Mail commands can be typed.
%%
Conditions:
Each field in this variable indicates the "panes" in the main window
that are visible.  By default, all of the panes are displayed.  You
may also adjust which panes are visible by using the "Windows" item
in the menubar at the top of the main window.

This variable has no effect when it's unset.  That is, the display is
not changed in any way.
%%

--
mbox
tty fullscreen gui string permanent
* ~/mbox
Filename:
Names a file to use for your default main mailbox instead of the file
"mbox" in your home directory.
%%

--
metoo
tty fullscreen gui boolean
FALSE
NULL
Normally, copies of messages you send to local mailing lists are not
sent back to you, because most Mail Transport Agents will remove the
message sender's name when forwarding to a mailing list.  Setting
"metoo" will preserve your name on such mailing lists if possible,
so that you will get a copy of your own mail.  When you reply to
mail, Z-Mail will also keep your name on any list of addresses that
it generates when this variable is set.
%%

--
mil_time
tty fullscreen gui boolean
FALSE
NULL
24-hour military time format is used whenever the time of a message
is printed, regardless of the format used in the message's Date:.
%%

--
msg_win
gui numeric permanent
NONE 18
Lines:
Sets the initial number of lines in the Compose window in GUI mode.
Changing this variable will not affect Compose windows that are
already open, but will change the size of new Compose windows.
If this variable appears to be set to 0, then a size specified in
your window system defaults is being used.
%%

--
newline
tty string
NONE
Command:
This variable may be set to a command to be executed when a carriage
return is the only input to the line mode prompt.
%%

--
newmail_icon
gui string
NONE
Filename:
Names a file containing an alternate pixmap to use to signal the
arrival of new mail when the GUI main window is iconified.  Changing
this variable after the program is running will not affect the icon.
%%

--
no_expand
tty fullscreen gui boolean
FALSE
NULL
Prevents expansion of alias abbreviations in outgoing mail headers.
This is normally considered bad etiquette, but is useful in special
cases for administering mailing lists.
%%

--
no_hdrs
tty fullscreen gui boolean
FALSE
NULL
If set, personalized headers (the "Envelope") are NOT inserted into
outgoing mail.  This is used to temporarily disable personalized headers.
%%

--
no_reverse
tty fullscreen boolean
FALSE
NULL
In fullscreen mode, reverse video is not used to highlight the "current
message" when this variable is set.  Instead, your terminal's regular
cursor is placed on the line showing the current message's summary.
%%

--
nonobang
tty fullscreen boolean
TRUE
NULL
If this variable is set, history references that don't match anything
will be left unexpanded, rather than generating error messages.  This
is handy if you frequently have to type UUCP-style addresses that
contain numerous `!' characters.
%%

--
nosave
tty fullscreen gui boolean
FALSE
NULL
Prevents outgoing mail from being saved when message composition is
aborted.  Using the Compose window "Done" button or menu selection
never saves a dead letter, but the "Cancel" button normally does so.
Aborting with Ctrl-C or ~q in line mode also saves a dead letter.

Note that "nosave" overrides the value of the "verify" variable.

Also see the variable "dead", which describes the file Z-Mail uses
to save aborted messages.
%%

--
openfolders
tty fullscreen gui readonly string
Folder Numbers:
This variable holds a string consisting of the numeric names of each
of the open folders, separated by spaces.  The numeric name of a folder
is a number sign (#) followed by one or more digits.  The system folder
is always #0.  Other folders are #1, #2, etc.

The "openfolders" variable can be used with the "foreach" command to
apply an operation to every open folder.  For example, to update all
folders:

    foreach f ($openfolders) 'update $f'

See help for the "foreach" command for more information.
%%

--
output
tty fullscreen gui readonly string
Messages:
This variable holds a message list representing the output of the last
successful command.  Commands which return an error status do not
affect the value of "output", but successful commands that return no
message list will clear it.
%%

--
pager
tty fullscreen string
* more
Program:
If a message is longer than the number of lines that the variable "crt"
indicates, then the program named by this variable is executed to view
that message.  If the user does not have this variable set, the user's
environment PAGER is checked.  If this isn't set, then Z-Mail's simple
internal pager is used.
%%

--
picky_mta
tty fullscreen gui boolean multivalue
# default values:
FALSE
# number of multi-values in variable:
3 
# list the values:
omit_commas
The MTA is confused by the use of commas to separate addresses, so
Z-Mail should omit them.
%%
omit_from
When this is set, Z-Mail will not pass From: and Date: headers to
the Mail Transport Agent when sending mail.  This may be necessary
if your MTA insists on generating its own From: and Date: headers.
%%
uucp_style
All addresses passed to the MTA should be in UUCP format, host!user.
Set this only if your MTA has trouble with user@host address format.
Note that addresses within the message may appear unchanged, but any
address seen by the MTA will have been converted.
%%
Restrictions:
Impose various restrictions on the way Z-Mail communicates with the
Mail Transport Agent.  Setting picky_mta to true (on) is equivalent
to setting only the "omit_from" field.
%%

--
pre_indent_str
tty fullscreen gui string
NONE
String:
When including the body of a message into an outgoing message, a line
preceding the first line of included text is printed using the string
value of this variable.  See "indent_str".
%%

--
post_indent_str
tty fullscreen gui string
NONE
String:
When including the body of a message into an outgoing message, a line
following the last line of included text is printed using the string
value of this variable.  See "indent_str".
%%

--
print_cmd
tty fullscreen gui string
NONE
Program:
This string should describe a command for sending messages to the
hardcopy printer.  If no "print_cmd" is specified, one of "lpr"
or "lp" is used, depending on your operating system.  The message
to be printed is supplied as the standard input of the command.
The value of "print_cmd" may be a /bin/sh pipeline.

The string %P in the value of "print_cmd" is replaced by the name
of the printer (see "printer").  The string %O is replaced by the
option described by "printer_opt", which includes the name of the
printer (e.g., if %P is "lp", then %O might be "-Plp").  If neither
%O nor %P appears, then the "printer" and "printer_opt" variables
are ignored and the command is executed unchanged.
%%

--
printer
tty fullscreen gui string
NONE
Printer:
This variable gives the name of the printer to which the Z-Mail
"lpr" command is directed.  This name is normally prefixed with
one of "-P" or "-d" (depending on your operating system) when
passed to the printing program.  If the value of "printer" begins
with a hyphen, then no prefix is added.  See also "printer_opt".

If "printer" is set to a comma-separated list of names, Z-Mail
will display that list at the time you print a message and request
that you select a printer name.

If "printer" is set to an empty string, Z-Mail will invoke the
printing command with no printer argument.  This normally causes
output to go to the system default printer.
%%

--
printer_opt
tty fullscreen gui string
NONE
Option:
This string describes the command-line options used to tell your
printing program what printer name to use.  If "printer_opt" is
not set, the option defaults to "-P" for Berkeley UNIX and "-d"
for all other systems.  The value of "printer_opt" is ignored if
the printer name begins with a hyphen (see the "printer" variable).

The string "%P" in the value of "printer_opt" is replaced by the
name of the printer (see "printer").  Otherwise, the printer name
is appended to the option with no intervening space, e.g. if the
value of "printer_opt" is "-P" and the value of "printer" is "lp",
then the option passed to the printing program is "-Plp".

If "printer_opt" is set to an empty string, Z-Mail will invoke the
printing command with no printer argument.  This normally causes
output to go to the system default printer.
%%

--
prompt
tty fullscreen string permanent
* Msg %m of %t:\

String:
The string value that "prompt" is set to will be printed as your
prompt.  The string may contain formatting characters to show
information about the status of your folder:

    %F  full path of the active folder
    %f  name (path tail) of the active folder
    %m  current message number
    %n  number of new messages
    %u  number of unread messages
    %d  number of deleted messages
    %t  total number of messages
    %T  current time
    %N  day of the month (number) (today)
    %W  weekday name (today)
    %M  month name (this month)
    %Y  year (this year)
    %y  year (last 2 digits only)
    %$  introduces a variable name
    \n  newline
    \t  tab
%%

--
quiet
tty fullscreen gui boolean multivalue
NONE
8
autosign
Do not report that a signature was appended to an outgoing message.
%%
fortune
Do not report that a fortune was appended to an outgoing message.
%%
complete
Do not beep when a file completion fails to match.
%%
newmail
Do not announce the arrival of new mail.
%%
pick
Do not verbosely describe message searches.
%%
save
Do not print a message for every message saved; only report the total.
%%
startup
Do not print the version information when starting the program.
%%
gui
In GUI mode, do not ring the bell when new mail arrives.
%%
Conditions:
This variable tells Z-Mail to be quiet in various circumstances.  If
set, but not to any values, Z-Mail does not print version information
when the program begins executing.
%%

--
realname
tty fullscreen gui string
*
Name:
Your real name, which is used in the From: header of outgoing messages.
%%

--
record
tty fullscreen gui string
NONE
Filename:
Set to the name of a file to record all outgoing mail.  The pathname
may begin with `+' (indicating the user's ~/Mail directory or the value
of the "folder" variable) or with a `~' indicating the user's home
directory (the value of the "home" variable).
%%

--
record_users
tty fullscreen gui boolean
FALSE
NULL
When this variable is set, addresses in outgoing mail are tested against
file names in the folder directory (~/Mail or the value of "folder").
If the user name in the address matches a file name, then a copy of the
message is stored in that file.  Note that the file must exist before
the message is sent in order for a copy to be recorded.
%%

--
recursive
tty fullscreen gui boolean
FALSE
NULL
This variable must be set in order for user-defined functions to call
themselves recursively.  If it is not set, any recursive function
call will result in an error.
%%

--
reply_to_hdr
tty fullscreen gui boolean string
NONE
Headers:
When replying to mail, Z-Mail generates a return email path to the
sender by examining various message headers in the original message.
By default, the address is taken from the Reply-To: header, the From:
header and the Return-Path: header.  You can override this behavior
by setting the reply_to_hdr variable to specific header names.  For
example,

    set reply_to_hdr = "sender, reply_to, return_path"

If reply_to_hdr is set, but not to a specific value, then the special
header "From " is used.  This may or may not be supported on your
particular system, and is only useful for UUCP sites only.  Ask your
system administrator for more information if you are unsure about
this setting.
%%

--
save_empty
tty fullscreen gui boolean
FALSE
NULL
Folders which have all messages deleted are NOT removed when updated.
Note that the "update" command never removes folders.  Empty folders
are removed only if updated by "close" or if updated when Z-Mail quits.
%%

--
screen
tty fullscreen numeric permanent
NONE 12
 # of Headers:
Sets the number of header summaries treated as a screenful by the
"headers" command.  This variable only applies to the tty and
fullscreen interfaces.  If this variable is not set, then a default
value of 12 is used.
%%

--
screen_win
gui numeric
NONE 6
 # of Headers:
Sets the initial number of message summaries displayed for the
graphical interface.  If this variable is not set, a default
value is taken from your GUI window system environment.
%%

--
sendmail
tty fullscreen gui string
NONE
Program:
Names a program to use to deliver mail instead of using the default.
This is normally set only by the system administrator.
%%

--
show_deleted
tty fullscreen gui boolean
FALSE
NULL
Controls whether deleted messages may be displayed.  In line mode
only, "show_deleted" also controls whether deleted messages in
header summary listings are shown.  In GUI mode, the Message Display
window will close automatically when the displayed message is deleted
unless one of "show_deleted" or "autoprint" is set.
%%

--
sort
tty fullscreen gui boolean string
NONE
Option:
This variable may be set in the initialization file to presort mail in
the system mailbox upon entering Z-Mail.  The value of this variable
is the same as the arguments to the "sort" command.  For example:

  set sort="-r -d -s"

will sort the system mailbox by reverse-date and subject.
%%

--
speller
gui string
/usr/bin/spell
Program:
Names a program to be used for checking your spelling in compositions
and other editable texts.  This program should expect a file name as
its sole argument and should print on its standard output the misspelt
words found in that file, one word per line.

The speller program is used to fill the list of misspelt words in the
Search and Replace dialog.
%%

--
squeeze
tty fullscreen gui boolean
FALSE
NULL
If this variable is set, consecutive blank lines in message bodies
are compressed to a single blank line for display.
%%

--
status
tty fullscreen gui readonly string
NULL
This variable records the success or failure status of the most
recently executed command.  All line-mode commands return 0 (zero) for
success and a negative value for error.  Some fullscreen mode commands
return an error status to indicate that the display has been altered,
even when no actual error has occurred.  This variable is most useful
in scripts to test the success of an operation before proceeding.
%%

--
templates
tty fullscreen gui string
NONE
Directories:
Describes the default directories (separated by spaces) where message
forms can be found.  The system administrator provides a default
directory where prepared forms are stored.  However, each user can
provide forms for his own use by placing them in the directories
described by this variable.

All files in these directories are considered to be forms.
%%

--
thisfolder
tty fullscreen gui readonly string
Folder:
Gives the current folder name.
%%

--
title
tty fullscreen gui string
NONE
Title:
The string value that "title" is set to will be printed at the top of
your fullscreen display.  In GUI mode, the "title" of each open folder
is displayed in the Folder Status scrolled list below the menu bar in
the Z-Mail Main Window.  The string may contain formatting characters
to show information about the status of your active folder:

    %F  full path of the active folder
    %f  name (path tail) of the active folder
    %m  current message number
    %n  number of new messages
    %u  number of unread messages
    %d  number of deleted messages
    %t  total number of messages
    %T  current time
    %N  day of the month (number) (today)
    %W  weekday name (today)
    %M  month name (this month)
    %Y  year (this year)
    %y  year (last 2 digits only)
    %$  introduces a variable name
%%

--
tmpdir
tty fullscreen gui string permanent
* /tmp
Directory:
Names a directory to use for temporary files.  If not set, the
directory "/tmp" or the value of the environment "TMPDIR" is used.
%%

--
toplines
tty fullscreen gui numeric permanent
NONE 18
Lines:
Number of lines of a message to print for the 'top' command.
%%

--
user
tty fullscreen gui string permanent
*
Login name:
The name you use to log in.  You should not need to change this.

The value of this variable is not saved when .zmailrc is written.
%%

--
unix
tty fullscreen boolean
FALSE
NULL
When this variable is set, Z-Mail will attempt to execute as a UNIX
program any command that it does not itself recognize.  In GUI mode,
the output of the UNIX command is directed to the Main Window output
text area, and the standard input of the UNIX command is closed.

If a UNIX command is executed in this way from GUI mode, Z-Mail will
wait a few seconds for it to complete.  If the command does not
finish within this time, Z-Mail will display the Task Meter to let
you know that an external command is running.  Press the Stop button
to continue your Z-Mail session.
%%

--
verbose
tty fullscreen boolean
FALSE
NULL
Z-Mail will pass verbose flag to the Mail Transport Agent when sending
mail, and will print additional information about the sending process.
In GUI mode, a dialog appears containing the output from the MTA.
%%

# For verify, recall that the first word on the line must be the boolean
# truth value, and the rest is the multivalue set when true.
#
# Should we add a "saveopts" field to this?

--
verify
tty fullscreen gui boolean multivalue
is_gui dead,remove,quit
5
dead
In GUI mode only, confirm saving a dead letter when a Compose
window is cancelled.  This is ignored if "nosave" is also set.
%%
mail
Ask for confirmation before sending messages.
%%
remove
Ask for confirmation before removing a file.
%%
update
Ask for confirmation before updating each folder, at any time.
%%
quit
Ask for confirmation before updating each folder when exiting.
%%
Conditions:
This variable causes Z-Mail to request confirmation of the
specified actions.
%%

--
visual
tty fullscreen gui string
* vi
Visual editor:
May be set to the visual editor to use when editing outgoing messages.
The default is specified by the environment string VISUAL or as set by
the system administrator.
%%

--
warning
tty fullscreen gui boolean
FALSE
NULL
Print warning messages for non-fatal errors.
%%

--
window_shell
gui string
is_gui?xterm -e:NONE
Program:
This variable specifies a program to use when a tty window is needed
for input or output from Z-Mail.  Currently, it is only needed for the
Compose Window to allow the use of an externally defined editor.
%%

--
wrap
tty fullscreen gui boolean
FALSE
NULL
Normally, when the last message is deleted, the current message pointer
remains pointing to the last message and the user is done reviewing his
mail.  If this variable is set, the current message pointer will wrap
around to the beginning of the user's messages again to the next
undeleted message.  This also applies to the "next" command.
%%

--
wrapcolumn
tty fullscreen gui boolean numeric
FALSE 78
Column to wrap:
May be set to a column number at which line wrap will occur when
composing messages.  If set, but given no value, column 78 will be
assumed.  Line wrapping can be disabled either by unsetting wrapcolumn
or by setting it with the explicit value of 0 (zero).

Note that wrapcolumn is used in GUI mode only when "autoformat" is
also set.  If wrapcolumn has the value 0 (zero) but autoformat is set,
autoformat ignores wrapcolumn and wraps at the width of the compose
window as usual.  See "autoformat" for details.
%%
