Sending E-mail: Elm

To get started, type elm and say 'yes' when it asks you whether it should create a .elm and Mail directory. This will happen only the first time you start elm.

Elm will then read in your mail from /usr/spool/mail/yourusername, tell you how many messages you have, and show you a one-line summary of each message (date, sender, number of lines and subject line). It will show the messages in reverse-sent order, i.e. the one most recently sent will be first. The pointer will be at the first new message received. There will also be a 3-line menu of things you can do.

You can read the currently highlighted message by just hitting <Return>. Use j to move down one message and k to move up.

Before you do anything further, like saving messages or replying, when you're using elm for the first time you should type o to get to the options menu and then > to save these options. They will be written to a file called elmrc in a directory called .elm in your home directory.

You should then make some decisions about whether you want to use these default options, or change them. If you want to look at them and possibly change them, edit that file with emacs by typing emacs .elm/elmrc All the lines that start with three hashes (###) show the default setting, which is the one you're currently using.

Here are some places where you may want to think about changing that default:

copy = ON (default OFF)
Save a copy of all messages you send out.
Advantage: You don't have to cc messages you want copies of to yourself, and you have important messages you send for future reference or if they get lost.
Disadvantage: You have to sort through all the junk you're saving once in a while to avoid crashing your disk quota.
metoo = ON (default OFF)
Get messages you send to an alias you are on
Disadvantage: If you have copy set to ON you'll have the message twice.
savename = OFF (default ON)
Saves messages not by login names, but in folders called received and sent.
Advantage: Makes it easier to keep track of your recent mailing history, i.e. which messages you recently sent and received.
Disadvantage: When these folders get long, they'll take long to read in, and it'll be harder to find old messages in them.
forcename = ON (default OFF)
Create a new folder if a folder with the login name of the sender/recipient does not yet exist. I'm not sure whether the default value makes any sense if you've decided to store your mail by login name.
pointnew = OFF (default ON)
Point to the first message, not the first new message. This is matter of taste/habit and depends on how you organize your mail.
sortby = Reverse-Sent (default)
I like this default, so I would recommend keeping it. But there are many other choices - type o within elm, then s for 'sorting criteria', and then <Space> and R a couple of times each, to see all the options. Reverse-Sent has the advantage of being roughly chronological, so the new stuff is all together, but you will also notice if a message took particularly long to arrive, which will help you understand why the contents may be irrelevant by now :-) You can always re-order your current folder if you need to, but Reverse-Sent is a good default.
print = perl -e 'print "Disabled. Type s to save to file, then !lpr it."; exit(1);'
Disallow printing, and type a helpful message. I find that useful because otherwise I hit p by mistake all the time and would end up printing random messages to printers at the other end of campus. If you want to print a message you can always save it to a file and print that. If you do want to be able to print, here's the place to customize how.
Now that you've decided how you want to configure your mail, you can move on. Of course you can always change your mind later, but especially with the sent/received versus storage by username option it will be some trouble to change your habits later.

To see a list of commands used in elm, type ? twice. The most important ones are:

<Return> --- display the currently highlighted message
j --- move down to the next non-deleted message
(on a Mac you can also use the cursor-up key)
k --- move up to the next non-deleted message
(on a Mac you can also use the cursor-down key)
<Number> <Return> --- go to message number <Number>
m --- mail a message. Will ask you for the e-mail address of the person
you want to send the message to, then for the subject line, and then fire up emacs to let you edit your message. You can still decide to forget about the message, or use h to change the subject line or add recipients, after you're done editing.
r --- reply to the current message (just to the sender)
g --- group-reply to the current message (i.e. to everyone who got the original message --
try to avoid doing this accidentally with messages sent to large mailing lists!)
f --- forward the current message to some other person
p --- print the current message
d --- delete the current message (i.e. mark it as to-be-deleted when you quit)
u --- undelete the current message (i.e. remove the 'to-be-deleted' mark, a D in the first column)
c --- change folder (> is short for your received folder, < for sent,
and ! for your incoming folder, use = as a prefix to other folders in your Mail directory)
q --- quit, will ask whether to delete, keep, or store messages
x --- exit, leaves folder untouched (but asks if it has changed,
e.g. if you've marked something for deletion)
X --- quick exit, leaves folder untouched and doesn't ask any questions
? --- display help (type ? again for a list of commands)
Further useful commands are:
+ --- move down one screen (or use the right cursor key)
- --- move up one screen (or use the left cursor key)
a--- go to the alias menu. It is useful to define abbreviations for
commonly used long e-mail addresses - saves time and you avoid making typos. Type a again to make an alias for the sender of the current message, or n to make a new alias in general. To create a lot of aliases or sort the existing ones you may want to go and edit your .elm/aliases.text file directly. Make some from within elm first so you'll know what the format is. Type newalias afterwards to activate the changes. You will be told if you've made obvious mistakes.
h --- show the header of the current message
l --- limit display. Lets you show only the messages from or to a particular person etc.
At some point, once you're familiar with elm, you may also want to adjust the following in your elmrc:
userlevel = 1
Won't show your options all the time, e.g. after editing and before sending a message. Will show you a different, more advanced 3-line menu.
Won't show any 3-line menu.
alwaysdelete = ON
Won't ask for confirmation before deleting messages you've marked for deletion. Saves time, but it's easy to lose mail that way.
Elm has many other nice features. You can pre-sort your mail using its filter mechanism. And elm can handle MIME-encoded messages. For more information about elm, look at Getting Started in Elm (DCG), at the files in /usr/local/lib/elm, or check out this Elm Site.

To find people's e-mail addresses use finger lastname@host If you don't know which computer they're using, but they're at Stanford, use whois. If they're not at Stanford look at the How to find people's E-mail addresses FAQ. Also find out about the departmental mailing lists.

Back up to the Main Computing Page