San Diego State University logo

  ROHAN Academic Computing

The Elm Mail System
*The Elm Reference Guide - Part 2*

------------------------------------------------------------

A comprehensive list of all commands, options and such to the Elm mail system

Introduction
The .elm/elmrc File
The Command Line Options
Multi-Media Capabilities of Elm
Special Outgoing Mail Processing
Customized header lines
Commands
Using Elm with ``editor = none''
The Alias System
Elm and Signals
Expert Mail Users and Debugging the Mailer

----------------------------------------------------------------------

The Command Line Options

There are a number of command line options to the elm program, with only one that needs to be remembered: ``-?''or ``-h'' for help.

The flags are:

-a
Arrow. This allows you to have the ``->'' arrow pointer rather than the inverse bar. This can also be set in the .elm/elmrc file - check the boolean variable arrow).

-c
Check only. This is useful for expanding aliases without sending any mail. The invocation is similar to invoking elm in send-only mode: elm -c list-of-aliases.

-d n
Set debug level to n. Useful for debugging the elm program, this option will create a file in your home directory called ELM:debug.info, then output a running log of what is going on with the program. Level n can be 1 through 11, where the higher numbers generate more output. This option might be disabled by the the person who configured elm for your system.

-f folder
Folder. Read specified folder rather than the default incoming mailbox. Note that you can use the same metacharacters (e.g. `=') as when you change folders from within the program. You can also use the same abbreviatory symbols (`!', `>' and `<'), but remember to ``single quote'' them in case they have special meaning in the shell you use.

-h or -?
Help. Gives a short list of all these options and exits.

-i file
Include. Include prepared file in edit buffer before sending. This facilitates using elm with other programs that interface with mail (like news readers, for example). There is an example of how to set up the rn news reading program to use elm in The Elm Users Guide. The file specified is copied into the temporary file just before the signature file.

-k
Keypad. This option, when used, lets the elm program know that you're on an HP terminal, and it can then interpret the <PREV>, <NEXT> and <HOME>/<SHIFT>-<HOME> keys accordingly. If you are not on an HP terminal, it is recommended that you do NOT use this option. (See the keypad option in the .elm/elmrc section.)

-K
Keypad + softkeys. The elm mailer can use the HP softkeys as an alternative form of input. If you specify this option be sure that you're on an HP terminal that can accept the standard 2622 terminal escape sequences! (See the softkeys option in the .elm/elmrc section for more information.)

-m
Inhibit display of the 3-line menu when using the mailer. This, of course, gives you three more message headers per page instead. (See also the menu option in the .elm/elmrc section.)

-s subject
In send-only and batch mode, this is how to indicate the subject of the resulting message. Please see the section on ``Non-Interactive Uses of Elm'' in The Elm Users Guide for more information.

-t
Disable use of the termcap/terminfo ti/te capabilities. Many terminal emulators require it (not the least of which is the OpenLook cmdtool). Some terminal emulators clear the screen on te (some xterms). (See also the usetite option in the .elm/elmrc section.)

-z
Zero. This causes the mailer not to be started if you don't have any mail. This emulates the behavior of programs like Berkeley Mail.

All the above flags default to reasonable options, so there is usually no need to use them. Furthermore, the most used flags are available through the .elm/elmrc file. See above.

Return to Index of Sections

----------------------------------------------------------------------

Multi-Media Capabilities of Elm

Elm optionally provides you with some Multi-Media features, which are compliant to the MIME (Multipurpose Internet Mail Extension) IETF draft.

If the support is compiled into Elm, on the receiving side Elm accesses Metamail from Nathaniel Borenstein of Bellcore. If you receive a MIME compliant Message, Elm calls Metamail automatically on displaying the message. Metamail asks you for each part of the message, if you want to display it. Metamail uses the display programs available at your site. This is controlled through the mailcap file.

On the sending side, there is a simple mechanism integrated in elm to compose MIME compliant messages. If you have one or more key lines [include file contenttype/subtype encoding] in the message body, at each of these key lines, a file would be included, and will be a part of the message. The text lines before, between and after the include lines go into extra Message parts of type Text.

As an example, say you want to include the file foo.gif into your message, which is a GIF Image, and you want to use base64 encoding, use the following line:

[include foo.gif image/gif base64]

Or you want to include a text file which contains plain ASCII:

[include foo.txt text/plain]

The encoding parameter is optional and the default is 7bit.

Refer to RFC1341 for valid contenttype/subtype and encoding parameter values.

Return to Index of Sections

----------------------------------------------------------------------

Special Outgoing Mail Processing

There are a few extra features that the mailer offers on outgoing mail that are worthy of mention:

The first, and probably the most exciting feature, is the ability to send encrypted mail! To do this is extremely simple: You need merely to have two key lines [encode] and [clear] in the message body.

(Note: Unfortunately, at many non-US sites, it's quite probable that you won't be able to use this feature since you won't have the crypt() library available due to licensing restrictions.)

Consider the following outgoing message:

Joe,
Remember that talk we had about Amy? Well, I talked to my manager
about it and he said...
uhh...better encrypt this...the usual `key'...
[encode]
He said that Amy was having family problems and that it had been
affecting her work.
Given this, I went and talked to her, and told her I was sorry for
getting angry. She said that she understood.
We're friends again!!
[clear]
Exciting stuff, eh?
Mike

While this is obviously quite readable while being typed into the editor, as soon as the message is confirmed as wanting to be sent, the mailer prompts with:

Enter encryption key: @

and accepts a key (a series of 8 or less characters) without echoing them to the screen. After entry, it will ask for the same key again to confirm it, then *poof* it will encrypt and send the mail.

If you have the copy option enabled, the program will save your copy of the message encrypted too. (This is to ensure the privacy and security of your mail archive, too.)

If the mailer doesn't ask for the encryption key, it's because you don't have the [encode] entered as the first 8 characters of the line. It MUST be so for this to work!!

On the other end, a person receiving this mail (they must also be using elm to receive it, since this mailer has a unique encryption program) will be reading the message and then suddenly be prompted:

Enter decryption key: @

and will again be asked to re-enter it to confirm. The program will then on-the-fly decrypt the mail and display each line as it is decoded. The [clear] line signifies that the block to encrypt is done.

Note that it is not possible currently to pipe or print encrypted mail.

The other option on outgoing mail is the ability to specify what section of the message you want to have archived (assuming copy is enabled) and what section you don't. This is most useful for sending out source file listings and so on.

To indicate the end of the section that should be saved in the archive, you need merely to have the line

[nosave]

or

[no save]

appear by itself on a line. This will be removed from the outgoing mail, and will indicate the last line of the message in the saved mail. Other than this, the saved mail is identical to the outgoing mail.

Return to Index of Sections

----------------------------------------------------------------------


BACK The Elm Reference Guide | Academic Computing Handouts, Manuals, and Help Files

This page last modified: December 20, 2002
Send comments/suggestions about this web page to webmaster@rohan.sdsu.edu

SDSU Faculty and Students may send questions about software on ROHAN or ROHAN UNIX problems to problems@rohan.sdsu.edu