lang pl
 [ News ]  [ What is it? ]  [ Screenshots ]  [ Download ]  [ Documentation ]


Welcome to the documentation page

What is it?

Elmo is a mail user agent for console. It is written with ncurses.
Elmo supports:
  • threading
  • colors
  • keymaps
  • smtp -- Elmo sends mails directly via smtp. You don't need sendmail (or any other MTA) installed.
  • pop3 -- Elmo connects to pop3 server and displays window with mail list. You can choose which messages do you want to fetch or delete without fetching.
  • Maildir -- Elmo uses the Maildir storage format.
  • MIME -- Elmo is able to decode message in qp and base64 encodings. It allows you to save attachments. Elmo handles encoded headers.

How does elmo look like?

These are some screenshots I took on my computer. Bad quality.

Where can I find elmo?

You can find elmo in few places.
  • Project page at sourceforge brings quite lot of information and should be up to date.
  • Project page at savannah should be up to date either but may include some additional news. I use this page more often because it is more convenient. I use savannah's cvs server as my primary.
  • You can also find elmo at freshmeat.
If you want to get the sources I suggest you check out cvs server. You can find detailed instructions here. Modulename is elmo. I know people generally don't like using cvs so I try to make new version each time I add some features, but still there may be a difference between my sources and these included in current tarball. Check download page for current releases.

How to run elmo?

First you have to setup your .elmorc file. It is very simple. You can define a variable with set keyword. There are some general rules you have to follow: (1) empty lines and those beginning with # are ignored; (2) ~ and $-variables are expanded just like in shell; (3) if you want to have spaces in variable, you need to surround it with quotes; (4) environement variables are not expanded in single quotes. Important variables:
  • name - Your name (set name "John Doe")
  • email - Your email address (set email ${USER}@${HOSTNAME})
  • editor - Your favourite editor (set editor jed)
  • maildir - Your mailbox (set maildir ~/Maildir)
  • maildir_incoming - This is where elmo will store new mail fetched from pop3 server. Don't worry, it will be replaced soon.
  • smtp_host - Your smtp host (set smtp_host
  • pop_host - Your pop3 host (set pop_host
  • pop_user - Your login (set pop_user john)
  • pop_pass - Your password (set pop_pass jenny)
  • addressbook - Addressbook file. If not set then ~/.addressbook is used (and will be overwritten!)
  • M_wrote, F_wrote - These strings will be used as quote's attribution. They're just like printf format strings. You can use following conversion characters:
    • %f - name of person being quoted (John Doe)
    • %F - name and address of person being quoted (John Doe <>)
    • %d - mail's date
    • %s - mail's subject
    Default value is: On %d, %f wrote:
  • sigfile - Your signature file. If it begins with |, it will be used as program which should be run to get the result. (set sigfile ~/.signature) (set sigfile |fortune)
You can also set some keybindings using key keyword followed by mode name, key itself and function name. Available modes are:
  • folder -- main window
  • mail -- when you read a message
  • select -- selection box (which doesn't work)
  • fetch -- pop3 fetching window
  • send -- message composition window
  • attach -- list of attachments (while reading message)
  • abook -- addressbook
  • abook_add -- window with addresses found in message being read
Let's say you want bind key 'n' with function which moves bar in main window to the next position. Put this into your config file: key folder n folder_bar_next. Do not place any signs after function name in this line. If desired key is not just a simple sign - press it in main elmo window, and you will be displayed its code. Then you can use it in config file. Digits must be handled in the same way. key folder 0 folder_bar_prev won't bind key '0' with action. You should make key folder 48 folder_bar_prev instead.

How to operate elmo?

Main elmo window is folder. You can use following keys:
  • arrows, home, end, page up/down - navigation
  • enter - open mail
  • $ - folder flush - re-reads box and removes mails toggled for deletion
  • q - quit
  • d, t, A, s, i - sort by: date, thread, author, subject, index
  • m - new mail
  • r - reply
  • f - forward
  • a - addressbook
  • c - change box (doesn't work)
  • F - mail fetching
In addressbook you can use following keys:
  • arrows, home, end, page up/down - navigation
  • m - mail to
  • del - remove
  • a - add new
  • e - change email
  • n - change name
  • f - change flag
  • q - quit
In mail window you can use following keys:
  • arrows, home, end, page up/down - navigation
  • q - quit mail window
  • a - open attachments window
  • b - add addresses to addressbook (selection window)
In fetching window (pop3 connection) you can use following keys:
  • arrows, home, end, page up/down - navigation
  • f - fetch
  • d - delete
  • q - quit window
In attachments window you can use following keys:
  • arrows, home, end, page up/down - navigation
  • enter - load selected attachment into mail window
  • s - save
  • q - quit window
In mail composition window you can use following keys:
  • arrows, home, end, page up/down - navigation
  • s - change subject
  • a - add attachment
  • t - change Content-Type
  • delete, d - remove attachment
  • y - send message
  • q - cancel
Sometimes you are asked to enter an argument. You can use following keys then:
  • arrows, home, end, C-p, C-f, C-a, C-e - navigation
  • C-k - kill line
  • C-g - cancel
  • C-d, del - kill character
  • tab - complete file name

Who writes it?

rzyjontko was the creator, only developer and author of this site till 2005. You can contribute if you want to. Now current maintaner is Arnold Shade.


Thanks to all the people supporting me. Thanks to Michael Elkins who wrote mutt, which is my model.

Few final words

Forgive me if this site is outdated. I don't have time to keep it up to date. Logo

Copyright (C) Logo