Added all of the MH sources, including RCS files, in
[mmh] / docs / historical / mh-6.8.5 / FAQ
1 Path: senator-bedfellow.mit.edu!faqserv
2 From: Bill Wohler <wohler@newt.com>
3 Newsgroups: comp.mail.mh,comp.answers,news.answers
4 Subject: MH Frequently Asked Questions (FAQ) with Answers
5 Supersedes: <mail/mh-faq/part1_820070207@rtfm.mit.edu>
6 Followup-To: poster
7 Date: 25 Jan 1996 09:06:36 GMT
8 Organization: Newt Software, Menlo Park, California, USA
9 Lines: 3354
10 Approved: news-answers-request@MIT.Edu
11 Expires: 7 Mar 1996 09:03:34 GMT
12 Message-ID: <mail/mh-faq/part1_822560614@rtfm.mit.edu>
13 Reply-To: Bill Wohler <wohler@newt.com>
14 NNTP-Posting-Host: bloom-picayune.mit.edu
15 Summary: This document answers Frequently Asked Questions about MH, a
16          sophisticated mail interface.  It should be read by new MH
17          users and comp.mail.mh readers and before posting to this group.
18 Keywords: FAQ,mh,mail,question,answer,pop,slocal,letter,signature,
19           draft,message,folder,xmh,olmh,vmail,vmailtool,comp,repl,
20           forw,scan,SMTP,bind,mh-e,MIME,plum,exmh
21 Originator: faqserv@bloom-picayune.MIT.EDU
22 Xref: senator-bedfellow.mit.edu comp.mail.mh:8227 comp.answers:16612 news.answers:62966
23
24 Archive-name: mail/mh-faq/part1
25 Last-modified: $Date: 1995/12/02 02:55:05 $
26 Version: $Revision: 95.11.1.1 $
27 Posting-Frequency: monthly
28
29   This is a living list of frequently asked questions on the mailer
30   user interface, Mail Handler, or MH.  The point of this is to
31   circulate existing information, and avoid rehashing old answers.
32   Better to build on top than start again.  Please read this document
33   before ever posting to this newsgroup.
34
35   This article is posted monthly.  If it has already expired and
36   you're not reading this, you can hope that you saved the
37   instructions to retrieve the FAQ (see "Where can I get MH") so that
38   you can get a copy through other means.
39
40   Please do not post an answer when someone posts a frequently asked
41   question; rather, email the relevant section of the FAQ to eliminate
42   unnecessary traffic in this newsgroup.
43
44   This list depends on your comments, additions and fixes: please send
45   them to Bill Wohler <wohler@newt.com>.
46
47   Copyright 1991-1995 Bill Wohler
48
49   Permission to use, copy, distribute, and translate this document for
50   any non-commercial purpose is hereby granted, provided that this
51   copyright notice appears in all copies.  Commercial distributions
52   require prior written consent.
53
54   This article is distributed in the hope that it will be useful,
55   but WITHOUT ANY WARRANTY; without even the implied warranty of
56   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
57
58 ----------------------------------------------------------------------
59   
60 Subject: Table of Contents
61 From: Bill Wohler <wohler@newt.com>
62 Date: Mon, 27 Nov 1995 14:43:36 -0800
63
64 Legend: + new, - deleted, ! changed
65 _______________
66
67 01. Introduction
68
69  01.01 Why should I use MH?
70  01.02 What is the current version/status of MH?
71  01.03 Where can I get MH?
72  01.04 What references exist for MH?
73  01.05 !What other MH software is available?
74  01.06 How can I print a MH manual?
75  01.07 How should I report bugs?
76  01.08 !How can I convert from my mailer to MH?
77 _______________
78
79 02. Building MH
80
81  02.01 What machines does MH run on?
82  02.02 How do I build MH?
83  02.03 What options should I use?
84  02.04 Where can I get POP3?
85  02.05 Does MH support IMAP?
86  02.06 Why does "mailgroup mail" only affect inc and not slocal?
87  02.07 !How can I build MH on Solaris 2?
88  02.08 !How can I build MH on Linux?
89  02.09 +How can I build MH on IRIX?
90  02.10 +How can I get MH to interpret the Content-Length field?
91  02.11 +How do I build MH on HPUX?
92  02.12 +Can I prevent adding the local hostname to addresses behind firewalls?
93 ______________________
94
95 03. Scanning & Reading
96
97  03.01 What do I do if scan shows the wrong date?
98  03.02 !How would one go about reading Usenet with MH?
99  03.03 How can I search through multiple folders?
100  03.04 Why don't MH format commands such as %(friendly) work?
101  03.05 Why doesn't "show" display all of a MIME message?
102  03.06 Can I get show not to run "less" so much on MIME messages?
103  03.07 Why do I get "mhn: don't know how to display content"?
104  03.08 +How can I automatically delete MH backup files?
105  03.09 +Fixing "cannot fopen and lock /var/spool/mail/(user)".
106  03.10 +Can I read my mail with a Web browser?
107 __________
108
109 04. Filing
110
111  04.01 Can I append MH messages to a Unix mailbox format file?
112  04.02 Can I append MH messages to a GNU Emacs rmail BABYL-format file?
113  04.03 Why do I get ".../.mh_sequences is poorly formatted?"
114  04.04 How can you save News articles into an MH folder?
115  04.05 +Are there any good tools to archive MH messages?
116  04.06 +How can I remove duplicate messages?
117 ________________________
118
119 05. Composing & Replying
120
121  05.01 Why does repl add a "Re:" to a message that already has one?
122  05.02 How do I include messages in repl with or without ">"?
123  05.03 How can I eliminate duplicate copies of letters to myself?
124  05.04 How can I include my signature?
125  05.05 How do I call my editor with arguments?
126  05.06 How can I digestify messages in a folder for mail to another user?
127  05.07 How can I change my return address?
128  05.08 !How can I change my From header?
129  05.09 !How can I save a copy of all messages I send?
130  05.10 Can the folder in Fcc: be dynamically specified?
131  05.11 !Can I post secure/encryped mail?
132  05.12 +How can I send multi-media (MIME) attachments?
133  05.13 +What's the best way to send mail to a long list of people?
134  05.14 +What is the Dcc header?
135  05.15 +How can I make sense of the replcomps file?
136  05.16 +How can I convert quoted-printable to 8bit in quoted text in replies?
137 ___________
138
139 06. Posting
140
141  06.01 What to do with "Problems with edit - draft removed".
142  06.02 Can I run my message through a program (e.g., ispell) before sending?
143  06.03 What to do with "bad address 'xxx' - no at-sign after local-part".
144  06.04 Fixing "post: problem initializing server; [BHST] no servers available"
145  06.05 Fixing "post: problem initializing server; [RPLY] 503 Sender
146        already specified"
147  06.06 Fixing "post: unexpected response; [BHST] no socket opened"
148  06.07 How do I fix the "X-Authentication-Warning" header?
149  06.08 Fixing "post: unexpected response; [RPLY] 503 Need MAIL
150        before RCPT"
151  06.09 Fixing "post: problem initializing server; [BHST] premature
152        end-of-file on socket"
153  06.10 Fixing "Sender didn't use the HELO protocol"
154  06.11 Fixing "post: problem initializing server; [RPLY] 553 Local 
155        configuration error, hostname not recognized as local
156 ________________
157
158 07. Mail Filters
159
160  07.01 !What mail filters are available?
161  07.02 Why slocal writes messages to system mailbox that from(1) can't read.
162  07.03 Where can I read about slocal and the format of .maildelivery?
163  07.04 How do I debug my .maildelivery file?
164  07.05 Why isn't slocal working?
165 ________
166
167 08. mh-e
168
169  08.01 Is there documentation for mh-e?
170  08.02 How can mail aliases can be expanded in mh-e?
171  08.03 !How do I use POP with mh-e?
172 _______
173
174 09. Xmh
175
176  09.01 How can I get xmh to use Emacs as the editor?
177  09.02 Does xmh support subfolders?
178  09.03 How do I precede included messages with ">" when replying in xmh?
179 ________
180
181 Appendix
182
183  !Glossary & Acknowledgments
184  Switching xmh's editor
185  babyl2mh.pl
186  inco
187  srvrsmtp.c patch
188  mhn.c patch 1
189  mhn.c patch 2
190  +IRIX config file
191  +Removing duplicate messages (Bourne)
192  +Removing duplicate messages (Perl)
193
194 ------------------------------
195   
196 Subject: !Preface Viewing This Article
197 From: Bill Wohler <wohler@newt.com>
198 Date: Mon, 27 Nov 1995 14:44:19 -0800
199
200   To skip to a particular question numbered xx, use "/^F.*xx" with most
201   pagers.  In GNU Emacs type "M-C-s ^F.*xx", (or C-r to search backwards),
202   followed by ESC to end the search.
203
204   To skip to new or changed questions, use "/^S.*[!+]" with most pagers and
205   "M-C-s ^S.*[!+]" in GNU Emacs.
206
207   This article is in digest format.  Nn may have already broken this
208   message into separate articles; if not, then type "G %".  In rn, use
209   ^G to skip sections.
210
211   This article is treated as an outline when edited by GNU Emacs.  Run
212   "M-x describe-mode" to see available outline-mode commands.  Useful
213   commands are "M-x hide-body", "C-c C-s" (show-subtree) and "M-x
214   show-all"
215
216   A "Date" field whose time is 00:00:00 is approximate.  The month and
217   year in these fields represent the time they were added to the FAQ,
218   rather than when they were contributed by the author, as is the case
219   since November, 1995.
220
221   If you should need the Internet address, use nslookup or dig if you
222   have them, or send mail to dns@grasp.insa-lyon.fr with "help" for
223   a Subject.
224
225   References to $MHLIB refer to the directory that contains MH support
226   files and routines.  This directory is usually /usr/lib/mh or
227   /usr/local/lib/mh.  Do not use $MHLIB literally; use the real,
228   absolute path to your MH library directory.
229
230 ------------------------------
231
232 Subject: 01. ***** Introduction *****
233 From: Bill Wohler <wohler@newt.com>
234 Date: Fri, 1 Mar 91 13:03:15 -0800
235
236 ------------------------------
237
238 Subject: 01.01 Why should I use MH?
239 From: Jerry Peek <jerry@ora.com>
240 Date: Fri, 1 Mar 91 13:03:15 -0800
241
242   The MH message handling system is a set of electronic mail programs
243   in the public domain.  If your computer runs Unix, it can probably
244   run MH.
245
246   The big difference between MH and most other "mail user agents" is
247   that you can use MH from a Unix shell prompt.  In MH, each command
248   is a separate program, and the shell is used as an interpreter.  So,
249   all the power of Unix shells (pipes, redirection, history, aliases,
250   and so on) works with MH--you don't have to learn a new interface.
251   Other mail agents have their own command interpreter for their
252   individual mail commands (although the mush mail agent simulates a
253   Unix shell).
254
255   Because MH commands aren't part of a monolithic mail system, you can
256   use them at any time; you don't have to start or quit the mail
257   agent.  Because you use them from a shell prompt, you can use all
258   the power of the shell.
259
260   If your shell has time-saving aliases or functions (and most do),
261   you'll be able to use them with MH, of course.  And because MH isn't
262   a monolithic mail agent, you can use MH commands in Unix shell
263   scripts, or call them from programs in high-level languages like C.
264
265   Unlike most mail agents, MH keeps each message in a separate file.
266   The filename is the message number.  To rearrange the messages, MH
267   just changes the filenames.  MH can use standard Unix file system
268   operations such as removing, copying and linking messages.  The
269   message files are grouped into one or more folders, which are
270   actually Unix directories.
271
272   MH is free, powerful, flexible--and the basics are easy to learn.
273
274 ------------------------------
275   
276 Subject: 01.02 What is the current version/status of MH.
277 From: Bill Wohler <wohler@newt.com>
278 Date: Sun, 1 May 94 00:00:00 -0800
279
280   The current version of MH is 6.8.3.
281
282   This version includes MIME, a multi-media MH package that implements
283   the new IETF work on Multi-media 822 (MIME).  This allows you to
284   include things like audio, graphics, and the like, in your mail
285   messages.  --Marshall Rose <mrose@dbc.mtview.ca.us>
286
287   MH now works with Kerberos as well.
288
289   In addition, a new program called mhparam extracts arguments from
290   .mh_profile which is useful in shell scripts.
291
292   Please see the file CHANGES in the distribution for more details. 
293
294 ------------------------------
295   
296 Subject: 01.03 Where can I get MH?
297 From: Bill Wohler <wohler@newt.com>
298 Date: Mon, 1 May 94 00:00:00 -0800
299
300   MH comes standard with:
301   
302         Berkeley Software Design BSD/386  . . . . MH 6.8.3
303         Control Data Corp. CDC4680-MP . . . . . . EMH 1.4.2 (modified MH)
304         DEC Ultrix 3.1  . . . . . . . . . . . . . MH 6.5
305         DEC Ultrix 4.2A.4 . . . . . . . . . . . . MH 6.7.1
306         DEC OSF/1 . . . . . . . . . . . . . . . . MH 6.7
307         Evans and Sutherland ES/OS 2.3  . . . . . MH 6.6
308         IBM PS/2 AIX 1.3  . . . . . . . . . . . . MH 6.4
309         IBM RISC System/6000 AIX 3.x and 4.1  . . MH 6.6
310         Linux . . . . . . . . . . . . . . . . . . MH 6.8.3
311         MIPS RISC/OS 4.52 . . . . . . . . . . . . MH 6.6
312         Sony NEWS-OS 4.3  . . . . . . . . . . . . MH 6.7.2
313         Tektronix UTek  . . . . . . . . . . . . . MH (Version Unknown)
314         Table maintained by: "James R. Hamilton" <jrh@jrh.guild.org>
315   
316   If you should need the Internet address, use nslookup or dig if you
317   have them, or send mail to dns@grasp.insa-lyon.fr with "help" for
318   a Subject.
319
320   via anonymous ftp:                                            
321     ftp://ftp.ics.uci.edu/mh/mh-6.8.tar.Z                               2MB
322     ftp://ftp.uu.net/networking/mail/mh/mh-6.8.tar.Z
323     ftp://krynn.efd.lth.se/pub/mail/mh-6.8.tar.Z
324
325   via mail:
326     Send a note to either mail-server@nluug.nl or
327     archive-server@germany.eu.net with a body containing the following:
328
329       send mail/mh/mh-6.8.tar.Z
330
331     UK users may be able to use ftpmail@doc.ic.ac.uk.  Send a note
332     whose body contains "help" to this address. 
333
334     Send a note to ftpmail@decwrl.dec.com whose body contains "help"
335     on a line by itself get information on getting ftp sources by
336     mail.  Also include the lines "connect" and "dir /pub/mail/ua/mh"
337     to see which files are available local to decwrl.  Please do this
338     as a last resort only.  
339
340   via U.S. mail:
341     You can send $75 US to the address below.  This covers
342     the cost of a 6250 BPI 9-track magtape, handling, and ship-
343     ping.  In addition, you'll get a laser-printed hard-copy of
344     the entire MH documentation set.  Be sure to include your
345     USPS address with your check.  Checks must be drawn on U.S.
346     funds and should be made payable to:
347
348            Regents of the University of California
349
350     The distribution address is:
351
352            University of California at Irvine
353            Office of Academic Computing
354            Engineering Gateway E2130
355            Irvine, CA  92717  USA
356
357            +1 714 824 5153
358
359     Sadly, if you just want the hard-copies of the documenta-
360     tion, you still have to pay the $75.  The tar image has the
361     documentation source (the manual is in roff format, but the
362     rest are in TeX format).  Postscript formatted versions of
363     the TeX papers are available, as are crude tty-conversions
364     of those papers.  
365
366 ------------------------------
367   
368 Subject: 01.04 What references exist for MH?
369 From: Bill Wohler <wohler@newt.com>
370 Date: Mon, 1 May 95 00:00:00 -0800
371
372   Books:
373     MH & xmh: E-mail for Users & Programmers.  Third edition. Jerry
374     Peek, with Bill Wohler and Brent Welch.
375     ISBN 1-56592-093-7.  $34.95.  738 pages.
376     O'Reilly & Associates, Inc.
377     Book Orders:
378       US and Canada: 800-998-9938. Fax: 707-829-0104.
379
380     To get a list of non-US distributors, connect to gopher.ora.com,
381     http://www.ora.com/, send a note to info@ora.com or call +1-707-829-0515.
382
383     References to "the MH book" in this document refer to the third
384     edition of this book (section numbers for the second edition appear
385     in parentheses).
386
387     Examples from this book are in:
388     ftp://ftp.uu.net/published/oreilly/nutshell/MHxmh/MHxmh3.tar.Z      114k
389
390     There is another book that contains a number of examples of
391     advanced mail handing using MH as the example message handler.
392     It's also quite a good reference on email in general.  
393
394     The Internet Message.  Marshall T. Rose
395     ISBN 0-13-092941-7.  396 pages.
396     P T R Prentice Hall
397
398   Papers:
399     MHN Tutorial by Jerry Sweet
400     ftp://ftp.ics.uci.edu/mh/contrib/multimedia/mhn-tutorial.ps.Z       141k
401     ftp://ftp.ics.uci.edu/mh/contrib/multimedia/mhn-tutorial.tex.Z      48k
402
403   Usenet:
404     comp.mail.mh (gatewayed to MH-users)
405
406   Mailing lists:
407      General questions/discussion: MH-users@ics.uci.edu
408      (gatewayed to comp.mail.mh).
409      MH developers and maintainers: MH-workers@ics.uci.edu.
410      Please use MH-users-request and MH-workers-request to request
411      an addition or deletion.
412
413   MH-users archives:
414     ftp://ftp.ics.uci.edu/mh/mh-users/
415
416     The files are in packf(1) format, compressed with compress(1).  To
417     get them, use anonymous ftp and set "binary" transfer mode.
418
419       mh-users.86.Z        8549         mh-users.86.scan.Z        771
420       mh-users.87.Z       55449         mh-users.87.scan.Z       3679
421       mh-users.88.Z      182805         mh-users.88.scan.Z      11339
422       mh-users.89.Z       89151         mh-users.89.scan.Z       5522
423       mh-users.90.Z      402470         mh-users.90.scan.Z      21551
424       mh-users.91.Z      878763         mh-users.91.scan.Z      36992
425       mh-users.92.Z     1281585         mh-users.92.scan.Z      44975
426       mh-users.93.Z     1544159         mh-users.93.scan.Z      52938
427       mh-users.mbox: current archive, uncompressed.
428
429     There are directions in the README file.  Basically, you can use
430     either "msh" or the individual commands "inc -file" to get the
431     messages into a folder, and then "scan", "pick", "show", and so on
432     (or your favorite commands in xmh, mh-e, etc.).  --Jerry Peek
433     <jerry@ora.com>
434
435   This document:
436     via WWW:
437       http://www.cis.ohio-state.edu/hypertext/faq/usenet/mail/mh-faq/part1/top.html 
438
439     via anonymous ftp:
440       ftp://rtfm.mit.edu/pub/usenet/news.answers/mail/mh-faq/part1      
441       ftp://ftp.uu.net/archive/usenet/news.answers/mail/mh-faq/part1.Z  
442       ftp://ftp.cs.ruu.nl/pub/NEWS.ANSWERS/mail/mh-faq/part1            
443
444     via mail:
445       Each of the following addresses is following by commands which
446       should be included as the body of the message.
447
448       mail-server@rtfm.mit.edu                                          
449         send /usenet/news.answers/mail/mh-faq/part1
450
451       mail-server@cs.ruu.nl                                             
452         send /pub/NEWS.ANSWERS/mail/mh-faq/part1
453
454   mh-e documentation:                                                   
455     GNU Emacs 19.29 comes with a version of mh-e which now includes
456     on-line (Texinfo) documentation.  Try "C-h i m mh-e RET".  See
457     also "What other MH software is available?" to see where you can
458     get the latest version of mh-e which includes the documentation
459     sources.
460
461   exmh FAQ:
462     ftp://parcftp.xerox.com/pub/exmh/exmh.README                        
463
464   Signature and Finger FAQ:
465     via WWW:
466       http://www.cis.ohio-state.edu/hypertext/faq/usenet/signature_finger_faq/faq.html
467
468     via anonymous ftp:
469       ftp://rtfm.mit.edu/pub/usenet/news.answers/signature_finger_faq
470
471     via mail (see above for usage):
472       mail-server@rtfm.mit.edu
473         send /usenet/news.answers/signature_finger_faq
474
475 ------------------------------
476   
477 Subject: 01.05 !What other MH software is available?
478 From: Bill Wohler <wohler@newt.com>
479 Date: Sun, 26 Nov 1995 19:05:24 -0800
480
481 From: James Perkins <jamesp@sp-eug.com> 
482 Date: Fri, 1 Jan 93 00:00:00 -0800
483
484   vmh
485     Vmh is designed for people using the bulletin-board features
486     of MH, where mail is stored in packed (single-file) folders.  As
487     a result, use of this program cannot be mixed with the use of
488     normal MH commands.  Vmh is a part of the official MH
489     distribution.
490
491 From: James Perkins <jamesp@sp-eug.com>
492 Date: Fri, 1 Jan 93 00:00:00 -0800
493
494   xmh
495     Xmh is a X11 mouse-based MH browsing tool.  It is very powerful
496     and feature-filled and thus comes with a moderate learning
497     curve.  Its dependence on the X11 environment makes it very
498     reconfigurable, but only by people well-versed in X applications
499     programming.  Its message reply built-in-editor interface is not
500     always popular among those used to having MH bring up the editor
501     of their choice.
502
503 Date: Fri, 1 Jan 93 00:00:00 -0800
504
505     xmh is part of the standard X Window System distribution from
506     the X Consortium.  Ultrix also ships dxmail which is similar.
507
508     ftp://cs.utk.edu/pub/xmh.shar.Z                                     162k
509
510 From: Harald Tveit Alvestrand <hta@boheme.er.sintef.no> 
511 Date: Fri, 1 Jan 93 00:00:00 -0800
512
513     Here's a version of xmh that includes MIME.
514
515     ftp://aun.uninett.no/pub/mail/mixmh/mixmh-0.3.tar.Z                 232k
516
517 From: Brent Welch <welch@parc.xerox.com> 
518 Date: Mon, 1 Aug 94 00:00:00 -0800
519
520   exmh
521     EXMH is a user interface for the MH mail system written in TCL/TK.
522
523     Exmh has MIME support, color feedback in the scan listing, a
524     folder display with one label per folder, clever scan caching,
525     facesaver bitmap display; background inc, various inc styles,
526     searching over folder listing and message body, a dialog-box
527     interface to MH pick, a simple built-in emacs-like editor,
528     interfaces to other editors, user preferences, user hacking
529     support.
530
531     ftp://parcftp.xerox.com/pub/exmh/exmh-1.4.1.tar.Z                   357k
532     ftp://parcftp.xerox.com/pub/exmh/exmh-1.5omega.tar.Z
533
534     
535 From: Stephen Gildea <gildea@x.org> 
536 Date: Mon, 1 May 95 00:00:00 -0800
537
538   mh-e
539     Mh-e is the GNU Emacs front end for MH.  It offers all the
540     functionality of MH, the visual orientation and simplicity of
541     use of xmh, and full integration with Emacs, including thorough
542     configurability.  The command set is similar to that of rmail
543     (the Emacs front end for BSD mail) and BSD mail itself.  On-line
544     help is available.
545
546     Mh-e allows one to read and process mail very quickly: commands
547     are single characters and completion and defaults are available
548     for file and folder names.  During a reply, the original message
549     is displayed simultaneously in another window for easy reference
550     where a mh-e command can quickly incorporate and format this
551     text into your reply.
552
553     With mh-e you compose outgoing messages in Emacs.  This is a big
554     plus for Emacs users, but it has been known for non-Emacs users
555     to be able use mh-e after only learning the most basic cursor
556     motion commands.  Mh-e is easily configured via the Emacs
557     edit-options menu, and people familiar with Emacs Lisp will be
558     able to further reconfigure mh-e beyond recognition.
559
560     Mh-e is part of the standard GNU Emacs distribution.  Note that
561     mh-e got much faster in Emacs 18.56.
562
563     ftp://ftp.x.org/misc/mh-e/mh-e-5.0.tar.Z                            66k
564
565 From: Nathaniel Borenstein <nsb@thumper.bellcore.com>
566 Date: Sun, 26 Nov 1995 19:04:51 -0800
567
568   metamail
569     Metamail is a package that can be used to convert virtually ANY
570     mail-reading program on Unix into a multi-media mail-reading program.
571     It is an extremely generic implementation of MIME (Multipurpose
572     Internet Mail Extensions), the proposed standard for multi-media mail
573     formats on the Internet.  The implementation is extremely flexible and
574     extensible, using a "mailcap" file mechanism for adding support for new
575     data formats when sent through the mail.  At a heterogeneous site where
576     many mail readers are in use, the mailcap mechanism can be used to
577     extend them all to support new types of multi-media mail by a single
578     addition to a mailcap file.
579
580     The metamail distribution comes complete with a small patch for
581     each of over a dozen popular mail reading programs, including
582     Berkeley mail, mh, Elm, Xmh, Xmail, Mailtool, Emacs Rmail, Emacs
583     VM, Andrew, and others.  Note that the MH patches are now integrated
584     into MH 6.8.
585
586     ftp://ftp.bellcore.com/pub/nsb/mm2.7.tar.Z
587
588 From: Tom Christiansen <tchrist@perl.com>
589 Date: Tue, 1 Nov 94 00:00:00 -0800
590
591   plum
592     Plum is a highly configurable and extensible screen-oriented front-end
593     for processing MH mail on ASCII terminals.  Unlike mh-e, the extension
594     language used in plum is perl, not LISP.  Plum offers many of the
595     advantages of xmh, but lacks several of xmh's disadvantages.  The
596     look&feel derives more from vi than from emacs.  Key bindings and
597     functions may be changed on the fly to suit the user's preference.  It
598     offers filename and word completion on folder, variables, and command
599     names.
600
601     Until it is included in the standard distribution (under miscellany),
602     you can find a copy on:
603
604     ftp://perl.com/pub/perl/scripts/plum.gz                             29k
605   
606     or mail requests to Tom
607
608 From: Jerry Sweet <jsweet@irvine.com> 
609 Date: Tue, 1 Nov 94 00:00:00 -0800
610
611   mhunify
612     Mhunify is a set of perl scripts and templates that provides
613     shell-level MH functionality with USENET news.  Since MH supports
614     MIME, MIME-format news articles just work.  I've found that being
615     able to handle news in the same way that I handle email is very
616     useful, although there are some tradeoffs.
617
618     Mhunify also treats MH folders just like news groups.  If you
619     subscribe to several mailing lists, and your email is
620     automatically delivered to separate folders, say, via procmail or
621     via MMDF's .maildelivery, the mhunify package lets you progress
622     automatically through your folders just as you would news groups.
623
624     ftp://ftp.ics.uci.edu/mh/contrib/multimedia/mhunify.shar.gz
625   
626 From: Dale Carstensen <dlc@c3file.c3.lanl.gov>
627 Date: Tue, 1 Nov 94 00:00:00 -0800
628
629   olmh
630     Sun's Open Windows 3 comes with a demo for OLIT (Open Look
631     Interface Toolkit, the Open Look wrapper to Xt) named olmh that
632     does handle 3rd and subsequent levels of nesting of folders.
633
634     Obtain the Open Windows 3 distribution CD/ROM from Sun (SPARC
635     only).  To do this, call 1-800-USA-4SUN and send tone "2" for
636     telemarketing after it answers.  The 4.1.2 CD/ROM may also have
637     Open Windows 3.  The list price for the 4.1.2 CD/ROM is $200.
638
639 From: James Perkins <jamesp@sp-eug.com> 
640 Date: Sun, 1 May 94 00:00:00 -0800
641
642   vmail
643     Vmail is a curses-based, vi-like message browser which calls on
644     MH programs to manipulate mail.  It can be used on almost any
645     terminal.  It organizes mail folders into index pages, from
646     which a message can be selected to be shown, replied-to,
647     forwarded, refiled, deleted, and so on.  The vi-like interface
648     and command keystrokes are comfortable to less-experienced Unix
649     users, and it is a small, compact program, unlike the mh-e Emacs
650     package.
651
652     This version of vmail has been bugfixed and enhanced from the
653     original vmail published on the net in 1987 by J. Zobel.
654
655     ftp://ftp.uu.net/comp.sources.unix/volume12/vmail/part0*.Z          46k
656     ftp://ftp.ucs.ubc.ca/pub/mh/vmail.[1-3]of3.Z                        58k
657
658     Or mail requests to James.
659
660 From: James Perkins <jamesp@sp-eug.com>  
661 Date: Sun, 1 May 94 00:00:00 -0800
662
663   vmailtool
664     If you have a Sun workstation, vmailtool may be for you.  It is a
665     button gadget panel for the above-mentioned vmail program.  It
666     brings vmail into the windows era where people no longer need to
667     memorize specific command keystrokes.  It also provides a mail
668     icon with the flag that pops up when new mail arrives.  Again,
669     this is a compact, simple tool, unlike the powerful xmh program.
670     Still, it's a welcome alternative for many people who are running
671     SunView or OpenWindows.
672
673     ftp://ftp.ucs.ubc.ca/pub/mh/vmailtool.Z                             18k
674
675     or mail requests to James.
676
677   mmh
678     MMH, My Mail Handler, is a Motif interface for reading and sending mail.
679     It uses the MH commands to actually handle sending a receiving messages.
680     It does not support all the capabilities of MH, but offers a large
681     enough subset to handle the majority of users.  Its intended user is
682     someone between "bumbling email novice" and "sophisticated user".
683     Hooks are provided to allow the user to customize and add new commands.
684
685     ftp://ftp.eos.ncsu.edu/pub/bill/bill.tar.Z                          120k
686
687 From: Andrew Waugh <ajw@mel.dit.csiro.au>
688 Date: Fri, 1 Jan 93 00:00:00 -0800
689
690   X.500 lookups
691     If a name is enclosed in square brackets, when entering a destination
692     address:
693
694         To: [Greg Wickham,CSIRO]
695
696     a search will be made in the X.500 Directory for the individual's entry.
697     If an address exists then it will be extracted and placed into the
698     headers.  Mail requests for the software to the author.
699
700 From: Barbara Dyker <dyker@teal.csn.org>
701 Date: Fri, 1 Jan 93 00:00:00 -0800
702
703   QueueMH
704     QuemeMH is an email based service request and tracking system
705     based on the Rand Mail Handler.
706
707     ftp://ftp.cs.colorado.edu/pub/cs/sysadmin/utilities/queuemh.tar.Z   98k
708
709 From: <info@rootgroup.com>
710 Date: Mon, 1 Mar 93 00:00:00 -0800
711
712   QMH:
713     Qmh is an MH-based group mail management tool. Written entirely in
714     perl, Qmh combines the best aspects of MH with group mail
715     heuristics and delivers a sensible package for all levels of Unix
716     users. A limitless number of individual queues and associated
717     groups of permitted users can be established.
718
719     Specific functionality includes the following modes of operation;
720     checking header dates and sending reminder/deadline mail, editing
721     existing messages, help screens, creating new messages from
722     scratch or exiting messages, resolving messages, scanning queue
723     folders, and annotating with status both by editing and sending
724     mail.
725
726     Qmh is a single generic program in and of itself from which all
727     modes of operation are invoked. Additionally, each separate queue
728     may be accessed via a link to the single program. All system
729     configuration is maintained in a single file that is read upon
730     each invocation of Qmh.  Formatting and template files are
731     provided in the system library, although individual users can
732     override the defaults simply by creating equivalent files in their
733     own MH mail directory.
734
735     Qmh provides a powerful database-like functionality by allowing
736     limitless per-queue X-Qmh-<$value> headers to be included in
737     messages.  These "fields" then form the context of the queue
738     messages and provide a user-defined, but yet structured
739     environment for queries, reporting, and random information.
740
741     Qmh is designed to provide a complete solution for SA groups, help
742     desks, support organizations, or wherever two or more individuals
743     are trying to manage multiple mail requests.
744
745     Qmh is also compatible with versions of xmh that provide
746     user-level command buttons. Provided in the Qmh package is a
747     ~/.Xdefaults template file that's setup to harness the power of
748     Qmh.
749
750 From: Jerry Peek <jerry@ora.com>, Shannon Yeh <yeh@netix.com>
751 Date: Mon, 1 Aug 94 00:00:00 -0800
752
753   MacMH and PC/MH:
754     These were available only for non-commercial degree-granting
755     institutions from:
756
757         Networking & Communication Systems
758         115 Pine Hall
759         Stanford University
760         Stanford, CA 94305-4122
761         Phone: +1 415-723-3909
762
763     See also:
764       ftp://netix.com/pub/pc-mh-info/*
765
766     For more PC/MH info, contact:
767
768         Netix Communications, Inc.
769         15375 Barranca Parkway
770         Building G, Suite 107
771         Irvine, CA 92718
772         Phone: +1 714-727-9532
773         FAX:   +1 714-727-3922
774         Internet: info@netix.com
775
776     In addition, you might try Wollongong, to see if they have something you
777     can get. 
778   
779 ------------------------------
780   
781 Subject: 01.06 How can I print a MH manual?
782 From: Bill Wohler <wohler@newt.com>, Jos Vos <jos@bull.nl>
783 Date: Fri, 1 Jan 93 00:00:00 -0800
784
785   To order a copy by mail, see the section on how to get MH by mail
786   (see "Where can I get MH?" and "What references exist for MH?").
787
788   To print your own copy, first obtain the MH sources (see "Where can
789   I get MH?") if you don't already have it.  Go into the "doc"
790   directory and run "make guide" to create the administrators guide
791   and "make manual" to create a user's manual which includes tutorials
792   and man pages.  If the doc directory is empty or is missing the
793   Makefile, you'll have to run "mhconfig MH" in the conf directory so
794   that the documentation with correct local information is created.
795
796   For properly formatting the documentation (at least the manual
797   pages) you might even have to install MH, because a reference to a
798   tmac.h file in the MH lib directory is made in the manual pages.
799
800   You can also ftp the ASCII or postscript versions:
801
802     ftp://ftp.ics.uci.edu/mh/doc/tutorial.ps.Z                          65k
803     ftp://ftp.ics.uci.edu/mh/doc/ADMIN.ps.Z                             56k
804     ftp://ftp.ics.uci.edu/mh/doc/MH.ps.Z (man pages)                    261k
805     ftp://ftp.uu.net/networking/mail/mh/doc/tutorial.ps.Z
806     ftp://ftp.uu.net/networking/mail/mh/doc/ADMIN.ps.Z
807     ftp://ftp.uu.net/networking/mail/mh/doc/MH.ps.Z (man pages)
808
809   Or, you can send a note to mail-server@nluug.nl with a body containing the
810   following:
811
812     send /mail/mh/papers-ps/tutorial.ps.Z
813
814 ------------------------------
815   
816 Subject: 01.07 How should I report bugs?
817 From: Bill Wohler <wohler@newt.com>
818 Date: Fri, 1 Mar 91 13:03:15 -0800
819
820   Mail them to Bug-MH@ics.uci.edu and be sure to include the output of
821   the -help option as well as what hardware and operating system you
822   are using.
823
824 ------------------------------
825   
826 Subject: 01.08 !How can I convert from my mailer to MH?
827 From: Mike Sutton <mws115@llcoolj.dayton.saic.com>
828 Date: 7 Jul 1995 10:03:50 GMT
829
830   The unrmail function will convert rmail format to mbox format.
831
832 From: Jerry Peek <jerry@ora.com>
833 Date: Fri, 1 Mar 91 13:03:15 -0800
834
835   If you use one of a mail agent like 'mail', 'mailx', 'elm' or
836   'mush', converting to MH is easy.  When you run the 'inc' command,
837   it reads all new messages from the system mailbox into your 'inbox'
838   folder.  Those mail agents also have separate files or "folders"
839   that hold messages in the same format as the system mailbox.  You
840   can read them with the 'inc -file' command.  For example, to read
841   the messages from your 'mbox' mail file into your MH 'inbox' folder,
842   you'd type:
843
844         % cd
845         % cp mbox mbox.backup
846         % inc -file mbox
847
848   If you see the usual "Incorporating new mail into inbox..." message
849   and a scan listing, the messages probably were converted.  Read some
850   or all of them (with the 'show' command) and be sure.  The 'inc'
851   won't remove your mbox unless you use '-truncate'.
852
853 From: Jason R. Mastaler <jason@IS.NET>
854 Date: Mon, 1 May 95 00:00:00 -0800
855
856   You can also specify an alternate folder to inc.  Here's how you
857   can convert all your folders en masse:
858
859         for arg in `cat flist`; do
860                 echo "converting $arg"
861                 inc +"$arg" -file "$arg" -silent
862         done
863   
864   Section D.4 of the MH book's second edition lists two scripts to
865   convert mail files to MH folders: babyl2mh to convert from rmail's
866   BABYL format; vmsmail2mh to convert from VMS's mail (see "What
867   references exist for MH") to see where the book's examples can be
868   ftped from).  These scripts aren't in the third edition but are in
869   its archive file.
870
871 From: Vivek Khera <khera@cs.duke.edu>
872 Date: Fri, 1 Jan 93 00:00:00 -0800
873
874   I rewrote the above script in Perl since the original script doesn't
875   work for some people (see "babyl2mh.pl" below).
876
877 From: Juergen Nickelsen <nickel@cs.tu-berlin.de> 
878 Date: Fri, 1 Jan 93 00:00:00 -0800
879
880   You can remove the second to last second line ("> $input"), so
881   that the script doesn't zero out your RMAIL file.
882
883   Another alternative is to replace this line with "inc -file $tmpmbox
884   $folder && > $input", so that the RMAIL is only zeroed if inc
885   successfully incorporated the mail.  Finally one could add a switch
886   -z, so that the RMAIL file is only zeroed if the switch is given.
887   See [Appendix "inco."] 
888
889 Date: Sun, 1 May 94 00:00:00 -0800
890
891   Use the following to convert a BABYL format file to Unix mail
892   format. 
893   
894   ftp://inf.informatik.uni-stuttgart.de/pub/gnu/emacs_extras/rmailtovm.el.Z 6k
895
896   See also MH book second edition (Appendix D).
897
898 ------------------------------
899
900 Subject: 02. ***** Building MH *****
901 From: Bill Wohler <wohler@newt.com>
902 Date: Fri, 1 Mar 91 13:03:15 -0800
903
904 ------------------------------
905
906 Subject: 02.01 What machines does MH run on?
907 From: Jerry Peek <jerry@ora.com>
908 Date: Fri, 1 Mar 91 13:03:15 -0800
909
910   If you have a computer running Unix, you can probably run MH.
911
912 ------------------------------
913   
914 Subject: 02.02 How do I build MH?
915 From: Bill Wohler <wohler@newt.com>
916 Date: Fri, 1 Mar 91 13:03:15 -0800
917
918   By carefully reading the READ-ME in the root of the source
919   hierarchy, one should not have any trouble building MH.
920
921 ------------------------------
922   
923 Subject: 02.03 What options should I use?
924 From: Bill Wohler <wohler@newt.com>
925 Date: Tue, 1 Dec 92 00:00:00 -0800
926
927   BERK: Do NOT include the BERK option (in versions 6.7 or later)!
928   BERK breaks the mh-format functions that take apart address lines,
929   for example mbox, from, and friendly.  This would really put a crimp
930   on my replcomps file.
931
932   LOCKF: if you have NFS, you need to lock your mailbox with lockf()
933   so the lock will be honored by all machines on the local network.
934   If you have the lockf() system call, include LOCKF.
935
936   JQ Johnson <jqj@duff.uoregon.edu> makes the point that one should
937   use this option carefully since it requires a robust lockf() call.
938   For example, this option caused serious problems on his SunOS 4.1.1.
939   He suggested using LOK_BELL instead, and adding "lockstyle: 1" to
940   mtstailor.
941
942   ATZ: makes your timezones print like "EST" instead of "-0500".  Much
943   prettier.  --Stephen Gildea <gildea@x.org>
944
945   However, Tony Landells <ahl@technix.oz.au> replies: "Yes; very
946   pretty.  How unfortunate that timezone names are so ambiguous, so
947   that EST can be interpreted, at a minimum, as (American) Eastern
948   Standard Time, (Australian) Eastern Standard Time, or (Australian)
949   Eastern Summer Time (and yes, I think it's dumb having the same
950   acronym for both normal and Summer time, but that's a different
951   problem).  While the numeric timezones may not look as nice, they
952   are, at least, reasonably unambiguous.  I would urge anyone who ever
953   intends/hopes/expects to use email outside the U.S. to NOT use ATZ
954   (sorry Stephen)."
955
956   At any rate, the conf/examples directory has been updated and
957   contains many examples show you which options are required on your
958   platform and which are optional (in the upcoming version MH 6.8).  At
959   any rate, it is recommended that you examine the options in the
960   example configuration files, and read about them in READ-ME.
961
962   RPATHS: a side-effect is that slocal writes messages to your system
963   maildrop without the MMDF C-A's that separate messages, so your BSD
964   tools like from work. 
965
966 ------------------------------
967   
968 Subject: 02.04 Where can I get POP3?
969 From: Bill Wohler <wohler@newt.com>
970 Date: Fri, 1 Mar 91 13:03:15 -0800
971
972   MH6.7 (and earlier versions too) include a server for version 3 of POP.
973
974 ------------------------------
975   
976 Subject: 02.05 Does MH support IMAP?
977 From: John Romine <jromine@ics.uci.edu>
978 Date: Fri, 1 Mar 91 13:03:15 -0800
979
980   No.  MH only supports retrieving mail using POP3.  POP3 is on the
981   "standards track"--it is now an elective Internet Draft Standard
982   (see RFC1280 for more details).  At this point, IMAP[23] are
983   "experimental, limited use" protocols; it is unlikely that MH will
984   support them.  
985
986 From: Bill Wohler <wohler@newt.com>
987 Date: Mon, 1 Aug 94 00:00:00 -0800
988
989   I've found several things which might help.  First, a definition
990   lifted from the Pine FAQ:
991
992   What is IMAP?
993
994   IMAP stands for "Internet Message Access Protocol".  An IMAP client
995   program on any platform at any location on the Internet can access
996   email folders on an IMAP server.  While the messages appear to be
997   local, they reside on the server until the client explicitly moves
998   or deletes them.  The IMAP protocol is a superset of POP, containing
999   all POP commands plus more.  For a comparison of IMAP and POP, see
1000   the paper Comparing Two Approaches to Remote Mailbox Access: IMAP
1001   vs. POP (in ftp.cac.washington.edu:/mail/imap.vs.pop).  IMAP is what
1002   allows Pine (or any other IMAP client) to get to email on a central
1003   campus email server.  There are current IETF working groups revising
1004   IMAP and readying it to become an Internet standard. A copy of the
1005   latest IMAP draft may be obtained from
1006   ftp://ftp.cac.washington.edu/mail/latest-imap-draft.  For a list of IMAP
1007   clients, see the file imap.software, in the same directory. 
1008
1009 From: David L Miller <dlm@cac.washington.edu>
1010 Date: Mon, 1 Aug 94 00:00:00 -0800
1011
1012   ipop3d from the UW IMAP toolkit can operate in a couple modes.  As a
1013   straight POP3 server, it uses the same C-client library as imapd, so
1014   it co-exists comfortably with imapd.  It can also operate as a
1015   POP-to-IMAP gateway so that your POP-only clients can access IMAP
1016   services. 
1017
1018   ftp://ftp.cac.washington.edu/mail/imap.tar.Z                          1.0M
1019
1020 From: Mark Crispin <MRC@Panda.COM>
1021 Date: Mon, 1 Aug 94 00:00:00 -0800
1022
1023   The only answer I can give for [how MH users can use IMAP] is that
1024   Pine can read mailboxes in MH format; and that someone might in the
1025   future develop a version of MH that can use IMAP. 
1026
1027 ------------------------------
1028   
1029 Subject: 02.06 Why does "mailgroup mail" only affect inc but not slocal?
1030 From: John Romine <jromine@ics.uci.edu>
1031 Date: Fri, 1 Jan 93 00:00:00 -0800
1032
1033   If "mailgroup" is set, inc is made set-group-id to this group name.
1034   Some SYS5 systems want this to be set to "mail".  Set this if
1035   /usr/spool/mail (or /usr/mail) is not world-writable.  These
1036   changes were contributed by Peter Marvit, and "inc" is very careful
1037   about its use of the set-gid privilege.
1038
1039   Note that slocal doesn't know how to deal with this, and will not
1040   work under these systems; just making it set-group-id will open a
1041   security hole (since it doesn't know when to drop the set-gid
1042   privileges).  If you're using "mailgroup", you should remove slocal
1043   (and its man page) from your system. 
1044
1045   Alternatives to slocal include deliver, procmail, and mailagent.
1046   Archie can help you find where they are kept.
1047
1048 ------------------------------
1049   
1050 Subject: 02.07 !How can I build MH on Solaris 2?
1051 From: Neil Rickert <rickert@cs.niu.edu>,
1052         Scott K. Hutton <shutton@habanero.ucs.indiana.edu>,
1053         Casper H.S. Dik <casper@fwi.uva.nl>
1054 Date: 20 Jun 1995 08:18:23 GMT
1055
1056   First, don't use the BSD compatible stuff.  Make sure that the Sun
1057   or GNU compiler appear before the BSD compiler in your PATH.
1058
1059   Second, don't use GNU make.  Make sure that the Sun make appears
1060   before the GNU make in your PATH.
1061
1062   Use conf/examples/solaris2.sun.com and fix the paths, if necessary.
1063   Optionally change the following to use the GNU compiler, to perform
1064   optimization, and to create shared libraries.
1065
1066         cc              gcc
1067         ccoptions       -O -g -msupersparc
1068         slflags         -shared
1069
1070   Incorporate the diff in (see "mhn.c patch 1").
1071
1072   Optionally incorporate the Content-Length header fix.  (See "How can
1073   I get MH to interpret the Content-Length field?")
1074
1075   Linking with /usr/ucblib/libucb.so is incompatible with including
1076   <dirent.h>.
1077
1078   When compiling, you can ignore the following warning:
1079
1080         fmtcompile.c", line 238: warning: semantics of "/" change in ANSI C;
1081         use explicit cast
1082
1083   If you're using AFS, you'll have to replace any occurrence of "ln"
1084   with "ln -s" wherever the make dies when it tries to make a link
1085   "on a different file system."  
1086
1087 Date: Thu, 1 Dec 94 00:00:00 -0800
1088
1089   Unset LD_LIBRARY_PATH. 
1090
1091 From: Gary Strand <strandwg@ncar.ucar.edu>
1092 Date: Mon, 1 May 95 00:00:00 -0800
1093   
1094   To cure slocal's Segmentation Fault problems, I decided to try 'cc'
1095   instead of 'gcc' (an alleged no-no under Solaris) and MH built just
1096   fine, and it's working perfectly.
1097
1098 From: "Jason R. Mastaler" <mastaler@valhalla.mindspring.com>
1099 Date: Mon, 25 Sep 1995 17:35:13 -0400
1100
1101   Don't use "ldoptions -s" with gcc.  It may cause the compile to fail
1102   with:
1103
1104         gcc: Internal compiler error: program ld got fatal signal 11
1105         *** Error code 1
1106
1107 ------------------------------
1108   
1109 Subject: 02.08 !How can I build MH on Linux?
1110 From: Brandon S. Allbery <bsa@kf8nh.wariat.org>
1111 Date: Sun, 26 Nov 1995 16:18:50 -0800
1112
1113   The current patch is the first one listed below.  The old patch only
1114   works with libc-4.4, which is no longer used.  The current patch is
1115   split into two pieces, as with the previous patch, but now the
1116   divisions are purely functional: the first diff enables MH to
1117   compile, the second allows creation of a shared library. [Ed: The
1118   paths are up to date, but I think the info in this paragraph is
1119   old.]
1120
1121   Recent versions of GNU make choke on MH's makefiles.  Unfortunately,
1122   the shared library patches depend on "export".  If you have problems
1123   building MH, remove the "export" lines from all of the makefiles (if
1124   you applied the shared library patches) and try using BSD pmake
1125   instead.
1126
1127   If you don't want to compile MH, the second file contains
1128   pre-compiled ready-to-run binaries which can simply be extracted in
1129   the root directory.
1130
1131   ftp://sunsite.unc.edu/pub/Linux/system/Mail/readers/mh-6.8.3-diffs.tar.gz
1132   ftp://sunsite.unc.edu/pub/Linux/system/Mail/readers/mh-6.8.3-bin.tar.gz
1133   
1134   The sizes are 650k and 22k respectively.
1135
1136   Note that these files are occasionally "cleaned up" by accident so
1137   please let me know if they are missing.
1138
1139 ------------------------------
1140   
1141 Subject: 02.09 +How can I build MH on IRIX?
1142 From: Arne K. Frick <frick@info.uni-karlsruhe.de>
1143 Date: 06 Jun 1995 18:30:01 GMT
1144
1145   There is a file at viz.tamu.edu:/pub/sgi (see FAQ) containing a diff
1146   and sample configuration.  If you cannot locate it, I can mail it to
1147   you.  Note, however, that I had tremendous difficulties with them
1148   under 5.3:
1149
1150   1. Be sure to use /bin/make, NOT GNU make.
1151   2. patch vomits over the diff.  You can get around this by increasing the
1152      "fuzz factor" to 4.
1153   3. The Makefile target for the shared library doesn't work.  I had to do it
1154      by hand.
1155
1156   But I'm stuck compiling mhn.c. 
1157
1158 From: Shankar Unni <shankar@sgi.com>
1159 Date: 9 Jun 1995 01:53:48 GMT
1160
1161   The fix for compiling mhn.c is in (see "mhn.c patch 1") below.
1162
1163 From: John Jack Repenning <jackr@dblues.engr.sgi.com>
1164 Date: 25 Jul 1995 02:35:41 GMT
1165
1166   (See "IRIX config file") below.
1167
1168 ------------------------------
1169   
1170 Subject: 02.10 +How can I get MH to interpret the Content-Length field?
1171 From: Casper H.S. Dik <Casper.Dik@Holland.Sun.COM>
1172 Date: 4 Oct 1995 09:05:42 GMT
1173
1174   Apply ftp://ftp.fwi.uva.nl/pub/solaris/mh-6.8.3-diff to your MH
1175   distribution and add the configuration option "CONTENT_LENGTH".  It
1176   also includes the si_ fix in (see "mhn.c patch 1").
1177
1178 ------------------------------
1179   
1180 Subject: 02.11 +How do I build MH on HPUX?
1181 From: Bill Wohler <wohler@newt.com>
1182 Date: Mon, 27 Nov 1995 11:02:48 -0800
1183
1184   If you find that your zotnet/tws directory isn't compiling, upgrade
1185   your MH (see "What is the current version/status of MH?") which
1186   includes fixes to lexedit.sed.
1187
1188 ------------------------------
1189
1190 Subject: 02.12 +Can I prevent adding the local hostname to addresses behind firewalls?
1191 From: Ken Hornstein <kenh@cmf.nrl.navy.mil>
1192 Date: 18 Aug 1995 23:51:48 -0400
1193
1194   If you're behind a firewall and sendmail gives you fits because MH
1195   adds the node name or site name to each address in the To: and CC:
1196   fields, you'll need to modify the MH source.
1197
1198   The relevant source has to do with the REALLYDUMB option in
1199   sbr/addrsbr.c.  Essentially what you need to do is set it up so
1200   REALLYDUMB is turned on (normally, it's turned off if you have MMDF
1201   or SMTP turned on).  This will do what you want.  I did this at our
1202   site, and it's been working great.  The stuff for REALLYDUMB starts
1203   around line 613.
1204
1205   [Ed. It seems to me that this is a common problem, but that there
1206   should be a better solution, like adding a "localname" entry to
1207   $MHLIB/mtstailor.  Please let me know if you can improve upon this.]
1208
1209 ------------------------------
1210
1211 Subject: 03. ***** Scanning & Reading *****
1212 From: Bill Wohler <wohler@newt.com>
1213 Date: Fri, 1 Mar 91 13:03:15 -0800
1214
1215 ------------------------------
1216
1217 Subject: 03.01 What do I do if scan shows the wrong date?
1218 From: Bill Wohler <wohler@newt.com>
1219 Date: Fri, 1 Jan 93 00:00:00 -0800
1220
1221   Upgrade to MH 6.8. 
1222
1223 ------------------------------
1224   
1225 Subject: 03.02 !How would one go about reading Usenet with MH?
1226 From: Bill Wohler <wohler@newt.com>
1227 Date: Sun, 26 Nov 1995 12:32:09 -0800
1228
1229   You can post via mail.  Send your article to
1230   news.group.name@#{news.demon.co.uk,{crs4gw,berlioz}.crs4.it} (e.g.,
1231   comp.mail.mh@news.demon.co.uk).  To cross-post, send mail to the
1232   user "mail2news" instead and add a legitimate Newsgroups field.
1233
1234 From: Jerry Peek <jerry@ora.com>
1235 Date: Tue, 1 Nov 94 00:00:00 -0800
1236
1237   You can save articles in the news readers for later perusal with MH.
1238
1239   First, create a symbolic link from your mail directory (e.g., usenet) to
1240   your news directory (e.g., "ln -s ~/News ~/Mail/usenet").  You can then
1241   treat your news directory as a mail folder.  Thus, to select a news
1242   group, use "folder +usenet/comp/mail/mh".
1243
1244   To set the default save location correctly in rn, use:
1245
1246         rn -M -/
1247
1248   or in your nn presentation sequence:
1249
1250         news.announce.          +$F/$N
1251         comp.mail.mh            +
1252         .
1253         .
1254
1255   If there's news spooled on your machine (that is, not via NNTP) then
1256   you can read a newsgroup with commands like:
1257   
1258         show first +/usr/spool/news/comp/mail/mh
1259         next
1260         ...
1261   
1262   You can also use sequences to keep track of what you've read.  MH
1263   will automatically set a "cur" sequence in each newsgroup you read
1264   that way.  So, to continue reading the newsgroup sometime later,
1265   after you've read some other folder, you can do:
1266   
1267         next +/usr/spool/news/comp/mail/mh
1268   
1269   and you'll read the next (new) article (if any) in that newsgroup.
1270
1271   Note that this can eventually make your private context file pretty
1272   huge; if there's a group you don't read often, you can remove its
1273   context entries with a command like:
1274   
1275         rmf +/usr/spool/news/comp/mail/mh
1276   
1277   Don't try that on a folder full of mail (a folder that isn't
1278   read-only), though... in that case, it'll remove all the messages!
1279
1280   I haven't looked into posting.  It seems like it shouldn't be hard.
1281   You could set up a "sendproc" that would look at outgoing email
1282   messages.  If the message had a Newsgroups: header field, your
1283   sendproc could call inews(1) instead of post(8).  I haven't seen
1284   much in the MH manpages or documentation about sendprocs (though I
1285   haven't looked for a couple of years...).  See the "mysend"
1286   script in the MH book section 7.1.4 (13.13).
1287
1288   A threaded news reader like trn or tin is so much nicer, though,
1289   that reading news with MH may not be worth the hassle.
1290
1291   See also MH book section 9.9 (8.7).
1292
1293 From: Stephen Gildea <gildea@x.org>
1294 Date: Fri, 1 Mar 91 13:03:15 -0800
1295
1296   Although news readers are better, if one really wants to use
1297   MH, bbc will do the job.  For example, "bbc comp.mail.mh" reads this
1298   newsgroup.  To enable bbc, you have to specify "bboards" when you
1299   build MH.
1300
1301 Date: Tue, 1 Nov 94 00:00:00 -0800
1302
1303   See mhunify in (see also "What other MH software is
1304   available?"). 
1305
1306 ------------------------------
1307   
1308 Subject: 03.03 How can I search through multiple folders?
1309 From: Jerry Peek <jerry@ora.com>
1310 Date: Mon, 1 Mar 93 00:00:00 -0800
1311
1312   Recurse through the folders (in csh and sh):
1313
1314   % foreach f (`folders -f`)            $ for f in `folders -f`
1315   ? pick [switches] +$f                 > pick [switches] +$f
1316   ? end                                 > done
1317
1318   Or create a folder that contains links to all messages (in csh and sh):
1319
1320         % foreach f (`folders -f | grep -v -x ln`)
1321         ? refile -src +$f -link all +ln
1322         ? end
1323
1324         $ for f in `folders -f | grep -v -x ln`
1325         > do refile -src +$f -link all +ln
1326         > done
1327
1328   and in the future, refile messages with "refile +folder +ln".  To
1329   find something, use:
1330
1331         % pick [switches] +ln
1332
1333   See MH book sections 8.2.9 (7.2.9), 8.9.3 (7.8.3).
1334
1335 ------------------------------
1336   
1337 Subject: 03.04 Why don't MH format commands such as %(friendly) work?
1338 From: Anthony Baxter <anthony@aaii.oz.au>
1339 Date: Sun, 1 May 94 00:00:00 -0800
1340
1341   The BERK option disables address parsing and therefore functions
1342   such as %(friendly).  Recompile MH without the BERK option. 
1343
1344 ------------------------------
1345   
1346 Subject: 03.05 Why doesn't "show" display all of a MIME message?
1347 From: Jerry Peek <jerry@ora.com>
1348 Date: Mon, 1 Aug 94 00:00:00 -0800
1349
1350   It's not the fault of the "show" command or of MH in general.  It's
1351   your system's configuration.  Check the mhn_defaults file in your MH
1352   library directory; if it doesn't have defaults for all content types,
1353   add them.  Or, if you can't (or shouldn't) change mhn_defaults, you
1354   can put default entries in your MH profile file for those content types.
1355
1356   Here's the part of the mhn(1) manpage that explains how content types
1357   are handled:
1358
1359     First, mhn will look for an entry of the form:
1360
1361         mhn-show-<type>/<subtype>
1362
1363     to determine the command to use to display the content.  If this
1364     isn't found, mhn will look for an entry of the form:
1365
1366         mhn-show-<type>
1367
1368     to determine the display command.  If this isn't found, mhn has
1369     two default values:
1370
1371         mhn-show-text/plain: %pmoreproc '%F'
1372         mhn-show-message/rfc822: %pshow -file '%F'
1373
1374     If neither apply, mhn will check to see if the message has a
1375     application/octet-stream content with parameter "type=tar".  If
1376     so, mhn will use an appropriate command.  If not, mhn will
1377     complain.
1378
1379   So, add defaults that cover the types MH doesn't handle right now (or
1380   doesn't handle the way you want it to).  Your defaults will override
1381   corresponding defaults in the mhn_defaults file.  For example, if you
1382   don't have an HTML editor/browser on your system, you could tell MH to
1383   use the "less" paginator for HTML message parts:
1384   
1385         mhn-show-text/x-html: less %F
1386   
1387   You can put that line in your MH profile.
1388
1389   You can even set different defaults for different terminal types (say,
1390   your VT100 at home and your X setup at work).  Make a file in the same
1391   format as mhn_defaults; store its pathname in the MHN environment
1392   variable.  Add a test to your shell setup file (.profile, .login) that
1393   tests the value of the TERM variable -- and, if you have an mhn setup
1394   file for that terminal type, store its pathname in the MHN variable.
1395   
1396   See also MH book sections 6.2.3, 9.4.4, 9.4.5.
1397
1398 From: Michael K. Neylon <mneylon@engin.umich.edu>
1399 Date: Tue, 1 Nov 94 00:00:00 -0800
1400
1401   If you are not using the X Window System, you may have to add this
1402   line to your MH profile:
1403
1404         mhn-charset-iso-8859-1: /bin/sh -c '%s'
1405
1406 ------------------------------
1407   
1408 Subject: 03.06 Can I get show not to run "less" so much on MIME messages?
1409 From: Bill Wohler <wohler@newt.com>
1410 Date: Tue, 1 Nov 94 00:00:00 -0800
1411
1412   If you say, "show all," and one of the messages was a MIME message,
1413   your pager will be run several times on each message, rather than
1414   once on all the messages as a whole.  If you find this annoying, set
1415   the environment variable NOMHNPROC:
1416
1417         % setenv NOMHNPROC ""                   # csh
1418         $ NOMHNPROC=                            # sh and bash
1419         $ export NOMHNPROC
1420
1421   See also MH book sections 6.2.3, 6.2.10.
1422
1423 ------------------------------
1424   
1425 Subject: 03.07 Why do I get "mhn: don't know how to display content"?
1426 From: Keith Moore <moore@cs.utk.edu>
1427 Date: Thu, 1 Dec 94 00:00:00 -0800
1428
1429   MH 6.8.3 has a bug where it will not handle multipart/foo correctly
1430   if it doesn't know about foo.  This patch (see "mhn.c patch 2"
1431   below) tells it to treat such things as if they were
1432   multipart/mixed.
1433
1434   (See also "Why doesn't "show" display all of a MIME message?").
1435
1436 ------------------------------
1437   
1438 Subject: 03.08 +How can I automatically delete MH backup files?
1439 From: mccammaa@expt05.stp.xfi.bp.com (Andy McCammont)
1440 Date: 22 May 95 06:27:36 -0400
1441
1442   On System V system, add this to your crontab.  If you don't have
1443   one, put this in a file, and run "crontab file".  If your system
1444   does not support personal crontab files, get your system
1445   administrator to add an equivalent line to the system crontab file
1446   or daily clean-up script.  Note that some administrators set the
1447   prefix character to '#'.
1448
1449   # Remove old MH files
1450   5 5 * * * find /PATH/TO/HOME/Mail -name ",*" -mtime +5 -exec rm {} \;
1451
1452 ------------------------------
1453   
1454 Subject: 03.09 +Fixing "cannot fopen and lock /var/spool/mail/(user)".
1455 From: alhy@MAILBOX.SLAC.Stanford.EDU
1456 Date: Thu, 20 Jul 1995 11:11:13 -0700
1457
1458   Often, this is caused by an NFS file lock.  Don't ask me how it got
1459   there in the first place.  To remove the file lock, do the following:
1460
1461         # cd /var/spool/mail
1462         # cp user /tmp/user.tmp; rm user        # save mail; remove locked file
1463         # chown user /tmp/user.tmp              # allow user to inc old mail
1464         # su - user
1465         user% inc -file user.tmp                # incorporate user's old mail
1466
1467   Any mail that you receive in the fraction of a second that the second
1468   set of commands takes will be lost.
1469
1470 ------------------------------
1471   
1472 Subject: 03.10 +Can I read my mail with a Web browser?
1473 From: "Patrick A. Coronato" <coronato@me216.teb.allied.com>
1474 Date: 8 Sep 1995 16:36:03 GMT
1475
1476   There are two programs that I know of that will convert a Unix
1477   mailbox into a threaded set of HTML documents.  They both sort by
1478   author, date, and thread and can be read by a WWW reader.  Hypermail
1479   from EIT works well but only supports Unix mailbox format and
1480   doesn't appear to support MIME.
1481
1482         http://www.eit.com:80/software/hypermail/
1483
1484   Another program, called MHonArc, by Earl Hood from Convex, will
1485   definitely read MH mailboxes as well as Unix mailboxes, create HTML
1486   "archives" and will also sort by date, thread and author and has
1487   support for MIME.  Also, MHonArc is written in the Perl (version 4)
1488   language.  (You should go to this site if nothing more than to see the
1489   cool logo!)
1490
1491         http://www.oac.uci.edu/indiv/ehood/mhonarc.html
1492
1493 ------------------------------
1494
1495 Subject: 04. ***** Filing *****
1496 From: Bill Wohler <wohler@newt.com>
1497 Date: Fri, 1 Mar 91 13:03:15 -0800
1498
1499 ------------------------------
1500
1501 Subject: 04.01 Can I append MH messages to a Unix mailbox format file?
1502 From: Bill Wohler <wohler@newt.com>
1503 Date: Fri, 1 Jan 93 00:00:00 -0800
1504
1505   Yes, see $MHLIB/packmbox.
1506
1507 ------------------------------
1508   
1509 Subject: 04.02 Can I append MH messages to a GNU Emacs rmail BABYL-format file?
1510 From: Bill Wohler <wohler@newt.com>
1511 Date: Fri, 1 Mar 91 13:03:15 -0800
1512
1513   To convert your MH folders to BABYL folders, first run the following script
1514   on your Mail directory.
1515
1516   #!/bin/sh
1517
1518   for f in Mail/*; do
1519         if [ -d $f ]; then
1520                 touch msgbox
1521                 folder=`basename $f`
1522                 echo -n packing $folder ...
1523                 packf +$folder
1524                 echo done
1525                 mv msgbox Mail-rmail/$folder
1526         fi
1527   done
1528
1529   This assumes you don't have nested folders.  Your rmail folders will be
1530   left in $HOME/Mail-rmail in MMDF format which rmail can read.  Then run
1531   rmail-input for each folder, which converts each folder into BABYL format.
1532
1533   Be sure not to append any messages before they are converted from MMDF
1534   to BABYL, since there may be really strange results.
1535
1536 ------------------------------
1537   
1538 Subject: 04.03 Why do I get ".../.mh_sequences is poorly formatted?"
1539 From: Jerry Peek <jerry@ora.com>
1540 Date: Mon, 1 Aug 94 00:00:00 -0800
1541  
1542   There is a line length limit in this file.  When sequences are
1543   unbroken (without gaps in numbering), that makes short entries in
1544   the .mh_sequences file, like this:
1545
1546         inftex: 72-8000
1547
1548   But when there are lots of numbering gaps, the entry gets long:
1549
1550         inftex: 76 79-81 87 95-96 105 109 120 124 135 141 158 163...
1551
1552   That's when you run into problems, and why it's good to keep the
1553   folder packed when you can.  Simply run "folder -pack +folder".
1554
1555   If you're refiling a lot of messages in a large folder, you might
1556   not be able to use sequences.  Use backquotes to give the message
1557   numbers directly to "refile".  For example:
1558
1559         refile +tex/info-tex `pick -to info-tex`
1560
1561   That can still generate a long list of arguments to the "refile" command,
1562   and some Unixes can't handle that.  In that case, use xargs(1):
1563
1564         pick -to info-tex | xargs refile +tex/info-tex
1565
1566   If worse comes to worst, fire up a Bourne shell and use a "while" loop:
1567
1568         pick -to info-tex | fmt | while read nums; do
1569                 refile +tex/info-tex $nums
1570         done
1571
1572   The fmt(1) command breaks long lines into manageable chunks of 72
1573   characters or so, splitting arguments at whitespace.  When you redirect
1574   the input of a while loop, a "read" command will read the incoming text
1575   and store it in a shell variable line by line.  This is a quick-&-dirty
1576   way to write xargs(1) if you don't have it. 
1577
1578 ------------------------------
1579   
1580 Subject: 04.04 How can you save News articles into an MH folder?
1581 From: Jerry Peek <jerry@ora.com>
1582 Date: Mon, 1 May 95 00:00:00 -0800
1583
1584   If your newsreader handles backquotes on its command line, you can use
1585   the mhpath command.  For instance, if your "save" command is "s":
1586   
1587         s `mhpath new +somefolder`
1588   
1589   Or if your newsreader lets you define your own commands, as in shell
1590   aliases, you could define that as a command.
1591
1592   If your newsreader can pipe an article to the standard input of a
1593   program, use the "rcvstore" command (in the MH library).  For instance,
1594   if your "pipe" command is "|":
1595   
1596         | $MHLIB/rcvstore +somefolder
1597   
1598   Of course, you can also put that in a little shell script. 
1599   
1600 ------------------------------
1601   
1602 Subject: 04.05 +Are there any good tools to archive MH messages?
1603 From: glimpse@cs.arizona.edu
1604 Date: Sun, 26 Nov 1995 17:14:00 -0800
1605
1606   Glimpse is a very powerful indexing and query system that allows you
1607   to search through all your files very quickly. It can be used by
1608   individuals for their personal file systems as well as by
1609   organizations for large data collections.
1610
1611         ftp://cs.arizona.edu/glimpse
1612         http://glimpse.cs.arizona.edu:1994/
1613
1614 From: Bill Wohler <wohler@newt.com>
1615 Date: Sun, 26 Nov 1995 17:10:59 -0800
1616
1617   For those of lesser means, I have three shell scripts for archiving,
1618   seeking, and extracting MH messages that I have been using for
1619   almost 10 years.  Send mail if interested.  Note that I intend to
1620   switch to Glimpse if I get a moment.
1621
1622 ------------------------------
1623   
1624 Subject: 04.06 +How can I remove duplicate messages?
1625 From: jerry@ora.com (Jerry Peek)
1626 Date: 20 Nov 95 18:51:24 GMT
1627
1628   The easiest way I know of is to sort the folder by the Message-ID
1629   field using the sortm(1) command.
1630
1631   After the sort, each message should be next to its duplicates in the
1632   folder.  Use a script (shell, Perl, etc.) to weed out the
1633   duplicates.  (See "Removing duplicate messages (Bourne)").
1634
1635   The Perl script in (see "Removing dupicate messages (Perl)) does not
1636   require that you first sort the folder.
1637
1638 ------------------------------
1639
1640 Subject: 05. ***** Composing & Replying *****
1641 From: Bill Wohler <wohler@newt.com>
1642 Date: Fri, 1 Mar 91 13:03:15 -0800
1643
1644 ------------------------------
1645
1646 Subject: 05.01 Why does repl add a "Re:" to a message that already has one?
1647 From: Larry McVoy <lm@slovax.Eng.Sun.COM>
1648 Date: Fri, 1 Mar 91 13:03:15 -0800
1649
1650   I carefully reconfigured and rebuilt MH from scratch and the problem
1651   went away.
1652
1653 ------------------------------
1654   
1655 Subject: 05.02 How do I include messages in repl with or without ">"?
1656 From: Alan Thew <qq11@liv.ac.uk>, Mike Schwager <schwager@cs.uiuc.edu>,
1657         James T Perkins <jamesp@sp-eug.com>
1658 Date: Fri, 1 Jan 93 00:00:00 -0800
1659
1660   When making a reply, specify a filter file on the command line:
1661
1662         repl -filter repl.format
1663
1664   This filter file must be in your MH mail directory (usually "Mail",
1665   in your home directory).  Here are a couple of example repl.format
1666   files:
1667
1668         overflowtext="",overflowoffset=0
1669         message-id:nocomponent,formatfield=\
1670         "In message %{text}you write:"
1671         body:component=">",overflowtext=">",overflowoffset=0
1672
1673               or
1674
1675         overflowtext="",overflowoffset=0
1676         date:component="Your message dated",formatfield=\
1677         "%<(nodate{text})%{text}%|%(pretty{text})%>"
1678         body:component=">",overflowtext=">",overflowoffset=0
1679
1680   Setting overflowoffset to 0 keeps MH from doing anything to
1681   extra-long lines in the headers.  In the body, however, this
1682   behavior is overridden so that long lines are automatically broken
1683   and a ">" is inserted before every line.  You could put almost
1684   whatever you want between those quotes, although the "standard" ">"
1685   makes it easier to read notes that have been included several times.
1686   The examples differ with the descriptive text that is inserted
1687   before the included body.
1688
1689   It is suggested not to use the "prompter" editor in this case, since
1690   it is likely that you'll not want to use all of the included
1691   message.  Indeed, it is proper etiquette to edit out all unnecessary
1692   include verbiage so readers don't have to wade through the morass to
1693   read your pearls of wisdom.
1694
1695   WARNING: the '>' appears on the first line ONLY in versions prior
1696   to 6.7.2.  Upgrade to MH 6.8.  
1697
1698   See also MH book sections 7.8.4 (6.7.4), 7.8.5 (6.7.5), 10.4.1 (9.4.1).
1699
1700 ------------------------------
1701   
1702 Subject: 05.03 How can I eliminate duplicate copies of letters to myself?
1703 From: Bill Wohler <wohler@newt.com>
1704 Date: Fri, 1 Mar 91 13:03:15 -0800
1705
1706   Add these two lines to your MH profile file:
1707
1708         Alternate-Mailboxes: user@host1, user@host2, ...
1709         repl: -nocc me
1710
1711   The Alternate-Mailboxes also tells scan which messages are really
1712   from you so that it can place the recipient in the scan line instead
1713   of the sender.
1714
1715 From: Jerry Peek <jerry@ora.com>
1716 Date: Fri, 1 Mar 91 13:03:15 -0800
1717   
1718   To get one copy, you can either:
1719
1720   - Take out the "-nocc me"... then you'll get exactly one copy of
1721     your replies (assuming all your addresses are listed in
1722     Alternate-Mailboxes), or
1723
1724   - (See also "How can I save a copy of all messages I send?").
1725
1726     For more info, see the man pages comp(1),
1727     repl(1), forw(1), dist(1) and mh-mail(5).
1728
1729   See also MH book sections 7.8.2 (6.7.2), 9.8 (8.6).
1730
1731 From: Alec Wolman <wolman@crl.dec.com>
1732 Date: Fri, 1 Mar 91 13:03:15 -0800
1733
1734   Listing the name of a mailing list in Alternate-Mailboxes is also a
1735   convenient way to AVOID automatically cc-ing a mailing list when
1736   replying to a person who sent the message to the mailing-list.
1737
1738 ------------------------------
1739   
1740 Subject: 05.04 How can I include my signature?
1741 From: Eric W. Ziegast <ziegast@uunet.uu.net>,
1742         Hardy Mayer <hardy@golem.ps.uci.edu>
1743 Date: Tue, 1 Nov 94 00:00:00 -0800
1744
1745   There are several ways.
1746
1747   1) The MH way.
1748
1749   1a) In your Mail directory, create files that
1750       include your signature into the format of the message.
1751
1752      ~/Mail/components:
1753         To:
1754         cc:
1755         Subject:
1756         --------
1757
1758         --
1759         Eric Ziegast            ziegast@uunet.uu.net
1760         UUNET Technologies      uunet!ziegast
1761
1762      ~/Mail/replfmt
1763         body:component="> ",compwidth=2
1764         :--
1765         :Eric Ziegast           ziegast@uunet.uu.net
1766         :UUNET Technologies     uunet!ziegast
1767
1768      To use the replfmt file, add the following to your ~/.mh_profile:
1769
1770         repl: -filter replfmt
1771
1772      When comp is used, your signature is already there along with my
1773      headers.  When repl is used, the mhl program takes the body of
1774      the letter you're replying to, prepends '> ' to each line and
1775      then adds your signature at the end (available after version
1776      6.7). 
1777
1778   1b) Create an "editor" which can be called from whatnow to add the
1779       signature when desired or create a frontend to post (use the
1780       .mh_profile line "postproc: postproc" to call it) that always
1781       appends the .signature file before calling post to mail the
1782       message.  David J. Fiander <david@golem.uucp>, David A.
1783       Truesdell <truesdel@nas.nasa.gov> and Tom Wilmore
1784       <sastjw@unx.sas.com> have sample scripts to do these.
1785
1786 From: Jerry Peek <jerry@ora.com> 
1787 Date: Tue, 1 Sep 92 00:00:00 -0800
1788   
1789   1c) Section 7.1.4 (13.13) of the MH book lists mysend, a sendproc
1790       script to process a message after "What now? send" (see "What
1791       references exist for MH" to see where the book's examples can
1792       be ftped from).
1793
1794   2) Using your editor.  If you use vi, you can use something like:
1795
1796           map S :r ~/.signature
1797
1798      to load your signature out of .signature every time you
1799      hit 'S'.
1800
1801   3) Use your windowing system.  xterm, for example, can provide key
1802      and button mappings for the utterly lazy.
1803
1804   4) If you use Emacs with mh-e:
1805
1806   4a) C-c C-s will append the signature.
1807
1808 From: Andre Srinivasan <andre@neuronet.pitt.edu>
1809 Date: Mon, 1 May 95 00:00:00 -0800
1810   
1811   4b) Add the following to your .emacs file:
1812
1813         (add-hook 'mh-compose-letter-function
1814             (function
1815              (lambda(a b c)
1816                (save-excursion
1817                  (goto-char (point-max))
1818                  (beginning-of-line)
1819                  (mh-insert-signature)))))
1820
1821       This hook is called after the draft buffer has been initialized,
1822       but before you have a chance to type anything.
1823
1824 From: Tom Christiansen <tchrist@perl.com>
1825 Date: Tue, 1 Nov 94 00:00:00 -0800
1826
1827   Tired of the same old signature?  Want different signatures for
1828   different newsgroups?  Here's a program to help you out.
1829
1830   The way it works is to have .signature be a named pipe, so if you
1831   don't have named pipes, just say 'n'.
1832
1833   The sigrand program then feeds stuff down the pipe every time someone
1834   wants to read it.  That way it works for more than just news, but
1835   for anything that wants to read your .signature, like a mailer.
1836
1837   You have your choice of three kinds of signatures:
1838
1839       1) random (short) fortune from "fortune -s"; you get these if
1840          you don't have a global sig file.
1841       2) random fortune from ~/News/SIGNATURES [global sig file]
1842       3) random fortune form ~/News/(newsgroup)/SIGNATURES [local sig files]
1843
1844   Send mail if interested.
1845
1846 Date: Tue, 1 Nov 94 00:00:00 -0800
1847
1848   See also the Signature FAQ (see "What references exist for MH?").
1849   
1850 ------------------------------
1851   
1852 Subject: 05.05 How do I call my editor with arguments?
1853 From: John Romine <jromine@ics.uci.edu>
1854 Date: Mon, 1 May 95 00:00:00 -0800
1855
1856   Set your editor (in .mh_profile) to the following shellscript. 
1857
1858         #/bin/sh
1859         exec <youreditor> <yourargs> "$@"
1860         exit 0
1861
1862 From: Ray Nickson <Ray.Nickson@comp.vuw.ac.nz>
1863 Date: Fri, 1 Mar 91 13:03:15 -0800
1864
1865   You might find it useful to make <youreditor> $EDITOR, or to use
1866   different arguments depending on your EDITOR environment variable.
1867   
1868 ------------------------------
1869   
1870 Subject: 05.06 How can I digestify messages in a folder for mail to another user?
1871 From: Jerry Peek <jerry@ora.com>, Bill Wohler <wohler@newt.com>
1872 Date: Fri, 1 Mar 91 13:03:15 -0800
1873
1874   How about:
1875
1876         forw [-digest tmp] [-form forwcomps] [-filter mhl.digest]
1877              messages +folder
1878
1879   These messages can be un-digestified :-) by the MH burst(1) program.
1880
1881   See also MH book sections 7.9.7 (6.8.7), 8.10 (7.9).
1882
1883 From: Glenn Vanderburg <glv@utdallas.edu>
1884 Date: Tue, 1 Nov 94 00:00:00 -0800
1885
1886   There's another way, which is better if the recipient understands MIME.
1887
1888           forw -mime messages +folder
1889
1890   (Make sure that you either have "automhnproc: mhn" in your mh
1891   profile, or type "edit mhn" to whatnow before you send it.)
1892
1893   This bundles each message in a MIME message/rfc822 part, and then
1894   bundles the whole mess up in a multipart/digest part.  You can still
1895   add your own text at the beginning.  The MH burst program can also
1896   understand these messages and split them apart with no problem.
1897   This works beautifully with MIME-capable mail readers, especially
1898   exmh. 
1899
1900 ------------------------------
1901   
1902 Subject: 05.07 How can I change my return address?
1903 From: Bill Wohler <wohler@newt.com>
1904 Date: Tue, 1 Dec 92 00:00:00 -0800
1905
1906   If you find that your mailer creates a From header that others have
1907   trouble replying to, you can add a Reply-To header to override the
1908   From header in replies.
1909
1910   Copy the components and replcomps files which are normally found in
1911   $MHLIB into your Mail directory and add a line like the following
1912   after the Subject header replacing my address with your address:
1913
1914         Reply-To: wohler@newt.com
1915
1916 ------------------------------
1917   
1918 Subject: 05.08 !How can I change my From header?
1919 From: Bill Wohler <wohler@newt.com>
1920 Date: Mon, 27 Nov 1995 11:40:50 -0800
1921
1922   With either of the following solutions, you'll need to add an
1923   Alternate-Mailboxes entry in your MH profile so that scan prints
1924   "To: recipient" rather than your faked address.  For example, if
1925   your real address is wohler@gbr.newt.com and you've added a From
1926   field of:
1927
1928         From: Bill Wohler <bill.wohler@newt.com>
1929
1930   you'll add the following to .mh_profile:
1931
1932         Alternate-Mailboxes: bill.wohler@newt.com
1933
1934 From: Bill Wisner <wisner@netcom.com>
1935 Date: Tue, 1 Dec 92 00:00:00 -0800
1936
1937   If you're just interested in changing the hostname, add a line to
1938   $MHLIB/mtstailor:
1939
1940         localname: desired_host_name
1941
1942 From: Jerry Peek <jerry@ora.com>
1943 Date: Tue, 1 Dec 92 00:00:00 -0800
1944
1945   Just put a "From:" header in your "components", "replcomps" and
1946   "forwcomps" files.  MH will add a "Sender:" header with what it thinks
1947   is your real address, but (almost) no one cares about the "Sender:"
1948   header anyway.  
1949
1950 ------------------------------
1951   
1952 Subject: 05.09 !How can I save a copy of all messages I send?
1953 From: Bill Wohler <wohler@newt.com>, Jerry Peek <jerry@ora.com>
1954 Date: Mon, 1 Aug 94 00:00:00 -0800
1955
1956   Copy the components and replcomps files which are normally found in
1957   $MHLIB into your Mail directory and add a line like the following
1958   after the cc header:
1959
1960         Fcc: +out
1961
1962   All outgoing messages will then be saved in the +out folder.  If you
1963   make a distcomps file, it needs "Resent-Fcc:".
1964
1965 From: David S. Goldberg <dsg@linus.mitre.org>
1966 Date: 30 Oct 1995 10:23:55 -0500
1967
1968   You can get the Message-ID field by placing the folder in the "Fcc"
1969   field and adding:
1970
1971         send: -msgid
1972
1973   to your .mh_profile.  Unfortunately, this Message-ID isn't as useful
1974   as sendmail's--it doesn't include the date.
1975
1976 ------------------------------
1977   
1978 Subject: 05.10 Can the folder in Fcc: be dynamically specified?
1979 From: Andy Rabagliati <andyr@wizzy.com>
1980 Date: Mon, 1 Aug 94 00:00:00 -0800
1981
1982   My suggestion would be to run Tom Christiansen's rfi script.  If you
1983   cannot find it on *.sources archive sites (please try first), I can
1984   mail it to you.
1985
1986   One good idea would be to write a whatnowproc that files the mail
1987   based on a procmail or deliver file.  Then you can use the same file
1988   for incoming and outgoing mail. 
1989     
1990 ------------------------------
1991   
1992 Subject: 05.11 !Can I post secure/encryped mail?
1993 From: Vivek Khera <khera@kciLink.com>
1994 Date: 19 Jun 1995 22:06:37 GMT
1995
1996   A much more robust Perl script I wrote is appended below [Ed: Send a
1997   note to Vivek for the script].  It works its way through aliases,
1998   and avoids problems with full names in the headers.
1999
2000   Here is my mhn profile entry to display the messages.
2001
2002         mhn-show-application/x-pgp: %l pgp -m '%F'
2003
2004   to use the script, after you edit the message, at the What now?
2005   prompt, type "edit pgpmail" for plain ascii encryption or "pgpmail
2006   -m" for a MIME formatted encryption.  If you want to add a digital
2007   signature, give the script the -s flag also.
2008
2009 From: Stephen Gildea <gildea@x.org>
2010 Date: Fri, 09 Jun 1995 08:28:45 -0700
2011
2012   There are several packages that support PGP in mh-e:
2013
2014         mailcrypt by Patrick LoPresti <patl@lcs.mit.edu>
2015         and Jin Choi <jsc@mit.edu>.  See
2016         http://cag-www.lcs.mit.edu/mailcrypt/ for more info.
2017   
2018         pgp.el by Jack Repenning <jackr@dblues.wpd.sgi.com>
2019         ftp://sgigate.sgi.com/pub/pgp-aux/pgp-el.tar.gz
2020
2021   Jack and I have been in communication, so I know that pgp.el will work
2022   with mh-e 5.0.  
2023
2024 From: Jeffrey C. Ollie <jeffo@worf.infonet.net>
2025 Date: Mon, 1 May 95 00:00:00 -0800
2026
2027   TIS has a free, draft-standard compliant public key system that
2028   works with MH (PEM).  Check it out on ftp.tis.com. 
2029
2030 From: Kimmo Suominen <kim@tac.nyc.ny.us>
2031 Date: Mon, 1 May 95 00:00:00 -0800
2032
2033   You could try looking at the URL http://www.tac.nyc.ny.us/ and
2034   following the link from the cover page.  Everything you need for
2035   PGP to work with MH is there (scripts and mhn entries). 
2036
2037 From: mathew@mantis.co.uk
2038 Date: Mon, 1 May 95 00:00:00 -0800
2039
2040   Excellent stuff.  I've tried altering it to conform to
2041   draft-borenstein-pgp-mime-00.txt.
2042
2043   Unfortunately, I can't get mhn to tag PGP-armoured text as
2044   application/pgp; format=text without it insisting on base64 encoding
2045   it.  So I can't quite manage to implement the standard.  *sigh*
2046
2047   Presumably mhn thinks that anything which isn't text/* must be
2048   encoded. 
2049
2050 From: Jason L Tibbitts III <tibbs@sina.tcamc.uh.edu>
2051 Date: Mon, 1 May 95 00:00:00 -0800
2052
2053   There is an Emacs and MH based mail interface called Mew which,
2054   while still beta, is quite stable and works well.  It fully handles
2055   MIME and PGP.  Grab it from:
2056
2057         ftp://ftp.aist-nara.ac.jp/pub/elisp/Mew/mew-current.tar.gz
2058
2059 ------------------------------
2060   
2061 Subject: 05.12 +How can I send multi-media (MIME) attachments?
2062 From: Brian Exelbierd <bex@ncsu.edu>
2063 Date: Mon, 09 Oct 1995 08:05:55 -0400
2064
2065   The short guide:
2066
2067   1. Compose a letter using comp.
2068
2069   2. When you get to a point where you want to include a MIME attachment, type
2070      the following to include a GIF image (note: the '#' must be in
2071      the first column):
2072
2073         #image/gif [Pictures at an Exhibition] /usr/lib/pictures/exhibition.gif
2074
2075   3. Finish your letter, adding more text or attachments as needed.
2076
2077   4. Save your letter and exit the editor.  At the Whatnow prompt
2078      type "edit mhn".  mhn will automatically format your letter with
2079      the MIME attachments leaving the original letter in ,##,orig
2080      where ## is the letter number.
2081
2082   5. Type "send" at the Whatnow prompt, and poof, you have just sent
2083      MIME mail.  I strongly recommend you practice sending yourself
2084      MIME mail first.
2085
2086   For more information, see the mhn(1) man page, Chapter 3 in the MH
2087   book, and
2088   ftp://ftp.isi.edu/in-notes/iana/assignments/media-types/media-types
2089   for a list of allowed media types in addition to image/gif.
2090
2091 ------------------------------
2092   
2093 Subject: 05.13 +What's the best way to send mail to a long list of people?
2094 From: Bill Wohler <wohler@newt.com>
2095 Date: Thu, 12 Oct 1995 07:53:53 -0700
2096
2097   There are three ways to keep the list of members from appearing in
2098   everyone's header.
2099
2100   If you're planning on mailing to these people regularly, the best
2101   way is to create an alias in /usr/lib/aliases.  That way, recipients
2102   can send and reply to the list as well.
2103
2104   The other two ways allow you to manage the list privately, but the
2105   recipients cannot send to the list (unless you set something up with
2106   your deliver or procmail script).  One is with a group list.  It
2107   looks like this:
2108
2109         To: All-members: member1, member2, member3, ..., membern;
2110
2111   The recipients see this:
2112
2113         To: All-members:;
2114
2115   You can make this an MH alias as well.
2116
2117   The second way is to use a blind carbon copy, like this:
2118
2119         To: your-address-here
2120         Bcc: member1, member2, member3, ..., membern
2121
2122   The recipients see this:
2123
2124         To: your-address-here
2125
2126         ------- Blind-Carbon-Copy
2127
2128         Content of message, with headers
2129
2130   Or you could also use the undocumented Dcc field which is used like
2131   the Bcc field, but doesn't inject the "Blind-Carbon-Copy."  Warning:
2132   (See "What is the Dcc header?")
2133
2134 ------------------------------
2135   
2136 Subject: 05.14 +What is the Dcc header?
2137 Date: Wed, 27 Sep 1995 09:46:37 -0700
2138 From: John Romine <jromine@yoyodyne.ICS.UCI.EDU>
2139
2140   The Dcc (Distribution Carbon Copy) field behaves much like the Bcc
2141   field, but does not add the "Blind-Carbon-Copy" notice.  This header
2142   is removed before posting the message,and a copy of the message is
2143   distributed to each listed address.  This could be considered a form
2144   of Blind Carbon Copy which is best used for sending to an address
2145   which would never reply (such as an auto-archiver).
2146
2147   People should not be using Dcc as a substitute-Bcc to send to other
2148   people.  When users use Dcc as a substitute for Bcc, there is *no*
2149   indication to the "blind" recipients that they have received a blind
2150   copy.  If those recipients should reply (and they have no indication
2151   why they shouldn't), the original author could be very embarassed
2152   (or worse).
2153
2154 ------------------------------
2155   
2156 Subject: 05.15 +How can I make sense of the replcomps file?
2157 From: Bill Wohler <wohler@newt.com>
2158 Date: Sun, 26 Nov 1995 19:25:14 -0800
2159
2160   The best thing to do is curl up with the mh-format(5) man page, or
2161   Section 11.2 of the MH book.  Both of these will explain the
2162   following replcomps file.  Don't start with the first four
2163   lines--the latter group of lines are much easier to understand.
2164
2165         %(lit)%(formataddr %<{reply-to}%?{from}%?{sender}%?{return-path}%>)\
2166         %<(nonnull)%(void(width))%(putaddr To: )\n%>\
2167         %(lit)%(formataddr{to})%(formataddr{cc})%(formataddr(me))\
2168         %<(nonnull)%(void(width))%(putaddr cc: )\n%>\
2169         Organization: Newt Software
2170         %<{fcc}Fcc: %{fcc}\n%>\
2171         %<{subject}Subject: Re: %{subject}\n%>\
2172         %<{date}In-reply-to: Your message of "\
2173         %<(nodate{date})%{date}%|%(pretty{date})%>."%<{message-id}
2174                      %{message-id}%>\n%>\
2175         --------
2176
2177   In particular, note the following:
2178
2179         \       consider the following line to be part of the current line
2180         \n      inject an actual newline into the reply.  Note that inserting
2181                 a field without a trailing backslash (\) will cause
2182                 that field to be emitted in the reply as well.
2183         %<{field}, %?{field}, %|, %>    if field exists, else if field exists,
2184                                         else, endif
2185         %(command)      mh-format commands
2186         %{field}        value of the header field inserted at this point
2187
2188   To add new fields, you can either add fields based on whether
2189   certain fields exist in the original message (e.g.,
2190   %<{message-id}...), or hard-code them, as in the Organization field
2191   above.  Note that you can either use a "\n\" pair, or nothing at the
2192   end of a line to insert a newline in the reply.
2193
2194 ------------------------------
2195   
2196 Subject: 05.16 +How can I convert quoted-printable to 8bit in quoted text in replies?
2197 From: Jarle F. Greipsland <jarle@idt.unit.no>
2198 Date: 22 Aug 1995 10:42:07 +0200
2199
2200   The idea behind the solution is that I need mhn to store the
2201   contents of the mail in the native iso8859-1 format somewhere.  I
2202   did this by creating a custom editor that is invoked when I reply to
2203   a message.  This editor extracts the body of the message (sorry, no
2204   multipart stuff), indents it with '> ', appends it to the draft
2205   message and invokes the ordinary editor on it.  Here are the details:
2206
2207   `isorepl' is a symbolic link from my $HOME/bin-directory to `repl'. 
2208
2209   In my .mh_profile I added the following two lines:
2210
2211         isorepl: -form isoreplcomps -editor isoextract
2212         isoextract-next: vi
2213
2214   The isoreplcomps file in my Mail-directory contains:
2215
2216         %(lit)%(formataddr %<{reply-to}%?{from}%?{sender}%?{return-path}%>)\
2217         %<(nonnull)%(void(width))%(putaddr To: )\n%>\
2218         %(lit)%(formataddr{to})%(formataddr{cc})%(formataddr(me))\
2219         %<(nonnull)%(void(width))%(putaddr cc: )\n%>\
2220         %<{fcc}Fcc: %{fcc}\n%>\
2221         %<{subject}Subject: Re: %{subject}\n%>\
2222         %<{date}In-reply-to: Your message of "\
2223         %<(nodate{date})%{date}%|%(pretty{date})%>."%<{message-id}
2224                      %{message-id}%>\n%>\
2225         --------
2226         #<text/plain; charset=iso-8859-1
2227         %<{message-id}In message %{message-id} %>\
2228         %<{from}%(friendly{from}) writes%|You write%>:
2229
2230   This is a "Usenet-like" quoting style.  Modify to suit your own
2231   taste.  This form will setup the proper header, as well as the first
2232   line of the new message (In <mmmmbbbb> nnnn writes etc.).
2233
2234   The first editor, `isoextract', looks like this:
2235
2236         #!/bin/sh
2237         #
2238         # Called from within repl where the "editalt" variable is valid
2239         #
2240         # Point to a special MHN configuration file (save old one)
2241         OLDMHN="$MHN"
2242         MHN=$HOME/`mhparam Path`/isoquotemsg
2243         export MHN
2244
2245         # Extract message body to "native" format (should be iso-8859-1)
2246         # > More bla bla.
2247         mhn -file "$editalt" -store >> $1 2>/dev/null
2248
2249         MHN="$OLDMHN"
2250         myname=`basename $0`
2251         next=`mhparam ${myname}-next`
2252         if [ "x$next" != "x" ]; then
2253                 exec $next "$@"
2254         fi
2255
2256   `isoquotemsg' has just one rule; how mhn should store a text message.
2257
2258         mhn-store-text: |sed -e 's/^[   ]*$//' \
2259                              -e 's/^\([>|]\)\(.*\)$/>\1\2/' \
2260                              -e 's/^\([^>|].*\)$/> \1/'
2261
2262   This tells mhn to pipe the message to stdout, where the sed commands will
2263   do the reformatting/quoting. (Note: the first pair of square brackets
2264   contains a space and a tab.)
2265
2266   So, when I do a `isorepl' to a message, `repl' will create the draft
2267   message with the proper headers (based on the `isoreplcomps' format file),
2268   fire off its first editor, `isoextract', with the name of the draft file as
2269   its parameter. `isoextract' then invokes mhn in a suitable environment,
2270   tells it that it is to use the file $editalt as its source, and orders it
2271   to store the contents.  The store-text rule in the custom MHN-file tells it
2272   to just pipe the message (in native iso8859-1 form) through a small set of
2273   sed commands, and `isoextract' uses the normal shell construct to append
2274   the result to the draft file.  Then, if there's defined a `isoextract-next'
2275   entry in the .mh_profile, isoextract exec's this editor.
2276
2277 ------------------------------
2278
2279 Subject: 06. ***** Posting *****
2280 From: Bill Wohler <wohler@newt.com>
2281 Date: Fri, 1 Mar 91 13:03:15 -0800
2282
2283 ------------------------------
2284
2285 Subject: 06.01 What to do with "Problems with edit - draft removed".
2286 From: John Romine <jromine@ics.uci.edu>
2287 Date: Mon, 1 May 95 00:00:00 -0800
2288
2289   If your users are using an AT&T version of "vi", it's exiting with
2290   non-zero status (supposedly a count of the "errors" during the edit).
2291   Move "vi" to "broken_vi" and put it its place :
2292
2293         #! /bin/sh
2294         exec /usr/ucb/broken_vi "$@"
2295         exit 0
2296
2297   Alternatively, compile MH with the ATTVIBUG option.
2298
2299   Then complain to your vendor that "vi" is broken, and they should
2300   fix it.
2301
2302 ------------------------------
2303   
2304 Subject: 06.02 Can I run my message through a program (e.g., ispell) before sending?
2305 From: Jerry Peek <jerry@ora.com>
2306 Date: Fri, 1 Mar 91 13:03:15 -0800
2307
2308   It's pretty simple.  If your speller is called myspell, use:
2309
2310         What now? edit myspell
2311
2312   MH will actually execute:
2313
2314         myspell /your-mail-draft-directory/draftfile
2315
2316   and give the entire draft message to your speller.  The header will
2317   probably be "misspelled," of course, though you might be able to
2318   tell the speller to ignore it--or you could hack up a little shell
2319   script to run the speller on just the message body, then tack the
2320   corrected body back onto the header before sending.
2321
2322   You can automate this some more.  For example, if you want your
2323   speller to run after your first edit with "prompter" and also after
2324   you leave the "vi" editor, add these lines to your MH profile:
2325
2326           prompter-next: myspell
2327           vi-next: myspell
2328
2329   Then, at the "What now?" prompt:
2330
2331           What now? e
2332
2333   your speller will run.  For more info, see the mh-profile(5) man
2334   page or section 7.2.1 (6.2.1) of the MH book.
2335
2336 ------------------------------
2337   
2338 Subject: 06.03 What to do with "bad address 'xxx' - no at-sign after local-part".
2339 From: Owen Rees <rtor@ansa.co.uk>
2340 Date: Fri, 1 Jan 93 00:00:00 -0800
2341
2342   You may find that post returns the following message:
2343
2344         post: bad address 'Mr. Foo Bar <fb@somewhere.edu>' - no at-sign
2345         after local-part (Bar), continuing...
2346
2347   The unquoted dot causes "Mr. Foo" to be parsed as the local part of
2348   the address.  Either remove the dot, or rewrite the address as
2349   follows:
2350
2351         "Mr. Foo Bar" <fb@somewhere.edu>
2352         (Mr. Foo Bar) <fb@somewhere.edu>
2353         (Mr. Foo Bar) fb@somewhere.edu
2354
2355 ------------------------------
2356   
2357 Subject: 06.04 Fixing "post: problem initializing server; [BHST] no servers available"
2358 From: Peter Marvit <marvit@hplabs.hpl.hp.com>,
2359         Eric Bracken <bracken@bacon.performance.com> 
2360 Date: Tue, 1 Nov 94 00:00:00 -0800
2361
2362   The error message itself is essentially correct.  However, what this
2363   really means is: MH's post cannot connect to a running sendmail over
2364   an SMTP port (MH configured with SMTP and SENDMTS).
2365
2366   The potential problems:
2367
2368   1. Your local sendmail daemon is dying or not running for some
2369      reason.
2370
2371   2. You use BIND and your local nameserver is not responding.
2372      Solution: Delete "/etc/resolv.conf."
2373
2374   3. Your mtstailor has its "servers:" pointing to a non-existent
2375      machine or a machine which is a) not reachable or b) not running
2376      the sendmail daemon.
2377
2378 From: Bdale Garbee <bdale@col.hp.com>,
2379         Eric Bracken <bracken@bacon.performance.com> 
2380 Date: Sun, 1 May 94 00:00:00 -0800
2381
2382   4. The hostname localhost [127.0.0.1] is missing from /etc/hosts.
2383      
2384      Solution: add an entry for "localhost" to /etc/hosts or your DNS
2385      database or add the following to $MHLIB/mtstailor:
2386         
2387         servers: 127.0.0.1 \01localnet
2388
2389 ------------------------------
2390   
2391 Subject: 06.05 Fixing "post: problem initializing server; [RPLY] 503 Sender already specified"
2392 From: Paul Pomes <paul@uxc.cso.uiuc.edu>
2393 Date: Mon, 1 Mar 93 00:00:00 -0800
2394
2395   The problem in sendmail is that the RSET after the ONEX does not
2396   reset all the state information.  Normally sendmail fork()s after
2397   the Mail from: statement and a RSET causes that child to exit.  This
2398   automatically cleans up.  If the fork() is suppressed by ONEX, then
2399   the source must be modified to do the cleanup.  See "srvrsmtp.c
2400   patch" in the Appendix.  If you don't have the sources, modify your
2401   MH sources to not use the ONEX verb. 
2402
2403 ------------------------------
2404   
2405 Subject: 06.06 Fixing "post: unexpected response; [BHST] no socket opened"
2406 From: Steve Lembark <lembark@wrkhors.la.ca.us>, Bill Wohler <wohler@newt.com> 
2407 Date: Mon, 1 Aug 94 00:00:00 -0800
2408
2409   Problem happens when there is no interface defined within the tcp
2410   system.  A couple of workarounds include:
2411
2412   o Use a hostname (other than the local host) instead of localhost in
2413     the "servers" entry of the "$MHLIB/mtstailor" file.
2414   o Recompile MH with sendmail instead of sendmail/mts (not very elegant).
2415
2416   A better fix would be to define your tcp interface.
2417
2418   Here, you run ifconfig and route (as root) to define the loopback
2419   device and route.  You should add them to rc.local so they are
2420   effected at every boot.
2421
2422         # ifconfig lo 127.0.0.1                 # Linux
2423         # ifconfig lo0 127.0.0.1                # Sun
2424
2425         # route 127.0.0.1
2426
2427   If all is well, "ifconfig lo" (or lo0), will show something like this
2428   (on my Linux system):
2429   
2430         lo        Link encap Local Loopback  
2431                   inet addr 127.0.0.1  Bcast 127.255.255.255  Mask 255.0.0.0
2432                   UP LOOPBACK RUNNING  MTU 2000  Metric 0
2433                   RX packets 0 errors 0 dropped 0 overrun 0
2434                   TX packets 519 errors 0 dropped 0 overrun 0
2435
2436   and "netstat -r" will show:
2437
2438         # netstat -r
2439         Destination net/address   Gateway address    Flags RefCnt    Use Iface
2440         127.0.0.0                 *                  UN         0    519 lo
2441
2442   If you're not on a network and running DNS, your /etc/hosts will
2443   need at least:
2444
2445         127.0.0.1       your_host_name localhost        # loopback address
2446
2447   Note: put your name FIRST on the localhost line.  This official name
2448   is used by sendmail to determine your return address.  
2449
2450   If you are on a network and running DNS, you might find that putting
2451   your host name in the localhost entry might gum up other things, in
2452   which case you'll want your hostname to have its own proper address.
2453
2454   This might not do it though.  David Youatt <dpy@sgi.com> says that
2455   his network was happy but he still had the problem until he upgraded
2456   his system and got the latest revision of sendmail as well.  He
2457   says: "Turns out that that the problem I was having seems to be
2458   caused (at least partly, maybe entirely) by the version of sendmail
2459   that is shipped with IRIX 5.2 (sendmail 5.65, I think).  The version
2460   shipped w/IRIX 5.3 (in beta) is sendmail 8.6.9 and works fine."
2461
2462   I'm not entirely happy with this section, so please give me some
2463   feedback.  If you have this problem, please send me
2464   <wohler@newt.com> a brief description so I'll know which problems
2465   and solutions seem to be the most prevalent.
2466  
2467 ------------------------------
2468   
2469 Subject: 06.07 How do I fix the "X-Authentication-Warning" header?
2470 From: Bill Wohler <wohler@newt.com>
2471 Date: Fri, 1 Mar 91 13:03:15 -0800
2472
2473   You get a header like:
2474   
2475         X-Authentication-Warning: screamer.rtp.ericsson.se: Host
2476         rcur7.rtp.ericsson.se didn't use HELO protocol
2477
2478   Easy possibilities are:  apply the patch to MH that comes with Sendmail
2479   8.X.X and makes it use HELO, or comment out the line that says
2480
2481         Opauthwarnings
2482
2483   in your sendmail.cf.
2484   
2485 ------------------------------
2486   
2487 Subject: 06.08 Fixing "post: unexpected response; [RPLY] 503 Need MAIL before RCPT"
2488 From: Bjoern Stabell <bjoerns@acm.org>
2489 Date: Mon, 1 May 95 00:00:00 -0800
2490
2491   I inserted:
2492
2493         clientname: localhost
2494
2495   in the mtstailor file, and that fixed the problem. 
2496
2497 ------------------------------
2498   
2499 Subject: 06.09 Fixing "post: problem initializing server; [BHST] premature end-of-file on socket"
2500 From: Chuck Mattern <cmattern@mindspring.com>
2501 Date: Mon, 1 May 95 00:00:00 -0800
2502
2503   If you are running sendmail instead of smail, make sure that all
2504   smtp entries in /etc/inetd.conf are commented out.  If you do edit
2505   /etc/inetd.conf, don't forget to run to restart inetd with "kill -1
2506   <inetd PID>".  
2507   
2508 ------------------------------
2509   
2510 Subject: 06.10 Fixing "Sender didn't use the HELO protocol"
2511 From: Terry Manderson <terry@azure.dstc.edu.au>
2512 Date: Mon, 1 May 95 00:00:00 -0800
2513   
2514   Add
2515   
2516         clientname sender 
2517
2518   to $MHLIB/mtstailor where sender is the name of the machine sending
2519   the message.  The error message occurs because newer MTA's require
2520   SMTP's "HELO" command which MH omits in some configurations.  When
2521   you add the above line, it forces MH to use the HELO command.
2522
2523 From: Stephan Neuhaus <neuhaus@dfki.uni-sb.de>
2524 Date: Mon, 1 May 95 00:00:00 -0800
2525
2526   Put
2527
2528         clientname: localhost
2529
2530   in your mtstailor file. 
2531
2532 From: Scott Hutton <shutton@habanero.ucs.indiana.edu>
2533 Date: Mon, 1 May 95 00:00:00 -0800
2534
2535   Alternately, change or comment out
2536
2537         Opauthwarnings
2538
2539   from your sendmail.cf. 
2540
2541 ------------------------------
2542   
2543 Subject: 06.11 Fixing "post: problem initializing server; [RPLY] 553 Local configuration error, hostname not recognized as local
2544 From: "Matthew V. J. Whalen" <whalenm@aol.net>
2545 Date: Mon, 1 May 95 00:00:00 -0800
2546   
2547   Change your "mts" in "conf/MH" from "sendmail/mts" to just
2548   "sendmail." 
2549
2550 From: Bill Wohler <wohler@newt.com>
2551 Date: Mon, 1 May 95 00:00:00 -0800
2552
2553   The solution above will keep MH from using any SMTP server on your
2554   network. require sendmail to be installed on all machines.  You
2555   could take advantage of the "sendmail/mts" option to have MH talk to
2556   a non-local sendmail.  Add:
2557
2558         servers <SMTP-server>
2559
2560   It may also be caused by old versions of sendmail. 
2561   
2562 ------------------------------
2563
2564 Subject: 07. ***** Mail Filters *****
2565 From: Bill Wohler <wohler@newt.com>
2566 Date: Fri, 1 Mar 91 13:03:15 -0800
2567
2568 ------------------------------
2569
2570 Subject: 07.01 !What mail filters are available?
2571 From: Bill Wohler <wohler@newt.com>
2572 Date: Mon, 1 Aug 94 00:00:00 -0800
2573
2574   The list currently includes slocal (included with MH), deliver,
2575   procmail and mailagent.  They are briefly described here.  Slocal is
2576   probably the most popular by virtue of being included in the
2577   distribution.  The next most popular entry is deliver, followed
2578   closely by procmail.
2579
2580   Slocal comes with MH.  It can be used to process incoming mail based
2581   on the contents of any of the headers.  Actions include filing
2582   messages, running commands, printing messages on your terminal and
2583   so on.  The configuration is made in ~/.maildelivery.  People seem to
2584   have trouble with slocal bugs, and you can't use it if you don't
2585   have write permission on your system maildrop so a lot of people
2586   have opted for the alternatives, but it's easy to use and comes with
2587   MH. 
2588
2589   Deliver can run any script or program (called ~/.deliver), so you
2590   really can do anything you want to incoming mail.  One feature that
2591   it sports that no other does is that you can install it as a local
2592   mailer in place of /bin/mail.  If it's the local mailer, you don't
2593   need to have a .forward--~/.deliver is run anyway.  In addition, it
2594   allows the system administrator to write some programs to filter
2595   everybody's mail.  It came with my Linux system, so installation was
2596   non-existent. 
2597
2598 From: Stephen R. van den Berg <berg@pool.informatik.rwth-aachen.de>
2599 Date: Mon, 1 Aug 94 00:00:00 -0800
2600
2601   Procmail can be used to create mail-servers, mailing lists, sort
2602   your incoming mail into separate folders/files (real convenient when
2603   subscribing to one or more mailing lists or for prioritizing your
2604   mail), preprocess your mail, start any programs upon mail arrival
2605   (e.g. to generate different chimes on your workstation for different
2606   types of mail) or selectively forward certain incoming mail
2607   automatically to someone. 
2608
2609   ftp://ftp.informatik.rwth-aachen.de/pub/packages/procmail/procmail.tar.gz 160k
2610
2611 From: Raphael Manfredi <ram@grenoble.hp.com>
2612 Date: Mon, 1 Aug 94 00:00:00 -0800
2613
2614   "mailagent" is yet another mail filter, written in perl, which will
2615   let you do anything with your mail. It has all the features you may
2616   expect from a filter: mailing lists sorting, forwarding to MTA or to
2617   inews, pre-processing of message before saving into folder, vacation
2618   mode, etc.  It was initially written as an Elm-filter replacement,
2619   but has now enough power to also supplant MMDF's
2620   .maildelivery. There is also a support for @SH mail hooks, which
2621   allows you to automatically distribute patches or software via
2622   command mails.
2623
2624   The mailagent was designed to make mail filtering as easy as it can
2625   be. It is highly configurable and fairly complete. Rules are
2626   specified in a lex-like style, with the full power of perl's regular
2627   expressions. The automaton supports the notion of mode, and header
2628   selection has many magic features built-in, to ease the rule writing
2629   process.
2630
2631   The distribution comes with a set of examples, an exhaustive test
2632   suite, and naturally a detailed manual page. It should be noted that
2633   the mailagent will work even if your system administrator forbids "|
2634   programs" hooks in the ~/.forward, provided you have access to some
2635   sort of cron daemon.
2636
2637   You can get a full email distribution of the latest release by
2638   sending an appropriate command to my own mailagent, such as:
2639
2640         Subject: Command
2641
2642         @SH maildist PATH mailagent -
2643
2644   where PATH stands for YOUR email address, i.e. a path from me to
2645   you. 
2646
2647 ------------------------------
2648   
2649 Subject: 07.02 Why slocal writes messages to system mailbox that from(1) can't read.
2650 From: Bill Wohler <wohler@newt.com>
2651 Date: Mon, 1 May 95 00:00:00 -0800
2652
2653   Upgrade to MH 6.8 and set the RPATHS option.  Better yet, use a more
2654   MH-like command instead of from: "scan -file $MAIL".  
2655
2656 ------------------------------
2657   
2658 Subject: 07.03 Where can I read about slocal and the format of .maildelivery?
2659 From: Bill Wohler <wohler@newt.com>
2660 Date: Fri, 1 Mar 91 13:03:15 -0800
2661
2662   See the slocal man page.
2663
2664   Here is brief example of a .maildelivery file that stores messages
2665   to babble in a folder and the system mailbox, stores mh-users in a
2666   folder but not the system mailbox, and puts the rest in the system
2667   mailbox.
2668
2669         to  mh-users  | A "$MHLIB/rcvstore -create +lists/mh-users"
2670         cc  mh-users  | A "$MHLIB/rcvstore -create +lists/mh-users"
2671         to  babble    | R "$MHLIB/rcvstore -create +lists/babble"
2672         cc  babble    | R "$MHLIB/rcvstore -create +lists/babble"
2673         default -     > ? /usr/spool/mail/wohler
2674
2675   Your .forward file may look like (quotes necessary):
2676
2677         "| $MHLIB/slocal -user your_login"
2678
2679   In some implementations, the "-user your_login" is not needed.  If
2680   not, manually running slocal with the flag will produce an error.
2681
2682   See also chapter 12 (11) in the MH book.
2683
2684   Alternatives to slocal include deliver, procmail, and mailagent.
2685   Archie can help you find where they are kept.
2686
2687 ------------------------------
2688   
2689 Subject: 07.04 How do I debug my .maildelivery file?
2690 From: Bill Wohler <wohler@newt.com>
2691 Date: Mon, 1 Mar 93 00:00:00 -0800
2692
2693   Use as many of the following as necessary.
2694
2695   Put a message into a file and call slocal directly on it.
2696
2697         $MHLIB/slocal -user $USER -verbose -debug < test-msg
2698
2699   Modify your .forward to look like:
2700
2701         "|/bin/sh -c 'exec >> /tmp/out 2>&1;
2702         $MHLIB/slocal -user $USER -verbose -debug'"
2703
2704   Or modify a rule in .maildelivery to look like this:
2705
2706         to foo | R "set -xv; exec >/tmp/out 2>&1; $MHLIB/rcvstore +foo"
2707
2708   The previous examples are broken up for readability; the text must
2709   appear on one line.
2710
2711   See also MH book section 12.11 (11.11).
2712
2713 ------------------------------
2714   
2715 Subject: 07.05 Why isn't slocal working?
2716 From: Bill Wohler <wohler@newt.com>
2717 Date: Mon, 1 Mar 93 00:00:00 -0800
2718
2719   If slocal doesn't appear to be doing anything, run the following
2720
2721         $MHLIB/slocal -user your_login -verbose < file
2722
2723   where "file" is some message in a mail folder.  If you get something
2724   like:
2725
2726         .maildelivery: ownership/modes bad (0, 154,154,0100666)
2727
2728   your .maildelivery is writable by too many people.  Make it writable
2729   only by you by running "chmod 644 .maildelivery".
2730
2731   See also "How do I debug my .maildelivery file?" 
2732
2733 ------------------------------
2734
2735 Subject: 08. ***** mh-e *****
2736 From: Bill Wohler <wohler@newt.com>
2737 Date: Fri, 1 Mar 91 13:03:15 -0800
2738
2739 ------------------------------
2740
2741 Subject: 08.01 Is there documentation for mh-e?
2742 From: Bill Wohler <wohler@newt.com>
2743 Date: Mon, 1 May 95 00:00:00 -0800
2744
2745   Yes.  See "What references exist for MH?". 
2746   
2747 ------------------------------
2748   
2749 Subject: 08.02 How can mail aliases can be expanded in mh-e?
2750 From: Stephen Gildea <gildea@x.org>
2751 Date: Sun, 1 May 94 00:00:00 -0800
2752
2753   Typing C-c C-w will show you the expanded list of recipients. 
2754
2755 ------------------------------
2756 Subject: 08.03 !How do I use POP with mh-e?
2757 From: Bill Wohler <wohler@newt.com>
2758 Date: Mon, 27 Nov 1995 12:23:51 -0800
2759
2760   If MH has been compiled with RPOP, then the POP server host either
2761   needs to have your host in /etc/hosts.equiv or in your .rhosts file.
2762   Then add to your MH profile:
2763
2764         inc: -host cuckoo
2765
2766   given that "cuckoo" is the name of the your POP server.
2767
2768 From: Andy Norman <ange@hplb.hpl.hp.com>
2769 Date: Mon, 1 May 95 00:00:00 -0800
2770
2771   Assuming your POP server is called cuckoo, add an entry to your MH
2772   profile for 'inc' like so:
2773
2774         inc: -noaudit -norpop -noapop -host cuckoo
2775
2776   Add the following to ~/.netrc:
2777
2778         machine cuckoo.domain.name login joeuser password secret
2779
2780   Replace the hostname, login and password with your own, of course.
2781   The hostname probably has to be fully qualified (i.e., include the
2782   full domain name).  This example assumes that you can send mail by
2783   other means (e.g., with SMTP). 
2784
2785 ------------------------------
2786
2787 Subject: 09. ***** Xmh *****
2788 From: Bill Wohler <wohler@newt.com>
2789 Date: Fri, 1 Mar 91 13:03:15 -0800
2790
2791 ------------------------------
2792
2793 Subject: 09.01 How can I get xmh to use Emacs as the editor?
2794 From: Bob Ellison <ellison@sei.cmu.edu>
2795 Date: Fri, 1 Mar 91 13:03:15 -0800
2796
2797   The modifications to xmh to support an external editor, annotations,
2798   and an append command can be found in the these places.
2799
2800   ftp://ftp.x.org/R5contrib/xmh-mods-R5-1.7.Z                           37k
2801   ftp://ftp.sei.cmu.edu/pub/xmh/xmh-mods-R5-1.7.Z                       37k
2802   ftp://ftp.sei.cmu.edu/pub/xmh/xmh-mods-R6-1.0.Z                       37k
2803
2804 From: Andrew Wason <aw@bae.bellcore.com>
2805 Date: Fri, 1 Mar 91 13:03:15 -0800
2806
2807   As of R5, xmh has a new action proc called XmhShellCommand.  A
2808   string parameter will be executed as a shell command with the
2809   currently selected messages as parameters (or the current message if
2810   there are no selected messages).
2811
2812   Using this new action, a couple of shell scripts, a window version
2813   of emacs (e.g. xemacs) and some elisp code, xmh can use emacs as its
2814   editor instead of the built in Athena text widget editor.  This
2815   doesn't require any source code changes to xmh.  These are included
2816   in the Appendix "Switching xmh's editor".
2817
2818 ------------------------------
2819   
2820 Subject: 09.02 Does xmh support subfolders?
2821 From: Steve Malowany <malowany@cenparmi.concordia.ca>
2822 Date: Fri, 1 Mar 91 13:03:15 -0800
2823
2824   Yes. Create one by invoking "Create Folder" as usual, and enter
2825   something like: existing-folder/new-sub-folder. You can then access
2826   the subfolder by popping up a menu over the "existing-folder" button
2827   item.
2828
2829   But:
2830
2831 From: John Cooper <jsc@saxon.Eng.Sun.COM>
2832 Date: Fri, 1 Mar 91 13:03:15 -0800
2833
2834   The R5 version of xmh does *not* handle nested sub-folders.  If you
2835   create a folder as 'grab/some/bandwidth', xmh displays this
2836   folder name for the remainder of the session where it was created,
2837   BUT if you later re-run xmh, the folder is no longer visible to xmh.
2838
2839   See also MH book section 15.6.2 (15.6.2).
2840
2841 ------------------------------
2842   
2843 Subject: 09.03 How do I precede included messages with ">" when replying in xmh?
2844 From: Len Makin <len@mel.dit.csiro.au>
2845 Date: Fri, 1 Mar 91 13:03:15 -0800
2846
2847   Include the following line in your ~/app-defaults/XMh file:
2848
2849         Xmh*replyInsertFilter: "sed 's/^/> /'"
2850
2851   or,
2852
2853         Xmh.ReplyInsertFilter: $MHLIB/mhl -form repl.filter
2854
2855 From: Andy Linton <andy.linton@comp.vuw.ac.nz>
2856 Date: Fri, 1 Mar 91 13:03:15 -0800
2857
2858   Using this means that you can chose to insert the original by use of
2859   the "Insert" button in the Draft message pane.  See "How do I
2860   include messages in repl with or without ">"?" to find examples of
2861   repl.filter.
2862
2863   See also MH book sections 15.1.4 (15.1.4), 16.3.3 (16.3.3).
2864
2865 ------------------------------
2866
2867 Subject: !Glossary
2868 From: Bill Wohler <wohler@newt.com>
2869 Date: Fri, 1 Mar 91 13:03:15 -0800
2870
2871   MH    Mail Handler
2872   MHLIB Where MH support routines and files are kept; usually /usr/lib/mh
2873         or /usr/local/lib/mh.
2874   POP3  Post Office Protocol, RFC 1225
2875   MMDF  Multi-channel Memo Distribution Facility
2876   MIME  Multipurpose Internet Mail Extensions, RFC 1521
2877   IMAP  Internet Message Access Protocol, RFC 1064, 1176
2878   TIS   Trusted Information Systems
2879   PEM   Privacy Enhanced Mail
2880   PGP   Pretty Good Privacy
2881   SMTP  Simple Mail Transport Protocol (STD 10; RFC 821)
2882
2883 ------------------------------
2884   
2885 Subject: Acknowledgments
2886 From: Bill Wohler <wohler@newt.com>
2887 Date: Fri, 1 Mar 91 13:03:15 -0800
2888
2889 I'd like to thank the following people for providing ideas on the
2890 layout of this article:
2891
2892 Joe Wells <jbw@bigbird.bu.edu>        Richard M. Stallman <rms@gnu.ai.mit.edu>
2893 David Elliott <dce@smsc.sony.com>     Tom Christiansen <tchrist@perl.com>
2894 Eugene N. Miya <eugene@nas.nasa.gov>
2895
2896
2897 We are also grateful to the individuals mentioned below and in the
2898 text of this document who have provided answers or other information
2899 to make this a better document.  I regret that it is possible that
2900 some names have been accidently omitted.  I would also like to thank
2901 all the readers of comp.mail.mh.
2902
2903 Kim F. Storm <storm@olicom.dk>        Edward Vielmetti <emv@ox.com>
2904
2905 ------------------------------
2906   
2907 Subject: Switching xmh's editor
2908 From: Andrew Wason <aw@bae.bellcore.com>
2909 Date: Fri, 1 Mar 91 13:03:15 -0800
2910
2911 #! /bin/sh
2912 # This is a shell archive.  Remove anything before this line, then unpack
2913 # it by saving it into a file and typing "sh file".  To overwrite existing
2914 # files, type "sh file -c".  You can also feed this as standard input via
2915 # unshar, or by typing "sh <file", e.g..  If this archive is complete, you
2916 # will see the following message at the end:
2917 #               "End of shell archive."
2918 # Contents:  README Xmh.ad xmh-command.el xmhcommand xmhemacs
2919 # Wrapped by aw@jello on Fri Nov 15 17:10:34 1991
2920 PATH=/bin:/usr/bin:/usr/ucb ; export PATH
2921 if test -f 'README' -a "${1}" != "-c" ; then
2922   echo shar: Will not clobber existing file \"'README'\"
2923 else
2924 echo shar: Extracting \"'README'\" \(1269 characters\)
2925 sed "s/^X//" >'README' <<'END_OF_FILE'
2926 XThis is a short description of what to do with each of the enclosed files.
2927 X
2928 XXmh.ad
2929 X  Merge this in with your xmh resources.  If you already have
2930 X  user defined buttons, then you may need to renumber the
2931 X  buttons in this resource file.
2932 X
2933 Xxmh-command.el
2934 X  Byte compile this file and put it in your GNU emacs load-path.
2935 X
2936 Xxmhcommand
2937 Xxmhemacs
2938 X  Put these somewhere in your path.
2939 X
2940 X
2941 XOnce you have installed these, restart the R5 xmh with the new
2942 Xresources.  When you press the repl, forw or comp buttons
2943 Xan xemacs window will come up with your draft message.
2944 X
2945 XOnce you have written your mail, save it and exit GNU emacs (C-xC-c).
2946 XYou will be prompted if you want to send the current message.
2947 XIf you enter 'y', the message will be sent and the output will
2948 Xbe displayed in an emacs window (in case you use -verbose or -snoop).
2949 XThen you will be prompted to exit emacs.  Enter 'y' when you are ready.
2950 X
2951 XIf you answered 'n' when prompted to send the message,
2952 Xthen the draft message will be deleted and emacs will exit.
2953 X
2954 XYou can modify the Xmh.ad resources to add more buttons.
2955 XAny MH command which accepts "+folder msg" can be used
2956 X(e.g. a replx shell script which includes the body of the
2957 Xmessage being replied to can be bound to a replx button)
2958 X
2959 X
2960 XAndrew Wason
2961 Xaw@bae.bellcore.com
2962 END_OF_FILE
2963 if test 1269 -ne `wc -c <'README'`; then
2964     echo shar: \"'README'\" unpacked with wrong size!
2965 fi
2966 # end of 'README'
2967 fi
2968 if test -f 'Xmh.ad' -a "${1}" != "-c" ; then
2969   echo shar: Will not clobber existing file \"'Xmh.ad'\"
2970 else
2971 echo shar: Extracting \"'Xmh.ad'\" \(457 characters\)
2972 sed "s/^X//" >'Xmh.ad' <<'END_OF_FILE'
2973 XXmh*CommandButtonCount:                        3
2974 X
2975 XXmh*commandBox.button1.label:          repl
2976 XXmh*commandBox.button1.translations:\
2977 X       #override\n\
2978 X       <Btn1Up>:       XmhShellCommand(xmhcommand y repl) unset()
2979 X
2980 XXmh*commandBox.button2.label:          forw
2981 XXmh*commandBox.button2.translations:\
2982 X       #override\n\
2983 X       <Btn1Up>:       XmhShellCommand(xmhcommand y forw) unset()
2984 X
2985 XXmh*commandBox.button3.label:          comp
2986 XXmh*commandBox.button3.translations:\
2987 X       #override\n\
2988 X       <Btn1Up>:       XmhShellCommand(xmhcommand n comp) unset()
2989 END_OF_FILE
2990 if test 457 -ne `wc -c <'Xmh.ad'`; then
2991     echo shar: \"'Xmh.ad'\" unpacked with wrong size!
2992 fi
2993 # end of 'Xmh.ad'
2994 fi
2995 if test -f 'xmh-command.el' -a "${1}" != "-c" ; then
2996   echo shar: Will not clobber existing file \"'xmh-command.el'\"
2997 else
2998 echo shar: Extracting \"'xmh-command.el'\" \(1294 characters\)
2999 sed "s/^X//" >'xmh-command.el' <<'END_OF_FILE'
3000 X;;; These functions are for use with xemacs and xmh.
3001 X;;; The R5 xmh has a new action - XmhShellCommand which executes
3002 X;;; a shell command with the current msg as an arg.
3003 X;;; By executing something like:
3004 X;;;    XmhShellCommand(xmhcommand repl)
3005 X;;; you can use xemacs as your editor with xmh.
3006 X;;;
3007 X;;; The following elisp functions perform the basic whatnowproc functionality
3008 X;;; (quitting and deleting, sending)
3009 X;;;
3010 X;;; Andrew Wason  aw@bae.bellcore.com
3011 X
3012 X
3013 X;;; Override C-xC-c
3014 X(define-key indented-text-mode-map "\C-x\C-c" 'xmh-command-send-or-delete)
3015 X
3016 X
3017 X(setq mhdraft (getenv "mhdraft"))      ; save the filename of the draft
3018 X
3019 X
3020 X(find-file mhdraft)                    ; load the draft letter
3021 X(indented-text-mode)
3022 X(setq draft-buffer (current-buffer))   ; save the buffer the draft is in
3023 X
3024 X
3025 X(defun xmh-command-send-or-delete ()
3026 X  "Prompt to send or delete letter, then quit."
3027 X  (interactive)
3028 X  (set-buffer draft-buffer)
3029 X  (if (y-or-n-p "Send message? ")
3030 X      (progn
3031 X       (save-buffer)                           ; save the draft buffer
3032 X       (message "Sending...")
3033 X       (pop-to-buffer "MH mail delivery"); pop to a buffer for "send" output
3034 X       (erase-buffer)
3035 X       (call-process "send" nil t t mhdraft)   ; call MH "send"
3036 X       (if (y-or-n-p "Exit? ")
3037 X           (kill-emacs)))                      ; exit emacs
3038 X    (delete-file mhdraft)                      ; delete the draft letter
3039 X    (kill-emacs)))                             ; exit emacs
3040 END_OF_FILE
3041 if test 1294 -ne `wc -c <'xmh-command.el'`; then
3042     echo shar: \"'xmh-command.el'\" unpacked with wrong size!
3043 fi
3044 # end of 'xmh-command.el'
3045 fi
3046 if test -f 'xmhcommand' -a "${1}" != "-c" ; then
3047   echo shar: Will not clobber existing file \"'xmhcommand'\"
3048 else
3049 echo shar: Extracting \"'xmhcommand'\" \(669 characters\)
3050 sed "s/^X//" >'xmhcommand' <<'END_OF_FILE'
3051 X#!/bin/sh
3052 X# This shell should be invoked by the xmh XmhShellCommand() action as
3053 X#   XmhShellCommand(xmhcommand y repl)
3054 X#   XmhShellCommand(xmhcommand n comp) etc.
3055 X# If the second arg is y, then the message list will be used.
3056 X
3057 X# We invoke the passed MH command on the identified message
3058 X# (we must strip the message number and folder from the pathname)
3059 X(if [ $1 = "y" ]
3060 Xthen
3061 X       $2 -whatnowproc xmhemacs +`dirname \`echo $3 | \
3062 X               sed "s;\\\`mhpath +\\\`/;;"\`` `basename $3`
3063 X
3064 X# You can use this more readable version instead if you have ksh
3065 X#      $2 -whatnowproc xmhemacs +$(dirname $(echo $3 | \
3066 X#              sed "s;$(mhpath +)/;;")) $(basename $3)
3067 X
3068 Xelse
3069 X       $2 -whatnowproc xmhemacs
3070 Xfi)&
3071 END_OF_FILE
3072 if test 669 -ne `wc -c <'xmhcommand'`; then
3073     echo shar: \"'xmhcommand'\" unpacked with wrong size!
3074 fi
3075 chmod +x 'xmhcommand'
3076 # end of 'xmhcommand'
3077 fi
3078 if test -f 'xmhemacs' -a "${1}" != "-c" ; then
3079   echo shar: Will not clobber existing file \"'xmhemacs'\"
3080 else
3081 echo shar: Extracting \"'xmhemacs'\" \(116 characters\)
3082 sed "s/^X//" >'xmhemacs' <<'END_OF_FILE'
3083 X#!/bin/sh
3084 X# Invoke xemacs and load the xmh-command.el stuff.
3085 X# xmhemacs is used by xmhcommand
3086 Xxemacs -l xmh-command
3087 END_OF_FILE
3088 if test 116 -ne `wc -c <'xmhemacs'`; then
3089     echo shar: \"'xmhemacs'\" unpacked with wrong size!
3090 fi
3091 chmod +x 'xmhemacs'
3092 # end of 'xmhemacs'
3093 fi
3094 echo shar: End of shell archive.
3095 exit 0
3096
3097 ------------------------------
3098   
3099 Subject: babyl2mh.pl
3100 From: Vivek Khera <khera@cs.duke.edu>
3101 Date: Fri, 1 Mar 91 13:03:15 -0800
3102
3103 #!/usr/gnu/bin/perl
3104 # incorporate an RMAIL babyl file into an MH folder
3105 #
3106 # usage: babyl2mh +folder babyl-file
3107 #
3108 # V. Khera <khera@cs.duke.edu> 17-JUL-1991
3109
3110 # where to find rcvstore
3111 $rcvstore = "/usr/local/lib/mh/rcvstore";
3112
3113 #
3114 # pull out command line args
3115 #
3116 die "usage: babyl2mh +folder babyl-file\n" unless @ARGV == 2;
3117
3118 $folder = shift;
3119 # make sure folder name starts with a "+"
3120 (substr($folder,0,1) eq "+") || (substr($folder,0,0) = "+");
3121 $bfname = shift;
3122
3123 print "Incorporating RMAIL file $bfname into MH folder $folder\n";
3124
3125 #
3126 # read in babyl file.
3127 #
3128 $/ = "\037";    # this separates the records in a babyl file
3129 $* = 1;         # records are multi-lines
3130
3131 open(BABYL,$bfname) || die "Couldn't open $bfname\n";
3132
3133 $_ = <BABYL>;   # discard header.
3134
3135 $msgnum = 0;
3136
3137 while (<BABYL>) {
3138   chop;         # get rid of delimeter
3139   s/\f(.|\n)*\*\*\* EOOH \*\*\*\n//;    # remove duplicate header information
3140   open(RCVSTORE,"|" . $rcvstore . " $folder");
3141   print RCVSTORE $_;
3142   $msgnum++;
3143   print "Message $msgnum done.\n";
3144 }
3145
3146 ------------------------------
3147   
3148 Subject: inco
3149 From: Juergen Nickelsen <nickel@cs.tu-berlin.de>
3150 Date: Fri, 1 Mar 91 13:03:15 -0800
3151
3152 #!/bin/sh
3153 # Usage: inco [from [folder]]
3154 # "from" defaults to $HOME/Mail/outbound, "folder" to +inbox.
3155
3156 lispfile=/tmp/inco.$$.el
3157 input=${1-$HOME/Mail/outbound}
3158 tmpmbox=/tmp/inc.$$.mbox
3159 folder=${2-+inbox}
3160
3161 if [ $# -ge 3 ]; then
3162         echo Usage: `basename $0` [ from [ folder ]]
3163         exit 2
3164 fi
3165
3166 trap "rm -f $lispfile $tmpmbox ; exit 1" 1 2 15
3167
3168 touch $tmpmbox
3169 chmod 600 $tmpmbox
3170
3171 echo '(rmail-input "'$input'")
3172 (rmail-last-message)
3173 (setq last (rmail-what-message))
3174 (rmail-show-message 1)
3175 (while (not (equal (rmail-what-message) last))
3176   (rmail-output "'$tmpmbox'")
3177   (rmail-delete-forward nil))
3178 (rmail-output "'$tmpmbox'")
3179 (kill-buffer (current-buffer))
3180 ' > $lispfile
3181
3182 emacs -batch -l $lispfile
3183 inc -file $tmpmbox $folder
3184
3185 > $input
3186 rm -f $lispfile $tmpmbox
3187
3188 ------------------------------
3189   
3190 Subject: srvrsmtp.c patch
3191 From: Paul Pomes <paul@uxc.cso.uiuc.edu>
3192 Date: Fri, 1 Mar 91 13:03:15 -0800
3193
3194 >From the 5.67 sources:
3195
3196   *** srvrsmtp.c-       Mon Feb 22 12:25:54 1993
3197   --- srvrsmtp.c        Mon Feb 22 12:29:09 1993
3198   ***************
3199   *** 384,389 ****
3200   --- 384,395 ----
3201                           message("250", "Reset state");
3202                           if (InChild)
3203                                   finis();
3204   +
3205   +                       /* clean up a bit if running in parent */
3206   +                       hasmail = FALSE;
3207   +                       dropenvelope(CurEnv);
3208   +                       CurEnv = newenvelope(CurEnv);
3209   +                       CurEnv->e_flags = BlankEnvelope.e_flags;
3210                           break;
3211
3212                     case CMDVRFY:               /* vrfy -- verify address */
3213
3214 ------------------------------
3215   
3216 Subject: mhn.c patch 1
3217 From: Casper H.S. Dik <casper@fwi.uva.nl>
3218 Date: Fri, 1 Mar 91 13:03:15 -0800
3219
3220   *** mh-6.8.3/uip/mhn.c.org    Wed Dec  1 05:01:36 1993
3221   --- mh-6.8.3/uip/mhn.c        Fri Jun  3 12:38:04 1994
3222   ***************
3223   *** 1014,1019 ****
3224   --- 1014,1020 ----
3225     #include "../h/mhn.h"
3226
3227
3228   + #undef si_value
3229     struct str2init {
3230         char   *si_key;
3231         int         si_value;
3232
3233 ------------------------------
3234   
3235 Subject: mhn.c patch 2
3236 From: Keith Moore <moore@cs.utk.edu>
3237 Date: Fri, 1 Mar 91 13:03:15 -0800
3238
3239   *** uip/mhn.c   Tue Sep 13 23:06:18 1994
3240   --- uip/mhn.c.NEW       Tue Sep 13 22:58:10 1994
3241   ***************
3242   *** 3035,3043 ****
3243   --- 3035,3048 ----
3244           if (((cp = m_find (buffer)) == NULL || *cp == 0)
3245                   && (cp = ct -> c_showproc) == NULL) {
3246               if (!alternate)
3247   + #ifdef UTK
3248   +               /* treat as multipart/mixed per rfc 1521 */
3249   +               return show_multi (ct, serial, alternate);
3250   + #else
3251                   content_error (NULLCP, ct,
3252                                  "don't know how to display content");
3253
3254   + #endif
3255               return NOTOK;
3256           }
3257         }
3258
3259
3260 ------------------------------
3261   
3262 Subject: +IRIX config file
3263 From: John Jack Repenning <jackr@dblues.engr.sgi.com>
3264 Date: 25 Jul 1995 02:35:41 GMT
3265
3266 # Irix 5.3 (based on examples/sys5r4)
3267 bboards on
3268 bin     /usr/local/bin/mh
3269 cc      cc
3270 ccoptions -g
3271 chown /bin/chown
3272 curses  -lcurses
3273 etc     /usr/local/lib/mh
3274 ldoptions -L/usr/local/lib/mh
3275 mail    /usr/mail
3276 mailgroup: mail
3277 manuals local
3278 mts     sendmail/smtp
3279 pop on
3280 popdir /usr/local/bin
3281 ranlib off
3282 #sharedlib sys5
3283 #slibdir /usr/local/lib/mh
3284 signal void
3285 sprintf int
3286 options BIND
3287 options DBMPWD
3288 options DUMB
3289 options FOLDPROT='"0700"'
3290 options MHE
3291 options MHRC
3292 options MIME
3293 options MORE='"/usr/bsd/more"'
3294 options MSGPROT='"0600"'
3295 options RENAME
3296 options RPATHS
3297 options SBACKUP='"\\#"'
3298 #options SENDMTS
3299 options SGI
3300 #options SMTP
3301 options SOCKETS
3302 options SVR4
3303 options SYS5
3304 options SYS5DIR
3305 options UNISTD
3306 options _XOPEN_SOURCE
3307 options VSPRINTF
3308
3309 ------------------------------
3310
3311 Local Variables:
3312 mode: outline
3313 outline-regexp: "^Subject:"
3314 fill-prefix: "  "
3315 End:
3316 Subject: +Removing duplicate messages (Bourne)
3317 From: jerry@ora.com (Jerry Peek)
3318 Date: 20 Nov 95 18:51:24 GMT
3319
3320   Here's a simple-minded Bourne shell version.  It uses
3321   "scan" to get the message number and message-id of each message.  If
3322   a message has the same message-id as the previous message, the
3323   script adds its message number to the "remove" shell variable.
3324
3325
3326         #!/bin/sh
3327         lastmsgid=hahahaha
3328         remove=
3329         scan -width 300 -format '%(msg) %{message-id}' |
3330         while read msg msgid; do
3331             if [ "$msgid" = "$lastmsgid" ]; then
3332                 remove="$remove $msg"
3333             else
3334                 lastmsgid="$msgid"
3335             fi
3336         done
3337         rmm $remove
3338
3339   That's pretty simple-minded.  For example, if the $remove variable
3340   gets too big, your system may complain.  And I'm sure there are some
3341   more-efficient ways to find the list of duplicate message-ids.  But
3342   that's the idea.
3343   
3344 Subject: +Removing duplicate messages (Perl)
3345 From: rtor@ansa.co.uk (Owen Rees)
3346 Date: 20 Nov 1995 12:39:47 GMT
3347
3348   I wrote a perl script to do this some time ago. All the usual dire
3349   warnings about destructive technology apply - take a backup, do it on
3350   a copy, try it on a small test case first etc. Don't use this script
3351   unless you are prepared to accept the consequences.
3352
3353 #!/usr/local/bin/perl
3354
3355 $version = "rmmdup 1";
3356
3357 if (@ARGV == 0) { $folder = ""; }
3358 elsif (@ARGV == 1) { $folder = $ARGV[0];
3359                      unless ( $folder =~ /^\+.+$/ )
3360                       { die "usage $0 [+folder]\n"; };
3361                    }
3362 else { die "usage $0 [+folder]\n"; };
3363
3364 $rmmlist = "";
3365
3366 open (scan, "scan $folder -format '%(msg) %{message-id}'|");
3367 while (<scan>)
3368  { if ( ($msg,$msgid) = /^(\d+) (<.*>)$/)
3369     { if ($msgs{$msgid})
3370        { print "$msg duplicates $msgs{$msgid}\n";
3371          $rmmlist .= " $msg";
3372        }
3373       else { $msgs{$msgid} = $msg; };
3374     };
3375  };
3376 if ( $rmmlist ) { exec "rmm $folder $rmmlist"; };
3377 exit;