MH is the name of a powerful message handling system.
Rather then being a single comprehensive program,
MH consists of a collection of fairly simple
single-purpose programs to send, receive, save,
and retrieve messages. The user should refer
to the MH Users Manual
and the pages for the MH
programs in the Unix Programmers Manual.
Unlike mail, the standard UNIX mail user interface program,
MH is not a closed system which must be explicitly run,
then exited when you wish to return to the shell.
You may freely intersperse MH commands with other shell commands,
allowing you to read and answer your mail while you have (for example)
a compilation running,
or search for a file or run programs as needed to find the answer to
someones question before answering their mail.
The rest of this manual entry is a quick tutorial which will teach you the
basics of MH.
You should read the manual entries for the individual programs for complete
To get started using MH, put the directory
/usr/local/bin on your $PATH.
This is best done in one of the files:
.profile, .login, or .cshrc
in your home directory.
(Check the manual entry for the shell you use,
in case you dont know how to do this.)
Run the inc command.
If youve never used MH before,
it will create the necessary default files and directories after
asking you if you wish it to do so.
inc moves mail from your system maildrop
into your MH +inbox folder,
breaking it up into separate files
and converting it to MH format as it goes.
It prints one line for each message it processes,
containing the from field, the subject field
and as much of the first line of the message as will fit.
It leaves the first message it processes as your current message.
Youll need to run inc each time you wish to incorporate new mail
into your MH file.
scan prints a list of the messages in your current folder.
show, next, and prev
are used to read specific messages from the current folder.
show displays the current message,
or a specific message, which may be specified by its number,
which you pass as an argument to show.
next and prev display, respectively,
the message numerically after or before the current message.
In all cases, the message displayed becomes the current message.
If there is no current message,
show may be called with an argument,
or next may be used to advance to the first message.
rmm (remove message) deletes the current message.
It may be called with message numbers passed as arguments,
to delete specific messages.
repl is used to respond to the current message (by default).
It places you in the editor with a prototype response form.
While youre in the editor,
you may peruse the item youre responding to by reading the file @.
After completing your response,
type l to review it,
or s to send it.
comp allows you to compose a message by putting you in the editor on
a prototype message form,
and then lets you send it.
All the MH commands may be run with the single argument: -help,
which causes them to print a list of the arguments they may be invoked with.
Commands which take a message number as an argument
(scan, show, repl, ...)
also take one of the words:
first, prev, cur, next, or last
to indicate (respectively) the first, previous, current, next, or last
message in the current folder (assuming they are defined).
Commands which take a range of message numbers
(rmm, scan, show, ...)
also take any of the abbreviations:
<num1>-<num2> - Indicates all messages in the range <num1> to <num2>, inclusive. The range
must be nonempty.
<num>:-N - Up to
N messages beginning with (or ending with) message
Num may be any of the pre-defined symbols:
first, prev, cur, next or
last:N - The first, previous, next or last
N messages, if they exist.
There are many other possibilities such as creating multiple folders for
different topics, and automatically refiling messages according to subject,
source, destination, or content.
These are beyond the scope of this manual entry.
Following is a list of all the MH commands:
^ali (1)~^- list mail aliases
^anno (1)~^- annotate messages
^burst (1)~^- explode digests into messages
^comp (1)~^- compose a message
^dist (1)~^- redistribute a message to additional addresses
^folder (1)~^- set/list current folder/message
^folders (1)~^- list all folders
^forw (1)~^- forward messages
^inc (1)~^- incorporate new mail
^mark (1)~^- mark messages
^mhl (1)~^- produce formatted listings of MH messages
^mhmail (1)~^- send or read mail
^mhook (1)~^- MH receive-mail hooks
^mhparam (1)~^- print MH profile components
^mhpath (1)~^- print full pathnames of MH messages and folders
^msgchk (1)~^- check for messages
^msh (1)~^- MH shell (and BBoard reader)
^next (1)~^- show the next message
^packf (1)~^- compress a folder into a single file
^pick (1)~^- select messages by content
^prev (1)~^- show the previous message
^prompter (1)~^- prompting editor front end
^rcvstore (1)~^- incorporate new mail asynchronously
^refile (1)~^- file messages in other folders
^repl (1)~^- reply to a message
^rmf (1)~^- remove folder
^rmm (1)~^- remove messages
^scan (1)~^- produce a one line per message scan listing
^send (1)~^- send a message
^show (1)~^- show (list) messages
^slocal (1)~^- special local mail delivery
^sortm (1)~^- sort messages
^vmh (1)~^- visual front-end to MH
^whatnow (1)~^- prompting front-end for send
^whom (1)~^- report to whom a message would go
^mh-alias (5)~^- alias file for MH message system
^mh-format (5)~^- format file for MH message system
^mh-mail (5)~^- message format for MH message system
^mh-profile (5)~^- user customization for MH message system
^mh-sequence (5)~^- sequence specification for MH message system
^ap (8)~^- parse addresses 822-style
^conflict (8)~^- search for alias/password conflicts
^dp (8)~^- parse dates 822-style
^fmtdump (8)~^- decode MH format files
^install-mh (8)~^- initialize the MH environment
^post (8)~^- deliver a message
^/usr/local/bin~^directory containing MH commands
The RAND MH Message Handling System: Users Manual,
The RAND MH Message Handling System: Tutorial,
The RAND MH Message Handling System: The UCI BBoards Facility,
MH.5: How to process 200 messages a day and still get some real work
If problems are encountered with an MH program,
the problems should be reported to the local maintainers of MH.
When doing this,
the name of the program should be reported,
along with the version information for the program.
To find out what version of an MH program is being run,
invoke the program with the -help switch.
In addition to listing the syntax of the command,
the program will list information pertaining to its version.
This information includes the version of MH,
the host it was generated on,
and the date the program was loaded.
A second line of information,
found on versions of MH after #5.380 include MH configuration
version: MH 6.1 #1[UCI] (glacier) of Wed Nov 6 01:13:53 PST 1985
options: [BSD42] [MHE] [NETWORK] [SENDMTS] [MMDFII] [SMTP] [POP]
The 6.1 #1[UCI] indicates that the program is from the UCI MH.6.1
version of MH.
The program was generated on the host glacier on
Wed Nov 6 01:13:53 PST 1985.
Its usually a good idea to send the output of the -help switch along
with your report.
If there is no local MH maintainer,
try the address Bug-MH.
If that fails, use the Internet mailbox Bug-MH@ICS.UCI.EDU.
^$HOME/.mh_profile~^The user profile
^Path:~^To determine the users MH directory