Computer Laboratory

Introduction to exmh

Introduction to this document

For users converting to exmh from mh, see the terse notes at the end.

Also, see, or some older mail-related pages at and

Basic commands to get started

Note that buttons ending in ``...'' are pull-down menus. You can either ``left-click'' to reveal the menu, and then ``left-click'' again to select the item, or you can press the ``left'' button, and while holding it down, move to the required item, and then release.

Note also that there are several ``More...'' menus.

The following is a list of basic commands which may help to get you started.

accept new mail (see below)
display the next message
mark item for deletion
More... Unmark
actually delete (or move)
Reply to some, or all, participants in a msg
Compose a new message
More... Pack folder
renumber messages
select set of messages
Help... Frequently Asked Questions
First place to look if you have a problem
when ready, browse through for more goodies ...

``inc'' should find your ``incoming mail'' file automatically. If you have not done anything unusual and it does not work, contact postmaster. If you have done non-standard things in the area of mail delivery, and it cannot find it, you can help it by setting the environment variable MAILDROP to the correct value.

`auth' warnings to window which started exmh

If exmh complains that you ``should be using xauth-style authorisation'', it means that you have allowed any user on certain (or all) hosts connect to your X session. This is a general security problem, but more serious when using exmh. As such, it will not allow ``background processing'' if it find such a hole. If you have an ``xhost +'' command in your startup (typically .xdmrc), remove it, as it should not be necessary. If you need to allow access from an ``untrusted'' machine, consider using xcstart. If you believe it is necessary, contact postmaster giving the reasons.
There is a known bug whereby HP X terminals enable three hosts automatically. To fix this, in your .xdmrc file include the code:
for h in `xhost | tail +2`; do xhost -$h; done

Notes for users converting to exmh

  • to select (display) an object (folder or message), left click it
  • to move the current message(s) to a folder, right click on the folder.
  • dismiss in ``Preferences'' leaves the changes you have made active for the current session. Select ``Save'' to make them permanent, or ``Reset'' to undo them. Note that some things may not take immediate effect (e.g. may only take effect when a news message is selected)
  • to process parts of a MIME message, use the right mouse button to display a pull-down menu
  • to create a new message (rather than reply), use the ``send'' button.
  • The second area of folder names is a cache of the ``most recently used'' ones, in case not all are visible in your FTOC.
  • There ``compose'' key might not be obvious. If so bind something to it in Bindings ``Simple edit''.

See also the Help... menu.

Configuration tips

Using Other Fonts

The standard X configuration facilities can be used to make crude changes to the fonts exmh uses. xfontsel can be used to pick a suitable fix width font, which can be added to your .Xdefaults file, e.g.
exmh*Font: 7x14

Use of wheel mice

To select, select `Preferences -> Windows & Scrolling -> Wheel Mouse'.

Reply Insert Prefix

The default prefix for replies is a Tab character, which frequently causes problems with line wrapping. A more normal prefix is ``> '', which can be set by selecting "Preferences", then "Simple Editor" and set "Reply insert prefix".

Use faces row

From version 1.6.3, Preferences -> Faces has "Use faces row" which shows all the icons for the email address, not just the first. (see for more info)

Reducing Colourmap Usage

It is believed that the `faces' icons can burn a lot of the colour map by default. If this is a problem, select `Preferences', `Faces' and `help' and look near the bottom where it explains about reducing the colour cube and using greyscale.

Pasting `misbehaving' in sedit

exmh's sedit windows have now adopted `gnuemacs' semantics in that by default paste inserts at the graphics cursor (i.e. where the mouse is) rather than at the text cursor. To make all pastes work at the text cursor, select `bindings', `sedit' and clear the `paste sets text pointer'.

The other change in semantics is the left click may cause subsequent pastes from within the same sedit window not to work, inserting some other selection instead. Instead, use Ctrl-Left to set the text cursor to the graphics cursor.

META key not working

The package which exmh uses to drive X (tk 4.0) has somewhat esoteric ways of doing things, and in particular the mapping of META is somewhat unusual. The net effect is that users with their own xmodmaprc files may need to add the line
keysym Alt_L = Meta_L
to get the Alt key to act as META

"faster" email submission

Preferences -> MH Tweaks allow you to select how email is to be sent. The default is "wait", which blocks exmh until the delivery has been done. This is annoying as it is not fast, but it does ensure that any typos can be seen immediately, rather than the message failing, and a failure report (with any luck) being returned some time later.
"async" fires it off in the background, without feedback to the user, as of 2.1.1 returning a failure message to the user if there are problems (it used to silently discard them).
"xterm" is an ideal compromise if your window manager doesn't ask you about window placement, and if you know how to drive MH. It opens an xterm window to do the delivery, and if there is a problem, you are dropped into "what now" mode.