nmh Message Handling System

nmh (new MH) is a powerful electronic mail handling system. It was originally based on version 6.8.3 of the MH message system developed by the RAND Corporation and the University of California. It is intended to be a (mostly) compatible drop-in replacement for MH.

nmh consists of a collection of fairly simple single-purpose programs to send, receive, save, retrieve, and manipulate e-mail messages. Since nmh is not a single comprehensive program, you may freely intersperse nmh commands with other shells commands, or write custom scripts which utilize these commands in flexible ways. nmh can also be used as the foundation for various mail interfaces such as exmh or mh-e

Latest Release

Although nmh is still being actively developed, it is stable at this point. There are many people who use it on a daily basis (including myself, of course).

The latest release of nmh is 1.0. You can retrieve this release at:


Differences between nmh and MH

Since I started hacking on nmh, I have converted the configuration process to use GNU autoconf. I have also considerably cleaned up the source tree, and improved the readability and completeness of the documentation. Many lingering bugs have been fixed and several new features have been added. nmh should now be much more portable than MH, and should be easier to compile on most Unix platforms (including Linux).

nmh and MH are (mostly) compatible. Although at this stage, there are a few differences betweem them, most are small enough that users of MH should have no problem using nmh.

You can check out the list of differences between nmh and MH and see the details of what has changed.

nmh mailing list

nmh has a mailing list nmh-workers@math.gatech.edu. To subscribe, send mail with the subject "subscribe e-mail-address" (without quotes) to the adminstrative address nmh-workers-request@math.gatech.edu

Unsubscribing is done similarly.

If you have problems subscribing/unsubscribing, just send me some e-mail.

Front-ends for MH/nmh

Various front-ends have been developed over the years for MH (and hence also for nmh). Some of the more popular ones are:

exmh is a user interface for MH/nmh mail written in tcl/tk.
mh-e is the standard GNU Emacs front end for MH. It is included in both the Emacs and Xemacs distributions.
extended mh-e
This is an extended (but unofficial) version of mh-e, developed by Darryl Okahata. You can read the README to check the new features that are available.
mew is an Emacs interace for mail/news. It initially started as a frontend for MH, but has become independent of it. It has both MIME and PGP capabilities.

Richard Coleman