Before using this program, you must instruct it where to find
your mailboxes.
From the Main Window->Option->Preferences menu
, you
may define which configuration is to be your "default" configuration
on program startup. This must be a "mail" configuration, not "news".
Figure 3.1: The Network Configuration Window
This name is used anywhere in the program where you need to select a mailbox, and is a "nickname" given to the appropriate configuration. You may have as many configurations as you desire, each pointing to a different collection of mailboxes. Every name must be unique.
The Internet Domain Name of the server which supplies this set of mailboxes. If you leave this field blank, you will only be able to access mailboxes on your local machine.
If the mailbox server requires a login, set this to the login name you wish to use.
The name of the initially selected mailbox for this configuration. For mail servers, this should be INBOX. For news servers, you may use any newsgroup you choose, or none.
Only one of these may be selected at a time.
Compose Window->Option->Configure Window
allows you
to define the delivery system. When using Copy/Move from local news,
you should select a target configuration which supports multiple
mailboxes, and is a mail system, generally of type "local mail" or "IMAP".
Compose Window->Options->Configure Window
. This may be the same
system. When using Copy/Move from an NNTP server, you should select
a target configuration which supports multiple mailboxes, and is a
mail system, generally of type "local mail" or "IMAP".
Figure 3.2: The TCP Port Selection Window
This option only applies to IMAP servers, and allows you to select an alternate port on the server. A TCP port is a communications channel much like a TV channel. IMAP by default runs on channel 143. In some areas where a server needs to support multiple version of IMAP, this may be located elsewhere (145 is a popular choice). Do not change this unless you know which TCP channel you server uses. EXCEPT, by setting this number to '0', you will instruct ML to attempt to communicate with the server using the "rsh" protocol. If the server is setup appropriately, and your machine has "rsh" access to it, it is possible to login automatically without requiring a password. This is generally disastrous on machines connected via dialin lines; and may hang the system. Contact your server administrator or Internet Service Provider to find out if this option is available from your system.
This is where you set the program to do "the right thing". You should do this when you run the program for the first time. There are some acronyms in this section you may be unfamiliar with. Don't worry if you don't understand them. If your local "computer people" set everything up correctly, most of these fields should have been automatically set for you to do "the right thing".
Your preferences are saved into a file (by default) called
"$HOME/.mlprefs
", where "$HOME
" is your home directory on the system
you are logged into when running the program. This file contains all
of your preference settings, your address book entries, and your
filter rule definitions.
When you select "Accept" from this window, your preferences will be updated with any new values you have entered. If you select "Cancel", any changes you made will be discarded, and the orginal values will remain in effect.
Please also check the Configure section, and also the Configure section available from the Compose Window, which define other important information for mail access and delivery settings. Preferences
Figure 3.3: The Preferences Window
%s
". Only one "%s
" is allowed in a
command. You may also include any special options such as setting the
correct printer to use. Therefore your print command might look
something like:
/usr/ucb/lpr -Poffice_printer %s
/usr/home/sml/mailboxes
"
(which is a directory name). Within it, I have mailboxes called:
old.mail important.mail junk.mail
Instead of using "/usr/home/sml/mailboxes/junk.mail
" every
time I wanted to access this particular mailbox, I could set my mail
folder directory to "/usr/home/sml/mailboxes
", and then refer to the
mailbox simply as "+junk.mail
". The "+
" will be expanded into the
complete path whenever it is needed.
/usr/local/lib/ml
", but may have been relocated at
your site.
mime.*
". The most important of these is "mime.handlers
".
+
', your mail folder path will be prepended to this name before
any copies take place. It must be created before you may actually use
it.
%n message number %S subject %F flags %T type %L length ( %4L is the only option which makes sense here) %P sender, personal name (if not known, substituted with %U@%H) %U sender, user name %H sender, host %A sender, user@host %p receiver, personal name (if not known, substituted with %u@%h) %u receiver, user name %h receiver, host %a receiver, user@host %M{sss} if sender matches current login name, use %p for %P, %u for %U, %h for %H, %a for %A, and insert sss %N{sss} if sender does not match current login name, insert sss %D{format} define date format (strftime)
The mnemonics may contain formatting codes known by the C library printf
routine for the "%s
" field.
The %D{format}
defines the format of the date field (C library strftime
routine, of which only a few fields are valid):
%b The abbreviated month name. %B The full month name. %d The day of the month as a decimal number (range 0 to 31). %e day of month (1-31; single digits preceded by space). %H The hour as a decimal number using a 24-hour clock (range 00 to 23). %I The hour as a decimal number using a 12-hour clock (range 01 to 12). %k hour (0-23; single digit preceded by space). %l hour (1-12; singled digit preceded by space). %m The month as a decimal number (range 01 to 12). %M The minute as a decimal number. %p Either `am' or `pm' according to the given time value. %y The year as a decimal number without a century (range 00 to 99). %Y The year as a decimal number including the century. %% A literal `%' character.
For example, to show date as 10 Jan 95 13:00, use %D{%m %b %y %H:%M}
.
Default format is "%F%T %D{%e-%b-%y %H:%M} %N{ }%M{»}%-20.20P %4L %S
"
http://somehost/somedir/somefile
...although there are many variations. The command used to
view them should be a command on your local system containing a "%s
",
which is replaced on invocation with the specific URL to be viewed. A
typical example would be "mosaic %s
". This program was distributed
with a shell script called "remotescape" which runs the Netscape
Navigator (A web browser available from Netscape Communications) in
"remote control" mode. The script allows you to "link" to an existing
running program, rather than starting a separate viewer for each URL
you wish to visit.
In some cases, it may be necessary for you to have a different
set of preferences on one machine than another, and both machines
might use the same networked home directory. To allow for this, the
program will always look for "$HOME/.mlprefs.$HOSTNAME
" and if it
exists, use it for storing and loading your preferences for this
session. If it can't be found, it will then look for "$HOME/.mlprefs
".
We don't have an easy way within the program to generate this
machine specific file. You can use your operating system to create it
by copying your existing "$HOME/.mlprefs
" file. The $HOSTNAME
part
needs to match exactly what the network utilities on your system know
the hostname to be, but adjusted to lower-case. If you have trouble
matching this correctly, tell a Unix wizard in your organization (if
you know one) that you need "the lower-cased name returned by
gethostbyname() when fed an input of gethostname()". Hopefully they
can arrange this. If such a person doesn't exist, you'll probably have
try a few things experimentally. Let's say your machine name is
"Barney.PODUNK.EDU". As a first cut, use a filename of
$HOME/.mlprefs.barney.podunk.eduIf that fails, try just
$HOME/.mlprefs.barneyIf it still fails, you're on your own. Sorry. We're trying to automate this, but it hasn't been completed yet.
Figure 3.4: The Option Settings Window
The following options are all numeric. If you type anything besides numbers into these fields, it will be discarded, and the value will revert to the orginal default. The numbers must all be positive integral values. (No exponents, decimal points, or negative values). Many of these will also not accept a value of '0'. Exceptions to this will be noted.
If you supply '0' as a Prefetch Count, the entire mailbox or newsgroup will be loaded and no background fetching will occur.
Two buttons are also available from within the View Window's "Mailbox" menu which allow you to manually stop and resume the background fetch. You may, for instance, wish to view your new messages immediately after opening the mailbox, and work undisturbed, and load your older messages when you take a coffee break.
These settings define what sort mode is the default for any
newly opened mailbox or newsgroup. A different setting is allowed for
each. The allowable definitions of this field are "normal", "reverse",
"subject", and "sender". Any un-recognized values will revert to
"normal".
The following items may be set to "true" or "false". Any other setting will revert to "false".
This program uses three files to configure itself for viewing or handling MIME attachments. MIME stands for "Multimedia Internet Mail Extensions", and is a standard form for providing arbitrary information including images and audio through the normally text-based mail system.
The location of these files can be tailored on a per-user basis via preferences. The default is the LIBDIR (/usr/local/lib/ml), which may be tailored for all users on the system. If users wish to over-ride this default location, they need to set a new directory location via their preferences, and then copy the three files (not all of which are necessarily in existence) to this personal directory. Then these files may be edited to personal taste. Following are detailed descriptions of the three files involved.
Defines all known MIME types. The types known to me are built-in to the program, so this file need not be present. If it is, it over-rides the built-in type list, and therefore must contain all known MIME types. It is simply a list, one entry per line, with MIME type/subtype strings and no leading or trailing whitespace. You may wish to create this list "in reverse", since the first entry will appear last in the program's list.
Example:
application/postscript application/octet-stream image/gif ...etc.
Defines filename extension to MIME type/subtype mapping; for use when loading file attachments. Several default types are built-in to the program. If this file exists, it will over-ride the built-in filename extension mappings, so must be complete. It contains a filename suffix, white space, and a MIME type/subtype pair, one to a line. Uppercase and lowercase differences are ignored.
For example:
.ps application/postscript .c text/plain .Z application/octet-stream .gif image/gif
Defines MIME handlers or "helper applications" for processing attachments. A few types are built-in to the program and cannot be over-ridden. This list of built-in types may change in future releases.
text/plain multipart/{anything} message/external-body (we handle mail-server and FTP access only. Other types can be externally processed). message/RFC822
The file contains type/subtype pairs, followed by a
semi-colon, and then the complete command to execute to "view" the
attachment. If %s
is in the command, the message will come from a
temporary file, otherwise the message will come from stdin. Only one
%s
(and no other %
characters) may appear. If the program requires a
TTY for keyboard interaction, be certain to prefix the command a
command to launch an interactive terminal, such as "xterm -e".
After the "view" command, you may optional provide a space
followed by $COMPOSE=
and a command to compose a message of this
type. This command MUST put its results in a file, designated by
%s
.
You may have either a view handler or a compose handler, or
both. An entry for a specific type is terminated by an
end-of-line. There are no "continuation lines". If you use "metamail"
(from Bellcore Labs), this type of file file format should be vaguely
familiar, although there are several differences between this format
and the metamail mailcap file. It is possible to use many of the
metamail handlers, just be aware of the possible need to specify an
xterm, and the differences in $COMPOSE=
= syntax. A sample file is
included below, showing what I use for basic support. Any handlers not
specified results in a file-save request when viewed. Additionally, a
preference available in the Options Settings menu, allows you to be
prompted before executing any external view handler (including none),
and allows you to change it. This setting is "true" by default, so
there is no need to edit the preferences file except to turn it off,
which allows automatic processing with no interaction (where
possible).
Example:
audio/basic; play %s $COMPOSE=xterm -e audiocompose %s image/gif; xv %s $COMPOSE=xgrabsc -s 2 -xwd | xwdtogif > %s image/tiff; xv %s image/jpeg; xv %s video/mpeg; mpeg_play %s message/external-body; $COMPOSE=xterm -e extcompose %s application/postscript; lpr %s application/pgp; xterm -e pgp %s text/richtext; xterm -e richtext %s text/html; netscape file://localhost%s